Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions .changeset/api-surface-dual-kind-rows.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
"@objectstack/spec": patch
---

`api-surface/` now records the value half of a name declared as both a const and a type, so deleting it is a breaking change the gate reports.

TypeScript merges an `export const X` and an `export type X` into ONE symbol whose flags carry both. `build-api-surface.ts` mapped that symbol through a first-match-wins lookup that tested `TypeAlias` before `Variable`, so the shard recorded `X (type)` alone and the value half was never enumerated. Ablated: deleting `export const RestApiRouteRegistration` while keeping its type alias left all 17 shards byte-identical, the export total unmoved, and `check:api-surface` printing "public API surface + factory signatures unchanged" at exit 0 — on a removed public value export, which is the exact removal the ADR-0059 breadth gate exists to make loud. On the fixed generator the same deletion reports `- RestApiRouteRegistration (const)` as 1 breaking change and exits 1.

The generator now emits one row per DECLARED kind. The shipped `api-surface/` shards gain **134 rows across 10 of 17 entry points** — every one of them the previously-missing `(const)` half of a name that also declares a type — as a pure insertion: zero rows removed, zero modified, no reordering.

**Why `patch` and not `minor`, measured against what a consumer can observe.** No export was added, removed or renamed: `dist/` is byte-identical across this change, and the row grammar `Name (kind)` is untouched, so anything that parsed the artifact before parses it now. The 134 new rows describe exports that already existed — the record got more complete, no capability arrived. What changes is the accuracy of a shipped record and the strictness of this repo's own gate, which is a fix.

