You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(spec)!: resolve the WebhookConfig/WebhookEvent dual source — ./api pair removed/renamed, ./integration keeps the bare names (#4572)
The four #4535-C1 baseline rows were the #4411 trap in cross-form: ./api's
WebhookEventSchema was a z.object (OpenAPI 3.1 webhook definition) while
./integration's is a z.enum of connector event types — same names, two
concepts, and which one you got depended only on the import path.
Import-statement-level scan across framework, cloud and objectui:
zero external consumers on either side (each pair's only importer is its
own unit test; cloud and objectui reference neither name).
- api WebhookConfig(Schema): DEAD — wired into nothing, not even
RestServerConfigSchema; no runtime reads a REST webhook config. Deleted
(major window). Its authorable-surface lines deleted by hand per the
#4458/#4568 precedent (plugin-config type, not authorable metadata —
no tombstone, no D2 conversion).
- api WebhookEvent(Schema): renamed OpenApiWebhookEvent(Schema) — it is
the OpenAPI 3.1 top-level `webhooks` descriptor and now sits in the
existing OpenApi* family; OpenApi31ExtensionsSchema wiring updated,
authored shape unchanged.
- integration WebhookConfig/WebhookEvent: untouched, now sole owners of
the bare names, so the pair stays one coherent family in one domain.
dual-source-exports.baseline.json: exactly the 4 named rows removed
(35 → 31). json-schema.manifest: api/WebhookConfig retired,
api/WebhookEvent → api/OpenApiWebhookEvent (deliberate rename, not a
silent drop). Changeset: @objectstack/spec major with FROM → TO lines.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01M9uWvoEp9CoLzYjNExj9sL
0 commit comments