One consequence for the release seat, stated because it is not visible from the diff: `build-spec-changes.ts --previous-surface` is a release-time join, so a release crossing this change will list those 134 rows as `added` surface entries. They are not new API — they are the same exports, newly recorded.
48 changes: 48 additions & 0 deletions packages/spec/api-surface/api.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
"AiPendingActionStatusSchema (const)",
"AiStreamChunk (type)",
"AiStreamChunkSchema (const)",
"AnalyticsEndpoint (const)",
"AnalyticsEndpoint (type)",
"AnalyticsMetadataResponse (type)",
"AnalyticsMetadataResponseParsed (type)",
Expand All @@ -46,9 +47,11 @@
"ApiChangelogEntry (type)",
"ApiChangelogEntryParsed (type)",
"ApiChangelogEntrySchema (const)",
"ApiDocumentationConfig (const)",
"ApiDocumentationConfig (type)",
"ApiDocumentationConfigParsed (type)",
"ApiDocumentationConfigSchema (const)",
"ApiEndpoint (const)",
"ApiEndpoint (type)",
"ApiEndpointParsed (type)",
"ApiEndpointSchema (const)",
Expand All @@ -59,6 +62,7 @@
"ApiMappingSchema (const)",
"ApiRoutes (type)",
"ApiRoutesSchema (const)",
"ApiTestCollection (const)",
"ApiTestCollection (type)",
"ApiTestCollectionParsed (type)",
"ApiTestCollectionSchema (const)",
Expand All @@ -68,6 +72,7 @@
"ApiTestingUiConfig (type)",
"ApiTestingUiConfigParsed (type)",
"ApiTestingUiConfigSchema (const)",
"ApiTestingUiType (const)",
"ApiTestingUiType (type)",
"AppDefinitionResponse (type)",
"AppDefinitionResponseParsed (type)",
Expand All @@ -87,6 +92,7 @@
"AuthFeaturesConfig (type)",
"AuthFeaturesConfigParsed (type)",
"AuthFeaturesConfigSchema (const)",
"AuthProvider (const)",
"AuthProvider (type)",
"AuthProviderInfo (type)",
"AuthProviderInfoParsed (type)",
Expand All @@ -95,6 +101,7 @@
"AutomationActionsResponseParsed (type)",
"AutomationActionsResponseSchema (const)",
"AutomationApiContracts (const)",
"AutomationApiErrorCode (const)",
"AutomationApiErrorCode (type)",
"AutomationFlowPathParams (type)",
"AutomationFlowPathParamsSchema (const)",
Expand Down Expand Up @@ -129,6 +136,7 @@
"BatchOperationResult (type)",
"BatchOperationResultParsed (type)",
"BatchOperationResultSchema (const)",
"BatchOperationType (const)",
"BatchOperationType (type)",
"BatchOptions (type)",
"BatchOptionsParsed (type)",
Expand All @@ -143,6 +151,7 @@
"BatchUpdateResponseSchema (const)",
"BulkDataEvent (type)",
"BulkDataEventSchema (const)",
"BulkDataEventType (const)",
"BulkDataEventType (type)",
"BulkRequest (type)",
"BulkRequestParsed (type)",
Expand All @@ -153,12 +162,14 @@
"CHANNEL_SURFACE_SLOTS (const)",
"CacheControl (type)",
"CacheControlSchema (const)",
"CacheDirective (const)",
"CacheDirective (type)",
"CacheInvalidationRequest (type)",
"CacheInvalidationRequestParsed (type)",
"CacheInvalidationRequestSchema (const)",
"CacheInvalidationResponse (type)",
"CacheInvalidationResponseSchema (const)",
"CacheInvalidationTarget (const)",
"CacheInvalidationTarget (type)",
"CapabilityDescriptor (type)",
"CapabilityDescriptorSchema (const)",
Expand All @@ -180,6 +191,7 @@
"ConceptListResponse (type)",
"ConceptListResponseParsed (type)",
"ConceptListResponseSchema (const)",
"ConflictResolutionStrategy (const)",
"ConflictResolutionStrategy (type)",
"CreateAiConversationRequest (type)",
"CreateAiConversationRequestSchema (const)",
Expand Down Expand Up @@ -223,6 +235,7 @@
"CrudEndpointsConfig (type)",
"CrudEndpointsConfigParsed (type)",
"CrudEndpointsConfigSchema (const)",
"CrudOperation (const)",
"CrudOperation (type)",
"CursorMessage (type)",
"CursorMessageSchema (const)",
Expand All @@ -239,11 +252,13 @@
"DEFAULT_VERSIONING_CONFIG (const)",
"DataEvent (type)",
"DataEventSchema (const)",
"DataEventType (const)",
"DataEventType (type)",
"DataLoaderConfig (type)",
"DataLoaderConfigParsed (type)",
"DataLoaderConfigSchema (const)",
"DataProtocol (interface)",
"DeduplicationStrategy (const)",
"DeduplicationStrategy (type)",
"DeleteDataRequest (type)",
"DeleteDataRequestSchema (const)",
Expand Down Expand Up @@ -292,6 +307,7 @@
"DispatcherConfig (type)",
"DispatcherConfigParsed (type)",
"DispatcherConfigSchema (const)",
"DispatcherErrorCode (const)",
"DispatcherErrorCode (type)",
"DispatcherErrorResponse (type)",
"DispatcherErrorResponseSchema (const)",
Expand All @@ -311,6 +327,7 @@
"EditMessageSchema (const)",
"EditOperation (type)",
"EditOperationSchema (const)",
"EditOperationType (const)",
"EditOperationType (type)",
"EmailPasswordConfigPublic (type)",
"EmailPasswordConfigPublicSchema (const)",
Expand All @@ -327,7 +344,9 @@
"EnhancedApiError (type)",
"EnhancedApiErrorParsed (type)",
"EnhancedApiErrorSchema (const)",
"ErrorCategory (const)",
"ErrorCategory (type)",
"ErrorCode (const)",
"ErrorCode (type)",
"ErrorHandlingConfig (type)",
"ErrorHandlingConfigParsed (type)",
Expand All @@ -345,13 +364,15 @@
"EventSubscription (type)",
"EventSubscriptionSchema (const)",
"ExportApiContracts (const)",
"ExportFormat (const)",
"ExportFormat (type)",
"ExportImportTemplate (type)",
"ExportImportTemplateParsed (type)",
"ExportImportTemplateSchema (const)",
"ExportJobProgress (type)",
"ExportJobProgressParsed (type)",
"ExportJobProgressSchema (const)",
"ExportJobStatus (const)",
"ExportJobStatus (type)",
"ExportJobSummary (type)",
"ExportJobSummarySchema (const)",
Expand All @@ -361,6 +382,7 @@
"FIELD_SORTABLE_UNPROVISIONED_ANCHOR (const)",
"FIELD_UNSORTABLE_VIRTUAL_TYPE (const)",
"FieldError (type)",
"FieldErrorCode (const)",
"FieldErrorCode (type)",
"FieldErrorSchema (const)",
"FieldMappingEntry (type)",
Expand Down Expand Up @@ -499,6 +521,7 @@
"HistoryMetaItemResponse (type)",
"HistoryMetaItemResponseSchema (const)",
"HttpFindQueryParamsSchema (const)",
"HttpMethod (const)",
"HttpMethod (type)",
"HttpStatusErrorCodeMap (const)",
"I18nProtocol (interface)",
Expand All @@ -510,6 +533,7 @@
"ImportJobProgressSchema (const)",
"ImportJobResults (type)",
"ImportJobResultsSchema (const)",
"ImportJobStatus (const)",
"ImportJobStatus (type)",
"ImportJobSummary (type)",
"ImportJobSummarySchema (const)",
Expand All @@ -526,10 +550,12 @@
"ImportValidationConfig (type)",
"ImportValidationConfigParsed (type)",
"ImportValidationConfigSchema (const)",
"ImportValidationMode (const)",
"ImportValidationMode (type)",
"ImportValidationResult (type)",
"ImportValidationResultParsed (type)",
"ImportValidationResultSchema (const)",
"ImportWriteMode (const)",
"ImportWriteMode (type)",
"InitiateChunkedUploadRequest (type)",
"InitiateChunkedUploadRequestParsed (type)",
Expand Down Expand Up @@ -601,6 +627,7 @@
"LoginRequest (type)",
"LoginRequestParsed (type)",
"LoginRequestSchema (const)",
"LoginType (const)",
"LoginType (type)",
"MarkAllNotificationsReadRequest (type)",
"MarkAllNotificationsReadRequestSchema (const)",
Expand Down Expand Up @@ -639,6 +666,7 @@
"MetadataEvent (type)",
"MetadataEventSchema (const)",
"MetadataEventSubject (type)",
"MetadataEventType (const)",
"MetadataEventType (type)",
"MetadataExistsResponse (type)",
"MetadataExistsResponseParsed (type)",
Expand Down Expand Up @@ -718,13 +746,15 @@
"OpenApiSecuritySchemeSchema (const)",
"OpenApiServer (type)",
"OpenApiServerSchema (const)",
"OpenApiSpec (const)",
"OpenApiSpec (type)",
"OpenApiSpecParsed (type)",
"OpenApiSpecSchema (const)",
"OperatorMapping (type)",
"OperatorMappingSchema (const)",
"PROVENANCE_WAIVERS (const)",
"PackageApiContracts (const)",
"PackageApiErrorCode (const)",
"PackageApiErrorCode (type)",
"PackageExportManifest (type)",
"PackageExportManifestParsed (type)",
Expand Down Expand Up @@ -759,6 +789,7 @@
"PresenceMessageSchema (const)",
"PresenceState (type)",
"PresenceStateSchema (const)",
"PresenceStatus (const)",
"PresenceStatus (type)",
"PresenceUpdate (type)",
"PresenceUpdateSchema (const)",
Expand Down Expand Up @@ -798,10 +829,12 @@
"RealtimeDisconnectResponseSchema (const)",
"RealtimeEvent (type)",
"RealtimeEventSchema (const)",
"RealtimeEventType (const)",
"RealtimeEventType (type)",
"RealtimePresence (type)",
"RealtimePresenceSchema (const)",
"RealtimeProtocol (interface)",
"RealtimeRecordAction (const)",
"RealtimeRecordAction (type)",
"RealtimeSubscribeRequest (type)",
"RealtimeSubscribeRequestSchema (const)",
Expand Down Expand Up @@ -845,25 +878,31 @@
"ResponseEnvelopeConfig (type)",
"ResponseEnvelopeConfigParsed (type)",
"ResponseEnvelopeConfigSchema (const)",
"RestApiConfig (const)",
"RestApiConfig (type)",
"RestApiConfigParsed (type)",
"RestApiConfigSchema (const)",
"RestApiEndpoint (type)",
"RestApiEndpointParsed (type)",
"RestApiEndpointSchema (const)",
"RestApiPluginConfig (const)",
"RestApiPluginConfig (type)",
"RestApiPluginConfigParsed (type)",
"RestApiPluginConfigSchema (const)",
"RestApiRouteCategory (const)",
"RestApiRouteCategory (type)",
"RestApiRouteRegistration (const)",
"RestApiRouteRegistration (type)",
"RestApiRouteRegistrationParsed (type)",
"RestApiRouteRegistrationSchema (const)",
"RestQueryAdapter (type)",
"RestQueryAdapterParsed (type)",
"RestQueryAdapterSchema (const)",
"RestServerConfig (const)",
"RestServerConfig (type)",
"RestServerConfigParsed (type)",
"RestServerConfigSchema (const)",
"RetryStrategy (const)",
"RetryStrategy (type)",
"RevertPackageCommitResponse (type)",
"RevertPackageCommitResponseParsed (type)",
Expand All @@ -874,6 +913,7 @@
"RollbackToPackageCommitResponse (type)",
"RollbackToPackageCommitResponseParsed (type)",
"RollbackToPackageCommitResponseSchema (const)",
"RouteCategory (const)",
"RouteCategory (type)",
"RouteDefinition (type)",
"RouteDefinitionParsed (type)",
Expand Down Expand Up @@ -915,6 +955,7 @@
"ServiceInfoSchema (const)",
"ServiceSelfInfo (type)",
"ServiceSelfInfoSchema (const)",
"ServiceStatus (const)",
"ServiceStatus (type)",
"Session (type)",
"SessionResponse (type)",
Expand All @@ -936,6 +977,7 @@
"SingleRecordResponseParsed (type)",
"SingleRecordResponseSchema (const)",
"StandardApiContracts (const)",
"StandardErrorCode (const)",
"StandardErrorCode (type)",
"StandardSynonymViolation (interface)",
"StandardSynonymWaiver (type)",
Expand All @@ -952,6 +994,7 @@
"ToggleFlowResponse (type)",
"ToggleFlowResponseParsed (type)",
"ToggleFlowResponseSchema (const)",
"TransportProtocol (const)",
"TransportProtocol (type)",
"TriggerFlowRequest (type)",
"TriggerFlowRequestSchema (const)",
Expand Down Expand Up @@ -1031,15 +1074,18 @@
"ValidateDataRequestSchema (const)",
"ValidateDataResponse (type)",
"ValidateDataResponseSchema (const)",
"ValidationMode (const)",
"ValidationMode (type)",
"VersionDefinition (type)",
"VersionDefinitionSchema (const)",
"VersionNegotiationResponse (type)",
"VersionNegotiationResponseSchema (const)",
"VersionStatus (const)",
"VersionStatus (type)",
"VersioningConfig (type)",
"VersioningConfigParsed (type)",
"VersioningConfigSchema (const)",
"VersioningStrategy (const)",
"VersioningStrategy (type)",
"WELL_KNOWN_CAPABILITY_KEYS (const)",
"WebSocketConfig (type)",
Expand All @@ -1049,7 +1095,9 @@
"WebSocketEventSchema (const)",
"WebSocketMessage (type)",
"WebSocketMessageSchema (const)",
"WebSocketMessageType (const)",
"WebSocketMessageType (type)",
"WebSocketPresenceStatus (const)",
"WebSocketPresenceStatus (type)",
"WebSocketServerConfig (type)",
"WebSocketServerConfigParsed (type)",
Expand Down
6 changes: 6 additions & 0 deletions packages/spec/api-surface/automation.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
"ActionParadigmSchema (const)",
"ActionRef (type)",
"ActionRefSchema (const)",
"ApprovalDecision (const)",
"ApprovalDecision (type)",
"ApprovalEscalation (type)",
"ApprovalEscalationParsed (type)",
Expand All @@ -31,6 +32,7 @@
"ApprovalNodeConfigParsed (type)",
"ApprovalNodeConfigSchema (const)",
"ApproverOrgSymbol (type)",
"ApproverType (const)",
"ApproverType (type)",
"ApproverValueBinding (type)",
"AssignmentConfig (type)",
Expand Down Expand Up @@ -93,10 +95,12 @@
"ExecutionError (type)",
"ExecutionErrorParsed (type)",
"ExecutionErrorSchema (const)",
"ExecutionErrorSeverity (const)",
"ExecutionErrorSeverity (type)",
"ExecutionLog (type)",
"ExecutionLogParsed (type)",
"ExecutionLogSchema (const)",
"ExecutionStatus (const)",
"ExecutionStatus (type)",
"ExecutionStepLog (type)",
"ExecutionStepLogParsed (type)",
Expand Down Expand Up @@ -127,6 +131,7 @@
"FlowFunctionEntrySchema (const)",
"FlowGraph (interface)",
"FlowNode (type)",
"FlowNodeAction (const)",
"FlowNodeAction (type)",
"FlowNodeExpressionPath (interface)",
"FlowNodeExpressionRole (type)",
Expand Down Expand Up @@ -245,6 +250,7 @@
"Webhook (type)",
"WebhookParsed (type)",
"WebhookSchema (const)",
"WebhookTriggerType (const)",
"WebhookTriggerType (type)",
"analyzeRegion (function)",
"approverTypeIsOrgScoped (function)",
Expand Down
Loading
Loading