From 34470e1bfe9b2e1dbfa417226faf51a20e35b4e9 Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 31 Aug 2026 16:43:26 +0000 Subject: [PATCH 1/2] =?UTF-8?q?feat(spec):=20generate=20declaration-map/?= =?UTF-8?q?=20=E2=80=94=20TS=20declaration=20name=20to=20spec=20registry?= =?UTF-8?q?=20name?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit WIP: generator + artifact; wiring (scripts, check:generated row, merge-driver routing, pins, changeset) follows. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01PBjwYLS6BciTQW3c9xQiD2 --- packages/spec/declaration-map/ai.json | 136 +++ packages/spec/declaration-map/api.json | 807 ++++++++++++++++++ packages/spec/declaration-map/automation.json | 136 +++ packages/spec/declaration-map/cloud.json | 193 +++++ packages/spec/declaration-map/data.json | 312 +++++++ packages/spec/declaration-map/identity.json | 60 ++ .../spec/declaration-map/integration.json | 61 ++ packages/spec/declaration-map/kernel.json | 324 +++++++ packages/spec/declaration-map/qa.json | 23 + packages/spec/declaration-map/security.json | 62 ++ packages/spec/declaration-map/shared.json | 66 ++ packages/spec/declaration-map/studio.json | 77 ++ packages/spec/declaration-map/system.json | 550 ++++++++++++ packages/spec/declaration-map/ui.json | 281 ++++++ .../spec/scripts/build-declaration-map.ts | 655 ++++++++++++++ 15 files changed, 3743 insertions(+) create mode 100644 packages/spec/declaration-map/ai.json create mode 100644 packages/spec/declaration-map/api.json create mode 100644 packages/spec/declaration-map/automation.json create mode 100644 packages/spec/declaration-map/cloud.json create mode 100644 packages/spec/declaration-map/data.json create mode 100644 packages/spec/declaration-map/identity.json create mode 100644 packages/spec/declaration-map/integration.json create mode 100644 packages/spec/declaration-map/kernel.json create mode 100644 packages/spec/declaration-map/qa.json create mode 100644 packages/spec/declaration-map/security.json create mode 100644 packages/spec/declaration-map/shared.json create mode 100644 packages/spec/declaration-map/studio.json create mode 100644 packages/spec/declaration-map/system.json create mode 100644 packages/spec/declaration-map/ui.json create mode 100644 packages/spec/scripts/build-declaration-map.ts diff --git a/packages/spec/declaration-map/ai.json b/packages/spec/declaration-map/ai.json new file mode 100644 index 0000000000..4f6d260852 --- /dev/null +++ b/packages/spec/declaration-map/ai.json @@ -0,0 +1,136 @@ +{ + "description": "TS declaration name → spec registry name (def key) for the schemas @objectstack/spec publishes: entries['ObjectSchemaBase'] === 'data/Object'. Composed from json-schema.manifest/ (the def keys), export-origins/ (which declaration each export resolves to), and a syntactic unwinding of wrapper initializers that recovers module-private base declarations (the ObjectSchemaBase case — see scripts/build-declaration-map.ts). A name that maps to two different def keys is DROPPED into `collisions` rather than guessed, so a lookup miss means \"not known to be an authorable container\". Consumers hold a changed line’s enclosing declaration name and ask which authorable container it declares (docs-audit anchor qualification is the funding one). Generated — never hand-edited; regenerate with `pnpm --filter @objectstack/spec gen:declaration-map` and read the diff.", + "category": "ai", + "entries": { + "AIModelConfigSchema": "ai/AIModelConfig", + "AIUsageRecord": "ai/AIUsageRecord", + "AIUsageRecordSchema": "ai/AIUsageRecord", + "Agent": "ai/Agent", + "AgentSchema": "ai/Agent", + "BlueprintApp": "ai/BlueprintApp", + "BlueprintAppSchema": "ai/BlueprintApp", + "BlueprintCondition": "ai/BlueprintCondition", + "BlueprintConditionSchema": "ai/BlueprintCondition", + "BlueprintDashboard": "ai/BlueprintDashboard", + "BlueprintDashboardSchema": "ai/BlueprintDashboard", + "BlueprintField": "ai/BlueprintField", + "BlueprintFieldSchema": "ai/BlueprintField", + "BlueprintNavItem": "ai/BlueprintNavItem", + "BlueprintNavItemSchema": "ai/BlueprintNavItem", + "BlueprintObject": "ai/BlueprintObject", + "BlueprintObjectSchema": "ai/BlueprintObject", + "BlueprintSeed": "ai/BlueprintSeed", + "BlueprintSeedSchema": "ai/BlueprintSeed", + "BlueprintSummaryOperations": "ai/BlueprintSummaryOperations", + "BlueprintSummaryOperationsSchema": "ai/BlueprintSummaryOperations", + "BlueprintView": "ai/BlueprintView", + "BlueprintViewSchema": "ai/BlueprintView", + "BlueprintWidgetCondition": "ai/BlueprintWidgetCondition", + "BlueprintWidgetConditionSchema": "ai/BlueprintWidgetCondition", + "CodeContentSchema": "ai/CodeContent", + "ConversationAnalytics": "ai/ConversationAnalytics", + "ConversationAnalyticsSchema": "ai/ConversationAnalytics", + "ConversationContext": "ai/ConversationContext", + "ConversationContextSchema": "ai/ConversationContext", + "ConversationMessage": "ai/ConversationMessage", + "ConversationMessageSchema": "ai/ConversationMessage", + "ConversationSession": "ai/ConversationSession", + "ConversationSessionSchema": "ai/ConversationSession", + "ConversationSummary": "ai/ConversationSummary", + "ConversationSummarySchema": "ai/ConversationSummary", + "EmbeddingModel": "ai/EmbeddingModel", + "EmbeddingModelSchema": "ai/EmbeddingModel", + "FileContent": "ai/FileContent", + "FileContentSchema": "ai/FileContent", + "FileKnowledgeSource": "ai/FileKnowledgeSource", + "FileKnowledgeSourceSchema": "ai/FileKnowledgeSource", + "FunctionCall": "ai/FunctionCall", + "FunctionCallSchema": "ai/FunctionCall", + "HttpKnowledgeSource": "ai/HttpKnowledgeSource", + "HttpKnowledgeSourceSchema": "ai/HttpKnowledgeSource", + "ImageContentSchema": "ai/ImageContent", + "KnowledgeChunk": "ai/KnowledgeChunk", + "KnowledgeChunkSchema": "ai/KnowledgeChunk", + "KnowledgeDocument": "ai/KnowledgeDocument", + "KnowledgeDocumentSchema": "ai/KnowledgeDocument", + "KnowledgeHit": "ai/KnowledgeHit", + "KnowledgeHitSchema": "ai/KnowledgeHit", + "KnowledgeRefreshPolicy": "ai/KnowledgeRefreshPolicy", + "KnowledgeRefreshPolicySchema": "ai/KnowledgeRefreshPolicy", + "KnowledgeSource": "ai/KnowledgeSource", + "KnowledgeSourceKind": "ai/KnowledgeSourceKind", + "KnowledgeSourceKindSchema": "ai/KnowledgeSourceKind", + "KnowledgeSourceSchema": "ai/KnowledgeSource", + "MCPApprovalPolicy": "ai/MCPApprovalPolicy", + "MCPApprovalPolicySchema": "ai/MCPApprovalPolicy", + "MCPServerRef": "ai/MCPServerRef", + "MCPServerRefSchema": "ai/MCPServerRef", + "MCPToolBinding": "ai/MCPToolBinding", + "MCPToolBindingSchema": "ai/MCPToolBinding", + "MCPTransport": "ai/MCPTransport", + "MCPTransportSchema": "ai/MCPTransport", + "MessageContent": "ai/MessageContent", + "MessageContentSchema": "ai/MessageContent", + "MessageContentType": "ai/MessageContentType", + "MessageContentTypeSchema": "ai/MessageContentType", + "MessagePruningEvent": "ai/MessagePruningEvent", + "MessagePruningEventSchema": "ai/MessagePruningEvent", + "MessageRole": "ai/MessageRole", + "MessageRoleSchema": "ai/MessageRole", + "ModelCapability": "ai/ModelCapability", + "ModelCapabilitySchema": "ai/ModelCapability", + "ModelConfig": "ai/ModelConfig", + "ModelConfigSchema": "ai/ModelConfig", + "ModelLimits": "ai/ModelLimits", + "ModelLimitsSchema": "ai/ModelLimits", + "ModelPricing": "ai/ModelPricing", + "ModelPricingSchema": "ai/ModelPricing", + "ModelProvider": "ai/ModelProvider", + "ModelProviderSchema": "ai/ModelProvider", + "ModelRegistry": "ai/ModelRegistry", + "ModelRegistryEntry": "ai/ModelRegistryEntry", + "ModelRegistryEntrySchema": "ai/ModelRegistryEntry", + "ModelRegistrySchema": "ai/ModelRegistry", + "ModelSelectionCriteria": "ai/ModelSelectionCriteria", + "ModelSelectionCriteriaSchema": "ai/ModelSelectionCriteria", + "ObjectKnowledgeSource": "ai/ObjectKnowledgeSource", + "ObjectKnowledgeSourceSchema": "ai/ObjectKnowledgeSource", + "PromptTemplate": "ai/PromptTemplate", + "PromptTemplateSchema": "ai/PromptTemplate", + "PromptVariable": "ai/PromptVariable", + "PromptVariableSchema": "ai/PromptVariable", + "Skill": "ai/Skill", + "SkillSchema": "ai/Skill", + "SkillTriggerCondition": "ai/SkillTriggerCondition", + "SkillTriggerConditionSchema": "ai/SkillTriggerCondition", + "SolutionBlueprint": "ai/SolutionBlueprint", + "SolutionBlueprintSchema": "ai/SolutionBlueprint", + "SolutionBlueprintStrict": "ai/SolutionBlueprintStrict", + "SolutionBlueprintStrictSchema": "ai/SolutionBlueprintStrict", + "StructuredOutputConfig": "ai/StructuredOutputConfig", + "StructuredOutputConfigSchema": "ai/StructuredOutputConfig", + "StructuredOutputFormat": "ai/StructuredOutputFormat", + "StructuredOutputFormatSchema": "ai/StructuredOutputFormat", + "TextContent": "ai/TextContent", + "TextContentSchema": "ai/TextContent", + "TokenBudgetConfig": "ai/TokenBudgetConfig", + "TokenBudgetConfigSchema": "ai/TokenBudgetConfig", + "TokenBudgetStrategy": "ai/TokenBudgetStrategy", + "TokenBudgetStrategySchema": "ai/TokenBudgetStrategy", + "TokenUsage": "ai/TokenUsage", + "TokenUsageSchema": "ai/TokenUsage", + "TokenUsageStats": "ai/TokenUsageStats", + "TokenUsageStatsSchema": "ai/TokenUsageStats", + "Tool": "ai/Tool", + "ToolCall": "ai/ToolCall", + "ToolCallSchema": "ai/ToolCall", + "ToolSchema": "ai/Tool", + "TransformPipelineStep": "ai/TransformPipelineStep", + "TransformPipelineStepSchema": "ai/TransformPipelineStep", + "VectorStore": "ai/VectorStore", + "VectorStoreProvider": "ai/VectorStoreProvider", + "VectorStoreProviderSchema": "ai/VectorStoreProvider", + "VectorStoreSchema": "ai/VectorStore" + }, + "collisions": [] +} diff --git a/packages/spec/declaration-map/api.json b/packages/spec/declaration-map/api.json new file mode 100644 index 0000000000..f28ac8773a --- /dev/null +++ b/packages/spec/declaration-map/api.json @@ -0,0 +1,807 @@ +{ + "description": "TS declaration name → spec registry name (def key) for the schemas @objectstack/spec publishes: entries['ObjectSchemaBase'] === 'data/Object'. Composed from json-schema.manifest/ (the def keys), export-origins/ (which declaration each export resolves to), and a syntactic unwinding of wrapper initializers that recovers module-private base declarations (the ObjectSchemaBase case — see scripts/build-declaration-map.ts). A name that maps to two different def keys is DROPPED into `collisions` rather than guessed, so a lookup miss means \"not known to be an authorable container\". Consumers hold a changed line’s enclosing declaration name and ask which authorable container it declares (docs-audit anchor qualification is the funding one). Generated — never hand-edited; regenerate with `pnpm --filter @objectstack/spec gen:declaration-map` and read the diff.", + "category": "api", + "entries": { + "AckMessage": "api/AckMessage", + "AckMessageSchema": "api/AckMessage", + "AiAgentCapabilities": "api/AiAgentCapabilities", + "AiAgentCapabilitiesSchema": "api/AiAgentCapabilities", + "AiAgentChatRequest": "api/AiAgentChatRequest", + "AiAgentChatRequestSchema": "api/AiAgentChatRequest", + "AiAgentSummary": "api/AiAgentSummary", + "AiAgentSummarySchema": "api/AiAgentSummary", + "AiAgentsResponse": "api/AiAgentsResponse", + "AiAgentsResponseSchema": "api/AiAgentsResponse", + "AiChatRequest": "api/AiChatRequest", + "AiChatRequestSchema": "api/AiChatRequest", + "AiChatResponse": "api/AiChatResponse", + "AiChatResponseSchema": "api/AiChatResponse", + "AiCompleteRequest": "api/AiCompleteRequest", + "AiCompleteRequestSchema": "api/AiCompleteRequest", + "AiConversation": "api/AiConversation", + "AiConversationSchema": "api/AiConversation", + "AiMessage": "api/AiMessage", + "AiMessageSchema": "api/AiMessage", + "AiModelsResponse": "api/AiModelsResponse", + "AiModelsResponseSchema": "api/AiModelsResponse", + "AiPendingAction": "api/AiPendingAction", + "AiPendingActionSchema": "api/AiPendingAction", + "AiPendingActionStatus": "api/AiPendingActionStatus", + "AiPendingActionStatusSchema": "api/AiPendingActionStatus", + "AiStreamChunk": "api/AiStreamChunk", + "AiStreamChunkSchema": "api/AiStreamChunk", + "AnalyticsEndpoint": "api/AnalyticsEndpoint", + "AnalyticsMetadataResponse": "api/AnalyticsMetadataResponse", + "AnalyticsMetadataResponseSchema": "api/AnalyticsMetadataResponse", + "AnalyticsQueryRequest": "api/AnalyticsQueryRequest", + "AnalyticsQueryRequestSchema": "api/AnalyticsQueryRequest", + "AnalyticsResultResponse": "api/AnalyticsResultResponse", + "AnalyticsResultResponseSchema": "api/AnalyticsResultResponse", + "AnalyticsSqlResponse": "api/AnalyticsSqlResponse", + "AnalyticsSqlResponseSchema": "api/AnalyticsSqlResponse", + "ApiChangelogEntry": "api/ApiChangelogEntry", + "ApiChangelogEntrySchema": "api/ApiChangelogEntry", + "ApiDocumentationConfig": "api/ApiDocumentationConfig", + "ApiDocumentationConfigSchema": "api/ApiDocumentationConfig", + "ApiEndpoint": "api/ApiEndpoint", + "ApiEndpointSchema": "api/ApiEndpoint", + "ApiError": "api/ApiError", + "ApiErrorSchema": "api/ApiError", + "ApiMapping": "api/ApiMapping", + "ApiMappingSchema": "api/ApiMapping", + "ApiRoutes": "api/ApiRoutes", + "ApiRoutesSchema": "api/ApiRoutes", + "ApiTestCollection": "api/ApiTestCollection", + "ApiTestCollectionSchema": "api/ApiTestCollection", + "ApiTestRequest": "api/ApiTestRequest", + "ApiTestRequestSchema": "api/ApiTestRequest", + "ApiTestingUiConfig": "api/ApiTestingUiConfig", + "ApiTestingUiConfigSchema": "api/ApiTestingUiConfig", + "ApiTestingUiType": "api/ApiTestingUiType", + "AppDefinitionResponse": "api/AppDefinitionResponse", + "AppDefinitionResponseSchema": "api/AppDefinitionResponse", + "ApproveAiPendingActionResponse": "api/ApproveAiPendingActionResponse", + "ApproveAiPendingActionResponseSchema": "api/ApproveAiPendingActionResponse", + "AuditMetaItemRequest": "api/AuditMetaItemRequest", + "AuditMetaItemRequestSchema": "api/AuditMetaItemRequest", + "AuditMetaItemResponse": "api/AuditMetaItemResponse", + "AuditMetaItemResponseSchema": "api/AuditMetaItemResponse", + "AuthEndpoint": "api/AuthEndpoint", + "AuthEndpointSchema": "api/AuthEndpoint", + "AuthFeaturesConfig": "api/AuthFeaturesConfig", + "AuthFeaturesConfigSchema": "api/AuthFeaturesConfig", + "AuthProvider": "api/AuthProvider", + "AuthProviderInfo": "api/AuthProviderInfo", + "AuthProviderInfoSchema": "api/AuthProviderInfo", + "AutomationActionsResponse": "api/AutomationActionsResponse", + "AutomationActionsResponseSchema": "api/AutomationActionsResponse", + "AutomationApiErrorCode": "api/AutomationApiErrorCode", + "AutomationFlowPathParams": "api/AutomationFlowPathParams", + "AutomationFlowPathParamsSchema": "api/AutomationFlowPathParams", + "AutomationRunPathParams": "api/AutomationRunPathParams", + "AutomationRunPathParamsSchema": "api/AutomationRunPathParams", + "AutomationTriggerRequest": "api/AutomationTriggerRequest", + "AutomationTriggerRequestSchema": "api/AutomationTriggerRequest", + "AutomationTriggerResponse": "api/AutomationTriggerResponse", + "AutomationTriggerResponseSchema": "api/AutomationTriggerResponse", + "BasePresence": "api/BasePresence", + "BasePresenceSchema": "api/BasePresence", + "BaseResponse": "api/BaseResponse", + "BaseResponseSchema": "api/BaseResponse", + "BatchConfig": "api/BatchConfig", + "BatchConfigSchema": "api/BatchConfig", + "BatchDataRequest": "api/BatchDataRequest", + "BatchDataRequestSchema": "api/BatchDataRequest", + "BatchDataResponse": "api/BatchDataResponse", + "BatchDataResponseSchema": "api/BatchDataResponse", + "BatchEndpointsConfig": "api/BatchEndpointsConfig", + "BatchEndpointsConfigSchema": "api/BatchEndpointsConfig", + "BatchLoadingStrategy": "api/BatchLoadingStrategy", + "BatchLoadingStrategySchema": "api/BatchLoadingStrategy", + "BatchOperationResult": "api/BatchOperationResult", + "BatchOperationResultSchema": "api/BatchOperationResult", + "BatchOperationType": "api/BatchOperationType", + "BatchOptions": "api/BatchOptions", + "BatchOptionsSchema": "api/BatchOptions", + "BatchRecord": "api/BatchRecord", + "BatchRecordSchema": "api/BatchRecord", + "BatchUpdateRequest": "api/BatchUpdateRequest", + "BatchUpdateRequestSchema": "api/BatchUpdateRequest", + "BatchUpdateResponse": "api/BatchUpdateResponse", + "BatchUpdateResponseSchema": "api/BatchUpdateResponse", + "BulkDataEvent": "api/BulkDataEvent", + "BulkDataEventSchema": "api/BulkDataEvent", + "BulkDataEventType": "api/BulkDataEventType", + "BulkRequest": "api/BulkRequest", + "BulkRequestSchema": "api/BulkRequest", + "BulkResponse": "api/BulkResponse", + "BulkResponseSchema": "api/BulkResponse", + "CacheControl": "api/CacheControl", + "CacheControlSchema": "api/CacheControl", + "CacheDirective": "api/CacheDirective", + "CacheInvalidationRequest": "api/CacheInvalidationRequest", + "CacheInvalidationRequestSchema": "api/CacheInvalidationRequest", + "CacheInvalidationResponse": "api/CacheInvalidationResponse", + "CacheInvalidationResponseSchema": "api/CacheInvalidationResponse", + "CacheInvalidationTarget": "api/CacheInvalidationTarget", + "CapabilityDescriptor": "api/CapabilityDescriptor", + "CapabilityDescriptorSchema": "api/CapabilityDescriptor", + "CheckPermissionRequest": "api/CheckPermissionRequest", + "CheckPermissionRequestSchema": "api/CheckPermissionRequest", + "CheckPermissionResponse": "api/CheckPermissionResponse", + "CheckPermissionResponseSchema": "api/CheckPermissionResponse", + "CloneDataResponse": "api/CloneDataResponse", + "CloneDataResponseSchema": "api/CloneDataResponse", + "CodeGenerationTemplate": "api/CodeGenerationTemplate", + "CodeGenerationTemplateSchema": "api/CodeGenerationTemplate", + "CompleteChunkedUploadRequest": "api/CompleteChunkedUploadRequest", + "CompleteChunkedUploadRequestSchema": "api/CompleteChunkedUploadRequest", + "CompleteChunkedUploadResponse": "api/CompleteChunkedUploadResponse", + "CompleteChunkedUploadResponseSchema": "api/CompleteChunkedUploadResponse", + "CompleteUploadRequest": "api/CompleteUploadRequest", + "CompleteUploadRequestSchema": "api/CompleteUploadRequest", + "ConceptListResponse": "api/ConceptListResponse", + "ConceptListResponseSchema": "api/ConceptListResponse", + "ConflictResolutionStrategy": "api/ConflictResolutionStrategy", + "CreateAiConversationRequest": "api/CreateAiConversationRequest", + "CreateAiConversationRequestSchema": "api/CreateAiConversationRequest", + "CreateDataRequest": "api/CreateDataRequest", + "CreateDataRequestSchema": "api/CreateDataRequest", + "CreateDataResponse": "api/CreateDataResponse", + "CreateDataResponseSchema": "api/CreateDataResponse", + "CreateExportJobRequest": "api/CreateExportJobRequest", + "CreateExportJobRequestSchema": "api/CreateExportJobRequest", + "CreateExportJobResponse": "api/CreateExportJobResponse", + "CreateExportJobResponseSchema": "api/CreateExportJobResponse", + "CreateFlowRequest": "api/CreateFlowRequest", + "CreateFlowRequestSchema": "api/CreateFlowRequest", + "CreateFlowResponse": "api/CreateFlowResponse", + "CreateFlowResponseSchema": "api/CreateFlowResponse", + "CreateImportJobRequest": "api/CreateImportJobRequest", + "CreateImportJobRequestSchema": "api/CreateImportJobRequest", + "CreateImportJobResponse": "api/CreateImportJobResponse", + "CreateImportJobResponseSchema": "api/CreateImportJobResponse", + "CreateManyDataRequest": "api/CreateManyDataRequest", + "CreateManyDataRequestSchema": "api/CreateManyDataRequest", + "CreateManyDataResponse": "api/CreateManyDataResponse", + "CreateManyDataResponseSchema": "api/CreateManyDataResponse", + "CreateRequest": "api/CreateRequest", + "CreateRequestSchema": "api/CreateRequest", + "CrossObjectBatchDroppedFields": "api/CrossObjectBatchDroppedFields", + "CrossObjectBatchDroppedFieldsSchema": "api/CrossObjectBatchDroppedFields", + "CrossObjectBatchOperation": "api/CrossObjectBatchOperation", + "CrossObjectBatchOperationSchema": "api/CrossObjectBatchOperation", + "CrossObjectBatchRequest": "api/CrossObjectBatchRequest", + "CrossObjectBatchRequestSchema": "api/CrossObjectBatchRequest", + "CrossObjectBatchResponse": "api/CrossObjectBatchResponse", + "CrossObjectBatchResponseSchema": "api/CrossObjectBatchResponse", + "CrudEndpointPattern": "api/CrudEndpointPattern", + "CrudEndpointPatternSchema": "api/CrudEndpointPattern", + "CrudEndpointsConfig": "api/CrudEndpointsConfig", + "CrudEndpointsConfigSchema": "api/CrudEndpointsConfig", + "CrudOperation": "api/CrudOperation", + "CursorMessage": "api/CursorMessage", + "CursorMessageSchema": "api/CursorMessage", + "CursorPosition": "api/CursorPosition", + "CursorPositionSchema": "api/CursorPosition", + "DataEvent": "api/DataEvent", + "DataEventSchema": "api/DataEvent", + "DataEventType": "api/DataEventType", + "DataLoaderConfig": "api/DataLoaderConfig", + "DataLoaderConfigSchema": "api/DataLoaderConfig", + "DeduplicationStrategy": "api/DeduplicationStrategy", + "DeleteDataRequest": "api/DeleteDataRequest", + "DeleteDataRequestSchema": "api/DeleteDataRequest", + "DeleteDataResponse": "api/DeleteDataResponse", + "DeleteDataResponseSchema": "api/DeleteDataResponse", + "DeleteFlowRequest": "api/DeleteFlowRequest", + "DeleteFlowRequestSchema": "api/DeleteFlowRequest", + "DeleteFlowResponse": "api/DeleteFlowResponse", + "DeleteFlowResponseSchema": "api/DeleteFlowResponse", + "DeleteManyDataRequest": "api/DeleteManyDataRequest", + "DeleteManyDataRequestSchema": "api/DeleteManyDataRequest", + "DeleteManyDataResponse": "api/DeleteManyDataResponse", + "DeleteManyDataResponseSchema": "api/DeleteManyDataResponse", + "DeleteManyRequest": "api/DeleteManyRequest", + "DeleteManyRequestSchema": "api/DeleteManyRequest", + "DeleteMetaItemRequest": "api/DeleteMetaItemRequest", + "DeleteMetaItemRequestSchema": "api/DeleteMetaItemRequest", + "DeleteMetaItemResponse": "api/DeleteMetaItemResponse", + "DeleteMetaItemResponseSchema": "api/DeleteMetaItemResponse", + "DeleteResponse": "api/DeleteResponse", + "DeleteResponseSchema": "api/DeleteResponse", + "DeviceRequestResponse": "api/DeviceRequestResponse", + "DeviceRequestResponseSchema": "api/DeviceRequestResponse", + "DeviceTokenResponse": "api/DeviceTokenResponse", + "DeviceTokenResponseSchema": "api/DeviceTokenResponse", + "DiffMetaItemResponse": "api/DiffMetaItemResponse", + "DiffMetaItemResponseSchema": "api/DiffMetaItemResponse", + "DiscardPackageDraftsResponse": "api/DiscardPackageDraftsResponse", + "DiscardPackageDraftsResponseSchema": "api/DiscardPackageDraftsResponse", + "DiscoveryEnvironment": "api/DiscoveryEnvironment", + "DiscoveryEnvironmentSchema": "api/DiscoveryEnvironment", + "DiscoverySchema": "api/Discovery", + "DispatcherConfig": "api/DispatcherConfig", + "DispatcherConfigSchema": "api/DispatcherConfig", + "DispatcherErrorCode": "api/DispatcherErrorCode", + "DispatcherErrorResponse": "api/DispatcherErrorResponse", + "DispatcherErrorResponseSchema": "api/DispatcherErrorResponse", + "DispatcherRoute": "api/DispatcherRoute", + "DispatcherRouteSchema": "api/DispatcherRoute", + "DocumentState": "api/DocumentState", + "DocumentStateSchema": "api/DocumentState", + "DuplicatePackageResponse": "api/DuplicatePackageResponse", + "DuplicatePackageResponseSchema": "api/DuplicatePackageResponse", + "ETag": "api/ETag", + "ETagSchema": "api/ETag", + "EditMessage": "api/EditMessage", + "EditMessageSchema": "api/EditMessage", + "EditOperation": "api/EditOperation", + "EditOperationSchema": "api/EditOperation", + "EditOperationType": "api/EditOperationType", + "EmailPasswordConfigPublic": "api/EmailPasswordConfigPublic", + "EmailPasswordConfigPublicSchema": "api/EmailPasswordConfigPublic", + "EndpointRegistry": "api/EndpointRegistry", + "EndpointRegistrySchema": "api/EndpointRegistry", + "EnhancedApiError": "api/EnhancedApiError", + "EnhancedApiErrorSchema": "api/EnhancedApiError", + "ErrorCategory": "api/ErrorCategory", + "ErrorCode": "api/ErrorCode", + "ErrorHandlingConfig": "api/ErrorHandlingConfig", + "ErrorHandlingConfigSchema": "api/ErrorHandlingConfig", + "ErrorMessage": "api/ErrorMessage", + "ErrorMessageSchema": "api/ErrorMessage", + "ErrorResponse": "api/ErrorResponse", + "ErrorResponseSchema": "api/ErrorResponse", + "EventMessage": "api/EventMessage", + "EventMessageSchema": "api/EventMessage", + "EventPattern": "api/EventPattern", + "EventPatternSchema": "api/EventPattern", + "EventSubscription": "api/EventSubscription", + "EventSubscriptionSchema": "api/EventSubscription", + "ExportFormat": "api/ExportFormat", + "ExportImportTemplate": "api/ExportImportTemplate", + "ExportImportTemplateSchema": "api/ExportImportTemplate", + "ExportJobProgress": "api/ExportJobProgress", + "ExportJobProgressSchema": "api/ExportJobProgress", + "ExportJobStatus": "api/ExportJobStatus", + "ExportJobSummary": "api/ExportJobSummary", + "ExportJobSummarySchema": "api/ExportJobSummary", + "ExportRequest": "api/ExportRequest", + "ExportRequestSchema": "api/ExportRequest", + "FieldError": "api/FieldError", + "FieldErrorCode": "api/FieldErrorCode", + "FieldErrorSchema": "api/FieldError", + "FieldMappingEntry": "api/FieldMappingEntry", + "FieldMappingEntrySchema": "api/FieldMappingEntry", + "FieldSortability": "api/FieldSortability", + "FieldSortabilitySchema": "api/FieldSortability", + "FileDownloadUrlResponse": "api/FileDownloadUrlResponse", + "FileDownloadUrlResponseSchema": "api/FileDownloadUrlResponse", + "FileTypeValidation": "api/FileTypeValidation", + "FileTypeValidationSchema": "api/FileTypeValidation", + "FileUploadResponse": "api/FileUploadResponse", + "FileUploadResponseSchema": "api/FileUploadResponse", + "FindDataRequest": "api/FindDataRequest", + "FindDataRequestSchema": "api/FindDataRequest", + "FindDataResponse": "api/FindDataResponse", + "FindDataResponseSchema": "api/FindDataResponse", + "FindReferencesToMetaResponse": "api/FindReferencesToMetaResponse", + "FindReferencesToMetaResponseSchema": "api/FindReferencesToMetaResponse", + "FlowSummary": "api/FlowSummary", + "FlowSummarySchema": "api/FlowSummary", + "GeneratedApiDocumentation": "api/GeneratedApiDocumentation", + "GeneratedApiDocumentationSchema": "api/GeneratedApiDocumentation", + "GeneratedEndpoint": "api/GeneratedEndpoint", + "GeneratedEndpointSchema": "api/GeneratedEndpoint", + "GetAnalyticsMetaRequest": "api/GetAnalyticsMetaRequest", + "GetAnalyticsMetaRequestSchema": "api/GetAnalyticsMetaRequest", + "GetAuthConfigResponse": "api/GetAuthConfigResponse", + "GetAuthConfigResponseSchema": "api/GetAuthConfigResponse", + "GetDataRequest": "api/GetDataRequest", + "GetDataRequestSchema": "api/GetDataRequest", + "GetDataResponse": "api/GetDataResponse", + "GetDataResponseSchema": "api/GetDataResponse", + "GetDiscoveryRequest": "api/GetDiscoveryRequest", + "GetDiscoveryRequestSchema": "api/GetDiscoveryRequest", + "GetDiscoveryResponse": "api/GetDiscoveryResponse", + "GetDiscoveryResponseSchema": "api/GetDiscoveryResponse", + "GetEffectivePermissionsRequest": "api/GetEffectivePermissionsRequest", + "GetEffectivePermissionsRequestSchema": "api/GetEffectivePermissionsRequest", + "GetEffectivePermissionsResponse": "api/GetEffectivePermissionsResponse", + "GetEffectivePermissionsResponseSchema": "api/GetEffectivePermissionsResponse", + "GetExportJobDownloadRequest": "api/GetExportJobDownloadRequest", + "GetExportJobDownloadRequestSchema": "api/GetExportJobDownloadRequest", + "GetExportJobDownloadResponse": "api/GetExportJobDownloadResponse", + "GetExportJobDownloadResponseSchema": "api/GetExportJobDownloadResponse", + "GetFieldLabelsRequest": "api/GetFieldLabelsRequest", + "GetFieldLabelsRequestSchema": "api/GetFieldLabelsRequest", + "GetFieldLabelsResponse": "api/GetFieldLabelsResponse", + "GetFieldLabelsResponseSchema": "api/GetFieldLabelsResponse", + "GetFlowRequest": "api/GetFlowRequest", + "GetFlowRequestSchema": "api/GetFlowRequest", + "GetFlowResponse": "api/GetFlowResponse", + "GetFlowResponseSchema": "api/GetFlowResponse", + "GetInstalledPackageRequest": "api/GetInstalledPackageRequest", + "GetInstalledPackageRequestSchema": "api/GetInstalledPackageRequest", + "GetInstalledPackageResponse": "api/GetInstalledPackageResponse", + "GetInstalledPackageResponseSchema": "api/GetInstalledPackageResponse", + "GetLocalesRequest": "api/GetLocalesRequest", + "GetLocalesRequestSchema": "api/GetLocalesRequest", + "GetLocalesResponse": "api/GetLocalesResponse", + "GetLocalesResponseSchema": "api/GetLocalesResponse", + "GetMetaDiagnosticsResponse": "api/GetMetaDiagnosticsResponse", + "GetMetaDiagnosticsResponseSchema": "api/GetMetaDiagnosticsResponse", + "GetMetaItemCachedRequest": "api/GetMetaItemCachedRequest", + "GetMetaItemCachedRequestSchema": "api/GetMetaItemCachedRequest", + "GetMetaItemCachedResponse": "api/GetMetaItemCachedResponse", + "GetMetaItemCachedResponseSchema": "api/GetMetaItemCachedResponse", + "GetMetaItemLayeredRequest": "api/GetMetaItemLayeredRequest", + "GetMetaItemLayeredRequestSchema": "api/GetMetaItemLayeredRequest", + "GetMetaItemLayeredResponse": "api/GetMetaItemLayeredResponse", + "GetMetaItemLayeredResponseSchema": "api/GetMetaItemLayeredResponse", + "GetMetaItemRequest": "api/GetMetaItemRequest", + "GetMetaItemRequestSchema": "api/GetMetaItemRequest", + "GetMetaItemResponse": "api/GetMetaItemResponse", + "GetMetaItemResponseSchema": "api/GetMetaItemResponse", + "GetMetaItemsRequest": "api/GetMetaItemsRequest", + "GetMetaItemsRequestSchema": "api/GetMetaItemsRequest", + "GetMetaItemsResponse": "api/GetMetaItemsResponse", + "GetMetaItemsResponseSchema": "api/GetMetaItemsResponse", + "GetMetaTypesRequest": "api/GetMetaTypesRequest", + "GetMetaTypesRequestSchema": "api/GetMetaTypesRequest", + "GetMetaTypesResponse": "api/GetMetaTypesResponse", + "GetMetaTypesResponseSchema": "api/GetMetaTypesResponse", + "GetNotificationPreferencesRequest": "api/GetNotificationPreferencesRequest", + "GetNotificationPreferencesRequestSchema": "api/GetNotificationPreferencesRequest", + "GetNotificationPreferencesResponse": "api/GetNotificationPreferencesResponse", + "GetNotificationPreferencesResponseSchema": "api/GetNotificationPreferencesResponse", + "GetObjectPermissionsRequest": "api/GetObjectPermissionsRequest", + "GetObjectPermissionsRequestSchema": "api/GetObjectPermissionsRequest", + "GetObjectPermissionsResponse": "api/GetObjectPermissionsResponse", + "GetObjectPermissionsResponseSchema": "api/GetObjectPermissionsResponse", + "GetPresenceRequest": "api/GetPresenceRequest", + "GetPresenceRequestSchema": "api/GetPresenceRequest", + "GetPresenceResponse": "api/GetPresenceResponse", + "GetPresenceResponseSchema": "api/GetPresenceResponse", + "GetPresignedUrlRequest": "api/GetPresignedUrlRequest", + "GetPresignedUrlRequestSchema": "api/GetPresignedUrlRequest", + "GetPublishedMetaItemResponse": "api/GetPublishedMetaItemResponse", + "GetPublishedMetaItemResponseSchema": "api/GetPublishedMetaItemResponse", + "GetRunRequest": "api/GetRunRequest", + "GetRunRequestSchema": "api/GetRunRequest", + "GetRunResponse": "api/GetRunResponse", + "GetRunResponseSchema": "api/GetRunResponse", + "GetTranslationsRequest": "api/GetTranslationsRequest", + "GetTranslationsRequestSchema": "api/GetTranslationsRequest", + "GetTranslationsResponse": "api/GetTranslationsResponse", + "GetTranslationsResponseSchema": "api/GetTranslationsResponse", + "GetUiViewRequest": "api/GetUiViewRequest", + "GetUiViewRequestSchema": "api/GetUiViewRequest", + "GetUiViewResponse": "api/GetUiViewResponse", + "GetUiViewResponseSchema": "api/GetUiViewResponse", + "HandlerStatus": "api/HandlerStatus", + "HandlerStatusSchema": "api/HandlerStatus", + "HistoryMetaItemRequest": "api/HistoryMetaItemRequest", + "HistoryMetaItemRequestSchema": "api/HistoryMetaItemRequest", + "HistoryMetaItemResponse": "api/HistoryMetaItemResponse", + "HistoryMetaItemResponseSchema": "api/HistoryMetaItemResponse", + "HttpFindQueryParamsSchema": "api/HttpFindQueryParams", + "IdRequest": "api/IdRequest", + "IdRequestSchema": "api/IdRequest", + "ImportJobProgress": "api/ImportJobProgress", + "ImportJobProgressSchema": "api/ImportJobProgress", + "ImportJobResults": "api/ImportJobResults", + "ImportJobResultsSchema": "api/ImportJobResults", + "ImportJobStatus": "api/ImportJobStatus", + "ImportJobSummary": "api/ImportJobSummary", + "ImportJobSummarySchema": "api/ImportJobSummary", + "ImportMapping": "api/ImportMapping", + "ImportMappingSchema": "api/ImportMapping", + "ImportRequest": "api/ImportRequest", + "ImportRequestSchema": "api/ImportRequest", + "ImportResponse": "api/ImportResponse", + "ImportResponseSchema": "api/ImportResponse", + "ImportRowResult": "api/ImportRowResult", + "ImportRowResultSchema": "api/ImportRowResult", + "ImportValidationConfig": "api/ImportValidationConfig", + "ImportValidationConfigSchema": "api/ImportValidationConfig", + "ImportValidationMode": "api/ImportValidationMode", + "ImportValidationResult": "api/ImportValidationResult", + "ImportValidationResultSchema": "api/ImportValidationResult", + "ImportWriteMode": "api/ImportWriteMode", + "InitiateChunkedUploadRequest": "api/InitiateChunkedUploadRequest", + "InitiateChunkedUploadRequestSchema": "api/InitiateChunkedUploadRequest", + "InitiateChunkedUploadResponse": "api/InitiateChunkedUploadResponse", + "InitiateChunkedUploadResponseSchema": "api/InitiateChunkedUploadResponse", + "ListAiConversationsRequest": "api/ListAiConversationsRequest", + "ListAiConversationsRequestSchema": "api/ListAiConversationsRequest", + "ListAiConversationsResponse": "api/ListAiConversationsResponse", + "ListAiConversationsResponseSchema": "api/ListAiConversationsResponse", + "ListAiPendingActionsRequest": "api/ListAiPendingActionsRequest", + "ListAiPendingActionsRequestSchema": "api/ListAiPendingActionsRequest", + "ListAiPendingActionsResponse": "api/ListAiPendingActionsResponse", + "ListAiPendingActionsResponseSchema": "api/ListAiPendingActionsResponse", + "ListDraftsResponse": "api/ListDraftsResponse", + "ListDraftsResponseSchema": "api/ListDraftsResponse", + "ListExportJobsRequest": "api/ListExportJobsRequest", + "ListExportJobsRequestSchema": "api/ListExportJobsRequest", + "ListExportJobsResponse": "api/ListExportJobsResponse", + "ListExportJobsResponseSchema": "api/ListExportJobsResponse", + "ListFlowsRequest": "api/ListFlowsRequest", + "ListFlowsRequestSchema": "api/ListFlowsRequest", + "ListFlowsResponse": "api/ListFlowsResponse", + "ListFlowsResponseSchema": "api/ListFlowsResponse", + "ListImportJobsRequest": "api/ListImportJobsRequest", + "ListImportJobsRequestSchema": "api/ListImportJobsRequest", + "ListImportJobsResponse": "api/ListImportJobsResponse", + "ListImportJobsResponseSchema": "api/ListImportJobsResponse", + "ListInstalledPackagesRequest": "api/ListInstalledPackagesRequest", + "ListInstalledPackagesRequestSchema": "api/ListInstalledPackagesRequest", + "ListInstalledPackagesResponse": "api/ListInstalledPackagesResponse", + "ListInstalledPackagesResponseSchema": "api/ListInstalledPackagesResponse", + "ListNotificationsRequest": "api/ListNotificationsRequest", + "ListNotificationsRequestSchema": "api/ListNotificationsRequest", + "ListNotificationsResponse": "api/ListNotificationsResponse", + "ListNotificationsResponseSchema": "api/ListNotificationsResponse", + "ListPackageCommitsResponse": "api/ListPackageCommitsResponse", + "ListPackageCommitsResponseSchema": "api/ListPackageCommitsResponse", + "ListRecordResponse": "api/ListRecordResponse", + "ListRecordResponseSchema": "api/ListRecordResponse", + "ListRunsRequest": "api/ListRunsRequest", + "ListRunsRequestSchema": "api/ListRunsRequest", + "ListRunsResponse": "api/ListRunsResponse", + "ListRunsResponseSchema": "api/ListRunsResponse", + "LoginRequest": "api/LoginRequest", + "LoginRequestSchema": "api/LoginRequest", + "LoginType": "api/LoginType", + "MarkAllNotificationsReadRequest": "api/MarkAllNotificationsReadRequest", + "MarkAllNotificationsReadRequestSchema": "api/MarkAllNotificationsReadRequest", + "MarkAllNotificationsReadResponse": "api/MarkAllNotificationsReadResponse", + "MarkAllNotificationsReadResponseSchema": "api/MarkAllNotificationsReadResponse", + "MarkNotificationsReadRequest": "api/MarkNotificationsReadRequest", + "MarkNotificationsReadRequestSchema": "api/MarkNotificationsReadRequest", + "MarkNotificationsReadResponse": "api/MarkNotificationsReadResponse", + "MarkNotificationsReadResponseSchema": "api/MarkNotificationsReadResponse", + "MetadataBulkRegisterRequest": "api/MetadataBulkRegisterRequest", + "MetadataBulkRegisterRequestSchema": "api/MetadataBulkRegisterRequest", + "MetadataBulkResponse": "api/MetadataBulkResponse", + "MetadataBulkResponseSchema": "api/MetadataBulkResponse", + "MetadataBulkUnregisterRequest": "api/MetadataBulkUnregisterRequest", + "MetadataBulkUnregisterRequestSchema": "api/MetadataBulkUnregisterRequest", + "MetadataCacheRequest": "api/MetadataCacheRequest", + "MetadataCacheRequestSchema": "api/MetadataCacheRequest", + "MetadataCacheResponse": "api/MetadataCacheResponse", + "MetadataCacheResponseSchema": "api/MetadataCacheResponse", + "MetadataDeleteResponse": "api/MetadataDeleteResponse", + "MetadataDeleteResponseSchema": "api/MetadataDeleteResponse", + "MetadataDependenciesResponse": "api/MetadataDependenciesResponse", + "MetadataDependenciesResponseSchema": "api/MetadataDependenciesResponse", + "MetadataDependentsResponse": "api/MetadataDependentsResponse", + "MetadataDependentsResponseSchema": "api/MetadataDependentsResponse", + "MetadataEndpointsConfig": "api/MetadataEndpointsConfig", + "MetadataEndpointsConfigSchema": "api/MetadataEndpointsConfig", + "MetadataEvent": "api/MetadataEvent", + "MetadataEventSchema": "api/MetadataEvent", + "MetadataEventType": "api/MetadataEventType", + "MetadataExistsResponse": "api/MetadataExistsResponse", + "MetadataExistsResponseSchema": "api/MetadataExistsResponse", + "MetadataExportRequestSchema": "api/MetadataExportRequest", + "MetadataExportResponse": "api/MetadataExportResponse", + "MetadataExportResponseSchema": "api/MetadataExportResponse", + "MetadataImportRequestSchema": "api/MetadataImportRequest", + "MetadataImportResponse": "api/MetadataImportResponse", + "MetadataImportResponseSchema": "api/MetadataImportResponse", + "MetadataItemResponse": "api/MetadataItemResponse", + "MetadataItemResponseSchema": "api/MetadataItemResponse", + "MetadataListResponse": "api/MetadataListResponse", + "MetadataListResponseSchema": "api/MetadataListResponse", + "MetadataNamesResponse": "api/MetadataNamesResponse", + "MetadataNamesResponseSchema": "api/MetadataNamesResponse", + "MetadataQueryRequestSchema": "api/MetadataQueryRequest", + "MetadataQueryResponse": "api/MetadataQueryResponse", + "MetadataQueryResponseSchema": "api/MetadataQueryResponse", + "MetadataRegisterRequest": "api/MetadataRegisterRequest", + "MetadataRegisterRequestSchema": "api/MetadataRegisterRequest", + "MetadataTypeInfoResponse": "api/MetadataTypeInfoResponse", + "MetadataTypeInfoResponseSchema": "api/MetadataTypeInfoResponse", + "MetadataTypesResponse": "api/MetadataTypesResponse", + "MetadataTypesResponseSchema": "api/MetadataTypesResponse", + "MetadataValidateRequest": "api/MetadataValidateRequest", + "MetadataValidateRequestSchema": "api/MetadataValidateRequest", + "MetadataValidateResponse": "api/MetadataValidateResponse", + "MetadataValidateResponseSchema": "api/MetadataValidateResponse", + "ModificationResult": "api/ModificationResult", + "ModificationResultSchema": "api/ModificationResult", + "Notification": "api/Notification", + "NotificationPreferences": "api/NotificationPreferences", + "NotificationPreferencesSchema": "api/NotificationPreferences", + "NotificationSchema": "api/Notification", + "ODataConfig": "api/ODataConfig", + "ODataConfigSchema": "api/ODataConfig", + "ODataError": "api/ODataError", + "ODataErrorSchema": "api/ODataError", + "ODataFilterFunction": "api/ODataFilterFunction", + "ODataFilterFunctionSchema": "api/ODataFilterFunction", + "ODataMetadata": "api/ODataMetadata", + "ODataMetadataSchema": "api/ODataMetadata", + "ODataQuery": "api/ODataQuery", + "ODataQueryAdapter": "api/ODataQueryAdapter", + "ODataQueryAdapterSchema": "api/ODataQueryAdapter", + "ODataQuerySchema": "api/ODataQuery", + "ODataResponse": "api/ODataResponse", + "ODataResponseSchema": "api/ODataResponse", + "ObjectDefinitionResponse": "api/ObjectDefinitionResponse", + "ObjectDefinitionResponseSchema": "api/ObjectDefinitionResponse", + "ObjectSortability": "api/ObjectSortability", + "ObjectSortabilitySchema": "api/ObjectSortability", + "OpenApiGenerationConfig": "api/OpenApiGenerationConfig", + "OpenApiGenerationConfigSchema": "api/OpenApiGenerationConfig", + "OpenApiSecurityScheme": "api/OpenApiSecurityScheme", + "OpenApiSecuritySchemeSchema": "api/OpenApiSecurityScheme", + "OpenApiServer": "api/OpenApiServer", + "OpenApiServerSchema": "api/OpenApiServer", + "OpenApiSpec": "api/OpenApiSpec", + "OpenApiSpecSchema": "api/OpenApiSpec", + "OperatorMapping": "api/OperatorMapping", + "OperatorMappingSchema": "api/OperatorMapping", + "PackageApiErrorCode": "api/PackageApiErrorCode", + "PackageExportManifest": "api/PackageExportManifest", + "PackageExportManifestSchema": "api/PackageExportManifest", + "PackageInstallRequest": "api/PackageInstallRequest", + "PackageInstallRequestSchema": "api/PackageInstallRequest", + "PackageInstallResponse": "api/PackageInstallResponse", + "PackageInstallResponseSchema": "api/PackageInstallResponse", + "PackagePathParams": "api/PackagePathParams", + "PackagePathParamsSchema": "api/PackagePathParams", + "PackageRollbackRequest": "api/PackageRollbackRequest", + "PackageRollbackRequestSchema": "api/PackageRollbackRequest", + "PackageUpgradeRequest": "api/PackageUpgradeRequest", + "PackageUpgradeRequestSchema": "api/PackageUpgradeRequest", + "PackageUpgradeResponse": "api/PackageUpgradeResponse", + "PackageUpgradeResponseSchema": "api/PackageUpgradeResponse", + "PingMessage": "api/PingMessage", + "PingMessageSchema": "api/PingMessage", + "PongMessage": "api/PongMessage", + "PongMessageSchema": "api/PongMessage", + "PresenceMessage": "api/PresenceMessage", + "PresenceMessageSchema": "api/PresenceMessage", + "PresenceState": "api/PresenceState", + "PresenceStateSchema": "api/PresenceState", + "PresenceStatus": "api/PresenceStatus", + "PresenceUpdate": "api/PresenceUpdate", + "PresenceUpdateSchema": "api/PresenceUpdate", + "PresignedUrlResponse": "api/PresignedUrlResponse", + "PresignedUrlResponseSchema": "api/PresignedUrlResponse", + "PublishMetaItemRequest": "api/PublishMetaItemRequest", + "PublishMetaItemRequestSchema": "api/PublishMetaItemRequest", + "PublishMetaItemResponse": "api/PublishMetaItemResponse", + "PublishMetaItemResponseSchema": "api/PublishMetaItemResponse", + "PublishPackageDraftsResponse": "api/PublishPackageDraftsResponse", + "PublishPackageDraftsResponseSchema": "api/PublishPackageDraftsResponse", + "QueryAdapterConfig": "api/QueryAdapterConfig", + "QueryAdapterConfigSchema": "api/QueryAdapterConfig", + "QueryAdapterTarget": "api/QueryAdapterTarget", + "QueryAdapterTargetSchema": "api/QueryAdapterTarget", + "QueryOptimizationConfig": "api/QueryOptimizationConfig", + "QueryOptimizationConfigSchema": "api/QueryOptimizationConfig", + "RawUploadResponse": "api/RawUploadResponse", + "RawUploadResponseSchema": "api/RawUploadResponse", + "RealtimeConfig": "api/RealtimeConfig", + "RealtimeConfigSchema": "api/RealtimeConfig", + "RealtimeConnectRequest": "api/RealtimeConnectRequest", + "RealtimeConnectRequestSchema": "api/RealtimeConnectRequest", + "RealtimeConnectResponse": "api/RealtimeConnectResponse", + "RealtimeConnectResponseSchema": "api/RealtimeConnectResponse", + "RealtimeDisconnectRequest": "api/RealtimeDisconnectRequest", + "RealtimeDisconnectRequestSchema": "api/RealtimeDisconnectRequest", + "RealtimeDisconnectResponse": "api/RealtimeDisconnectResponse", + "RealtimeDisconnectResponseSchema": "api/RealtimeDisconnectResponse", + "RealtimeEvent": "api/RealtimeEvent", + "RealtimeEventSchema": "api/RealtimeEvent", + "RealtimeEventType": "api/RealtimeEventType", + "RealtimePresence": "api/RealtimePresence", + "RealtimePresenceSchema": "api/RealtimePresence", + "RealtimeRecordAction": "api/RealtimeRecordAction", + "RealtimeSubscribeRequest": "api/RealtimeSubscribeRequest", + "RealtimeSubscribeRequestSchema": "api/RealtimeSubscribeRequest", + "RealtimeSubscribeResponse": "api/RealtimeSubscribeResponse", + "RealtimeSubscribeResponseSchema": "api/RealtimeSubscribeResponse", + "RealtimeUnsubscribeRequest": "api/RealtimeUnsubscribeRequest", + "RealtimeUnsubscribeRequestSchema": "api/RealtimeUnsubscribeRequest", + "RealtimeUnsubscribeResponse": "api/RealtimeUnsubscribeResponse", + "RealtimeUnsubscribeResponseSchema": "api/RealtimeUnsubscribeResponse", + "ReassignOrphanedMetadataResponse": "api/ReassignOrphanedMetadataResponse", + "ReassignOrphanedMetadataResponseSchema": "api/ReassignOrphanedMetadataResponse", + "RecordData": "api/RecordData", + "RecordDataSchema": "api/RecordData", + "RefreshTokenRequest": "api/RefreshTokenRequest", + "RefreshTokenRequestSchema": "api/RefreshTokenRequest", + "RegisterDeviceRequest": "api/RegisterDeviceRequest", + "RegisterDeviceRequestSchema": "api/RegisterDeviceRequest", + "RegisterDeviceResponse": "api/RegisterDeviceResponse", + "RegisterDeviceResponseSchema": "api/RegisterDeviceResponse", + "RegisterRequest": "api/RegisterRequest", + "RegisterRequestSchema": "api/RegisterRequest", + "RejectAiPendingActionResponse": "api/RejectAiPendingActionResponse", + "RejectAiPendingActionResponseSchema": "api/RejectAiPendingActionResponse", + "RequestValidationConfig": "api/RequestValidationConfig", + "RequestValidationConfigSchema": "api/RequestValidationConfig", + "ResolveDependenciesRequest": "api/ResolveDependenciesRequest", + "ResolveDependenciesRequestSchema": "api/ResolveDependenciesRequest", + "ResolveDependenciesResponse": "api/ResolveDependenciesResponse", + "ResolveDependenciesResponseSchema": "api/ResolveDependenciesResponse", + "ResponseEnvelopeConfig": "api/ResponseEnvelopeConfig", + "ResponseEnvelopeConfigSchema": "api/ResponseEnvelopeConfig", + "RestApiConfig": "api/RestApiConfig", + "RestApiConfigSchema": "api/RestApiConfig", + "RestApiEndpoint": "api/RestApiEndpoint", + "RestApiEndpointSchema": "api/RestApiEndpoint", + "RestApiPluginConfig": "api/RestApiPluginConfig", + "RestApiPluginConfigSchema": "api/RestApiPluginConfig", + "RestApiRouteCategory": "api/RestApiRouteCategory", + "RestApiRouteRegistration": "api/RestApiRouteRegistration", + "RestApiRouteRegistrationSchema": "api/RestApiRouteRegistration", + "RestQueryAdapter": "api/RestQueryAdapter", + "RestQueryAdapterSchema": "api/RestQueryAdapter", + "RestServerConfig": "api/RestServerConfig", + "RestServerConfigSchema": "api/RestServerConfig", + "RetryStrategy": "api/RetryStrategy", + "RevertPackageCommitResponse": "api/RevertPackageCommitResponse", + "RevertPackageCommitResponseSchema": "api/RevertPackageCommitResponse", + "RollbackMetaItemResponse": "api/RollbackMetaItemResponse", + "RollbackMetaItemResponseSchema": "api/RollbackMetaItemResponse", + "RollbackToPackageCommitResponse": "api/RollbackToPackageCommitResponse", + "RollbackToPackageCommitResponseSchema": "api/RollbackToPackageCommitResponse", + "RouteCategory": "api/RouteCategory", + "RouteCoverageEntry": "api/RouteCoverageEntry", + "RouteCoverageEntrySchema": "api/RouteCoverageEntry", + "RouteCoverageReport": "api/RouteCoverageReport", + "RouteCoverageReportSchema": "api/RouteCoverageReport", + "RouteDefinition": "api/RouteDefinition", + "RouteDefinitionSchema": "api/RouteDefinition", + "RouteGenerationConfig": "api/RouteGenerationConfig", + "RouteGenerationConfigSchema": "api/RouteGenerationConfig", + "RouteHealthEntry": "api/RouteHealthEntry", + "RouteHealthEntrySchema": "api/RouteHealthEntry", + "RouteHealthReport": "api/RouteHealthReport", + "RouteHealthReportSchema": "api/RouteHealthReport", + "RouterConfig": "api/RouterConfig", + "RouterConfigSchema": "api/RouterConfig", + "RuntimeAuthoringIssue": "api/RuntimeAuthoringIssue", + "RuntimeAuthoringIssueSchema": "api/RuntimeAuthoringIssue", + "SaveMetaItemRequest": "api/SaveMetaItemRequest", + "SaveMetaItemRequestSchema": "api/SaveMetaItemRequest", + "SaveMetaItemResponse": "api/SaveMetaItemResponse", + "SaveMetaItemResponseSchema": "api/SaveMetaItemResponse", + "ScheduleExportRequest": "api/ScheduleExportRequest", + "ScheduleExportRequestSchema": "api/ScheduleExportRequest", + "ScheduleExportResponse": "api/ScheduleExportResponse", + "ScheduleExportResponseSchema": "api/ScheduleExportResponse", + "ScheduledExport": "api/ScheduledExport", + "ScheduledExportSchema": "api/ScheduledExport", + "SearchAllHit": "api/SearchAllHit", + "SearchAllHitSchema": "api/SearchAllHit", + "SearchAllResponse": "api/SearchAllResponse", + "SearchAllResponseSchema": "api/SearchAllResponse", + "ServiceInfo": "api/ServiceInfo", + "ServiceInfoSchema": "api/ServiceInfo", + "ServiceSelfInfo": "api/ServiceSelfInfo", + "ServiceSelfInfoSchema": "api/ServiceSelfInfo", + "ServiceStatus": "api/ServiceStatus", + "Session": "api/Session", + "SessionResponse": "api/SessionResponse", + "SessionResponseSchema": "api/SessionResponse", + "SessionSchema": "api/Session", + "SessionUser": "api/SessionUser", + "SessionUserSchema": "api/SessionUser", + "SetPresenceRequest": "api/SetPresenceRequest", + "SetPresenceRequestSchema": "api/SetPresenceRequest", + "SetPresenceResponse": "api/SetPresenceResponse", + "SetPresenceResponseSchema": "api/SetPresenceResponse", + "SimpleCursorPosition": "api/SimpleCursorPosition", + "SimpleCursorPositionSchema": "api/SimpleCursorPosition", + "SimplePresenceState": "api/SimplePresenceState", + "SimplePresenceStateSchema": "api/SimplePresenceState", + "SingleRecordResponse": "api/SingleRecordResponse", + "SingleRecordResponseSchema": "api/SingleRecordResponse", + "StandardErrorCode": "api/StandardErrorCode", + "StandardSynonymWaiver": "api/StandardSynonymWaiver", + "StandardSynonymWaiverSchema": "api/StandardSynonymWaiver", + "SubscribeMessage": "api/SubscribeMessage", + "SubscribeMessageSchema": "api/SubscribeMessage", + "Subscription": "api/Subscription", + "SubscriptionEvent": "api/SubscriptionEvent", + "SubscriptionEventSchema": "api/SubscriptionEvent", + "SubscriptionSchema": "api/Subscription", + "ToggleFlowRequest": "api/ToggleFlowRequest", + "ToggleFlowRequestSchema": "api/ToggleFlowRequest", + "ToggleFlowResponse": "api/ToggleFlowResponse", + "ToggleFlowResponseSchema": "api/ToggleFlowResponse", + "TransportProtocol": "api/TransportProtocol", + "TriggerFlowRequest": "api/TriggerFlowRequest", + "TriggerFlowRequestSchema": "api/TriggerFlowRequest", + "TriggerFlowResponse": "api/TriggerFlowResponse", + "TriggerFlowResponseSchema": "api/TriggerFlowResponse", + "UndoImportJobResponse": "api/UndoImportJobResponse", + "UndoImportJobResponseSchema": "api/UndoImportJobResponse", + "UninstallPackageApiRequest": "api/UninstallPackageApiRequest", + "UninstallPackageApiRequestSchema": "api/UninstallPackageApiRequest", + "UninstallPackageApiResponse": "api/UninstallPackageApiResponse", + "UninstallPackageApiResponseSchema": "api/UninstallPackageApiResponse", + "UnregisterDeviceRequest": "api/UnregisterDeviceRequest", + "UnregisterDeviceRequestSchema": "api/UnregisterDeviceRequest", + "UnregisterDeviceResponse": "api/UnregisterDeviceResponse", + "UnregisterDeviceResponseSchema": "api/UnregisterDeviceResponse", + "UnsubscribeMessage": "api/UnsubscribeMessage", + "UnsubscribeMessageSchema": "api/UnsubscribeMessage", + "UnsubscribeRequest": "api/UnsubscribeRequest", + "UnsubscribeRequestSchema": "api/UnsubscribeRequest", + "UpdateAiConversationRequest": "api/UpdateAiConversationRequest", + "UpdateAiConversationRequestSchema": "api/UpdateAiConversationRequest", + "UpdateDataRequest": "api/UpdateDataRequest", + "UpdateDataRequestSchema": "api/UpdateDataRequest", + "UpdateDataResponse": "api/UpdateDataResponse", + "UpdateDataResponseSchema": "api/UpdateDataResponse", + "UpdateFlowRequest": "api/UpdateFlowRequest", + "UpdateFlowRequestSchema": "api/UpdateFlowRequest", + "UpdateFlowResponse": "api/UpdateFlowResponse", + "UpdateFlowResponseSchema": "api/UpdateFlowResponse", + "UpdateManyDataRequest": "api/UpdateManyDataRequest", + "UpdateManyDataRequestSchema": "api/UpdateManyDataRequest", + "UpdateManyDataResponse": "api/UpdateManyDataResponse", + "UpdateManyDataResponseSchema": "api/UpdateManyDataResponse", + "UpdateManyRecord": "api/UpdateManyRecord", + "UpdateManyRecordSchema": "api/UpdateManyRecord", + "UpdateManyRequest": "api/UpdateManyRequest", + "UpdateManyRequestSchema": "api/UpdateManyRequest", + "UpdateNotificationPreferencesRequest": "api/UpdateNotificationPreferencesRequest", + "UpdateNotificationPreferencesRequestSchema": "api/UpdateNotificationPreferencesRequest", + "UpdateNotificationPreferencesResponse": "api/UpdateNotificationPreferencesResponse", + "UpdateNotificationPreferencesResponseSchema": "api/UpdateNotificationPreferencesResponse", + "UpdateRequest": "api/UpdateRequest", + "UpdateRequestSchema": "api/UpdateRequest", + "UploadArtifactRequest": "api/UploadArtifactRequest", + "UploadArtifactRequestSchema": "api/UploadArtifactRequest", + "UploadArtifactResponse": "api/UploadArtifactResponse", + "UploadArtifactResponseSchema": "api/UploadArtifactResponse", + "UploadChunkRequest": "api/UploadChunkRequest", + "UploadChunkRequestSchema": "api/UploadChunkRequest", + "UploadChunkResponse": "api/UploadChunkResponse", + "UploadChunkResponseSchema": "api/UploadChunkResponse", + "UploadProgress": "api/UploadProgress", + "UploadProgressSchema": "api/UploadProgress", + "UserProfileResponse": "api/UserProfileResponse", + "UserProfileResponseSchema": "api/UserProfileResponse", + "ValidateDataIssue": "api/ValidateDataIssue", + "ValidateDataIssueSchema": "api/ValidateDataIssue", + "ValidateDataRequest": "api/ValidateDataRequest", + "ValidateDataRequestSchema": "api/ValidateDataRequest", + "ValidateDataResponse": "api/ValidateDataResponse", + "ValidateDataResponseSchema": "api/ValidateDataResponse", + "ValidationMode": "api/ValidationMode", + "VersionDefinition": "api/VersionDefinition", + "VersionDefinitionSchema": "api/VersionDefinition", + "VersionNegotiationResponse": "api/VersionNegotiationResponse", + "VersionNegotiationResponseSchema": "api/VersionNegotiationResponse", + "VersionStatus": "api/VersionStatus", + "VersioningConfig": "api/VersioningConfig", + "VersioningConfigSchema": "api/VersioningConfig", + "VersioningStrategy": "api/VersioningStrategy", + "WebSocketConfig": "api/WebSocketConfig", + "WebSocketConfigSchema": "api/WebSocketConfig", + "WebSocketEvent": "api/WebSocketEvent", + "WebSocketEventSchema": "api/WebSocketEvent", + "WebSocketMessage": "api/WebSocketMessage", + "WebSocketMessageSchema": "api/WebSocketMessage", + "WebSocketMessageType": "api/WebSocketMessageType", + "WebSocketPresenceStatus": "api/WebSocketPresenceStatus", + "WebSocketServerConfig": "api/WebSocketServerConfig", + "WebSocketServerConfigSchema": "api/WebSocketServerConfig", + "WellKnownCapabilities": "api/WellKnownCapabilities", + "WellKnownCapabilitiesSchema": "api/WellKnownCapabilities" + }, + "collisions": [ + "BaseWebSocketMessage" + ] +} diff --git a/packages/spec/declaration-map/automation.json b/packages/spec/declaration-map/automation.json new file mode 100644 index 0000000000..40825ab452 --- /dev/null +++ b/packages/spec/declaration-map/automation.json @@ -0,0 +1,136 @@ +{ + "description": "TS declaration name → spec registry name (def key) for the schemas @objectstack/spec publishes: entries['ObjectSchemaBase'] === 'data/Object'. Composed from json-schema.manifest/ (the def keys), export-origins/ (which declaration each export resolves to), and a syntactic unwinding of wrapper initializers that recovers module-private base declarations (the ObjectSchemaBase case — see scripts/build-declaration-map.ts). A name that maps to two different def keys is DROPPED into `collisions` rather than guessed, so a lookup miss means \"not known to be an authorable container\". Consumers hold a changed line’s enclosing declaration name and ask which authorable container it declares (docs-audit anchor qualification is the funding one). Generated — never hand-edited; regenerate with `pnpm --filter @objectstack/spec gen:declaration-map` and read the diff.", + "category": "automation", + "entries": { + "ActionCategory": "automation/ActionCategory", + "ActionCategorySchema": "automation/ActionCategory", + "ActionDescriptor": "automation/ActionDescriptor", + "ActionDescriptorSchema": "automation/ActionDescriptor", + "ActionParadigm": "automation/ActionParadigm", + "ActionParadigmSchema": "automation/ActionParadigm", + "ActionRef": "automation/ActionRef", + "ActionRefSchema": "automation/ActionRef", + "ApprovalDecision": "automation/ApprovalDecision", + "ApprovalEscalation": "automation/ApprovalEscalation", + "ApprovalEscalationSchema": "automation/ApprovalEscalation", + "ApprovalNodeApprover": "automation/ApprovalNodeApprover", + "ApprovalNodeApproverSchema": "automation/ApprovalNodeApprover", + "ApprovalNodeConfig": "automation/ApprovalNodeConfig", + "ApprovalNodeConfigSchema": "automation/ApprovalNodeConfig", + "ApproverType": "automation/ApproverType", + "BpmnDiagnostic": "automation/BpmnDiagnostic", + "BpmnDiagnosticSchema": "automation/BpmnDiagnostic", + "BpmnElementMapping": "automation/BpmnElementMapping", + "BpmnElementMappingSchema": "automation/BpmnElementMapping", + "BpmnExportOptions": "automation/BpmnExportOptions", + "BpmnExportOptionsSchema": "automation/BpmnExportOptions", + "BpmnImportOptions": "automation/BpmnImportOptions", + "BpmnImportOptionsSchema": "automation/BpmnImportOptions", + "BpmnInteropResult": "automation/BpmnInteropResult", + "BpmnInteropResultSchema": "automation/BpmnInteropResult", + "BpmnUnmappedStrategy": "automation/BpmnUnmappedStrategy", + "BpmnUnmappedStrategySchema": "automation/BpmnUnmappedStrategy", + "BpmnVersion": "automation/BpmnVersion", + "BpmnVersionSchema": "automation/BpmnVersion", + "Checkpoint": "automation/Checkpoint", + "CheckpointSchema": "automation/Checkpoint", + "ConcurrencyPolicy": "automation/ConcurrencyPolicy", + "ConcurrencyPolicySchema": "automation/ConcurrencyPolicy", + "CreateRecordConfig": "automation/CreateRecordConfig", + "CreateRecordConfigSchema": "automation/CreateRecordConfig", + "DecisionCondition": "automation/DecisionCondition", + "DecisionConditionSchema": "automation/DecisionCondition", + "DecisionConfig": "automation/DecisionConfig", + "DecisionConfigSchema": "automation/DecisionConfig", + "DecisionOutputDef": "automation/DecisionOutputDef", + "DecisionOutputDefSchema": "automation/DecisionOutputDef", + "DeleteRecordConfig": "automation/DeleteRecordConfig", + "DeleteRecordConfigSchema": "automation/DeleteRecordConfig", + "ExecutionError": "automation/ExecutionError", + "ExecutionErrorSchema": "automation/ExecutionError", + "ExecutionErrorSeverity": "automation/ExecutionErrorSeverity", + "ExecutionLog": "automation/ExecutionLog", + "ExecutionLogSchema": "automation/ExecutionLog", + "ExecutionStatus": "automation/ExecutionStatus", + "ExecutionStepLog": "automation/ExecutionStepLog", + "ExecutionStepLogSchema": "automation/ExecutionStepLog", + "ExecutionStepMetrics": "automation/ExecutionStepMetrics", + "ExecutionStepMetricsSchema": "automation/ExecutionStepMetrics", + "ExecutionStepSkipReason": "automation/ExecutionStepSkipReason", + "ExecutionStepSkipReasonSchema": "automation/ExecutionStepSkipReason", + "Flow": "automation/Flow", + "FlowEdge": "automation/FlowEdge", + "FlowEdgeSchema": "automation/FlowEdge", + "FlowFunctionEffect": "automation/FlowFunctionEffect", + "FlowFunctionEffectSchema": "automation/FlowFunctionEffect", + "FlowNode": "automation/FlowNode", + "FlowNodeAction": "automation/FlowNodeAction", + "FlowNodeSchema": "automation/FlowNode", + "FlowRegion": "automation/FlowRegion", + "FlowRegionSchema": "automation/FlowRegion", + "FlowRunGateSummary": "automation/FlowRunGateSummary", + "FlowRunGateSummarySchema": "automation/FlowRunGateSummary", + "FlowRunNodeSummary": "automation/FlowRunNodeSummary", + "FlowRunNodeSummarySchema": "automation/FlowRunNodeSummary", + "FlowRunSummary": "automation/FlowRunSummary", + "FlowRunSummarySchema": "automation/FlowRunSummary", + "FlowSchema": "automation/Flow", + "FlowVariableSchema": "automation/FlowVariable", + "FlowVersionHistory": "automation/FlowVersionHistory", + "FlowVersionHistorySchema": "automation/FlowVersionHistory", + "GetRecordConfig": "automation/GetRecordConfig", + "GetRecordConfigSchema": "automation/GetRecordConfig", + "GuardRef": "automation/GuardRef", + "GuardRefSchema": "automation/GuardRef", + "HttpConfig": "automation/HttpConfig", + "HttpConfigSchema": "automation/HttpConfig", + "LoopConfig": "automation/LoopConfig", + "LoopConfigSchema": "automation/LoopConfig", + "MapConfig": "automation/MapConfig", + "MapConfigSchema": "automation/MapConfig", + "NodeExecutorDescriptor": "automation/NodeExecutorDescriptor", + "NodeExecutorDescriptorSchema": "automation/NodeExecutorDescriptor", + "NotifyConfig": "automation/NotifyConfig", + "NotifyConfigSchema": "automation/NotifyConfig", + "ParallelBranch": "automation/ParallelBranch", + "ParallelBranchSchema": "automation/ParallelBranch", + "ParallelConfig": "automation/ParallelConfig", + "ParallelConfigSchema": "automation/ParallelConfig", + "ScheduleState": "automation/ScheduleState", + "ScheduleStateSchema": "automation/ScheduleState", + "ScreenConfig": "automation/ScreenConfig", + "ScreenConfigSchema": "automation/ScreenConfig", + "ScreenFieldConfig": "automation/ScreenFieldConfig", + "ScreenFieldConfigSchema": "automation/ScreenFieldConfig", + "ScriptConfig": "automation/ScriptConfig", + "ScriptConfigSchema": "automation/ScriptConfig", + "StateMachineSchema": "automation/StateMachine", + "StateNode": "automation/StateNode", + "StateNodeSchema": "automation/StateNode", + "SubflowConfig": "automation/SubflowConfig", + "SubflowConfigSchema": "automation/SubflowConfig", + "TimeRelativeTrigger": "automation/TimeRelativeTrigger", + "TimeRelativeTriggerSchema": "automation/TimeRelativeTrigger", + "Transition": "automation/Transition", + "TransitionSchema": "automation/Transition", + "TryCatchConfig": "automation/TryCatchConfig", + "TryCatchConfigSchema": "automation/TryCatchConfig", + "UpdateRecordConfig": "automation/UpdateRecordConfig", + "UpdateRecordConfigSchema": "automation/UpdateRecordConfig", + "WaitEventType": "automation/WaitEventType", + "WaitEventTypeSchema": "automation/WaitEventType", + "WaitExecutorConfig": "automation/WaitExecutorConfig", + "WaitExecutorConfigSchema": "automation/WaitExecutorConfig", + "WaitResumePayload": "automation/WaitResumePayload", + "WaitResumePayloadSchema": "automation/WaitResumePayload", + "WaitTimeoutBehavior": "automation/WaitTimeoutBehavior", + "WaitTimeoutBehaviorSchema": "automation/WaitTimeoutBehavior", + "Webhook": "automation/Webhook", + "WebhookSchema": "automation/Webhook", + "WebhookTriggerType": "automation/WebhookTriggerType" + }, + "collisions": [ + "RetryPolicy", + "RetryPolicySchema" + ] +} diff --git a/packages/spec/declaration-map/cloud.json b/packages/spec/declaration-map/cloud.json new file mode 100644 index 0000000000..f938ca97d3 --- /dev/null +++ b/packages/spec/declaration-map/cloud.json @@ -0,0 +1,193 @@ +{ + "description": "TS declaration name → spec registry name (def key) for the schemas @objectstack/spec publishes: entries['ObjectSchemaBase'] === 'data/Object'. Composed from json-schema.manifest/ (the def keys), export-origins/ (which declaration each export resolves to), and a syntactic unwinding of wrapper initializers that recovers module-private base declarations (the ObjectSchemaBase case — see scripts/build-declaration-map.ts). A name that maps to two different def keys is DROPPED into `collisions` rather than guessed, so a lookup miss means \"not known to be an authorable container\". Consumers hold a changed line’s enclosing declaration name and ask which authorable container it declares (docs-audit anchor qualification is the funding one). Generated — never hand-edited; regenerate with `pnpm --filter @objectstack/spec gen:declaration-map` and read the diff.", + "category": "cloud", + "entries": { + "AnalyticsTimeRange": "cloud/AnalyticsTimeRange", + "AnalyticsTimeRangeSchema": "cloud/AnalyticsTimeRange", + "AppDiscoveryRequest": "cloud/AppDiscoveryRequest", + "AppDiscoveryRequestSchema": "cloud/AppDiscoveryRequest", + "AppDiscoveryResponse": "cloud/AppDiscoveryResponse", + "AppDiscoveryResponseSchema": "cloud/AppDiscoveryResponse", + "AppSubscription": "cloud/AppSubscription", + "AppSubscriptionSchema": "cloud/AppSubscription", + "ArtifactDownloadResponse": "cloud/ArtifactDownloadResponse", + "ArtifactDownloadResponseSchema": "cloud/ArtifactDownloadResponse", + "ArtifactReference": "cloud/ArtifactReference", + "ArtifactReferenceSchema": "cloud/ArtifactReference", + "CreateListingRequest": "cloud/CreateListingRequest", + "CreateListingRequestSchema": "cloud/CreateListingRequest", + "CreatePackageRequest": "cloud/CreatePackageRequest", + "CreatePackageRequestSchema": "cloud/CreatePackageRequest", + "CreatePackageVersionRequest": "cloud/CreatePackageVersionRequest", + "CreatePackageVersionRequestSchema": "cloud/CreatePackageVersionRequest", + "CuratedCollection": "cloud/CuratedCollection", + "CuratedCollectionSchema": "cloud/CuratedCollection", + "Environment": "cloud/Environment", + "EnvironmentCredential": "cloud/EnvironmentCredential", + "EnvironmentCredentialSchema": "cloud/EnvironmentCredential", + "EnvironmentCredentialStatus": "cloud/EnvironmentCredentialStatus", + "EnvironmentCredentialStatusSchema": "cloud/EnvironmentCredentialStatus", + "EnvironmentDriver": "cloud/EnvironmentDriver", + "EnvironmentDriverSchema": "cloud/EnvironmentDriver", + "EnvironmentMember": "cloud/EnvironmentMember", + "EnvironmentMemberSchema": "cloud/EnvironmentMember", + "EnvironmentPackageInstallation": "cloud/EnvironmentPackageInstallation", + "EnvironmentPackageInstallationSchema": "cloud/EnvironmentPackageInstallation", + "EnvironmentPackageStatus": "cloud/EnvironmentPackageStatus", + "EnvironmentPackageStatusSchema": "cloud/EnvironmentPackageStatus", + "EnvironmentRole": "cloud/EnvironmentRole", + "EnvironmentRoleSchema": "cloud/EnvironmentRole", + "EnvironmentSchema": "cloud/Environment", + "EnvironmentStatus": "cloud/EnvironmentStatus", + "EnvironmentStatusSchema": "cloud/EnvironmentStatus", + "EnvironmentType": "cloud/EnvironmentType", + "EnvironmentTypeSchema": "cloud/EnvironmentType", + "EnvironmentVisibility": "cloud/EnvironmentVisibility", + "EnvironmentVisibilitySchema": "cloud/EnvironmentVisibility", + "FeaturedListing": "cloud/FeaturedListing", + "FeaturedListingSchema": "cloud/FeaturedListing", + "InstallPackageToEnvironmentRequest": "cloud/InstallPackageToEnvironmentRequest", + "InstallPackageToEnvironmentRequestSchema": "cloud/InstallPackageToEnvironmentRequest", + "InstalledAppSummary": "cloud/InstalledAppSummary", + "InstalledAppSummarySchema": "cloud/InstalledAppSummary", + "ListEnvironmentPackagesResponse": "cloud/ListEnvironmentPackagesResponse", + "ListEnvironmentPackagesResponseSchema": "cloud/ListEnvironmentPackagesResponse", + "ListInstalledAppsRequest": "cloud/ListInstalledAppsRequest", + "ListInstalledAppsRequestSchema": "cloud/ListInstalledAppsRequest", + "ListInstalledAppsResponse": "cloud/ListInstalledAppsResponse", + "ListInstalledAppsResponseSchema": "cloud/ListInstalledAppsResponse", + "ListReviewsRequest": "cloud/ListReviewsRequest", + "ListReviewsRequestSchema": "cloud/ListReviewsRequest", + "ListReviewsResponse": "cloud/ListReviewsResponse", + "ListReviewsResponseSchema": "cloud/ListReviewsResponse", + "ListingActionRequest": "cloud/ListingActionRequest", + "ListingActionRequestSchema": "cloud/ListingActionRequest", + "ListingStatus": "cloud/ListingStatus", + "ListingStatusSchema": "cloud/ListingStatus", + "MarketplaceCategory": "cloud/MarketplaceCategory", + "MarketplaceCategorySchema": "cloud/MarketplaceCategory", + "MarketplaceHealthMetrics": "cloud/MarketplaceHealthMetrics", + "MarketplaceHealthMetricsSchema": "cloud/MarketplaceHealthMetrics", + "MarketplaceInstallRequest": "cloud/MarketplaceInstallRequest", + "MarketplaceInstallRequestSchema": "cloud/MarketplaceInstallRequest", + "MarketplaceInstallResponse": "cloud/MarketplaceInstallResponse", + "MarketplaceInstallResponseSchema": "cloud/MarketplaceInstallResponse", + "MarketplaceListing": "cloud/MarketplaceListing", + "MarketplaceListingSchema": "cloud/MarketplaceListing", + "MarketplaceSearchRequest": "cloud/MarketplaceSearchRequest", + "MarketplaceSearchRequestSchema": "cloud/MarketplaceSearchRequest", + "MarketplaceSearchResponse": "cloud/MarketplaceSearchResponse", + "MarketplaceSearchResponseSchema": "cloud/MarketplaceSearchResponse", + "Package": "cloud/Package", + "PackageCategory": "cloud/PackageCategory", + "PackageCategorySchema": "cloud/PackageCategory", + "PackageDependency": "cloud/PackageDependency", + "PackageDependencySchema": "cloud/PackageDependency", + "PackageInstallation": "cloud/PackageInstallation", + "PackageInstallationSchema": "cloud/PackageInstallation", + "PackageInstallationStatus": "cloud/PackageInstallationStatus", + "PackageInstallationStatusSchema": "cloud/PackageInstallationStatus", + "PackageLocale": "cloud/PackageLocale", + "PackageLocaleSchema": "cloud/PackageLocale", + "PackageManifest": "cloud/PackageManifest", + "PackageManifestSchema": "cloud/PackageManifest", + "PackagePublisher": "cloud/PackagePublisher", + "PackagePublisherSchema": "cloud/PackagePublisher", + "PackageSchema": "cloud/Package", + "PackageSubmission": "cloud/PackageSubmission", + "PackageSubmissionSchema": "cloud/PackageSubmission", + "PackageTranslation": "cloud/PackageTranslation", + "PackageTranslationSchema": "cloud/PackageTranslation", + "PackageTranslations": "cloud/PackageTranslations", + "PackageTranslationsSchema": "cloud/PackageTranslations", + "PackageVersion": "cloud/PackageVersion", + "PackageVersionSchema": "cloud/PackageVersion", + "PackageVersionStatus": "cloud/PackageVersionStatus", + "PackageVersionStatusSchema": "cloud/PackageVersionStatus", + "PackageVisibility": "cloud/PackageVisibility", + "PackageVisibilitySchema": "cloud/PackageVisibility", + "PolicyAction": "cloud/PolicyAction", + "PolicyActionSchema": "cloud/PolicyAction", + "PolicyViolationType": "cloud/PolicyViolationType", + "PolicyViolationTypeSchema": "cloud/PolicyViolationType", + "PricingModel": "cloud/PricingModel", + "PricingModelSchema": "cloud/PricingModel", + "ProvisionEnvironmentRequest": "cloud/ProvisionEnvironmentRequest", + "ProvisionEnvironmentRequestSchema": "cloud/ProvisionEnvironmentRequest", + "ProvisionEnvironmentResponse": "cloud/ProvisionEnvironmentResponse", + "ProvisionEnvironmentResponseSchema": "cloud/ProvisionEnvironmentResponse", + "ProvisionOrganizationRequest": "cloud/ProvisionOrganizationRequest", + "ProvisionOrganizationRequestSchema": "cloud/ProvisionOrganizationRequest", + "ProvisionOrganizationResponse": "cloud/ProvisionOrganizationResponse", + "ProvisionOrganizationResponseSchema": "cloud/ProvisionOrganizationResponse", + "ProvisionTenantRequest": "cloud/ProvisionTenantRequest", + "ProvisionTenantRequestSchema": "cloud/ProvisionTenantRequest", + "ProvisionTenantResponse": "cloud/ProvisionTenantResponse", + "ProvisionTenantResponseSchema": "cloud/ProvisionTenantResponse", + "PublishPackageVersionRequest": "cloud/PublishPackageVersionRequest", + "PublishPackageVersionRequestSchema": "cloud/PublishPackageVersionRequest", + "Publisher": "cloud/Publisher", + "PublisherProfile": "cloud/PublisherProfile", + "PublisherProfileSchema": "cloud/PublisherProfile", + "PublisherSchema": "cloud/Publisher", + "PublisherVerification": "cloud/PublisherVerification", + "PublisherVerificationSchema": "cloud/PublisherVerification", + "PublishingAnalyticsRequest": "cloud/PublishingAnalyticsRequest", + "PublishingAnalyticsRequestSchema": "cloud/PublishingAnalyticsRequest", + "PublishingAnalyticsResponse": "cloud/PublishingAnalyticsResponse", + "PublishingAnalyticsResponseSchema": "cloud/PublishingAnalyticsResponse", + "RecommendationReason": "cloud/RecommendationReason", + "RecommendationReasonSchema": "cloud/RecommendationReason", + "RecommendedApp": "cloud/RecommendedApp", + "RecommendedAppSchema": "cloud/RecommendedApp", + "RejectionReason": "cloud/RejectionReason", + "RejectionReasonSchema": "cloud/RejectionReason", + "ReleaseChannel": "cloud/ReleaseChannel", + "ReleaseChannelSchema": "cloud/ReleaseChannel", + "ReviewCriterion": "cloud/ReviewCriterion", + "ReviewCriterionSchema": "cloud/ReviewCriterion", + "ReviewDecision": "cloud/ReviewDecision", + "ReviewDecisionSchema": "cloud/ReviewDecision", + "ReviewModerationStatus": "cloud/ReviewModerationStatus", + "ReviewModerationStatusSchema": "cloud/ReviewModerationStatus", + "RollbackEnvironmentPackageRequest": "cloud/RollbackEnvironmentPackageRequest", + "RollbackEnvironmentPackageRequestSchema": "cloud/RollbackEnvironmentPackageRequest", + "SubmissionReview": "cloud/SubmissionReview", + "SubmissionReviewSchema": "cloud/SubmissionReview", + "SubmitReviewRequest": "cloud/SubmitReviewRequest", + "SubmitReviewRequestSchema": "cloud/SubmitReviewRequest", + "SubscriptionStatus": "cloud/SubscriptionStatus", + "SubscriptionStatusSchema": "cloud/SubscriptionStatus", + "TemplateManifest": "cloud/TemplateManifest", + "TemplateManifestSchema": "cloud/TemplateManifest", + "TenantContext": "cloud/TenantContext", + "TenantContextSchema": "cloud/TenantContext", + "TenantDatabase": "cloud/TenantDatabase", + "TenantDatabaseSchema": "cloud/TenantDatabase", + "TenantDatabaseStatus": "cloud/TenantDatabaseStatus", + "TenantDatabaseStatusSchema": "cloud/TenantDatabaseStatus", + "TenantIdentificationSource": "cloud/TenantIdentificationSource", + "TenantIdentificationSourceSchema": "cloud/TenantIdentificationSource", + "TenantPlan": "cloud/TenantPlan", + "TenantPlanSchema": "cloud/TenantPlan", + "TenantRoutingConfig": "cloud/TenantRoutingConfig", + "TenantRoutingConfigSchema": "cloud/TenantRoutingConfig", + "TimeSeriesPoint": "cloud/TimeSeriesPoint", + "TimeSeriesPointSchema": "cloud/TimeSeriesPoint", + "TrendingListing": "cloud/TrendingListing", + "TrendingListingSchema": "cloud/TrendingListing", + "UpdateListingRequest": "cloud/UpdateListingRequest", + "UpdateListingRequestSchema": "cloud/UpdateListingRequest", + "UpdatePackageRequest": "cloud/UpdatePackageRequest", + "UpdatePackageRequestSchema": "cloud/UpdatePackageRequest", + "UpdatePackageVersionRequest": "cloud/UpdatePackageVersionRequest", + "UpdatePackageVersionRequestSchema": "cloud/UpdatePackageVersionRequest", + "UpgradeEnvironmentPackageRequest": "cloud/UpgradeEnvironmentPackageRequest", + "UpgradeEnvironmentPackageRequestSchema": "cloud/UpgradeEnvironmentPackageRequest", + "UserReview": "cloud/UserReview", + "UserReviewSchema": "cloud/UserReview", + "VersionRelease": "cloud/VersionRelease", + "VersionReleaseSchema": "cloud/VersionRelease" + }, + "collisions": [] +} diff --git a/packages/spec/declaration-map/data.json b/packages/spec/declaration-map/data.json new file mode 100644 index 0000000000..125434a0de --- /dev/null +++ b/packages/spec/declaration-map/data.json @@ -0,0 +1,312 @@ +{ + "description": "TS declaration name → spec registry name (def key) for the schemas @objectstack/spec publishes: entries['ObjectSchemaBase'] === 'data/Object'. Composed from json-schema.manifest/ (the def keys), export-origins/ (which declaration each export resolves to), and a syntactic unwinding of wrapper initializers that recovers module-private base declarations (the ObjectSchemaBase case — see scripts/build-declaration-map.ts). A name that maps to two different def keys is DROPPED into `collisions` rather than guessed, so a lookup miss means \"not known to be an authorable container\". Consumers hold a changed line’s enclosing declaration name and ask which authorable container it declares (docs-audit anchor qualification is the funding one). Generated — never hand-edited; regenerate with `pnpm --filter @objectstack/spec gen:declaration-map` and read the diff.", + "category": "data", + "entries": { + "Address": "data/Address", + "AddressSchema": "data/Address", + "AddressValue": "data/AddressValue", + "AddressValueSchema": "data/AddressValue", + "AggregationFunction": "data/AggregationFunction", + "AggregationMetricType": "data/AggregationMetricType", + "AggregationNode": "data/AggregationNode", + "AggregationNodeSchema": "data/AggregationNode", + "AggregationPipeline": "data/AggregationPipeline", + "AggregationPipelineSchema": "data/AggregationPipeline", + "AggregationStage": "data/AggregationStage", + "AggregationStageSchema": "data/AggregationStage", + "AnalyticsQuery": "data/AnalyticsQuery", + "AnalyticsQuerySchema": "data/AnalyticsQuery", + "ApiMethod": "data/ApiMethod", + "ApiOperation": "data/ApiOperation", + "ApiOperationSchema": "data/ApiOperation", + "AutoPersistenceConfig": "data/AutoPersistenceConfig", + "AutoPersistenceConfigSchema": "data/AutoPersistenceConfig", + "BaseEngineOptions": "data/BaseEngineOptions", + "BaseEngineOptionsSchema": "data/BaseEngineOptions", + "BaseQuerySchema": "data/Query", + "CalendarDateValue": "data/CalendarDateValue", + "CalendarDateValueSchema": "data/CalendarDateValue", + "ClockTimeValue": "data/ClockTimeValue", + "ClockTimeValueSchema": "data/ClockTimeValue", + "ConditionalValidation": "data/ConditionalValidation", + "ConditionalValidationSchema": "data/ConditionalValidation", + "ConsistencyLevel": "data/ConsistencyLevel", + "ConsistencyLevelSchema": "data/ConsistencyLevel", + "ContextToken": "data/ContextToken", + "ContextTokenPlaceholder": "data/ContextTokenPlaceholder", + "ContextTokenPlaceholderSchema": "data/ContextTokenPlaceholder", + "ContextTokenSchema": "data/ContextToken", + "CrossFieldValidation": "data/CrossFieldValidation", + "CrossFieldValidationSchema": "data/CrossFieldValidation", + "Cube": "data/Cube", + "CubeJoin": "data/CubeJoin", + "CubeJoinSchema": "data/CubeJoin", + "CubeSchema": "data/Cube", + "CurrencyConfig": "data/CurrencyConfig", + "CurrencyConfigSchema": "data/CurrencyConfig", + "CurrencyValue": "data/CurrencyValue", + "CurrencyValueSchema": "data/CurrencyValue", + "DataEngineAggregateOptions": "data/DataEngineAggregateOptions", + "DataEngineAggregateOptionsSchema": "data/DataEngineAggregateOptions", + "DataEngineAggregateRequestSchema": "data/DataEngineAggregateRequest", + "DataEngineCountOptions": "data/DataEngineCountOptions", + "DataEngineCountOptionsSchema": "data/DataEngineCountOptions", + "DataEngineCountRequestSchema": "data/DataEngineCountRequest", + "DataEngineDeleteOptions": "data/DataEngineDeleteOptions", + "DataEngineDeleteOptionsSchema": "data/DataEngineDeleteOptions", + "DataEngineDeleteRequestSchema": "data/DataEngineDeleteRequest", + "DataEngineExecuteRequest": "data/DataEngineExecuteRequest", + "DataEngineExecuteRequestSchema": "data/DataEngineExecuteRequest", + "DataEngineFilter": "data/DataEngineFilter", + "DataEngineFilterSchema": "data/DataEngineFilter", + "DataEngineFindOneRequestSchema": "data/DataEngineFindOneRequest", + "DataEngineFindRequestSchema": "data/DataEngineFindRequest", + "DataEngineInsertOptions": "data/DataEngineInsertOptions", + "DataEngineInsertOptionsSchema": "data/DataEngineInsertOptions", + "DataEngineInsertRequest": "data/DataEngineInsertRequest", + "DataEngineInsertRequestSchema": "data/DataEngineInsertRequest", + "DataEngineQueryOptions": "data/DataEngineQueryOptions", + "DataEngineQueryOptionsSchema": "data/DataEngineQueryOptions", + "DataEngineRequest": "data/DataEngineRequest", + "DataEngineRequestSchema": "data/DataEngineRequest", + "DataEngineSort": "data/DataEngineSort", + "DataEngineSortSchema": "data/DataEngineSort", + "DataEngineUpdateOptions": "data/DataEngineUpdateOptions", + "DataEngineUpdateOptionsSchema": "data/DataEngineUpdateOptions", + "DataEngineUpdateRequestSchema": "data/DataEngineUpdateRequest", + "DataEngineVectorFindRequest": "data/DataEngineVectorFindRequest", + "DataEngineVectorFindRequestSchema": "data/DataEngineVectorFindRequest", + "DataTypeMapping": "data/DataTypeMapping", + "DataTypeMappingSchema": "data/DataTypeMapping", + "Datasource": "data/Datasource", + "DatasourceSchema": "data/Datasource", + "DateGranularity": "data/DateGranularity", + "DateMacroPlaceholder": "data/DateMacroPlaceholder", + "DateMacroPlaceholderSchema": "data/DateMacroPlaceholder", + "DateMacroToken": "data/DateMacroToken", + "DateMacroTokenSchema": "data/DateMacroToken", + "Dimension": "data/Dimension", + "DimensionSchema": "data/Dimension", + "DimensionType": "data/DimensionType", + "Document": "data/Document", + "DocumentSchema": "data/Document", + "DocumentSchemaValidation": "data/DocumentSchemaValidation", + "DocumentSchemaValidationSchema": "data/DocumentSchemaValidation", + "DocumentTemplate": "data/DocumentTemplate", + "DocumentTemplateSchema": "data/DocumentTemplate", + "DocumentVersion": "data/DocumentVersion", + "DocumentVersionSchema": "data/DocumentVersion", + "DriverCapabilities": "data/DriverCapabilities", + "DriverCapabilitiesSchema": "data/DriverCapabilities", + "DriverConfig": "data/DriverConfig", + "DriverConfigSchema": "data/DriverConfig", + "DriverDefinition": "data/DriverDefinition", + "DriverDefinitionSchema": "data/DriverDefinition", + "DriverOptions": "data/DriverOptions", + "DriverOptionsSchema": "data/DriverOptions", + "DriverSslToggle": "data/DriverSslToggle", + "DriverSslToggleSchema": "data/DriverSslToggle", + "DriverType": "data/DriverType", + "DroppedFieldsEvent": "data/DroppedFieldsEvent", + "DroppedFieldsEventSchema": "data/DroppedFieldsEvent", + "ESignatureConfig": "data/ESignatureConfig", + "ESignatureConfigSchema": "data/ESignatureConfig", + "EngineAggregateOptions": "data/EngineAggregateOptions", + "EngineAggregateOptionsSchema": "data/EngineAggregateOptions", + "EngineCountOptions": "data/EngineCountOptions", + "EngineCountOptionsSchema": "data/EngineCountOptions", + "EngineDeleteOptions": "data/EngineDeleteOptions", + "EngineDeleteOptionsSchema": "data/EngineDeleteOptions", + "EngineQueryOptions": "data/EngineQueryOptions", + "EngineQueryOptionsSchema": "data/EngineQueryOptions", + "EngineUpdateOptions": "data/EngineUpdateOptions", + "EngineUpdateOptionsSchema": "data/EngineUpdateOptions", + "EqualityOperatorSchema": "data/EqualityOperator", + "ExpressionBody": "data/ExpressionBody", + "ExpressionBodySchema": "data/ExpressionBody", + "ExternalCatalog": "data/ExternalCatalog", + "ExternalCatalogSchema": "data/ExternalCatalog", + "ExternalColumn": "data/ExternalColumn", + "ExternalColumnSchema": "data/ExternalColumn", + "ExternalDatasourceSettings": "data/ExternalDatasourceSettings", + "ExternalDatasourceSettingsSchema": "data/ExternalDatasourceSettings", + "ExternalTable": "data/ExternalTable", + "ExternalTableSchema": "data/ExternalTable", + "FeedFilterMode": "data/FeedFilterMode", + "FeedItemType": "data/FeedItemType", + "Field": "data/Field", + "FieldMaskingKeep": "data/FieldMaskingKeep", + "FieldMaskingKeepSchema": "data/FieldMaskingKeep", + "FieldMaskingRule": "data/FieldMaskingRule", + "FieldMaskingRuleSchema": "data/FieldMaskingRule", + "FieldNode": "data/FieldNode", + "FieldNodeSchema": "data/FieldNode", + "FieldReference": "data/FieldReference", + "FieldReferenceSchema": "data/FieldReference", + "FieldSchema": "data/Field", + "FieldType": "data/FieldType", + "FileLikeValue": "data/FileLikeValue", + "FileLikeValueSchema": "data/FileLikeValue", + "FilePersistenceConfig": "data/FilePersistenceConfig", + "FilePersistenceConfigSchema": "data/FilePersistenceConfig", + "FileReferenceIdValue": "data/FileReferenceIdValue", + "FileReferenceIdValueSchema": "data/FileReferenceIdValue", + "FileValue": "data/FileValue", + "FileValueSchema": "data/FileValue", + "FilterArray": "data/FilterArray", + "FilterArraySchema": "data/FilterArray", + "FilterCondition": "data/FilterCondition", + "FilterConditionSchema": "data/FilterCondition", + "FormatValidation": "data/FormatValidation", + "FormatValidationSchema": "data/FormatValidation", + "FullTextSearch": "data/FullTextSearch", + "FullTextSearchSchema": "data/FullTextSearch", + "GroupByNode": "data/GroupByNode", + "GroupByNodeSchema": "data/GroupByNode", + "HookBody": "data/HookBody", + "HookBodyCapability": "data/HookBodyCapability", + "HookBodySchema": "data/HookBody", + "HookContext": "data/HookContext", + "HookContextSchema": "data/HookContext", + "HookEvent": "data/HookEvent", + "ImportFieldMapping": "data/ImportFieldMapping", + "ImportFieldMappingSchema": "data/ImportFieldMapping", + "IndexSchema": "data/Index", + "InlineGridColumn": "data/InlineGridColumn", + "InlineGridColumnSchema": "data/InlineGridColumn", + "InstantValue": "data/InstantValue", + "InstantValueSchema": "data/InstantValue", + "JSONValidation": "data/JSONValidation", + "JSONValidationSchema": "data/JSONValidation", + "Lifecycle": "data/Lifecycle", + "LifecycleClass": "data/LifecycleClass", + "LifecycleClassSchema": "data/LifecycleClass", + "LifecycleSchema": "data/Lifecycle", + "LocalStoragePersistenceConfig": "data/LocalStoragePersistenceConfig", + "LocalStoragePersistenceConfigSchema": "data/LocalStoragePersistenceConfig", + "LocationCoordinates": "data/LocationCoordinates", + "LocationCoordinatesSchema": "data/LocationCoordinates", + "LocationValue": "data/LocationValue", + "LocationValueSchema": "data/LocationValue", + "Mapping": "data/Mapping", + "MappingSchema": "data/Mapping", + "Metric": "data/Metric", + "MetricSchema": "data/Metric", + "MongoConfig": "data/MongoConfig", + "MongoConfigSchema": "data/MongoConfig", + "MysqlConfig": "data/MysqlConfig", + "MysqlConfigSchema": "data/MysqlConfig", + "NoSQLDataTypeMapping": "data/NoSQLDataTypeMapping", + "NoSQLDataTypeMappingSchema": "data/NoSQLDataTypeMapping", + "NoSQLDatabaseType": "data/NoSQLDatabaseType", + "NoSQLDatabaseTypeSchema": "data/NoSQLDatabaseType", + "NoSQLDriverConfig": "data/NoSQLDriverConfig", + "NoSQLDriverConfigSchema": "data/NoSQLDriverConfig", + "NoSQLIndex": "data/NoSQLIndex", + "NoSQLIndexSchema": "data/NoSQLIndex", + "NoSQLIndexType": "data/NoSQLIndexType", + "NoSQLIndexTypeSchema": "data/NoSQLIndexType", + "NoSQLOperationType": "data/NoSQLOperationType", + "NoSQLOperationTypeSchema": "data/NoSQLOperationType", + "NoSQLQueryOptions": "data/NoSQLQueryOptions", + "NoSQLQueryOptionsSchema": "data/NoSQLQueryOptions", + "NoSQLTransactionOptions": "data/NoSQLTransactionOptions", + "NoSQLTransactionOptionsSchema": "data/NoSQLTransactionOptions", + "ObjectAccessConfig": "data/ObjectAccessConfig", + "ObjectAccessConfigSchema": "data/ObjectAccessConfig", + "ObjectCapabilities": "data/ObjectCapabilities", + "ObjectDependencyGraph": "data/ObjectDependencyGraph", + "ObjectDependencyGraphSchema": "data/ObjectDependencyGraph", + "ObjectDependencyNode": "data/ObjectDependencyNode", + "ObjectDependencyNodeSchema": "data/ObjectDependencyNode", + "ObjectExtension": "data/ObjectExtension", + "ObjectExtensionSchema": "data/ObjectExtension", + "ObjectExternalBinding": "data/ObjectExternalBinding", + "ObjectExternalBindingSchema": "data/ObjectExternalBinding", + "ObjectFieldGroup": "data/ObjectFieldGroup", + "ObjectFieldGroupSchema": "data/ObjectFieldGroup", + "ObjectOwnershipEnum": "data/ObjectOwnershipEnum", + "ObjectRequiredPermissions": "data/ObjectRequiredPermissions", + "ObjectRequiredPermissionsSchema": "data/ObjectRequiredPermissions", + "ObjectSchema": "data/Object", + "ObjectSchemaBase": "data/Object", + "PerOperationRequiredPermissions": "data/PerOperationRequiredPermissions", + "PerOperationRequiredPermissionsSchema": "data/PerOperationRequiredPermissions", + "PersistenceType": "data/PersistenceType", + "PersistenceTypeSchema": "data/PersistenceType", + "PoolConfig": "data/PoolConfig", + "PoolConfigSchema": "data/PoolConfig", + "PostgresConfig": "data/PostgresConfig", + "PostgresConfigSchema": "data/PostgresConfig", + "QueryFilter": "data/QueryFilter", + "QueryFilterSchema": "data/QueryFilter", + "QuerySchema": "data/Query", + "ReferenceIdValue": "data/ReferenceIdValue", + "ReferenceIdValueSchema": "data/ReferenceIdValue", + "ReferenceResolution": "data/ReferenceResolution", + "ReferenceResolutionError": "data/ReferenceResolutionError", + "ReferenceResolutionErrorSchema": "data/ReferenceResolutionError", + "ReferenceResolutionSchema": "data/ReferenceResolution", + "ReplicationConfig": "data/ReplicationConfig", + "ReplicationConfigSchema": "data/ReplicationConfig", + "RowCrudActionOverride": "data/RowCrudActionOverride", + "RowCrudActionOverrideSchema": "data/RowCrudActionOverride", + "SQLDialect": "data/SQLDialect", + "SQLDialectSchema": "data/SQLDialect", + "SQLDriverConfig": "data/SQLDriverConfig", + "SQLDriverConfigSchema": "data/SQLDriverConfig", + "SSLConfig": "data/SSLConfig", + "SSLConfigSchema": "data/SSLConfig", + "SchemaMode": "data/SchemaMode", + "SchemaModeSchema": "data/SchemaMode", + "ScriptBody": "data/ScriptBody", + "ScriptBodySchema": "data/ScriptBody", + "ScriptValidation": "data/ScriptValidation", + "ScriptValidationSchema": "data/ScriptValidation", + "Seed": "data/Seed", + "SeedIdentity": "data/SeedIdentity", + "SeedIdentitySchema": "data/SeedIdentity", + "SeedLoadResult": "data/SeedLoadResult", + "SeedLoadResultSchema": "data/SeedLoadResult", + "SeedLoaderConfig": "data/SeedLoaderConfig", + "SeedLoaderConfigSchema": "data/SeedLoaderConfig", + "SeedLoaderRequest": "data/SeedLoaderRequest", + "SeedLoaderRequestSchema": "data/SeedLoaderRequest", + "SeedLoaderResult": "data/SeedLoaderResult", + "SeedLoaderResultSchema": "data/SeedLoaderResult", + "SeedMode": "data/SeedMode", + "SeedSchema": "data/Seed", + "SelectOption": "data/SelectOption", + "SelectOptionSchema": "data/SelectOption", + "SetOperatorSchema": "data/SetOperator", + "ShardingConfig": "data/ShardingConfig", + "ShardingConfigSchema": "data/ShardingConfig", + "SortNode": "data/SortNode", + "SortNodeSchema": "data/SortNode", + "SpecialOperatorSchema": "data/SpecialOperator", + "SqlAutoMigrate": "data/SqlAutoMigrate", + "SqlAutoMigrateSchema": "data/SqlAutoMigrate", + "SqliteConfig": "data/SqliteConfig", + "SqliteConfigSchema": "data/SqliteConfig", + "SqliteWasmConfig": "data/SqliteWasmConfig", + "SqliteWasmConfigSchema": "data/SqliteWasmConfig", + "SqliteWasmPersistMode": "data/SqliteWasmPersistMode", + "SqliteWasmPersistModeSchema": "data/SqliteWasmPersistMode", + "StateMachineValidation": "data/StateMachineValidation", + "StateMachineValidationSchema": "data/StateMachineValidation", + "StringOperatorSchema": "data/StringOperator", + "TenancyConfig": "data/TenancyConfig", + "TenancyConfigSchema": "data/TenancyConfig", + "TimeUpdateInterval": "data/TimeUpdateInterval", + "TransformType": "data/TransformType", + "TursoConfig": "data/TursoConfig", + "TursoConfigSchema": "data/TursoConfig", + "TursoTransportMode": "data/TursoTransportMode", + "TursoTransportModeSchema": "data/TursoTransportMode", + "UniqueScope": "data/UniqueScope", + "UniqueScopeSchema": "data/UniqueScope", + "ValidationRule": "data/ValidationRule", + "ValidationRuleSchema": "data/ValidationRule" + }, + "collisions": [] +} diff --git a/packages/spec/declaration-map/identity.json b/packages/spec/declaration-map/identity.json new file mode 100644 index 0000000000..298efe5fae --- /dev/null +++ b/packages/spec/declaration-map/identity.json @@ -0,0 +1,60 @@ +{ + "description": "TS declaration name → spec registry name (def key) for the schemas @objectstack/spec publishes: entries['ObjectSchemaBase'] === 'data/Object'. Composed from json-schema.manifest/ (the def keys), export-origins/ (which declaration each export resolves to), and a syntactic unwinding of wrapper initializers that recovers module-private base declarations (the ObjectSchemaBase case — see scripts/build-declaration-map.ts). A name that maps to two different def keys is DROPPED into `collisions` rather than guessed, so a lookup miss means \"not known to be an authorable container\". Consumers hold a changed line’s enclosing declaration name and ask which authorable container it declares (docs-audit anchor qualification is the funding one). Generated — never hand-edited; regenerate with `pnpm --filter @objectstack/spec gen:declaration-map` and read the diff.", + "category": "identity", + "entries": { + "Account": "identity/Account", + "AccountSchema": "identity/Account", + "EvalUser": "identity/EvalUser", + "EvalUserSchema": "identity/EvalUser", + "Invitation": "identity/Invitation", + "InvitationSchema": "identity/Invitation", + "InvitationStatus": "identity/InvitationStatus", + "Member": "identity/Member", + "MemberSchema": "identity/Member", + "Organization": "identity/Organization", + "OrganizationSchema": "identity/Organization", + "Position": "identity/Position", + "PositionSchema": "identity/Position", + "SCIMAddress": "identity/SCIMAddress", + "SCIMAddressSchema": "identity/SCIMAddress", + "SCIMBulkOperation": "identity/SCIMBulkOperation", + "SCIMBulkOperationSchema": "identity/SCIMBulkOperation", + "SCIMBulkRequest": "identity/SCIMBulkRequest", + "SCIMBulkRequestSchema": "identity/SCIMBulkRequest", + "SCIMBulkResponse": "identity/SCIMBulkResponse", + "SCIMBulkResponseOperation": "identity/SCIMBulkResponseOperation", + "SCIMBulkResponseOperationSchema": "identity/SCIMBulkResponseOperation", + "SCIMBulkResponseSchema": "identity/SCIMBulkResponse", + "SCIMEmail": "identity/SCIMEmail", + "SCIMEmailSchema": "identity/SCIMEmail", + "SCIMEnterpriseUser": "identity/SCIMEnterpriseUser", + "SCIMEnterpriseUserSchema": "identity/SCIMEnterpriseUser", + "SCIMError": "identity/SCIMError", + "SCIMErrorSchema": "identity/SCIMError", + "SCIMGroup": "identity/SCIMGroup", + "SCIMGroupReference": "identity/SCIMGroupReference", + "SCIMGroupReferenceSchema": "identity/SCIMGroupReference", + "SCIMGroupSchema": "identity/SCIMGroup", + "SCIMListResponse": "identity/SCIMListResponse", + "SCIMListResponseSchema": "identity/SCIMListResponse", + "SCIMMemberReference": "identity/SCIMMemberReference", + "SCIMMemberReferenceSchema": "identity/SCIMMemberReference", + "SCIMMeta": "identity/SCIMMeta", + "SCIMMetaSchema": "identity/SCIMMeta", + "SCIMName": "identity/SCIMName", + "SCIMNameSchema": "identity/SCIMName", + "SCIMPatchOperation": "identity/SCIMPatchOperation", + "SCIMPatchOperationSchema": "identity/SCIMPatchOperation", + "SCIMPatchRequest": "identity/SCIMPatchRequest", + "SCIMPatchRequestSchema": "identity/SCIMPatchRequest", + "SCIMPhoneNumber": "identity/SCIMPhoneNumber", + "SCIMPhoneNumberSchema": "identity/SCIMPhoneNumber", + "SCIMUser": "identity/SCIMUser", + "SCIMUserSchema": "identity/SCIMUser", + "User": "identity/User", + "UserSchema": "identity/User", + "VerificationToken": "identity/VerificationToken", + "VerificationTokenSchema": "identity/VerificationToken" + }, + "collisions": [] +} diff --git a/packages/spec/declaration-map/integration.json b/packages/spec/declaration-map/integration.json new file mode 100644 index 0000000000..336cc6f9e8 --- /dev/null +++ b/packages/spec/declaration-map/integration.json @@ -0,0 +1,61 @@ +{ + "description": "TS declaration name → spec registry name (def key) for the schemas @objectstack/spec publishes: entries['ObjectSchemaBase'] === 'data/Object'. Composed from json-schema.manifest/ (the def keys), export-origins/ (which declaration each export resolves to), and a syntactic unwinding of wrapper initializers that recovers module-private base declarations (the ObjectSchemaBase case — see scripts/build-declaration-map.ts). A name that maps to two different def keys is DROPPED into `collisions` rather than guessed, so a lookup miss means \"not known to be an authorable container\". Consumers hold a changed line’s enclosing declaration name and ask which authorable container it declares (docs-audit anchor qualification is the funding one). Generated — never hand-edited; regenerate with `pnpm --filter @objectstack/spec gen:declaration-map` and read the diff.", + "category": "integration", + "entries": { + "CircuitBreakerConfig": "integration/CircuitBreakerConfig", + "CircuitBreakerConfigSchema": "integration/CircuitBreakerConfig", + "Connector": "integration/Connector", + "ConnectorAction": "integration/ConnectorAction", + "ConnectorActionEffect": "integration/ConnectorActionEffect", + "ConnectorActionEffectSchema": "integration/ConnectorActionEffect", + "ConnectorActionSchema": "integration/ConnectorAction", + "ConnectorConflictResolution": "integration/ConnectorConflictResolution", + "ConnectorConflictResolutionSchema": "integration/ConnectorConflictResolution", + "ConnectorErrorCategory": "integration/ConnectorErrorCategory", + "ConnectorErrorCategorySchema": "integration/ConnectorErrorCategory", + "ConnectorFieldMapping": "integration/ConnectorFieldMapping", + "ConnectorFieldMappingSchema": "integration/ConnectorFieldMapping", + "ConnectorHealth": "integration/ConnectorHealth", + "ConnectorHealthSchema": "integration/ConnectorHealth", + "ConnectorInstanceAPIKeyAuth": "integration/ConnectorInstanceAPIKeyAuth", + "ConnectorInstanceAPIKeyAuthSchema": "integration/ConnectorInstanceAPIKeyAuth", + "ConnectorInstanceAuth": "integration/ConnectorInstanceAuth", + "ConnectorInstanceAuthSchema": "integration/ConnectorInstanceAuth", + "ConnectorInstanceBasicAuth": "integration/ConnectorInstanceBasicAuth", + "ConnectorInstanceBasicAuthSchema": "integration/ConnectorInstanceBasicAuth", + "ConnectorInstanceBearerAuth": "integration/ConnectorInstanceBearerAuth", + "ConnectorInstanceBearerAuthSchema": "integration/ConnectorInstanceBearerAuth", + "ConnectorInstanceNoAuth": "integration/ConnectorInstanceNoAuth", + "ConnectorInstanceNoAuthSchema": "integration/ConnectorInstanceNoAuth", + "ConnectorRetryStrategy": "integration/ConnectorRetryStrategy", + "ConnectorRetryStrategySchema": "integration/ConnectorRetryStrategy", + "ConnectorSchema": "integration/Connector", + "ConnectorStatus": "integration/ConnectorStatus", + "ConnectorStatusSchema": "integration/ConnectorStatus", + "ConnectorTrigger": "integration/ConnectorTrigger", + "ConnectorTriggerSchema": "integration/ConnectorTrigger", + "ConnectorType": "integration/ConnectorType", + "ConnectorTypeSchema": "integration/ConnectorType", + "DataSyncConfig": "integration/DataSyncConfig", + "DataSyncConfigSchema": "integration/DataSyncConfig", + "DeclarativeConnectorEntry": "integration/DeclarativeConnectorEntry", + "DeclarativeConnectorEntrySchema": "integration/DeclarativeConnectorEntry", + "ErrorMappingConfig": "integration/ErrorMappingConfig", + "ErrorMappingConfigSchema": "integration/ErrorMappingConfig", + "ErrorMappingRule": "integration/ErrorMappingRule", + "ErrorMappingRuleSchema": "integration/ErrorMappingRule", + "HealthCheckConfig": "integration/HealthCheckConfig", + "HealthCheckConfigSchema": "integration/HealthCheckConfig", + "RetryConfig": "integration/RetryConfig", + "RetryConfigSchema": "integration/RetryConfig", + "SyncStrategy": "integration/SyncStrategy", + "SyncStrategySchema": "integration/SyncStrategy", + "WebhookConfig": "integration/WebhookConfig", + "WebhookConfigSchema": "integration/WebhookConfig", + "WebhookEvent": "integration/WebhookEvent", + "WebhookEventSchema": "integration/WebhookEvent", + "WebhookSignatureAlgorithm": "integration/WebhookSignatureAlgorithm", + "WebhookSignatureAlgorithmSchema": "integration/WebhookSignatureAlgorithm" + }, + "collisions": [] +} diff --git a/packages/spec/declaration-map/kernel.json b/packages/spec/declaration-map/kernel.json new file mode 100644 index 0000000000..3c3b2e4c63 --- /dev/null +++ b/packages/spec/declaration-map/kernel.json @@ -0,0 +1,324 @@ +{ + "description": "TS declaration name → spec registry name (def key) for the schemas @objectstack/spec publishes: entries['ObjectSchemaBase'] === 'data/Object'. Composed from json-schema.manifest/ (the def keys), export-origins/ (which declaration each export resolves to), and a syntactic unwinding of wrapper initializers that recovers module-private base declarations (the ObjectSchemaBase case — see scripts/build-declaration-map.ts). A name that maps to two different def keys is DROPPED into `collisions` rather than guessed, so a lookup miss means \"not known to be an authorable container\". Consumers hold a changed line’s enclosing declaration name and ask which authorable container it declares (docs-audit anchor qualification is the funding one). Generated — never hand-edited; regenerate with `pnpm --filter @objectstack/spec gen:declaration-map` and read the diff.", + "category": "kernel", + "entries": { + "ArtifactChecksum": "kernel/ArtifactChecksum", + "ArtifactChecksumSchema": "kernel/ArtifactChecksum", + "ArtifactFileEntry": "kernel/ArtifactFileEntry", + "ArtifactFileEntrySchema": "kernel/ArtifactFileEntry", + "ArtifactSignature": "kernel/ArtifactSignature", + "ArtifactSignatureSchema": "kernel/ArtifactSignature", + "BreakingChange": "kernel/BreakingChange", + "BreakingChangeSchema": "kernel/BreakingChange", + "CapabilityConformanceLevel": "kernel/CapabilityConformanceLevel", + "CapabilityConformanceLevelSchema": "kernel/CapabilityConformanceLevel", + "ClusterCapabilityConfig": "kernel/ClusterCapabilityConfig", + "ClusterCapabilityConfigSchema": "kernel/ClusterCapabilityConfig", + "ClusterDriver": "kernel/ClusterDriver", + "ClusterDriverSchema": "kernel/ClusterDriver", + "ClusterTenantIsolation": "kernel/ClusterTenantIsolation", + "ClusterTenantIsolationSchema": "kernel/ClusterTenantIsolation", + "CompatibilityLevel": "kernel/CompatibilityLevel", + "CompatibilityLevelSchema": "kernel/CompatibilityLevel", + "CompatibilityMatrixEntry": "kernel/CompatibilityMatrixEntry", + "CompatibilityMatrixEntrySchema": "kernel/CompatibilityMatrixEntry", + "DeadLetterQueueEntry": "kernel/DeadLetterQueueEntry", + "DeadLetterQueueEntrySchema": "kernel/DeadLetterQueueEntry", + "DependencyConflict": "kernel/DependencyConflict", + "DependencyConflictSchema": "kernel/DependencyConflict", + "DependencyGraph": "kernel/DependencyGraph", + "DependencyGraphNode": "kernel/DependencyGraphNode", + "DependencyGraphNodeSchema": "kernel/DependencyGraphNode", + "DependencyGraphSchema": "kernel/DependencyGraph", + "DependencyResolutionResult": "kernel/DependencyResolutionResult", + "DependencyResolutionResultSchema": "kernel/DependencyResolutionResult", + "DependencyStatusEnum": "kernel/DependencyStatusEnum", + "DeprecationNotice": "kernel/DeprecationNotice", + "DeprecationNoticeSchema": "kernel/DeprecationNotice", + "DisablePackageRequest": "kernel/DisablePackageRequest", + "DisablePackageRequestSchema": "kernel/DisablePackageRequest", + "DisablePackageResponse": "kernel/DisablePackageResponse", + "DisablePackageResponseSchema": "kernel/DisablePackageResponse", + "EnablePackageRequest": "kernel/EnablePackageRequest", + "EnablePackageRequestSchema": "kernel/EnablePackageRequest", + "EnablePackageResponse": "kernel/EnablePackageResponse", + "EnablePackageResponseSchema": "kernel/EnablePackageResponse", + "Event": "kernel/Event", + "EventBusConfig": "kernel/EventBusConfig", + "EventBusConfigSchema": "kernel/EventBusConfig", + "EventClusterOptions": "kernel/EventClusterOptions", + "EventClusterOptionsSchema": "kernel/EventClusterOptions", + "EventDeliverySemantics": "kernel/EventDeliverySemantics", + "EventDeliverySemanticsSchema": "kernel/EventDeliverySemantics", + "EventHandler": "kernel/EventHandler", + "EventHandlerSchema": "kernel/EventHandler", + "EventLogEntry": "kernel/EventLogEntry", + "EventLogEntrySchema": "kernel/EventLogEntry", + "EventMessageQueueConfig": "kernel/EventMessageQueueConfig", + "EventMessageQueueConfigSchema": "kernel/EventMessageQueueConfig", + "EventMetadataSchema": "kernel/EventMetadata", + "EventPersistence": "kernel/EventPersistence", + "EventPersistenceSchema": "kernel/EventPersistence", + "EventPriority": "kernel/EventPriority", + "EventQueueConfig": "kernel/EventQueueConfig", + "EventQueueConfigSchema": "kernel/EventQueueConfig", + "EventReplayConfig": "kernel/EventReplayConfig", + "EventReplayConfigSchema": "kernel/EventReplayConfig", + "EventRoute": "kernel/EventRoute", + "EventRouteSchema": "kernel/EventRoute", + "EventSchema": "kernel/Event", + "EventScope": "kernel/EventScope", + "EventScopeSchema": "kernel/EventScope", + "EventSourcingConfig": "kernel/EventSourcingConfig", + "EventSourcingConfigSchema": "kernel/EventSourcingConfig", + "EventTypeDefinition": "kernel/EventTypeDefinition", + "EventTypeDefinitionSchema": "kernel/EventTypeDefinition", + "EventWebhookConfig": "kernel/EventWebhookConfig", + "EventWebhookConfigSchema": "kernel/EventWebhookConfig", + "ExecutionContext": "kernel/ExecutionContext", + "ExecutionContextSchema": "kernel/ExecutionContext", + "ExtensionPoint": "kernel/ExtensionPoint", + "ExtensionPointSchema": "kernel/ExtensionPoint", + "GetPackageRequest": "kernel/GetPackageRequest", + "GetPackageRequestSchema": "kernel/GetPackageRequest", + "GetPackageResponse": "kernel/GetPackageResponse", + "GetPackageResponseSchema": "kernel/GetPackageResponse", + "HealthStatus": "kernel/HealthStatus", + "HealthStatusSchema": "kernel/HealthStatus", + "HotReloadConfig": "kernel/HotReloadConfig", + "HotReloadConfigSchema": "kernel/HotReloadConfig", + "InstallPackageRequest": "kernel/InstallPackageRequest", + "InstallPackageRequestSchema": "kernel/InstallPackageRequest", + "InstallPackageResponse": "kernel/InstallPackageResponse", + "InstallPackageResponseSchema": "kernel/InstallPackageResponse", + "InstalledPackage": "kernel/InstalledPackage", + "InstalledPackageSchema": "kernel/InstalledPackage", + "KernelContext": "kernel/KernelContext", + "KernelContextSchema": "kernel/KernelContext", + "KernelSecurityPolicy": "kernel/KernelSecurityPolicy", + "KernelSecurityPolicySchema": "kernel/KernelSecurityPolicy", + "KernelSecurityScanResult": "kernel/KernelSecurityScanResult", + "KernelSecurityScanResultSchema": "kernel/KernelSecurityScanResult", + "KernelSecurityVulnerability": "kernel/KernelSecurityVulnerability", + "KernelSecurityVulnerabilitySchema": "kernel/KernelSecurityVulnerability", + "ListPackagesRequest": "kernel/ListPackagesRequest", + "ListPackagesRequestSchema": "kernel/ListPackagesRequest", + "ListPackagesResponse": "kernel/ListPackagesResponse", + "ListPackagesResponseSchema": "kernel/ListPackagesResponse", + "ManifestPermissions": "kernel/ManifestPermissions", + "ManifestPermissionsSchema": "kernel/ManifestPermissions", + "ManifestSchema": "kernel/Manifest", + "MetadataBulkResult": "kernel/MetadataBulkResult", + "MetadataBulkResultSchema": "kernel/MetadataBulkResult", + "MetadataCategoryEnum": "kernel/MetadataCategoryEnum", + "MetadataChangeOperation": "kernel/MetadataChangeOperation", + "MetadataChangeOperationSchema": "kernel/MetadataChangeOperation", + "MetadataChangeType": "kernel/MetadataChangeType", + "MetadataChangeTypeSchema": "kernel/MetadataChangeType", + "MetadataDependency": "kernel/MetadataDependency", + "MetadataDependencySchema": "kernel/MetadataDependency", + "MetadataDiffItem": "kernel/MetadataDiffItem", + "MetadataDiffItemSchema": "kernel/MetadataDiffItem", + "MetadataFallbackStrategy": "kernel/MetadataFallbackStrategy", + "MetadataFallbackStrategySchema": "kernel/MetadataFallbackStrategy", + "MetadataLock": "kernel/MetadataLock", + "MetadataLockSchema": "kernel/MetadataLock", + "MetadataLockSource": "kernel/MetadataLockSource", + "MetadataLockSourceSchema": "kernel/MetadataLockSource", + "MetadataManagerConfig": "kernel/MetadataManagerConfig", + "MetadataManagerConfigSchema": "kernel/MetadataManagerConfig", + "MetadataPluginConfig": "kernel/MetadataPluginConfig", + "MetadataPluginConfigSchema": "kernel/MetadataPluginConfig", + "MetadataPluginManifest": "kernel/MetadataPluginManifest", + "MetadataPluginManifestSchema": "kernel/MetadataPluginManifest", + "MetadataProvenance": "kernel/MetadataProvenance", + "MetadataProvenanceSchema": "kernel/MetadataProvenance", + "MetadataQuery": "kernel/MetadataQuery", + "MetadataQueryResult": "kernel/MetadataQueryResult", + "MetadataQueryResultSchema": "kernel/MetadataQueryResult", + "MetadataQuerySchema": "kernel/MetadataQuery", + "MetadataType": "kernel/MetadataType", + "MetadataTypeRegistryEntry": "kernel/MetadataTypeRegistryEntry", + "MetadataTypeRegistryEntryBaseSchema": "kernel/MetadataTypeRegistryEntry", + "MetadataTypeRegistryEntrySchema": "kernel/MetadataTypeRegistryEntry", + "MetadataTypeSchema": "kernel/MetadataType", + "MetadataValidationResult": "kernel/MetadataValidationResult", + "MetadataValidationResultSchema": "kernel/MetadataValidationResult", + "MultiVersionSupport": "kernel/MultiVersionSupport", + "MultiVersionSupportSchema": "kernel/MultiVersionSupport", + "NamespaceConflictError": "kernel/NamespaceConflictError", + "NamespaceConflictErrorSchema": "kernel/NamespaceConflictError", + "NamespaceRegistryEntry": "kernel/NamespaceRegistryEntry", + "NamespaceRegistryEntrySchema": "kernel/NamespaceRegistryEntry", + "OclifPluginConfig": "kernel/OclifPluginConfig", + "OclifPluginConfigSchema": "kernel/OclifPluginConfig", + "OpsDomainModule": "kernel/OpsDomainModule", + "OpsDomainModuleSchema": "kernel/OpsDomainModule", + "OpsFilePath": "kernel/OpsFilePath", + "OpsFilePathSchema": "kernel/OpsFilePath", + "OpsPluginStructure": "kernel/OpsPluginStructure", + "OpsPluginStructureSchema": "kernel/OpsPluginStructure", + "PackageArtifact": "kernel/PackageArtifact", + "PackageArtifactSchema": "kernel/PackageArtifact", + "PackageDependencyConflict": "kernel/PackageDependencyConflict", + "PackageDependencyConflictSchema": "kernel/PackageDependencyConflict", + "PackageDependencyResolutionResult": "kernel/PackageDependencyResolutionResult", + "PackageDependencyResolutionResultSchema": "kernel/PackageDependencyResolutionResult", + "PackageStatusEnum": "kernel/PackageStatusEnum", + "PermissionAction": "kernel/PermissionAction", + "PermissionActionSchema": "kernel/PermissionAction", + "PermissionScope": "kernel/PermissionScope", + "PermissionScopeSchema": "kernel/PermissionScope", + "PluginCapability": "kernel/PluginCapability", + "PluginCapabilityManifest": "kernel/PluginCapabilityManifest", + "PluginCapabilityManifestSchema": "kernel/PluginCapabilityManifest", + "PluginCapabilitySchema": "kernel/PluginCapability", + "PluginCompatibilityMatrix": "kernel/PluginCompatibilityMatrix", + "PluginCompatibilityMatrixSchema": "kernel/PluginCompatibilityMatrix", + "PluginDependency": "kernel/PluginDependency", + "PluginDependencyResolutionResult": "kernel/PluginDependencyResolutionResult", + "PluginDependencyResolutionResultSchema": "kernel/PluginDependencyResolutionResult", + "PluginDependencySchema": "kernel/PluginDependency", + "PluginEngines": "kernel/PluginEngines", + "PluginEnginesSchema": "kernel/PluginEngines", + "PluginHealthCheck": "kernel/PluginHealthCheck", + "PluginHealthCheckSchema": "kernel/PluginHealthCheck", + "PluginHealthReport": "kernel/PluginHealthReport", + "PluginHealthReportSchema": "kernel/PluginHealthReport", + "PluginHealthStatus": "kernel/PluginHealthStatus", + "PluginHealthStatusSchema": "kernel/PluginHealthStatus", + "PluginInstallConfig": "kernel/PluginInstallConfig", + "PluginInstallConfigSchema": "kernel/PluginInstallConfig", + "PluginIntegrity": "kernel/PluginIntegrity", + "PluginIntegritySchema": "kernel/PluginIntegrity", + "PluginInterface": "kernel/PluginInterface", + "PluginInterfaceSchema": "kernel/PluginInterface", + "PluginLoadingEvent": "kernel/PluginLoadingEvent", + "PluginLoadingEventSchema": "kernel/PluginLoadingEvent", + "PluginLoadingState": "kernel/PluginLoadingState", + "PluginLoadingStateSchema": "kernel/PluginLoadingState", + "PluginMetadata": "kernel/PluginMetadata", + "PluginMetadataSchema": "kernel/PluginMetadata", + "PluginPackaging": "kernel/PluginPackaging", + "PluginPackagingSchema": "kernel/PluginPackaging", + "PluginPermission": "kernel/PluginPermission", + "PluginPermissionSchema": "kernel/PluginPermission", + "PluginPermissionSet": "kernel/PluginPermissionSet", + "PluginPermissionSetSchema": "kernel/PluginPermissionSet", + "PluginPermissions": "kernel/PluginPermissions", + "PluginPermissionsSchema": "kernel/PluginPermissions", + "PluginProvenance": "kernel/PluginProvenance", + "PluginProvenanceSchema": "kernel/PluginProvenance", + "PluginQualityMetrics": "kernel/PluginQualityMetrics", + "PluginQualityMetricsSchema": "kernel/PluginQualityMetrics", + "PluginRegistryEntry": "kernel/PluginRegistryEntry", + "PluginRegistryEntrySchema": "kernel/PluginRegistryEntry", + "PluginRuntime": "kernel/PluginRuntime", + "PluginRuntimeSchema": "kernel/PluginRuntime", + "PluginSchema": "kernel/Plugin", + "PluginSearchFilters": "kernel/PluginSearchFilters", + "PluginSearchFiltersSchema": "kernel/PluginSearchFilters", + "PluginSecurityManifest": "kernel/PluginSecurityManifest", + "PluginSecurityManifestSchema": "kernel/PluginSecurityManifest", + "PluginStartupResult": "kernel/PluginStartupResult", + "PluginStartupResultSchema": "kernel/PluginStartupResult", + "PluginStateSnapshot": "kernel/PluginStateSnapshot", + "PluginStateSnapshotSchema": "kernel/PluginStateSnapshot", + "PluginStatistics": "kernel/PluginStatistics", + "PluginStatisticsSchema": "kernel/PluginStatistics", + "PluginTrustLevel": "kernel/PluginTrustLevel", + "PluginTrustLevelSchema": "kernel/PluginTrustLevel", + "PluginTrustScore": "kernel/PluginTrustScore", + "PluginTrustScoreSchema": "kernel/PluginTrustScore", + "PluginVendor": "kernel/PluginVendor", + "PluginVendorSchema": "kernel/PluginVendor", + "PluginVersionMetadata": "kernel/PluginVersionMetadata", + "PluginVersionMetadataSchema": "kernel/PluginVersionMetadata", + "ProtocolFeature": "kernel/ProtocolFeature", + "ProtocolFeatureSchema": "kernel/ProtocolFeature", + "ProtocolReference": "kernel/ProtocolReference", + "ProtocolReferenceSchema": "kernel/ProtocolReference", + "ProtocolVersion": "kernel/ProtocolVersion", + "ProtocolVersionSchema": "kernel/ProtocolVersion", + "RealTimeNotificationConfig": "kernel/RealTimeNotificationConfig", + "RealTimeNotificationConfigSchema": "kernel/RealTimeNotificationConfig", + "RequiredAction": "kernel/RequiredAction", + "RequiredActionSchema": "kernel/RequiredAction", + "ResolvedDependency": "kernel/ResolvedDependency", + "ResolvedDependencySchema": "kernel/ResolvedDependency", + "ResolvedPackageDependency": "kernel/ResolvedPackageDependency", + "ResolvedPackageDependencySchema": "kernel/ResolvedPackageDependency", + "ResourceType": "kernel/ResourceType", + "ResourceTypeSchema": "kernel/ResourceType", + "RollbackPackageRequest": "kernel/RollbackPackageRequest", + "RollbackPackageRequestSchema": "kernel/RollbackPackageRequest", + "RollbackPackageResponse": "kernel/RollbackPackageResponse", + "RollbackPackageResponseSchema": "kernel/RollbackPackageResponse", + "RuntimeConfig": "kernel/RuntimeConfig", + "RuntimeConfigSchema": "kernel/RuntimeConfig", + "RuntimeMode": "kernel/RuntimeMode", + "SBOM": "kernel/SBOM", + "SBOMEntry": "kernel/SBOMEntry", + "SBOMEntrySchema": "kernel/SBOMEntry", + "SBOMSchema": "kernel/SBOM", + "SandboxConfig": "kernel/SandboxConfig", + "SandboxConfigSchema": "kernel/SandboxConfig", + "ScopeConfig": "kernel/ScopeConfig", + "ScopeConfigSchema": "kernel/ScopeConfig", + "ScopeInfo": "kernel/ScopeInfo", + "ScopeInfoSchema": "kernel/ScopeInfo", + "SecurityPolicy": "kernel/SecurityPolicy", + "SecurityPolicySchema": "kernel/SecurityPolicy", + "SecurityScanResult": "kernel/SecurityScanResult", + "SecurityScanResultSchema": "kernel/SecurityScanResult", + "SecurityVulnerability": "kernel/SecurityVulnerability", + "SecurityVulnerabilitySchema": "kernel/SecurityVulnerability", + "SemanticVersion": "kernel/SemanticVersion", + "SemanticVersionSchema": "kernel/SemanticVersion", + "ServiceClusterAnnotations": "kernel/ServiceClusterAnnotations", + "ServiceClusterAnnotationsSchema": "kernel/ServiceClusterAnnotations", + "ServiceClusterScope": "kernel/ServiceClusterScope", + "ServiceClusterScopeSchema": "kernel/ServiceClusterScope", + "ServiceFactoryRegistration": "kernel/ServiceFactoryRegistration", + "ServiceFactoryRegistrationSchema": "kernel/ServiceFactoryRegistration", + "ServiceLeaderStrategy": "kernel/ServiceLeaderStrategy", + "ServiceLeaderStrategySchema": "kernel/ServiceLeaderStrategy", + "ServiceMetadata": "kernel/ServiceMetadata", + "ServiceMetadataSchema": "kernel/ServiceMetadata", + "ServiceRegistryConfig": "kernel/ServiceRegistryConfig", + "ServiceRegistryConfigSchema": "kernel/ServiceRegistryConfig", + "ServiceScopeType": "kernel/ServiceScopeType", + "StartupOptions": "kernel/StartupOptions", + "StartupOptionsSchema": "kernel/StartupOptions", + "StartupOrchestrationResult": "kernel/StartupOrchestrationResult", + "StartupOrchestrationResultSchema": "kernel/StartupOrchestrationResult", + "TenantRuntimeContext": "kernel/TenantRuntimeContext", + "TenantRuntimeContextSchema": "kernel/TenantRuntimeContext", + "UninstallPackageRequest": "kernel/UninstallPackageRequest", + "UninstallPackageRequestSchema": "kernel/UninstallPackageRequest", + "UninstallPackageResponse": "kernel/UninstallPackageResponse", + "UninstallPackageResponseSchema": "kernel/UninstallPackageResponse", + "UpgradeImpactLevel": "kernel/UpgradeImpactLevel", + "UpgradeImpactLevelSchema": "kernel/UpgradeImpactLevel", + "UpgradePackageRequest": "kernel/UpgradePackageRequest", + "UpgradePackageRequestSchema": "kernel/UpgradePackageRequest", + "UpgradePackageResponse": "kernel/UpgradePackageResponse", + "UpgradePackageResponseSchema": "kernel/UpgradePackageResponse", + "UpgradePhase": "kernel/UpgradePhase", + "UpgradePhaseSchema": "kernel/UpgradePhase", + "UpgradePlan": "kernel/UpgradePlan", + "UpgradePlanSchema": "kernel/UpgradePlan", + "UpgradeSnapshot": "kernel/UpgradeSnapshot", + "UpgradeSnapshotSchema": "kernel/UpgradeSnapshot", + "ValidationError": "kernel/ValidationError", + "ValidationErrorSchema": "kernel/ValidationError", + "ValidationResult": "kernel/ValidationResult", + "ValidationResultSchema": "kernel/ValidationResult", + "ValidationWarning": "kernel/ValidationWarning", + "ValidationWarningSchema": "kernel/ValidationWarning", + "VersionConstraint": "kernel/VersionConstraint", + "VersionConstraintSchema": "kernel/VersionConstraint", + "VulnerabilitySeverity": "kernel/VulnerabilitySeverity" + }, + "collisions": [] +} diff --git a/packages/spec/declaration-map/qa.json b/packages/spec/declaration-map/qa.json new file mode 100644 index 0000000000..80a93ef284 --- /dev/null +++ b/packages/spec/declaration-map/qa.json @@ -0,0 +1,23 @@ +{ + "description": "TS declaration name → spec registry name (def key) for the schemas @objectstack/spec publishes: entries['ObjectSchemaBase'] === 'data/Object'. Composed from json-schema.manifest/ (the def keys), export-origins/ (which declaration each export resolves to), and a syntactic unwinding of wrapper initializers that recovers module-private base declarations (the ObjectSchemaBase case — see scripts/build-declaration-map.ts). A name that maps to two different def keys is DROPPED into `collisions` rather than guessed, so a lookup miss means \"not known to be an authorable container\". Consumers hold a changed line’s enclosing declaration name and ask which authorable container it declares (docs-audit anchor qualification is the funding one). Generated — never hand-edited; regenerate with `pnpm --filter @objectstack/spec gen:declaration-map` and read the diff.", + "category": "qa", + "entries": { + "TestAction": "qa/TestAction", + "TestActionSchema": "qa/TestAction", + "TestActionType": "qa/TestActionType", + "TestActionTypeSchema": "qa/TestActionType", + "TestAssertion": "qa/TestAssertion", + "TestAssertionSchema": "qa/TestAssertion", + "TestAssertionType": "qa/TestAssertionType", + "TestAssertionTypeSchema": "qa/TestAssertionType", + "TestContext": "qa/TestContext", + "TestContextSchema": "qa/TestContext", + "TestScenario": "qa/TestScenario", + "TestScenarioSchema": "qa/TestScenario", + "TestStep": "qa/TestStep", + "TestStepSchema": "qa/TestStep", + "TestSuite": "qa/TestSuite", + "TestSuiteSchema": "qa/TestSuite" + }, + "collisions": [] +} diff --git a/packages/spec/declaration-map/security.json b/packages/spec/declaration-map/security.json new file mode 100644 index 0000000000..fa75d9d9d9 --- /dev/null +++ b/packages/spec/declaration-map/security.json @@ -0,0 +1,62 @@ +{ + "description": "TS declaration name → spec registry name (def key) for the schemas @objectstack/spec publishes: entries['ObjectSchemaBase'] === 'data/Object'. Composed from json-schema.manifest/ (the def keys), export-origins/ (which declaration each export resolves to), and a syntactic unwinding of wrapper initializers that recovers module-private base declarations (the ObjectSchemaBase case — see scripts/build-declaration-map.ts). A name that maps to two different def keys is DROPPED into `collisions` rather than guessed, so a lookup miss means \"not known to be an authorable container\". Consumers hold a changed line’s enclosing declaration name and ask which authorable container it declares (docs-audit anchor qualification is the funding one). Generated — never hand-edited; regenerate with `pnpm --filter @objectstack/spec gen:declaration-map` and read the diff.", + "category": "security", + "entries": { + "AccessMatrix": "security/AccessMatrix", + "AccessMatrixEntry": "security/AccessMatrixEntry", + "AccessMatrixEntrySchema": "security/AccessMatrixEntry", + "AccessMatrixSchema": "security/AccessMatrix", + "AdminScope": "security/AdminScope", + "AdminScopeSchema": "security/AdminScope", + "AuthzPosture": "security/AuthzPosture", + "AuthzPostureSchema": "security/AuthzPosture", + "CapabilityDeclaration": "security/CapabilityDeclaration", + "CapabilityDeclarationSchema": "security/CapabilityDeclaration", + "CriteriaSharingRule": "security/CriteriaSharingRule", + "CriteriaSharingRuleSchema": "security/CriteriaSharingRule", + "EffectiveObjectPermission": "security/EffectiveObjectPermission", + "EffectiveObjectPermissionSchema": "security/EffectiveObjectPermission", + "ExplainDecision": "security/ExplainDecision", + "ExplainDecisionSchema": "security/ExplainDecision", + "ExplainLayer": "security/ExplainLayer", + "ExplainLayerSchema": "security/ExplainLayer", + "ExplainMatchedRule": "security/ExplainMatchedRule", + "ExplainMatchedRuleSchema": "security/ExplainMatchedRule", + "ExplainOperation": "security/ExplainOperation", + "ExplainOperationSchema": "security/ExplainOperation", + "ExplainRecordAttribution": "security/ExplainRecordAttribution", + "ExplainRecordAttributionSchema": "security/ExplainRecordAttribution", + "ExplainRequest": "security/ExplainRequest", + "ExplainRequestSchema": "security/ExplainRequest", + "FieldPermission": "security/FieldPermission", + "FieldPermissionSchema": "security/FieldPermission", + "OWDModel": "security/OWDModel", + "ObjectAccessScope": "security/ObjectAccessScope", + "ObjectAccessScopeSchema": "security/ObjectAccessScope", + "ObjectPermission": "security/ObjectPermission", + "ObjectPermissionSchema": "security/ObjectPermission", + "OrgScopingEntitlement": "security/OrgScopingEntitlement", + "OrgScopingEntitlementSchema": "security/OrgScopingEntitlement", + "PermissionSet": "security/PermissionSet", + "PermissionSetSchema": "security/PermissionSet", + "PlatformGlobalObjects": "security/PlatformGlobalObjects", + "PlatformGlobalObjectsSchema": "security/PlatformGlobalObjects", + "RLSEvaluationResult": "security/RLSEvaluationResult", + "RLSEvaluationResultSchema": "security/RLSEvaluationResult", + "RLSOperation": "security/RLSOperation", + "RLSUserContext": "security/RLSUserContext", + "RLSUserContextSchema": "security/RLSUserContext", + "RowLevelSecurityPolicy": "security/RowLevelSecurityPolicy", + "RowLevelSecurityPolicySchema": "security/RowLevelSecurityPolicy", + "ShareRecipientType": "security/ShareRecipientType", + "SharingLevel": "security/SharingLevel", + "SharingRule": "security/SharingRule", + "SharingRuleSchema": "security/SharingRule", + "SharingRuleType": "security/SharingRuleType", + "TenancyPosture": "security/TenancyPosture", + "TenancyPostureSchema": "security/TenancyPosture" + }, + "collisions": [ + "BaseSharingRuleSchema" + ] +} diff --git a/packages/spec/declaration-map/shared.json b/packages/spec/declaration-map/shared.json new file mode 100644 index 0000000000..510bd4dfb0 --- /dev/null +++ b/packages/spec/declaration-map/shared.json @@ -0,0 +1,66 @@ +{ + "description": "TS declaration name → spec registry name (def key) for the schemas @objectstack/spec publishes: entries['ObjectSchemaBase'] === 'data/Object'. Composed from json-schema.manifest/ (the def keys), export-origins/ (which declaration each export resolves to), and a syntactic unwinding of wrapper initializers that recovers module-private base declarations (the ObjectSchemaBase case — see scripts/build-declaration-map.ts). A name that maps to two different def keys is DROPPED into `collisions` rather than guessed, so a lookup miss means \"not known to be an authorable container\". Consumers hold a changed line’s enclosing declaration name and ask which authorable container it declares (docs-audit anchor qualification is the funding one). Generated — never hand-edited; regenerate with `pnpm --filter @objectstack/spec gen:declaration-map` and read the diff.", + "category": "shared", + "entries": { + "AppName": "shared/AppName", + "AppNameSchema": "shared/AppName", + "BaseMetadataRecord": "shared/BaseMetadataRecord", + "BaseMetadataRecordSchema": "shared/BaseMetadataRecord", + "CorsConfig": "shared/CorsConfig", + "CorsConfigSchema": "shared/CorsConfig", + "CronExpressionInput": "shared/CronExpressionInput", + "CronExpressionInputSchema": "shared/CronExpressionInput", + "EventName": "shared/EventName", + "EventNameSchema": "shared/EventName", + "Expression": "shared/Expression", + "ExpressionDialect": "shared/ExpressionDialect", + "ExpressionInput": "shared/ExpressionInput", + "ExpressionInputSchema": "shared/ExpressionInput", + "ExpressionMeta": "shared/ExpressionMeta", + "ExpressionMetaSchema": "shared/ExpressionMeta", + "ExpressionSchema": "shared/Expression", + "FieldMapping": "shared/FieldMapping", + "FieldMappingSchema": "shared/FieldMapping", + "FieldName": "shared/FieldName", + "FieldNameSchema": "shared/FieldName", + "FlowName": "shared/FlowName", + "FlowNameSchema": "shared/FlowName", + "HttpMethod": "shared/HttpMethod", + "HttpMethodSubset": "shared/HttpMethodSubset", + "HttpMethodSubsetSchema": "shared/HttpMethodSubset", + "HttpRequest": "shared/HttpRequest", + "HttpRequestSchema": "shared/HttpRequest", + "IsolationLevelEnum": "shared/IsolationLevelEnum", + "MetadataFormat": "shared/MetadataFormat", + "MetadataFormatSchema": "shared/MetadataFormat", + "MetadataItemName": "shared/MetadataItemName", + "MetadataItemNameSchema": "shared/MetadataItemName", + "MutationEventEnum": "shared/MutationEventEnum", + "ObjectName": "shared/ObjectName", + "ObjectNameSchema": "shared/ObjectName", + "Predicate": "shared/Predicate", + "PredicateInput": "shared/PredicateInput", + "PredicateInputSchema": "shared/PredicateInput", + "PredicateSchema": "shared/Predicate", + "Protection": "shared/Protection", + "ProtectionSchema": "shared/Protection", + "RateLimitConfig": "shared/RateLimitConfig", + "RateLimitConfigSchema": "shared/RateLimitConfig", + "RoleName": "shared/RoleName", + "RoleNameSchema": "shared/RoleName", + "SnakeCaseIdentifier": "shared/SnakeCaseIdentifier", + "SnakeCaseIdentifierSchema": "shared/SnakeCaseIdentifier", + "SortDirectionEnum": "shared/SortDirectionEnum", + "SortItem": "shared/SortItem", + "SortItemSchema": "shared/SortItem", + "StaticMount": "shared/StaticMount", + "StaticMountSchema": "shared/StaticMount", + "SystemIdentifier": "shared/SystemIdentifier", + "SystemIdentifierSchema": "shared/SystemIdentifier", + "TemplateExpressionInput": "shared/TemplateExpressionInput", + "TemplateExpressionInputSchema": "shared/TemplateExpressionInput", + "ViewName": "shared/ViewName", + "ViewNameSchema": "shared/ViewName" + }, + "collisions": [] +} diff --git a/packages/spec/declaration-map/studio.json b/packages/spec/declaration-map/studio.json new file mode 100644 index 0000000000..654e5a756c --- /dev/null +++ b/packages/spec/declaration-map/studio.json @@ -0,0 +1,77 @@ +{ + "description": "TS declaration name → spec registry name (def key) for the schemas @objectstack/spec publishes: entries['ObjectSchemaBase'] === 'data/Object'. Composed from json-schema.manifest/ (the def keys), export-origins/ (which declaration each export resolves to), and a syntactic unwinding of wrapper initializers that recovers module-private base declarations (the ObjectSchemaBase case — see scripts/build-declaration-map.ts). A name that maps to two different def keys is DROPPED into `collisions` rather than guessed, so a lookup miss means \"not known to be an authorable container\". Consumers hold a changed line’s enclosing declaration name and ask which authorable container it declares (docs-audit anchor qualification is the funding one). Generated — never hand-edited; regenerate with `pnpm --filter @objectstack/spec gen:declaration-map` and read the diff.", + "category": "studio", + "entries": { + "ActionContribution": "studio/ActionContribution", + "ActionContributionLocation": "studio/ActionContributionLocation", + "ActionContributionLocationSchema": "studio/ActionContributionLocation", + "ActionContributionSchema": "studio/ActionContribution", + "CommandContribution": "studio/CommandContribution", + "CommandContributionSchema": "studio/CommandContribution", + "ERDiagramConfig": "studio/ERDiagramConfig", + "ERDiagramConfigSchema": "studio/ERDiagramConfig", + "ERLayoutAlgorithm": "studio/ERLayoutAlgorithm", + "ERLayoutAlgorithmSchema": "studio/ERLayoutAlgorithm", + "ERNodeDisplay": "studio/ERNodeDisplay", + "ERNodeDisplaySchema": "studio/ERNodeDisplay", + "FieldEditorConfig": "studio/FieldEditorConfig", + "FieldEditorConfigSchema": "studio/FieldEditorConfig", + "FieldGroup": "studio/FieldGroup", + "FieldGroupSchema": "studio/FieldGroup", + "FieldPropertySection": "studio/FieldPropertySection", + "FieldPropertySectionSchema": "studio/FieldPropertySection", + "FlowBuilderConfig": "studio/FlowBuilderConfig", + "FlowBuilderConfigSchema": "studio/FlowBuilderConfig", + "FlowCanvasEdge": "studio/FlowCanvasEdge", + "FlowCanvasEdgeSchema": "studio/FlowCanvasEdge", + "FlowCanvasEdgeStyle": "studio/FlowCanvasEdgeStyle", + "FlowCanvasEdgeStyleSchema": "studio/FlowCanvasEdgeStyle", + "FlowCanvasNode": "studio/FlowCanvasNode", + "FlowCanvasNodeSchema": "studio/FlowCanvasNode", + "FlowLayoutAlgorithm": "studio/FlowLayoutAlgorithm", + "FlowLayoutAlgorithmSchema": "studio/FlowLayoutAlgorithm", + "FlowLayoutDirection": "studio/FlowLayoutDirection", + "FlowLayoutDirectionSchema": "studio/FlowLayoutDirection", + "FlowNodeRenderDescriptor": "studio/FlowNodeRenderDescriptor", + "FlowNodeRenderDescriptorSchema": "studio/FlowNodeRenderDescriptor", + "FlowNodeShape": "studio/FlowNodeShape", + "FlowNodeShapeSchema": "studio/FlowNodeShape", + "MetadataIconContribution": "studio/MetadataIconContribution", + "MetadataIconContributionSchema": "studio/MetadataIconContribution", + "MetadataViewerContribution": "studio/MetadataViewerContribution", + "MetadataViewerContributionSchema": "studio/MetadataViewerContribution", + "ObjectDesignerConfig": "studio/ObjectDesignerConfig", + "ObjectDesignerConfigSchema": "studio/ObjectDesignerConfig", + "ObjectDesignerDefaultView": "studio/ObjectDesignerDefaultView", + "ObjectDesignerDefaultViewSchema": "studio/ObjectDesignerDefaultView", + "ObjectFilter": "studio/ObjectFilter", + "ObjectFilterSchema": "studio/ObjectFilter", + "ObjectListDisplayMode": "studio/ObjectListDisplayMode", + "ObjectListDisplayModeSchema": "studio/ObjectListDisplayMode", + "ObjectManagerConfig": "studio/ObjectManagerConfig", + "ObjectManagerConfigSchema": "studio/ObjectManagerConfig", + "ObjectPreviewConfig": "studio/ObjectPreviewConfig", + "ObjectPreviewConfigSchema": "studio/ObjectPreviewConfig", + "ObjectPreviewTab": "studio/ObjectPreviewTab", + "ObjectPreviewTabSchema": "studio/ObjectPreviewTab", + "ObjectSortField": "studio/ObjectSortField", + "ObjectSortFieldSchema": "studio/ObjectSortField", + "PanelContribution": "studio/PanelContribution", + "PanelContributionSchema": "studio/PanelContribution", + "PanelLocation": "studio/PanelLocation", + "PanelLocationSchema": "studio/PanelLocation", + "RelationshipDisplay": "studio/RelationshipDisplay", + "RelationshipDisplaySchema": "studio/RelationshipDisplay", + "RelationshipMapperConfig": "studio/RelationshipMapperConfig", + "RelationshipMapperConfigSchema": "studio/RelationshipMapperConfig", + "SidebarGroupContribution": "studio/SidebarGroupContribution", + "SidebarGroupContributionSchema": "studio/SidebarGroupContribution", + "StudioPluginContributions": "studio/StudioPluginContributions", + "StudioPluginContributionsSchema": "studio/StudioPluginContributions", + "StudioPluginManifest": "studio/StudioPluginManifest", + "StudioPluginManifestSchema": "studio/StudioPluginManifest", + "ViewMode": "studio/ViewMode", + "ViewModeSchema": "studio/ViewMode" + }, + "collisions": [] +} diff --git a/packages/spec/declaration-map/system.json b/packages/spec/declaration-map/system.json new file mode 100644 index 0000000000..817d308ecd --- /dev/null +++ b/packages/spec/declaration-map/system.json @@ -0,0 +1,550 @@ +{ + "description": "TS declaration name → spec registry name (def key) for the schemas @objectstack/spec publishes: entries['ObjectSchemaBase'] === 'data/Object'. Composed from json-schema.manifest/ (the def keys), export-origins/ (which declaration each export resolves to), and a syntactic unwinding of wrapper initializers that recovers module-private base declarations (the ObjectSchemaBase case — see scripts/build-declaration-map.ts). A name that maps to two different def keys is DROPPED into `collisions` rather than guessed, so a lookup miss means \"not known to be an authorable container\". Consumers hold a changed line’s enclosing declaration name and ask which authorable container it declares (docs-audit anchor qualification is the funding one). Generated — never hand-edited; regenerate with `pnpm --filter @objectstack/spec gen:declaration-map` and read the diff.", + "category": "system", + "entries": { + "AccessControlConfig": "system/AccessControlConfig", + "AccessControlConfigSchema": "system/AccessControlConfig", + "ActionResultDialogTranslation": "system/ActionResultDialogTranslation", + "ActionResultDialogTranslationSchema": "system/ActionResultDialogTranslation", + "AddFieldOperation": "system/AddFieldOperation", + "AdvancedAuthConfig": "system/AdvancedAuthConfig", + "AdvancedAuthConfigSchema": "system/AdvancedAuthConfig", + "AnalyzerConfig": "system/AnalyzerConfig", + "AnalyzerConfigSchema": "system/AnalyzerConfig", + "AppCompatibilityCheck": "system/AppCompatibilityCheck", + "AppCompatibilityCheckSchema": "system/AppCompatibilityCheck", + "AppInstallRequest": "system/AppInstallRequest", + "AppInstallRequestSchema": "system/AppInstallRequest", + "AppInstallResult": "system/AppInstallResult", + "AppInstallResultSchema": "system/AppInstallResult", + "AppManifest": "system/AppManifest", + "AppManifestSchema": "system/AppManifest", + "AudienceConfig": "system/AudienceConfig", + "AudienceConfigSchema": "system/AudienceConfig", + "AuthConfig": "system/AuthConfig", + "AuthConfigSchema": "system/AuthConfig", + "AuthPluginConfig": "system/AuthPluginConfig", + "AuthPluginConfigSchema": "system/AuthPluginConfig", + "AuthProviderConfig": "system/AuthProviderConfig", + "AuthProviderConfigSchema": "system/AuthProviderConfig", + "AwarenessEvent": "system/AwarenessEvent", + "AwarenessEventSchema": "system/AwarenessEvent", + "AwarenessSession": "system/AwarenessSession", + "AwarenessSessionSchema": "system/AwarenessSession", + "AwarenessUpdate": "system/AwarenessUpdate", + "AwarenessUpdateSchema": "system/AwarenessUpdate", + "AwarenessUserState": "system/AwarenessUserState", + "AwarenessUserStateSchema": "system/AwarenessUserState", + "BackupConfig": "system/BackupConfig", + "BackupConfigSchema": "system/BackupConfig", + "BackupRetention": "system/BackupRetention", + "BackupRetentionSchema": "system/BackupRetention", + "BackupStrategy": "system/BackupStrategy", + "BackupStrategySchema": "system/BackupStrategy", + "BatchProgress": "system/BatchProgress", + "BatchProgressSchema": "system/BatchProgress", + "Book": "system/Book", + "BookAudience": "system/BookAudience", + "BookAudienceSchema": "system/BookAudience", + "BookGroup": "system/BookGroup", + "BookGroupSchema": "system/BookGroup", + "BookInclude": "system/BookInclude", + "BookIncludeSchema": "system/BookInclude", + "BookNode": "system/BookNode", + "BookNodeSchema": "system/BookNode", + "BookSchema": "system/Book", + "BucketConfig": "system/BucketConfig", + "BucketConfigSchema": "system/BucketConfig", + "CRDTMergeResult": "system/CRDTMergeResult", + "CRDTMergeResultSchema": "system/CRDTMergeResult", + "CRDTState": "system/CRDTState", + "CRDTStateSchema": "system/CRDTState", + "CRDTType": "system/CRDTType", + "CacheAvalanchePrevention": "system/CacheAvalanchePrevention", + "CacheAvalanchePreventionSchema": "system/CacheAvalanchePrevention", + "CacheConfig": "system/CacheConfig", + "CacheConfigSchema": "system/CacheConfig", + "CacheConsistency": "system/CacheConsistency", + "CacheConsistencySchema": "system/CacheConsistency", + "CacheInvalidation": "system/CacheInvalidation", + "CacheInvalidationSchema": "system/CacheInvalidation", + "CacheStrategy": "system/CacheStrategy", + "CacheStrategySchema": "system/CacheStrategy", + "CacheTier": "system/CacheTier", + "CacheTierSchema": "system/CacheTier", + "CacheWarmup": "system/CacheWarmup", + "CacheWarmupSchema": "system/CacheWarmup", + "ChangeImpact": "system/ChangeImpact", + "ChangeImpactSchema": "system/ChangeImpact", + "ChangePriority": "system/ChangePriority", + "ChangePrioritySchema": "system/ChangePriority", + "ChangeRequest": "system/ChangeRequest", + "ChangeRequestSchema": "system/ChangeRequest", + "ChangeSet": "system/ChangeSet", + "ChangeSetSchema": "system/ChangeSet", + "ChangeStatus": "system/ChangeStatus", + "ChangeStatusSchema": "system/ChangeStatus", + "ChangeType": "system/ChangeType", + "ChangeTypeSchema": "system/ChangeType", + "CollaborationMode": "system/CollaborationMode", + "CollaborationSession": "system/CollaborationSession", + "CollaborationSessionConfig": "system/CollaborationSessionConfig", + "CollaborationSessionConfigSchema": "system/CollaborationSessionConfig", + "CollaborationSessionSchema": "system/CollaborationSession", + "CollaborativeCursor": "system/CollaborativeCursor", + "CollaborativeCursorSchema": "system/CollaborativeCursor", + "ComplianceAuditRequirement": "system/ComplianceAuditRequirement", + "ComplianceAuditRequirementSchema": "system/ComplianceAuditRequirement", + "ComplianceEncryptionRequirement": "system/ComplianceEncryptionRequirement", + "ComplianceEncryptionRequirementSchema": "system/ComplianceEncryptionRequirement", + "ComplianceFramework": "system/ComplianceFramework", + "ComplianceFrameworkSchema": "system/ComplianceFramework", + "ConsoleDestinationConfig": "system/ConsoleDestinationConfig", + "ConsoleDestinationConfigSchema": "system/ConsoleDestinationConfig", + "CoreServiceName": "system/CoreServiceName", + "CounterOperation": "system/CounterOperation", + "CounterOperationSchema": "system/CounterOperation", + "CoverageBreakdownEntry": "system/CoverageBreakdownEntry", + "CoverageBreakdownEntrySchema": "system/CoverageBreakdownEntry", + "CreateObjectOperation": "system/CreateObjectOperation", + "CronSchedule": "system/CronSchedule", + "CronScheduleSchema": "system/CronSchedule", + "CursorColorPreset": "system/CursorColorPreset", + "CursorSelection": "system/CursorSelection", + "CursorSelectionSchema": "system/CursorSelection", + "CursorStyle": "system/CursorStyle", + "CursorStyleSchema": "system/CursorStyle", + "CursorUpdate": "system/CursorUpdate", + "CursorUpdateSchema": "system/CursorUpdate", + "DataClassification": "system/DataClassification", + "DataClassificationPolicy": "system/DataClassificationPolicy", + "DataClassificationPolicySchema": "system/DataClassificationPolicy", + "DataClassificationSchema": "system/DataClassification", + "DataMigrationFlag": "system/DataMigrationFlag", + "DataMigrationFlagSchema": "system/DataMigrationFlag", + "DatabaseLevelIsolationStrategy": "system/DatabaseLevelIsolationStrategy", + "DatabaseLevelIsolationStrategySchema": "system/DatabaseLevelIsolationStrategy", + "DatabaseProvider": "system/DatabaseProvider", + "DatabaseProviderSchema": "system/DatabaseProvider", + "DeleteObjectOperation": "system/DeleteObjectOperation", + "DeployBundle": "system/DeployBundle", + "DeployBundleSchema": "system/DeployBundle", + "DeployDiff": "system/DeployDiff", + "DeployDiffSchema": "system/DeployDiff", + "DeployManifest": "system/DeployManifest", + "DeployManifestSchema": "system/DeployManifest", + "DeployStatusEnum": "system/DeployStatusEnum", + "DeployValidationIssue": "system/DeployValidationIssue", + "DeployValidationIssueSchema": "system/DeployValidationIssue", + "DeployValidationResult": "system/DeployValidationResult", + "DeployValidationResultSchema": "system/DeployValidationResult", + "DisasterRecoveryPlan": "system/DisasterRecoveryPlan", + "DisasterRecoveryPlanSchema": "system/DisasterRecoveryPlan", + "DistributedCacheConfig": "system/DistributedCacheConfig", + "DistributedCacheConfigSchema": "system/DistributedCacheConfig", + "Doc": "system/Doc", + "DocSchema": "system/Doc", + "EmailAddressConfig": "system/EmailAddressConfig", + "EmailAddressConfigSchema": "system/EmailAddressConfig", + "EmailAndPasswordConfig": "system/EmailAndPasswordConfig", + "EmailAndPasswordConfigSchema": "system/EmailAndPasswordConfig", + "EmailProvider": "system/EmailProvider", + "EmailProviderSchema": "system/EmailProvider", + "EmailServiceConfig": "system/EmailServiceConfig", + "EmailServiceConfigSchema": "system/EmailServiceConfig", + "EmailTemplateDefinition": "system/EmailTemplateDefinition", + "EmailTemplateDefinitionCategory": "system/EmailTemplateDefinitionCategory", + "EmailTemplateDefinitionCategorySchema": "system/EmailTemplateDefinitionCategory", + "EmailTemplateDefinitionSchema": "system/EmailTemplateDefinition", + "EmailTemplateDefinitionVariable": "system/EmailTemplateDefinitionVariable", + "EmailTemplateDefinitionVariableSchema": "system/EmailTemplateDefinitionVariable", + "EmailVerificationConfig": "system/EmailVerificationConfig", + "EmailVerificationConfigSchema": "system/EmailVerificationConfig", + "EncryptionAlgorithm": "system/EncryptionAlgorithm", + "EncryptionAlgorithmSchema": "system/EncryptionAlgorithm", + "EncryptionConfig": "system/EncryptionConfig", + "EncryptionConfigSchema": "system/EncryptionConfig", + "ExecuteSqlOperation": "system/ExecuteSqlOperation", + "ExtendedLogLevel": "system/ExtendedLogLevel", + "ExternalServiceDestinationConfig": "system/ExternalServiceDestinationConfig", + "ExternalServiceDestinationConfigSchema": "system/ExternalServiceDestinationConfig", + "FacetConfig": "system/FacetConfig", + "FacetConfigSchema": "system/FacetConfig", + "FailoverConfig": "system/FailoverConfig", + "FailoverConfigSchema": "system/FailoverConfig", + "FailoverMode": "system/FailoverMode", + "FailoverModeSchema": "system/FailoverMode", + "Feature": "system/Feature", + "FeatureSchema": "system/Feature", + "FieldEncryption": "system/FieldEncryption", + "FieldEncryptionSchema": "system/FieldEncryption", + "FieldTranslation": "system/FieldTranslation", + "FieldTranslationSchema": "system/FieldTranslation", + "FileDestinationConfig": "system/FileDestinationConfig", + "FileDestinationConfigSchema": "system/FileDestinationConfig", + "FileMetadata": "system/FileMetadata", + "FileMetadataSchema": "system/FileMetadata", + "GCounter": "system/GCounter", + "GCounterSchema": "system/GCounter", + "HistogramBucketConfig": "system/HistogramBucketConfig", + "HistogramBucketConfigSchema": "system/HistogramBucketConfig", + "HttpDestinationConfig": "system/HttpDestinationConfig", + "HttpDestinationConfigSchema": "system/HttpDestinationConfig", + "Incident": "system/Incident", + "IncidentCategory": "system/IncidentCategory", + "IncidentCategorySchema": "system/IncidentCategory", + "IncidentNotificationMatrix": "system/IncidentNotificationMatrix", + "IncidentNotificationMatrixSchema": "system/IncidentNotificationMatrix", + "IncidentNotificationRule": "system/IncidentNotificationRule", + "IncidentNotificationRuleSchema": "system/IncidentNotificationRule", + "IncidentResponsePhase": "system/IncidentResponsePhase", + "IncidentResponsePhaseSchema": "system/IncidentResponsePhase", + "IncidentResponsePolicy": "system/IncidentResponsePolicy", + "IncidentResponsePolicySchema": "system/IncidentResponsePolicy", + "IncidentSchema": "system/Incident", + "IncidentSeverity": "system/IncidentSeverity", + "IncidentSeveritySchema": "system/IncidentSeverity", + "IncidentStatus": "system/IncidentStatus", + "IncidentStatusSchema": "system/IncidentStatus", + "IntervalSchedule": "system/IntervalSchedule", + "IntervalScheduleSchema": "system/IntervalSchedule", + "Job": "system/Job", + "JobExecution": "system/JobExecution", + "JobExecutionSchema": "system/JobExecution", + "JobExecutionStatus": "system/JobExecutionStatus", + "JobSchema": "system/Job", + "KernelServiceMap": "system/KernelServiceMap", + "KernelServiceMapSchema": "system/KernelServiceMap", + "KernelServiceStatus": "system/KernelServiceStatus", + "KernelServiceStatusSchema": "system/KernelServiceStatus", + "KeyManagementProvider": "system/KeyManagementProvider", + "KeyManagementProviderSchema": "system/KeyManagementProvider", + "KeyRotationPolicy": "system/KeyRotationPolicy", + "KeyRotationPolicySchema": "system/KeyRotationPolicy", + "LWWRegister": "system/LWWRegister", + "LWWRegisterSchema": "system/LWWRegister", + "License": "system/License", + "LicenseMetricType": "system/LicenseMetricType", + "LicenseSchema": "system/License", + "LifecycleAction": "system/LifecycleAction", + "LifecycleActionSchema": "system/LifecycleAction", + "LifecyclePolicyConfig": "system/LifecyclePolicyConfig", + "LifecyclePolicyConfigSchema": "system/LifecyclePolicyConfig", + "LifecyclePolicyRule": "system/LifecyclePolicyRule", + "LifecyclePolicyRuleSchema": "system/LifecyclePolicyRule", + "Locale": "system/Locale", + "LocaleSchema": "system/Locale", + "LogDestination": "system/LogDestination", + "LogDestinationSchema": "system/LogDestination", + "LogDestinationType": "system/LogDestinationType", + "LogEnrichmentConfig": "system/LogEnrichmentConfig", + "LogEnrichmentConfigSchema": "system/LogEnrichmentConfig", + "LogEntry": "system/LogEntry", + "LogEntrySchema": "system/LogEntry", + "LogFormat": "system/LogFormat", + "LogLevel": "system/LogLevel", + "LoggerConfig": "system/LoggerConfig", + "LoggerConfigSchema": "system/LoggerConfig", + "LoggingConfig": "system/LoggingConfig", + "LoggingConfigSchema": "system/LoggingConfig", + "MaskingVisibilityRule": "system/MaskingVisibilityRule", + "MaskingVisibilityRuleSchema": "system/MaskingVisibilityRule", + "MetadataCollectionInfo": "system/MetadataCollectionInfo", + "MetadataCollectionInfoSchema": "system/MetadataCollectionInfo", + "MetadataDiffResult": "system/MetadataDiffResult", + "MetadataDiffResultSchema": "system/MetadataDiffResult", + "MetadataHistoryQueryOptions": "system/MetadataHistoryQueryOptions", + "MetadataHistoryQueryOptionsSchema": "system/MetadataHistoryQueryOptions", + "MetadataHistoryQueryResult": "system/MetadataHistoryQueryResult", + "MetadataHistoryQueryResultSchema": "system/MetadataHistoryQueryResult", + "MetadataHistoryRecord": "system/MetadataHistoryRecord", + "MetadataHistoryRecordSchema": "system/MetadataHistoryRecord", + "MetadataHistoryRetentionPolicy": "system/MetadataHistoryRetentionPolicy", + "MetadataHistoryRetentionPolicySchema": "system/MetadataHistoryRetentionPolicy", + "MetadataLoadOptions": "system/MetadataLoadOptions", + "MetadataLoadOptionsSchema": "system/MetadataLoadOptions", + "MetadataLoadResult": "system/MetadataLoadResult", + "MetadataLoadResultSchema": "system/MetadataLoadResult", + "MetadataLoaderContract": "system/MetadataLoaderContract", + "MetadataLoaderContractSchema": "system/MetadataLoaderContract", + "MetadataRecord": "system/MetadataRecord", + "MetadataRecordSchema": "system/MetadataRecord", + "MetadataSaveOptions": "system/MetadataSaveOptions", + "MetadataSaveOptionsSchema": "system/MetadataSaveOptions", + "MetadataSaveResult": "system/MetadataSaveResult", + "MetadataSaveResultSchema": "system/MetadataSaveResult", + "MetadataScope": "system/MetadataScope", + "MetadataScopeSchema": "system/MetadataScope", + "MetadataSource": "system/MetadataSource", + "MetadataSourceSchema": "system/MetadataSource", + "MetadataState": "system/MetadataState", + "MetadataStateSchema": "system/MetadataState", + "MetadataStats": "system/MetadataStats", + "MetadataStatsSchema": "system/MetadataStats", + "MetadataWatchEvent": "system/MetadataWatchEvent", + "MetadataWatchEventSchema": "system/MetadataWatchEvent", + "MetricAggregationConfig": "system/MetricAggregationConfig", + "MetricAggregationConfigSchema": "system/MetricAggregationConfig", + "MetricAggregationType": "system/MetricAggregationType", + "MetricDataPoint": "system/MetricDataPoint", + "MetricDataPointSchema": "system/MetricDataPoint", + "MetricDefinition": "system/MetricDefinition", + "MetricDefinitionSchema": "system/MetricDefinition", + "MetricExportConfig": "system/MetricExportConfig", + "MetricExportConfigSchema": "system/MetricExportConfig", + "MetricLabels": "system/MetricLabels", + "MetricLabelsSchema": "system/MetricLabels", + "MetricType": "system/MetricType", + "MetricUnit": "system/MetricUnit", + "MetricsConfig": "system/MetricsConfig", + "MetricsConfigSchema": "system/MetricsConfig", + "MiddlewareConfig": "system/MiddlewareConfig", + "MiddlewareConfigSchema": "system/MiddlewareConfig", + "MiddlewareType": "system/MiddlewareType", + "MigrationDependency": "system/MigrationDependency", + "MigrationDependencySchema": "system/MigrationDependency", + "MigrationJournalEvent": "system/MigrationJournalEvent", + "MigrationJournalEventSchema": "system/MigrationJournalEvent", + "MigrationOperation": "system/MigrationOperation", + "MigrationOperationSchema": "system/MigrationOperation", + "MigrationPlan": "system/MigrationPlan", + "MigrationPlanSchema": "system/MigrationPlan", + "MigrationStatement": "system/MigrationStatement", + "MigrationStatementSchema": "system/MigrationStatement", + "ModifyFieldOperation": "system/ModifyFieldOperation", + "MultipartUploadConfig": "system/MultipartUploadConfig", + "MultipartUploadConfigSchema": "system/MultipartUploadConfig", + "MutualTLSConfig": "system/MutualTLSConfig", + "MutualTLSConfigSchema": "system/MutualTLSConfig", + "NotificationChannel": "system/NotificationChannel", + "NotificationChannelSchema": "system/NotificationChannel", + "ORSet": "system/ORSet", + "ORSetElement": "system/ORSetElement", + "ORSetElementSchema": "system/ORSetElement", + "ORSetSchema": "system/ORSet", + "OTComponent": "system/OTComponent", + "OTComponentSchema": "system/OTComponent", + "OTOperation": "system/OTOperation", + "OTOperationSchema": "system/OTOperation", + "OTOperationType": "system/OTOperationType", + "OTTransformResult": "system/OTTransformResult", + "OTTransformResultSchema": "system/OTTransformResult", + "ObjectMetadata": "system/ObjectMetadata", + "ObjectMetadataSchema": "system/ObjectMetadata", + "ObjectStorageConfig": "system/ObjectStorageConfig", + "ObjectStorageConfigSchema": "system/ObjectStorageConfig", + "ObjectTranslationData": "system/ObjectTranslationData", + "ObjectTranslationDataSchema": "system/ObjectTranslationData", + "OidcProviderConfig": "system/OidcProviderConfig", + "OidcProviderConfigSchema": "system/OidcProviderConfig", + "OidcProvidersConfig": "system/OidcProvidersConfig", + "OidcProvidersConfigSchema": "system/OidcProvidersConfig", + "OnceSchedule": "system/OnceSchedule", + "OnceScheduleSchema": "system/OnceSchedule", + "OpenTelemetryCompatibility": "system/OpenTelemetryCompatibility", + "OpenTelemetryCompatibilitySchema": "system/OpenTelemetryCompatibility", + "OtelExporterType": "system/OtelExporterType", + "PNCounter": "system/PNCounter", + "PNCounterSchema": "system/PNCounter", + "PackagePublishResult": "system/PackagePublishResult", + "PackagePublishResultSchema": "system/PackagePublishResult", + "Plan": "system/Plan", + "PlanSchema": "system/Plan", + "PresignedUrlConfig": "system/PresignedUrlConfig", + "PresignedUrlConfigSchema": "system/PresignedUrlConfig", + "QueueConfig": "system/QueueConfig", + "QueueConfigSchema": "system/QueueConfig", + "QuotaEnforcementResult": "system/QuotaEnforcementResult", + "QuotaEnforcementResultSchema": "system/QuotaEnforcementResult", + "RPO": "system/RPO", + "RPOSchema": "system/RPO", + "RTO": "system/RTO", + "RTOSchema": "system/RTO", + "RegistryConfig": "system/RegistryConfig", + "RegistryConfigSchema": "system/RegistryConfig", + "RegistrySyncPolicy": "system/RegistrySyncPolicy", + "RegistrySyncPolicySchema": "system/RegistrySyncPolicy", + "RegistryUpstream": "system/RegistryUpstream", + "RegistryUpstreamSchema": "system/RegistryUpstream", + "RemoveFieldOperation": "system/RemoveFieldOperation", + "RenameObjectOperation": "system/RenameObjectOperation", + "ResolvedBook": "system/ResolvedBook", + "ResolvedBookSchema": "system/ResolvedBook", + "ResolvedEntry": "system/ResolvedEntry", + "ResolvedEntrySchema": "system/ResolvedEntry", + "ResolvedGroup": "system/ResolvedGroup", + "ResolvedGroupSchema": "system/ResolvedGroup", + "ResolvedSettingValue": "system/ResolvedSettingValue", + "ResolvedSettingValueSchema": "system/ResolvedSettingValue", + "RollbackPlan": "system/RollbackPlan", + "RollbackPlanSchema": "system/RollbackPlan", + "RouteHandlerMetadata": "system/RouteHandlerMetadata", + "RouteHandlerMetadataSchema": "system/RouteHandlerMetadata", + "RowLevelIsolationStrategy": "system/RowLevelIsolationStrategy", + "RowLevelIsolationStrategySchema": "system/RowLevelIsolationStrategy", + "SamplingDecision": "system/SamplingDecision", + "SamplingStrategyType": "system/SamplingStrategyType", + "Schedule": "system/Schedule", + "ScheduleSchema": "system/Schedule", + "SchemaChange": "system/SchemaChange", + "SchemaChangeSchema": "system/SchemaChange", + "SchemaLevelIsolationStrategy": "system/SchemaLevelIsolationStrategy", + "SchemaLevelIsolationStrategySchema": "system/SchemaLevelIsolationStrategy", + "SearchConfig": "system/SearchConfig", + "SearchConfigSchema": "system/SearchConfig", + "SearchIndexConfig": "system/SearchIndexConfig", + "SearchIndexConfigSchema": "system/SearchIndexConfig", + "SearchProvider": "system/SearchProvider", + "SearchProviderSchema": "system/SearchProvider", + "SecurityContextConfig": "system/SecurityContextConfig", + "SecurityContextConfigSchema": "system/SecurityContextConfig", + "SecurityEventCorrelation": "system/SecurityEventCorrelation", + "SecurityEventCorrelationSchema": "system/SecurityEventCorrelation", + "ServerRateLimitConfig": "system/ServerRateLimitConfig", + "ServerRateLimitConfigSchema": "system/ServerRateLimitConfig", + "ServiceConfig": "system/ServiceConfig", + "ServiceConfigSchema": "system/ServiceConfig", + "ServiceCriticality": "system/ServiceCriticality", + "ServiceCriticalitySchema": "system/ServiceCriticality", + "ServiceLevelIndicator": "system/ServiceLevelIndicator", + "ServiceLevelIndicatorSchema": "system/ServiceLevelIndicator", + "ServiceLevelObjective": "system/ServiceLevelObjective", + "ServiceLevelObjectiveSchema": "system/ServiceLevelObjective", + "SettingsActionResult": "system/SettingsActionResult", + "SettingsActionResultSchema": "system/SettingsActionResult", + "SettingsChangeEvent": "system/SettingsChangeEvent", + "SettingsChangeEventSchema": "system/SettingsChangeEvent", + "SettingsManifest": "system/SettingsManifest", + "SettingsManifestSchema": "system/SettingsManifest", + "SettingsNamespacePayload": "system/SettingsNamespacePayload", + "SettingsNamespacePayloadSchema": "system/SettingsNamespacePayload", + "Sha256Digest": "system/Sha256Digest", + "Sha256DigestSchema": "system/Sha256Digest", + "SocialProviderConfig": "system/SocialProviderConfig", + "SocialProviderConfigSchema": "system/SocialProviderConfig", + "Span": "system/Span", + "SpanAttributeValue": "system/SpanAttributeValue", + "SpanAttributeValueSchema": "system/SpanAttributeValue", + "SpanAttributes": "system/SpanAttributes", + "SpanAttributesSchema": "system/SpanAttributes", + "SpanEvent": "system/SpanEvent", + "SpanEventSchema": "system/SpanEvent", + "SpanKind": "system/SpanKind", + "SpanLink": "system/SpanLink", + "SpanLinkSchema": "system/SpanLink", + "SpanSchema": "system/Span", + "SpanStatus": "system/SpanStatus", + "Specifier": "system/Specifier", + "SpecifierHandler": "system/SpecifierHandler", + "SpecifierHandlerSchema": "system/SpecifierHandler", + "SpecifierOption": "system/SpecifierOption", + "SpecifierOptionSchema": "system/SpecifierOption", + "SpecifierSchema": "system/Specifier", + "SpecifierScope": "system/SpecifierScope", + "SpecifierScopeSchema": "system/SpecifierScope", + "SpecifierType": "system/SpecifierType", + "SpecifierValueDomain": "system/SpecifierValueDomain", + "SpecifierValueDomainSchema": "system/SpecifierValueDomain", + "StackServerConfig": "system/StackServerConfig", + "StackServerConfigSchema": "system/StackServerConfig", + "StackServerSecurity": "system/StackServerSecurity", + "StackServerSecuritySchema": "system/StackServerSecurity", + "StorageAcl": "system/StorageAcl", + "StorageAclSchema": "system/StorageAcl", + "StorageClass": "system/StorageClass", + "StorageClassSchema": "system/StorageClass", + "StorageConnection": "system/StorageConnection", + "StorageConnectionSchema": "system/StorageConnection", + "StorageProvider": "system/StorageProvider", + "StorageProviderSchema": "system/StorageProvider", + "StorageScope": "system/StorageScope", + "StorageScopeSchema": "system/StorageScope", + "StructuredLogEntry": "system/StructuredLogEntry", + "StructuredLogEntrySchema": "system/StructuredLogEntry", + "SupplierAssessmentStatus": "system/SupplierAssessmentStatus", + "SupplierAssessmentStatusSchema": "system/SupplierAssessmentStatus", + "SupplierRiskLevel": "system/SupplierRiskLevel", + "SupplierRiskLevelSchema": "system/SupplierRiskLevel", + "SupplierSecurityAssessment": "system/SupplierSecurityAssessment", + "SupplierSecurityAssessmentSchema": "system/SupplierSecurityAssessment", + "SupplierSecurityPolicy": "system/SupplierSecurityPolicy", + "SupplierSecurityPolicySchema": "system/SupplierSecurityPolicy", + "SupplierSecurityRequirement": "system/SupplierSecurityRequirement", + "SupplierSecurityRequirementSchema": "system/SupplierSecurityRequirement", + "Task": "system/Task", + "TaskExecutionResult": "system/TaskExecutionResult", + "TaskExecutionResultSchema": "system/TaskExecutionResult", + "TaskPriority": "system/TaskPriority", + "TaskRetryPolicy": "system/TaskRetryPolicy", + "TaskRetryPolicySchema": "system/TaskRetryPolicy", + "TaskSchema": "system/Task", + "TaskStatus": "system/TaskStatus", + "Tenant": "system/Tenant", + "TenantConnectionConfig": "system/TenantConnectionConfig", + "TenantConnectionConfigSchema": "system/TenantConnectionConfig", + "TenantIsolationConfig": "system/TenantIsolationConfig", + "TenantIsolationConfigSchema": "system/TenantIsolationConfig", + "TenantIsolationLevel": "system/TenantIsolationLevel", + "TenantQuota": "system/TenantQuota", + "TenantQuotaSchema": "system/TenantQuota", + "TenantSchema": "system/Tenant", + "TenantSecurityPolicy": "system/TenantSecurityPolicy", + "TenantSecurityPolicySchema": "system/TenantSecurityPolicy", + "TenantUsage": "system/TenantUsage", + "TenantUsageSchema": "system/TenantUsage", + "TextCRDTOperation": "system/TextCRDTOperation", + "TextCRDTOperationSchema": "system/TextCRDTOperation", + "TextCRDTState": "system/TextCRDTState", + "TextCRDTStateSchema": "system/TextCRDTState", + "TimeSeries": "system/TimeSeries", + "TimeSeriesDataPoint": "system/TimeSeriesDataPoint", + "TimeSeriesDataPointSchema": "system/TimeSeriesDataPoint", + "TimeSeriesSchema": "system/TimeSeries", + "TraceContext": "system/TraceContext", + "TraceContextPropagation": "system/TraceContextPropagation", + "TraceContextPropagationSchema": "system/TraceContextPropagation", + "TraceContextSchema": "system/TraceContext", + "TraceFlags": "system/TraceFlags", + "TraceFlagsSchema": "system/TraceFlags", + "TracePropagationFormat": "system/TracePropagationFormat", + "TraceSamplingConfig": "system/TraceSamplingConfig", + "TraceSamplingConfigSchema": "system/TraceSamplingConfig", + "TraceState": "system/TraceState", + "TraceStateSchema": "system/TraceState", + "TracingConfig": "system/TracingConfig", + "TracingConfigSchema": "system/TracingConfig", + "TrainingCategory": "system/TrainingCategory", + "TrainingCategorySchema": "system/TrainingCategory", + "TrainingCompletionStatus": "system/TrainingCompletionStatus", + "TrainingCompletionStatusSchema": "system/TrainingCompletionStatus", + "TrainingCourse": "system/TrainingCourse", + "TrainingCourseSchema": "system/TrainingCourse", + "TrainingPlan": "system/TrainingPlan", + "TrainingPlanSchema": "system/TrainingPlan", + "TrainingRecord": "system/TrainingRecord", + "TrainingRecordSchema": "system/TrainingRecord", + "TranslationBundle": "system/TranslationBundle", + "TranslationBundleSchema": "system/TranslationBundle", + "TranslationConfig": "system/TranslationConfig", + "TranslationConfigSchema": "system/TranslationConfig", + "TranslationCoverageResult": "system/TranslationCoverageResult", + "TranslationCoverageResultSchema": "system/TranslationCoverageResult", + "TranslationData": "system/TranslationData", + "TranslationDataSchema": "system/TranslationData", + "TranslationDiffItem": "system/TranslationDiffItem", + "TranslationDiffItemSchema": "system/TranslationDiffItem", + "TranslationDiffStatus": "system/TranslationDiffStatus", + "TranslationDiffStatusSchema": "system/TranslationDiffStatus", + "TranslationItem": "system/TranslationItem", + "TranslationItemSchema": "system/TranslationItem", + "UserActivityStatus": "system/UserActivityStatus", + "VectorClock": "system/VectorClock", + "VectorClockSchema": "system/VectorClock", + "WorkerStats": "system/WorkerStats", + "WorkerStatsSchema": "system/WorkerStats" + }, + "collisions": [ + "RetryPolicy", + "RetryPolicySchema" + ] +} diff --git a/packages/spec/declaration-map/ui.json b/packages/spec/declaration-map/ui.json new file mode 100644 index 0000000000..46320c7d10 --- /dev/null +++ b/packages/spec/declaration-map/ui.json @@ -0,0 +1,281 @@ +{ + "description": "TS declaration name → spec registry name (def key) for the schemas @objectstack/spec publishes: entries['ObjectSchemaBase'] === 'data/Object'. Composed from json-schema.manifest/ (the def keys), export-origins/ (which declaration each export resolves to), and a syntactic unwinding of wrapper initializers that recovers module-private base declarations (the ObjectSchemaBase case — see scripts/build-declaration-map.ts). A name that maps to two different def keys is DROPPED into `collisions` rather than guessed, so a lookup miss means \"not known to be an authorable container\". Consumers hold a changed line’s enclosing declaration name and ask which authorable container it declares (docs-audit anchor qualification is the funding one). Generated — never hand-edited; regenerate with `pnpm --filter @objectstack/spec gen:declaration-map` and read the diff.", + "category": "ui", + "entries": { + "AIChatWindowProps": "ui/AIChatWindowProps", + "Action": "ui/Action", + "ActionAi": "ui/ActionAi", + "ActionAiSchema": "ui/ActionAi", + "ActionLocation": "ui/ActionLocation", + "ActionLocationSchema": "ui/ActionLocation", + "ActionNavItem": "ui/ActionNavItem", + "ActionNavItemSchema": "ui/ActionNavItem", + "ActionParam": "ui/ActionParam", + "ActionParamSchema": "ui/ActionParam", + "ActionSchema": "ui/Action", + "ActionSession": "ui/ActionSession", + "ActionSessionSchema": "ui/ActionSession", + "ActionType": "ui/ActionType", + "AddRecordConfig": "ui/AddRecordConfig", + "AddRecordConfigSchema": "ui/AddRecordConfig", + "App": "ui/App", + "AppBranding": "ui/AppBranding", + "AppBrandingSchema": "ui/AppBranding", + "AppContextSelector": "ui/AppContextSelector", + "AppContextSelectorSchema": "ui/AppContextSelector", + "AppSchema": "ui/App", + "AppearanceConfig": "ui/AppearanceConfig", + "AppearanceConfigSchema": "ui/AppearanceConfig", + "AriaProps": "ui/AriaProps", + "AriaPropsSchema": "ui/AriaProps", + "BulkActionDef": "ui/BulkActionDef", + "BulkActionDefSchema": "ui/BulkActionDef", + "BulkActionExecution": "ui/BulkActionExecution", + "BulkActionExecutionSchema": "ui/BulkActionExecution", + "BulkActionOperation": "ui/BulkActionOperation", + "BulkActionOperationSchema": "ui/BulkActionOperation", + "BulkActionParam": "ui/BulkActionParam", + "BulkActionParamSchema": "ui/BulkActionParam", + "CalendarConfig": "ui/CalendarConfig", + "CalendarConfigSchema": "ui/CalendarConfig", + "ChartAggregate": "ui/ChartAggregate", + "ChartAggregateFunction": "ui/ChartAggregateFunction", + "ChartAggregateFunctionSchema": "ui/ChartAggregateFunction", + "ChartAggregateSchema": "ui/ChartAggregate", + "ChartAnnotation": "ui/ChartAnnotation", + "ChartAnnotationSchema": "ui/ChartAnnotation", + "ChartAxis": "ui/ChartAxis", + "ChartAxisSchema": "ui/ChartAxis", + "ChartConfig": "ui/ChartConfig", + "ChartConfigSchema": "ui/ChartConfig", + "ChartDrillDown": "ui/ChartDrillDown", + "ChartDrillDownSchema": "ui/ChartDrillDown", + "ChartGroupBy": "ui/ChartGroupBy", + "ChartGroupBySchema": "ui/ChartGroupBy", + "ChartInteraction": "ui/ChartInteraction", + "ChartInteractionSchema": "ui/ChartInteraction", + "ChartSeries": "ui/ChartSeries", + "ChartSeriesSchema": "ui/ChartSeries", + "ChartType": "ui/ChartType", + "ChartTypeSchema": "ui/ChartType", + "ColumnPrefix": "ui/ColumnPrefix", + "ColumnPrefixSchema": "ui/ColumnPrefix", + "ColumnSummary": "ui/ColumnSummary", + "ColumnSummaryConfig": "ui/ColumnSummaryConfig", + "ColumnSummaryConfigSchema": "ui/ColumnSummaryConfig", + "ColumnSummarySchema": "ui/ColumnSummary", + "ComponentNavItem": "ui/ComponentNavItem", + "ComponentNavItemSchema": "ui/ComponentNavItem", + "Dashboard": "ui/Dashboard", + "DashboardHeader": "ui/DashboardHeader", + "DashboardHeaderAction": "ui/DashboardHeaderAction", + "DashboardHeaderActionSchema": "ui/DashboardHeaderAction", + "DashboardHeaderSchema": "ui/DashboardHeader", + "DashboardNavItem": "ui/DashboardNavItem", + "DashboardNavItemSchema": "ui/DashboardNavItem", + "DashboardSchema": "ui/Dashboard", + "DashboardWidget": "ui/DashboardWidget", + "DashboardWidgetOptions": "ui/DashboardWidgetOptions", + "DashboardWidgetOptionsSchema": "ui/DashboardWidgetOptions", + "DashboardWidgetSchema": "ui/DashboardWidget", + "Dataset": "ui/Dataset", + "DatasetDimension": "ui/DatasetDimension", + "DatasetDimensionSchema": "ui/DatasetDimension", + "DatasetMeasure": "ui/DatasetMeasure", + "DatasetMeasureSchema": "ui/DatasetMeasure", + "DatasetSchema": "ui/Dataset", + "DerivedMeasureOp": "ui/DerivedMeasureOp", + "ElementButtonPropsSchema": "ui/ElementButtonProps", + "ElementDataSource": "ui/ElementDataSource", + "ElementDataSourceSchema": "ui/ElementDataSource", + "ElementFilterPropsSchema": "ui/ElementFilterProps", + "ElementFormPropsSchema": "ui/ElementFormProps", + "ElementImagePropsSchema": "ui/ElementImageProps", + "ElementMetadataViewerPropsSchema": "ui/ElementMetadataViewerProps", + "ElementNumberProps": "ui/ElementNumberProps", + "ElementNumberPropsSchema": "ui/ElementNumberProps", + "ElementRecordPickerProps": "ui/ElementRecordPickerProps", + "ElementRecordPickerPropsSchema": "ui/ElementRecordPickerProps", + "ElementTextInputPropsSchema": "ui/ElementTextInputProps", + "ElementTextPropsSchema": "ui/ElementTextProps", + "ExpressionBindableTextKey": "ui/ExpressionBindableTextKey", + "ExpressionBindableTextKeySchema": "ui/ExpressionBindableTextKey", + "FormButtonConfig": "ui/FormButtonConfig", + "FormButtonConfigSchema": "ui/FormButtonConfig", + "FormField": "ui/FormField", + "FormFieldBaseSchema": "ui/FormField", + "FormFieldPublicPicker": "ui/FormFieldPublicPicker", + "FormFieldPublicPickerSchema": "ui/FormFieldPublicPicker", + "FormFieldSchema": "ui/FormField", + "FormSection": "ui/FormSection", + "FormSectionSchema": "ui/FormSection", + "FormSelectOption": "ui/FormSelectOption", + "FormSelectOptionSchema": "ui/FormSelectOption", + "FormView": "ui/FormView", + "FormViewSchema": "ui/FormView", + "GalleryConfig": "ui/GalleryConfig", + "GalleryConfigSchema": "ui/GalleryConfig", + "GanttConfig": "ui/GanttConfig", + "GanttConfigSchema": "ui/GanttConfig", + "GanttQuickFilter": "ui/GanttQuickFilter", + "GanttQuickFilterSchema": "ui/GanttQuickFilter", + "GlobalFilter": "ui/GlobalFilter", + "GlobalFilterOptionsFrom": "ui/GlobalFilterOptionsFrom", + "GlobalFilterOptionsFromSchema": "ui/GlobalFilterOptionsFrom", + "GlobalFilterSchema": "ui/GlobalFilter", + "GroupNavItem": "ui/GroupNavItem", + "GroupNavItemSchema": "ui/GroupNavItem", + "GroupingConfig": "ui/GroupingConfig", + "GroupingConfigSchema": "ui/GroupingConfig", + "GroupingFieldSchema": "ui/GroupingField", + "I18nLabel": "ui/I18nLabel", + "I18nLabelSchema": "ui/I18nLabel", + "InlineAction": "ui/InlineAction", + "InlineActionSchema": "ui/InlineAction", + "InlineLocaleMap": "ui/InlineLocaleMap", + "InlineLocaleMapSchema": "ui/InlineLocaleMap", + "InterfacePageConfig": "ui/InterfacePageConfig", + "InterfacePageConfigSchema": "ui/InterfacePageConfig", + "JoinedReportBlock": "ui/JoinedReportBlock", + "JoinedReportBlockSchema": "ui/JoinedReportBlock", + "KanbanConfig": "ui/KanbanConfig", + "KanbanConfigSchema": "ui/KanbanConfig", + "ListChartConfig": "ui/ListChartConfig", + "ListChartConfigSchema": "ui/ListChartConfig", + "ListColumn": "ui/ListColumn", + "ListColumnSchema": "ui/ListColumn", + "ListMapConfig": "ui/ListMapConfig", + "ListMapConfigSchema": "ui/ListMapConfig", + "ListView": "ui/ListView", + "ListViewSchema": "ui/ListView", + "NavigationArea": "ui/NavigationArea", + "NavigationAreaSchema": "ui/NavigationArea", + "NavigationConfig": "ui/NavigationConfig", + "NavigationConfigSchema": "ui/NavigationConfig", + "NavigationContribution": "ui/NavigationContribution", + "NavigationContributionSchema": "ui/NavigationContribution", + "NavigationItem": "ui/NavigationItem", + "NavigationItemSchema": "ui/NavigationItem", + "NavigationMode": "ui/NavigationMode", + "NavigationModeSchema": "ui/NavigationMode", + "NotificationPosition": "ui/NotificationPosition", + "NotificationPositionSchema": "ui/NotificationPosition", + "NotificationSeverity": "ui/NotificationSeverity", + "NotificationSeveritySchema": "ui/NotificationSeverity", + "NotificationType": "ui/NotificationType", + "NotificationTypeSchema": "ui/NotificationType", + "ObjectCalendarProps": "ui/ObjectCalendarProps", + "ObjectCalendarPropsSchema": "ui/ObjectCalendarProps", + "ObjectFormProps": "ui/ObjectFormProps", + "ObjectFormPropsSchema": "ui/ObjectFormProps", + "ObjectGridProps": "ui/ObjectGridProps", + "ObjectGridPropsSchema": "ui/ObjectGridProps", + "ObjectKanbanProps": "ui/ObjectKanbanProps", + "ObjectKanbanPropsSchema": "ui/ObjectKanbanProps", + "ObjectListViewSchema": "ui/ObjectListView", + "ObjectMasterDetailFormProps": "ui/ObjectMasterDetailFormProps", + "ObjectMasterDetailFormPropsSchema": "ui/ObjectMasterDetailFormProps", + "ObjectMetricProps": "ui/ObjectMetricProps", + "ObjectMetricPropsSchema": "ui/ObjectMetricProps", + "ObjectNavItem": "ui/ObjectNavItem", + "ObjectNavItemSchema": "ui/ObjectNavItem", + "ObjectUserFiltersSchema": "ui/ObjectUserFilters", + "Page": "ui/Page", + "PageAccordionProps": "ui/PageAccordionProps", + "PageCardProps": "ui/PageCardProps", + "PageComponent": "ui/PageComponent", + "PageComponentSchema": "ui/PageComponent", + "PageComponentType": "ui/PageComponentType", + "PageContainerProps": "ui/PageContainerProps", + "PageHeaderProps": "ui/PageHeaderProps", + "PageNavItem": "ui/PageNavItem", + "PageNavItemSchema": "ui/PageNavItem", + "PageRegion": "ui/PageRegion", + "PageRegionSchema": "ui/PageRegion", + "PageSchema": "ui/Page", + "PageTabsProps": "ui/PageTabsProps", + "PageType": "ui/PageType", + "PageTypeSchema": "ui/PageType", + "PageVariable": "ui/PageVariable", + "PageVariableSchema": "ui/PageVariable", + "PaginationConfig": "ui/PaginationConfig", + "PaginationConfigSchema": "ui/PaginationConfig", + "RecordActivityProps": "ui/RecordActivityProps", + "RecordAlertAction": "ui/RecordAlertAction", + "RecordAlertActionSchema": "ui/RecordAlertAction", + "RecordAlertProps": "ui/RecordAlertProps", + "RecordChatterProps": "ui/RecordChatterProps", + "RecordDetailsProps": "ui/RecordDetailsProps", + "RecordHighlightsField": "ui/RecordHighlightsField", + "RecordHighlightsProps": "ui/RecordHighlightsProps", + "RecordHistoryProps": "ui/RecordHistoryProps", + "RecordPathProps": "ui/RecordPathProps", + "RecordQuickActionsProps": "ui/RecordQuickActionsProps", + "RecordReferenceRailProps": "ui/RecordReferenceRailProps", + "RecordRelatedListProps": "ui/RecordRelatedListProps", + "ReferenceRailEntry": "ui/ReferenceRailEntry", + "ReferenceRailEntrySchema": "ui/ReferenceRailEntry", + "Report": "ui/Report", + "ReportChart": "ui/ReportChart", + "ReportChartSchema": "ui/ReportChart", + "ReportNavItem": "ui/ReportNavItem", + "ReportNavItemSchema": "ui/ReportNavItem", + "ReportSchema": "ui/Report", + "ReportSort": "ui/ReportSort", + "ReportSortSchema": "ui/ReportSort", + "ReportType": "ui/ReportType", + "ResponsiveStyles": "ui/ResponsiveStyles", + "ResponsiveStylesSchema": "ui/ResponsiveStyles", + "RowColorConfig": "ui/RowColorConfig", + "RowColorConfigSchema": "ui/RowColorConfig", + "RowHeight": "ui/RowHeight", + "RowHeightSchema": "ui/RowHeight", + "SelectionConfig": "ui/SelectionConfig", + "SelectionConfigSchema": "ui/SelectionConfig", + "SharingConfig": "ui/SharingConfig", + "SharingConfigSchema": "ui/SharingConfig", + "StyleMap": "ui/StyleMap", + "StyleMapSchema": "ui/StyleMap", + "TimelineConfig": "ui/TimelineConfig", + "TimelineConfigSchema": "ui/TimelineConfig", + "TreeConfig": "ui/TreeConfig", + "TreeConfigSchema": "ui/TreeConfig", + "UrlNavItem": "ui/UrlNavItem", + "UrlNavItemSchema": "ui/UrlNavItem", + "UserActionsConfig": "ui/UserActionsConfig", + "UserActionsConfigSchema": "ui/UserActionsConfig", + "UserFilterField": "ui/UserFilterField", + "UserFilterFieldSchema": "ui/UserFilterField", + "UserFilters": "ui/UserFilters", + "UserFiltersSchema": "ui/UserFilters", + "View": "ui/View", + "ViewData": "ui/ViewData", + "ViewDataSchema": "ui/ViewData", + "ViewFilterRule": "ui/ViewFilterRule", + "ViewFilterRuleSchema": "ui/ViewFilterRule", + "ViewItem": "ui/ViewItem", + "ViewItemName": "ui/ViewItemName", + "ViewItemNameSchema": "ui/ViewItemName", + "ViewItemSchema": "ui/ViewItem", + "ViewItemWire": "ui/ViewItemWire", + "ViewItemWireSchema": "ui/ViewItemWire", + "ViewKind": "ui/ViewKind", + "ViewKindSchema": "ui/ViewKind", + "ViewSchema": "ui/View", + "ViewScope": "ui/ViewScope", + "ViewScopeSchema": "ui/ViewScope", + "ViewSharing": "ui/ViewSharing", + "ViewSharingSchema": "ui/ViewSharing", + "ViewTab": "ui/ViewTab", + "ViewTabSchema": "ui/ViewTab", + "VisualizationType": "ui/VisualizationType", + "VisualizationTypeSchema": "ui/VisualizationType", + "WidgetActionType": "ui/WidgetActionType", + "WidgetActionTypeSchema": "ui/WidgetActionType", + "WidgetColorVariant": "ui/WidgetColorVariant", + "WidgetColorVariantSchema": "ui/WidgetColorVariant" + }, + "collisions": [ + "ListViewShapeSchema" + ] +} diff --git a/packages/spec/scripts/build-declaration-map.ts b/packages/spec/scripts/build-declaration-map.ts new file mode 100644 index 0000000000..da60acd469 --- /dev/null +++ b/packages/spec/scripts/build-declaration-map.ts @@ -0,0 +1,655 @@ +// Copyright (c) 2026 ObjectStack. Licensed under the Apache-2.0 license. + +/** + * build-declaration-map.ts — the TS-declaration-name → spec-registry-name map + * (`declaration-map/.json`), generated. + * + * ## Why this artifact exists + * + * The authorable surface keys its rows as `/:` using SPEC + * REGISTRY names (`data/Object:userActions`). Tooling that walks a source diff — + * the docs-audit anchor minting is the funding consumer — sees TS DECLARATION + * names instead: the declaration enclosing a changed line is `ObjectSchemaBase` + * or `DatasourceSchema`, never `data/Object`. No lookup between the two existed, + * so a diff-side tool could not ask "is this declaration an authorable + * container, and which one?". This artifact is that lookup: + * + * require('packages/spec/declaration-map/data.json').entries['ObjectSchemaBase'] + * // → 'data/Object' + * + * ## Where the mapping comes from — composition, not a second source of truth + * + * Two committed artifacts already carry every fact needed, plus one bounded + * syntactic pass for module-private base declarations: + * + * 1. `json-schema.manifest/` — every def key the schema build publishes + * (`data/Object`). The def key is `/` where `` is + * the export key with a trailing `Schema` suffix stripped + * (`lib/schema-name.ts`), so the export-key candidates for a def are + * exactly `` and `Schema` — the inverse is closed. + * 2. `export-origins/` — which source declaration each entry-point export + * resolves to (`src/data/object.zod.ts#ObjectSchema (const)`). This gives + * the DECLARED name (the map's key) and the declaring FILE (where the + * base pass below runs). + * 3. The base pass: a shape can live in a module-private const the exported + * def only wraps — `ObjectSchema`'s factory returns + * `Object.assign(ObjectSchemaBase, …)`, so the declaration enclosing + * `userActions` is `ObjectSchemaBase`, a name no runtime walk can see. + * Those are recovered by syntactically unwinding the exported + * declaration's initializer (single `ts.createSourceFile`, no type + * checker): unwrap `lazySchema` factories, follow `Object.assign` to its + * first argument, follow method-chain receivers (`.extend()`, + * `.superRefine()`, `.strict()`, …), follow returned identifiers, and + * record every same-file top-level const so reached against the wrapping + * def's key. + * + * No entry is hand-written and none can be: `--check` recomputes everything + * from the same inputs and compares bytes, and it runs inside `check:generated` + * (lint.yml's required TypeScript Type Check job), so a hand edit or a stale + * artifact is CI-red. The INPUT artifacts are themselves gated in that same + * job, so this artifact cannot silently ride a stale manifest either — the + * manifest's own gate is red on the same commit. + * + * ## Precision over recall, and the two deliberate boundaries + * + * A LOOKUP MISS means "not known to be an authorable container" and the + * consumer drops that anchor as internal noise — so a missing entry costs + * recall, while a WRONG entry would misqualify an anchor. The map therefore + * prefers dropping to guessing, twice: + * + * - **Bare-name collisions.** One name mapping to two different def keys + * (e.g. `RetryPolicy`, declared in `src/shared/` and published as both + * `system/RetryPolicy` and `automation/RetryPolicy`) is resolved by the + * HOME rule — prefer the def key whose category matches the declaring + * file's `src//` segment — and dropped into the shard's + * `collisions` list when that still leaves more than one. Dropped is + * visible; guessed would not be. + * - **The unwinding grammar is closed.** It follows wrapper/derivation + * shapes only (see `collectBaseReferences`); a shape reached through an + * import from another module, or passed as a spread/argument the grammar + * does not name, yields no entry. Extending the grammar is a code change + * with a self-test case, never a data patch. + * + * ## Usage + * + * pnpm --filter @objectstack/spec gen:declaration-map # regenerate + write + * pnpm --filter @objectstack/spec check:declaration-map # self-test, then fail on drift + * tsx scripts/build-declaration-map.ts --self-test # fixture check only + * + * Reads `src/` and the two committed artifacts — no build needed (`readsDist` + * does not apply). Sharded per category (#5837) so parallel spec PRs stay + * textually disjoint; `.gitattributes` routes the directory to the os-regen + * merge driver like its siblings. + */ + +import ts from 'typescript'; +import fs from 'node:fs'; +import path from 'node:path'; +import { fileURLToPath } from 'node:url'; +import { + SCHEMA_MANIFEST_DIR_NAME, + readShards, + serializeShard, + writeShards, + type SchemaManifestShard, +} from './lib/sharded-artifacts'; +import { + EXPORT_ORIGINS_DIR_NAME, + type ExportOriginsShard, +} from './lib/export-origins-layout'; + +const PKG_DIR = path.resolve(fileURLToPath(new URL('.', import.meta.url)), '..'); + +/** `packages/spec/declaration-map/.json` — this artifact. */ +export const DECLARATION_MAP_DIR_NAME = 'declaration-map'; + +const MAP_DIR = path.resolve(PKG_DIR, DECLARATION_MAP_DIR_NAME); +const MANIFEST_DIR = path.resolve(PKG_DIR, SCHEMA_MANIFEST_DIR_NAME); +const ORIGINS_DIR = path.resolve(PKG_DIR, EXPORT_ORIGINS_DIR_NAME); + +const CHECK = process.argv.includes('--check'); +const SELF_TEST = process.argv.includes('--self-test'); + +/** One category's slice of the declaration map. */ +export interface DeclarationMapShard { + description: string; + category: string; + /** TS declaration name → def key (`data/Object`), sorted by name. */ + entries: Record; + /** + * Names this generator SAW pointing at more than one def key in this + * category and therefore refused to record — a lookup of one of these + * legitimately misses. Sorted; usually empty. + */ + collisions: string[]; +} + +/** The description carried by every shard — repeated per file like its siblings'. */ +export const DECLARATION_MAP_DESCRIPTION = + 'TS declaration name → spec registry name (def key) for the schemas @objectstack/spec publishes: ' + + "entries['ObjectSchemaBase'] === 'data/Object'. Composed from json-schema.manifest/ (the def " + + 'keys), export-origins/ (which declaration each export resolves to), and a syntactic unwinding ' + + 'of wrapper initializers that recovers module-private base declarations (the ObjectSchemaBase ' + + 'case — see scripts/build-declaration-map.ts). A name that maps to two different def keys is ' + + 'DROPPED into `collisions` rather than guessed, so a lookup miss means "not known to be an ' + + 'authorable container". Consumers hold a changed line’s enclosing declaration name and ask ' + + 'which authorable container it declares (docs-audit anchor qualification is the funding one). ' + + 'Generated — never hand-edited; regenerate with ' + + '`pnpm --filter @objectstack/spec gen:declaration-map` and read the diff.'; + +// ── The base-declaration unwinding ─────────────────────────────────────────── + +/** + * A file's top-level `const` declarations: name → initializer (single-declarator + * statements only — every schema const in this package is one). + */ +function topLevelConstInitializers(source: ts.SourceFile): Map { + const out = new Map(); + for (const stmt of source.statements) { + if (!ts.isVariableStatement(stmt)) continue; + for (const decl of stmt.declarationList.declarations) { + if (ts.isIdentifier(decl.name) && decl.initializer) { + out.set(decl.name.text, decl.initializer); + } + } + } + return out; +} + +/** + * The same-file top-level consts a declaration's initializer DERIVES ITS SCHEMA + * FROM, collected by unwinding a closed grammar of wrapper shapes: + * + * - `lazySchema(F)` → into `F` (the deferred factory holds the real shape) + * - `Object.assign(E, …)` → into `E` only (the schema identity is the first + * argument; the rest is method decoration) + * - `E.method(…)` → into `E` (extend/superRefine/strict/describe/… — + * receiver chains keep the base's shape) + * - arrow/function body → into the expression body, or into every + * `return` argument of a block body + * - `(E)`, `E as T`, `E satisfies T`, `E!`, `cond ? A : B` → through + * - `Identifier` → RECORDED when it names a same-file top-level + * const, then unwound further (chained bases) + * + * Everything else — object literals, other call shapes, imported names — ends + * the walk. The grammar deliberately under-collects: a missing base costs the + * consumer one dropped anchor, while an over-collected name would qualify a + * declaration that is not this container (the header says why that trade). + */ +export function collectBaseReferences( + source: ts.SourceFile, + declaredName: string, +): string[] { + const topLevel = topLevelConstInitializers(source); + const start = topLevel.get(declaredName); + if (!start) return []; + + const found = new Set(); + const visited = new Set([declaredName]); + + const walk = (node: ts.Expression | undefined): void => { + if (!node) return; + if (ts.isIdentifier(node)) { + const name = node.text; + if (!topLevel.has(name) || visited.has(name)) return; + visited.add(name); + found.add(name); + walk(topLevel.get(name)); + return; + } + if (ts.isCallExpression(node)) { + const callee = node.expression; + if ( + ts.isPropertyAccessExpression(callee) && + ts.isIdentifier(callee.expression) && + callee.expression.text === 'Object' && + callee.name.text === 'assign' + ) { + walk(node.arguments[0]); + return; + } + if (ts.isIdentifier(callee) && callee.text === 'lazySchema') { + walk(node.arguments[0]); + return; + } + if (ts.isPropertyAccessExpression(callee)) { + walk(callee.expression); + return; + } + return; // strictObject(…), z.object(…) via other shapes: the shape is inline. + } + if (ts.isArrowFunction(node) || ts.isFunctionExpression(node)) { + const body = node.body; + if (ts.isBlock(body)) { + const visitStatement = (stmt: ts.Node): void => { + if (ts.isReturnStatement(stmt)) { + walk(stmt.expression); + return; + } + // Returns nested under if/try/switch still end the factory; plain + // statement recursion finds them without evaluating anything. + stmt.forEachChild(visitStatement); + }; + body.forEachChild(visitStatement); + } else { + walk(body); + } + return; + } + if ( + ts.isParenthesizedExpression(node) || + ts.isAsExpression(node) || + ts.isSatisfiesExpression(node) || + ts.isNonNullExpression(node) + ) { + walk(node.expression); + return; + } + if (ts.isConditionalExpression(node)) { + walk(node.whenTrue); + walk(node.whenFalse); + return; + } + // Object literals, template strings, everything else: no schema identity here. + }; + + walk(start); + return [...found].sort(); +} + +// ── Composition ────────────────────────────────────────────────────────────── + +/** `data/Object` → `data`; mirrors `categoryOfDefKey` but local to a def key we minted. */ +function categoryOf(defKey: string): string { + return defKey.slice(0, defKey.indexOf('/')); +} + +/** `src/data/object.zod.ts` → `data`, or null for anything outside `src//`. */ +export function homeCategoryOfFile(file: string): string | null { + const m = /^src\/([a-z-]+)\//.exec(file); + return m ? m[1] : null; +} + +interface Candidate { + defKey: string; + /** The `src//…` segment of the declaring file, for the home rule. */ + homeCategory: string | null; +} + +export interface ComposedMap { + /** name → def key, after precedence, the home rule, and collision dropping. */ + entries: Map; + /** name → the distinct def keys it ambiguously pointed at (dropped). */ + collisions: Map; +} + +/** + * Merge export-half and base-half candidates into one map. + * + * Precedence: a name's EXPORT-half candidates (the declaration is itself a + * published def) beat its base-half ones (the declaration feeds someone else's + * def) — a base reached by unwinding that is also a def in its own right owns + * its own key. Within a half, one distinct def key wins outright; several are + * narrowed by the home rule (the def key whose category matches the declaring + * file's `src//`); anything still plural is dropped and recorded. + */ +export function composeEntries( + exportHalf: Map, + baseHalf: Map, +): ComposedMap { + const entries = new Map(); + const collisions = new Map(); + + const settle = (name: string, candidates: Candidate[]): void => { + const distinct = [...new Set(candidates.map((c) => c.defKey))].sort(); + if (distinct.length === 1) { + entries.set(name, distinct[0]); + return; + } + const home = new Set(candidates.map((c) => c.homeCategory).filter((c) => c !== null)); + if (home.size === 1) { + const homed = distinct.filter((d) => categoryOf(d) === [...home][0]); + if (homed.length === 1) { + entries.set(name, homed[0]); + return; + } + } + collisions.set(name, distinct); + }; + + for (const [name, candidates] of exportHalf) settle(name, candidates); + for (const [name, candidates] of baseHalf) { + if (entries.has(name) || collisions.has(name)) continue; // export half won. + settle(name, candidates); + } + return { entries, collisions }; +} + +/** Split the composed map into ` → canonical shard bytes`. */ +export function declarationMapShardTexts(composed: ComposedMap): Map { + const byCategory = new Map; collisions: Set }>(); + const slot = (category: string) => { + let s = byCategory.get(category); + if (!s) { + s = { entries: new Map(), collisions: new Set() }; + byCategory.set(category, s); + } + return s; + }; + for (const [name, defKey] of composed.entries) slot(categoryOf(defKey)).entries.set(name, defKey); + // A dropped name is listed in EVERY category it pointed at — the reader who + // misses a lookup opens the shard for the category they expected. + for (const [name, defKeys] of composed.collisions) { + for (const defKey of defKeys) slot(categoryOf(defKey)).collisions.add(name); + } + + const out = new Map(); + for (const category of [...byCategory.keys()].sort()) { + const { entries, collisions } = byCategory.get(category)!; + out.set( + category, + serializeShard({ + description: DECLARATION_MAP_DESCRIPTION, + category, + entries: Object.fromEntries([...entries.entries()].sort(([a], [b]) => (a < b ? -1 : 1))), + collisions: [...collisions].sort(), + } satisfies DeclarationMapShard), + ); + } + return out; +} + +/** + * The whole computation, from the two committed artifacts plus `src/`, pure of + * argv so the self-test and both modes share one code path. + */ +export function buildDeclarationMap(pkgDir: string): ComposedMap { + const manifestShards = readShards(path.resolve(pkgDir, SCHEMA_MANIFEST_DIR_NAME)); + const originShards = readShards(path.resolve(pkgDir, EXPORT_ORIGINS_DIR_NAME)); + const originsByCategory = new Map>( + originShards.map((s) => [s.name, s.doc.exports]), + ); + + const defKeys = manifestShards.flatMap((s) => s.doc.schemas); + // Anti-vacuity floor, same instinct as build-export-origins' entry-point + // floor: an empty or truncated manifest would compose a tiny, plausible map + // and every downstream lookup would quietly miss. + if (defKeys.length < 1000) { + console.error( + `❌ ${SCHEMA_MANIFEST_DIR_NAME}/ lists only ${defKeys.length} def key(s); @objectstack/spec ` + + `publishes well over a thousand. Refusing to compose a map from what is probably a ` + + `truncated read.`, + ); + process.exit(1); + } + + const exportHalf = new Map(); + const baseHalf = new Map(); + const push = (half: Map, name: string, candidate: Candidate) => { + const list = half.get(name); + if (list) list.push(candidate); + else half.set(name, [candidate]); + }; + + const sourceCache = new Map(); + const parsed = (file: string): ts.SourceFile => { + let sf = sourceCache.get(file); + if (!sf) { + sf = ts.createSourceFile( + file, + fs.readFileSync(path.resolve(pkgDir, file), 'utf8'), + ts.ScriptTarget.Latest, + /* setParentNodes */ false, + ); + sourceCache.set(file, sf); + } + return sf; + }; + + const unresolved: string[] = []; + for (const defKey of defKeys) { + const category = categoryOf(defKey); + const name = defKey.slice(category.length + 1); + const exports = originsByCategory.get(category); + if (!exports) { + unresolved.push(`${defKey} — no ${EXPORT_ORIGINS_DIR_NAME}/${category}.json shard`); + continue; + } + // The closed inverse of schemaNameFromExportKey: the export key is the def + // name verbatim or with the `Schema` suffix it strips. + const candidates = [name, `${name}Schema`].filter((k) => k in exports); + if (candidates.length === 0) { + unresolved.push(`${defKey} — neither "${name}" nor "${name}Schema" in ${category}'s export origins`); + continue; + } + for (const exportKey of candidates) { + // `src/data/object.zod.ts#ObjectSchema (const)` → file + declared name. + const origin = exports[exportKey]; + const hash = origin.indexOf('#'); + const space = origin.indexOf(' ', hash); + const file = origin.slice(0, hash); + const declared = origin.slice(hash + 1, space === -1 ? undefined : space); + const homeCategory = homeCategoryOfFile(file); + + push(exportHalf, exportKey, { defKey, homeCategory }); + if (declared !== exportKey) push(exportHalf, declared, { defKey, homeCategory }); + + // The base pass runs only over this package's own sources — an origin in + // node_modules/ (a re-exported dependency type) has no authorable shape + // to unwind and is not ours to parse. + if (!file.startsWith('src/')) continue; + for (const base of collectBaseReferences(parsed(file), declared)) { + push(baseHalf, base, { defKey, homeCategory }); + } + } + } + + if (unresolved.length > 0) { + console.error( + `❌ ${unresolved.length} def key(s) did not resolve to an export origin — the manifest and ` + + `${EXPORT_ORIGINS_DIR_NAME}/ disagree (regenerate whichever is stale first):\n`, + ); + for (const line of unresolved) console.error(` • ${line}`); + process.exit(1); + } + + const composed = composeEntries(exportHalf, baseHalf); + + // Named canary: the module-private base that funded the base pass. If the + // unwinding grammar rots (a refactor of ObjectSchema's factory it cannot + // follow), this build fails HERE, naming the pass — rather than the artifact + // silently thinning and a docs-audit anchor going quietly dark downstream. + if (composed.entries.get('ObjectSchemaBase') !== 'data/Object') { + console.error( + `❌ base-pass canary: expected ObjectSchemaBase → data/Object, got ` + + `${JSON.stringify(composed.entries.get('ObjectSchemaBase') ?? null)}. Either ` + + `src/data/object.zod.ts reshaped its wrapper into a form collectBaseReferences() cannot ` + + `follow (extend the grammar + its self-test), or the base declaration was renamed (update ` + + `this canary in the same PR).`, + ); + process.exit(1); + } + + return composed; +} + +// ── Self-test ──────────────────────────────────────────────────────────────── + +/** + * Pin every rule of the unwinding grammar on a fixture, plus the composition's + * precedence and collision behaviour — the edges the real surface cannot show + * (both answers look plausible there). + */ +function selfTest(): never { + const fail = (message: string): never => { + console.error(`✗ self-test: ${message}`); + process.exit(1); + }; + + const fixture = ts.createSourceFile( + 'fixture.zod.ts', + [ + `import { z } from 'zod';`, + `import { lazySchema } from './lazy';`, + `import { ImportedBase } from './elsewhere';`, + `const GrandBase = z.object({ a: z.string() });`, + `const MidBase = GrandBase.extend({ b: z.string() });`, + `export const ChainSchema = lazySchema(() => MidBase.superRefine(() => {}));`, + `const AssignedBase = z.object({ c: z.string() });`, + `export const AssignedSchema = lazySchema(() => {`, + ` const helper = 1;`, + ` if (helper) { return Object.assign(AssignedBase, { extra: true }); }`, + ` return Object.assign(AssignedBase, {});`, + `});`, + `export const InlineSchema = z.object({ d: z.string() });`, + `export const FromImportSchema = ImportedBase.extend({ e: z.string() });`, + `const CondA = z.object({ f: z.string() });`, + `const CondB = z.object({ g: z.string() });`, + `export const CondSchema = (process.env.X ? CondA : CondB) as unknown as typeof CondA;`, + ].join('\n'), + ts.ScriptTarget.Latest, + ); + + const expectBases = (declared: string, expected: string[]) => { + const got = collectBaseReferences(fixture, declared); + if (JSON.stringify(got) !== JSON.stringify(expected)) { + fail(`${declared}: expected bases [${expected.join(', ')}], got [${got.join(', ')}]`); + } + }; + + // Receiver chain through lazySchema, then transitively to the base's own base. + expectBases('ChainSchema', ['GrandBase', 'MidBase']); + // Block-bodied factory, returns nested under `if`, Object.assign first-arg rule. + expectBases('AssignedSchema', ['AssignedBase']); + // Inline shape: nothing to record. + expectBases('InlineSchema', []); + // An imported base is not a same-file top-level const — deliberately not recorded. + expectBases('FromImportSchema', []); + // Conditional + `as` chains unwrap; both arms are candidates. + expectBases('CondSchema', ['CondA', 'CondB']); + // A name that declares nothing here yields nothing (and does not throw). + expectBases('NoSuchDeclaration', []); + + // Composition: export half beats base half for the same name… + const composed = composeEntries( + new Map([ + ['MidBase', [{ defKey: 'data/MidBase', homeCategory: 'data' }]], + ['Solo', [{ defKey: 'data/Solo', homeCategory: 'data' }]], + // …the home rule narrows a cross-category duplicate… + [ + 'Dup', + [ + { defKey: 'kernel/Dup', homeCategory: 'kernel' }, + { defKey: 'api/Dup', homeCategory: 'kernel' }, + ], + ], + // …and a duplicate the home rule cannot narrow is dropped, not guessed. + [ + 'Torn', + [ + { defKey: 'system/Torn', homeCategory: 'shared' }, + { defKey: 'automation/Torn', homeCategory: 'shared' }, + ], + ], + ]), + new Map([ + ['MidBase', [{ defKey: 'data/Chain', homeCategory: 'data' }]], + ['GrandBase', [{ defKey: 'data/Chain', homeCategory: 'data' }]], + // A base wrapped by two different defs is ambiguous — dropped. + [ + 'SharedBase', + [ + { defKey: 'data/One', homeCategory: 'data' }, + { defKey: 'data/Two', homeCategory: 'data' }, + ], + ], + ]), + ); + const expectEntry = (name: string, want: string | undefined) => { + const got = composed.entries.get(name); + if (got !== want) fail(`composeEntries: ${name} → ${JSON.stringify(got)}, expected ${JSON.stringify(want)}`); + }; + expectEntry('MidBase', 'data/MidBase'); + expectEntry('Solo', 'data/Solo'); + expectEntry('Dup', 'kernel/Dup'); + expectEntry('GrandBase', 'data/Chain'); + expectEntry('Torn', undefined); + expectEntry('SharedBase', undefined); + if (![...composed.collisions.keys()].sort().join(',').includes('SharedBase')) { + fail('composeEntries: SharedBase must be RECORDED as a collision, not silently absent'); + } + if (!composed.collisions.has('Torn')) { + fail('composeEntries: Torn must be recorded as a collision'); + } + + // Shard routing: entries land in their def key's category; a collision is + // listed in EVERY category it pointed at. + const shards = declarationMapShardTexts(composed); + const dataShard = JSON.parse(shards.get('data') ?? '{}') as DeclarationMapShard; + if (dataShard.entries['GrandBase'] !== 'data/Chain') fail('data shard must carry GrandBase'); + if (!dataShard.collisions.includes('SharedBase')) fail('data shard must list SharedBase as a collision'); + const systemShard = JSON.parse(shards.get('system') ?? '{}') as DeclarationMapShard; + const automationShard = JSON.parse(shards.get('automation') ?? '{}') as DeclarationMapShard; + if (!systemShard.collisions.includes('Torn') || !automationShard.collisions.includes('Torn')) { + fail('a cross-category collision must be listed in every category it pointed at'); + } + + console.log( + '✅ self-test: the unwinding grammar follows wrappers/receivers/returns and stops at imports ' + + 'and inline shapes; composition prefers the export half, applies the home rule, and drops ' + + 'ambiguity loudly.', + ); + process.exit(0); +} + +if (SELF_TEST) selfTest(); + +// ── Generate / check ───────────────────────────────────────────────────────── + +const composed = buildDeclarationMap(PKG_DIR); +const shardTexts = declarationMapShardTexts(composed); +const totals = `${composed.entries.size} declaration name(s) across ${shardTexts.size} categor(ies), ` + + `${composed.collisions.size} dropped as ambiguous`; + +if (!CHECK) { + const { written, removed } = writeShards(MAP_DIR, shardTexts); + console.log( + `✅ ${DECLARATION_MAP_DIR_NAME}/: ${totals} — ${written.length} shard(s) rewritten` + + `${removed.length ? `, ${removed.length} removed` : ''}.`, + ); + process.exit(0); +} + +const problems: string[] = []; +const onDiskNames = fs.existsSync(MAP_DIR) + ? fs.readdirSync(MAP_DIR).filter((f) => f.endsWith('.json')).map((f) => f.slice(0, -'.json'.length)) + : []; +for (const [name, text] of [...shardTexts].sort(([a], [b]) => (a < b ? -1 : 1))) { + const file = path.join(MAP_DIR, `${name}.json`); + if (!fs.existsSync(file)) { + problems.push(`missing shard ${DECLARATION_MAP_DIR_NAME}/${name}.json`); + } else if (fs.readFileSync(file, 'utf8') !== text) { + problems.push(`${DECLARATION_MAP_DIR_NAME}/${name}.json is stale — the sources compose differently`); + } +} +for (const name of onDiskNames) { + if (!shardTexts.has(name)) { + problems.push(`${DECLARATION_MAP_DIR_NAME}/${name}.json is for a category with no entries any more`); + } +} + +if (problems.length === 0) { + console.log(`✅ ${DECLARATION_MAP_DIR_NAME}/ is current: ${totals}.`); + process.exit(0); +} + +console.error(`❌ ${problems.length} problem(s) with ${DECLARATION_MAP_DIR_NAME}/:\n`); +for (const problem of problems) console.error(` • ${problem}`); +console.error( + `\nThis artifact maps TS DECLARATION names to the spec registry names the authorable surface\n` + + `keys by (ObjectSchemaBase → data/Object). Diff-side tooling reads it to decide whether a\n` + + `changed declaration is an authorable container at all, so a stale map silently misroutes\n` + + `that decision. Regenerate and commit the diff:\n\n` + + ` pnpm --filter @objectstack/spec gen:declaration-map\n`, +); +process.exit(1); From eee45483c8e6ce6880a231cfdc0b1c4659829c4d Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 31 Aug 2026 17:00:57 +0000 Subject: [PATCH 2/2] feat(spec): wire declaration-map into check:generated, merge driver, pins, changeset MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - package.json: gen:declaration-map / check:declaration-map (self-test + --check) - check-generated.ts: GATED row after its two input artifacts - .gitattributes + regen-artifacts.mjs: merge=os-regen routing - scripts/declaration-map.test.ts: pins ObjectSchemaBase→data/Object, DatasourceSchema→data/Datasource, non-empty floor, positive control, manifest cross-consistency - changeset (patch) Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01PBjwYLS6BciTQW3c9xQiD2 --- .changeset/declaration-map-artifact.md | 5 + .gitattributes | 1 + packages/spec/package.json | 2 + .../spec/scripts/build-declaration-map.ts | 2 - packages/spec/scripts/check-generated.ts | 7 ++ packages/spec/scripts/declaration-map.test.ts | 92 +++++++++++++++++++ scripts/regen-artifacts.mjs | 6 ++ 7 files changed, 113 insertions(+), 2 deletions(-) create mode 100644 .changeset/declaration-map-artifact.md create mode 100644 packages/spec/scripts/declaration-map.test.ts diff --git a/.changeset/declaration-map-artifact.md b/.changeset/declaration-map-artifact.md new file mode 100644 index 0000000000..ada831f269 --- /dev/null +++ b/.changeset/declaration-map-artifact.md @@ -0,0 +1,5 @@ +--- +"@objectstack/spec": patch +--- + +New generated artifact `declaration-map/` (with `gen:declaration-map` / `check:declaration-map`, covered by `check:generated`): maps TS declaration names of authorable containers to their spec registry names — `ObjectSchemaBase` resolves to `data/Object`, `DatasourceSchema` to `data/Datasource` — composed from `json-schema.manifest/`, `export-origins/`, and a syntactic unwinding pass that recovers module-private base declarations. Repo-internal (not published to npm, like `export-origins/`); diff-side tooling reads it to decide whether a changed declaration is an authorable container. diff --git a/.gitattributes b/.gitattributes index 09fb0ff8ed..394dcf389a 100644 --- a/.gitattributes +++ b/.gitattributes @@ -102,6 +102,7 @@ packages/spec/json-schema.manifest/** merge=os-regen packages/spec/api-surface/** merge=os-regen packages/spec/src/meta-spelling/meta-url-data.generated.ts merge=os-regen packages/spec/export-origins/** merge=os-regen +packages/spec/declaration-map/** merge=os-regen packages/spec/api-surface-signatures.json merge=os-regen docs/protocol-upgrade-guide.md merge=os-regen docs/audits/2026-07-unknown-key-strictness-ledger.counts.md merge=os-regen diff --git a/packages/spec/package.json b/packages/spec/package.json index 3cd7e27cdf..0db5f14ef7 100644 --- a/packages/spec/package.json +++ b/packages/spec/package.json @@ -264,6 +264,8 @@ "check:api-surface": "tsx scripts/build-api-surface.ts --check", "gen:export-origins": "tsx scripts/build-export-origins.ts", "check:export-origins": "tsx scripts/build-export-origins.ts --self-test && tsx scripts/build-export-origins.ts --check", + "gen:declaration-map": "tsx scripts/build-declaration-map.ts", + "check:declaration-map": "tsx scripts/build-declaration-map.ts --self-test && tsx scripts/build-declaration-map.ts --check", "check:exported-any": "tsx scripts/check-exported-any.ts --self-test && tsx scripts/check-exported-any.ts", "check:dual-source-exports": "tsx scripts/check-dual-source-exports.ts --self-test && tsx scripts/check-dual-source-exports.ts", "check:entry-nameability": "tsx scripts/check-entry-nameability.ts", diff --git a/packages/spec/scripts/build-declaration-map.ts b/packages/spec/scripts/build-declaration-map.ts index da60acd469..332f5a64d1 100644 --- a/packages/spec/scripts/build-declaration-map.ts +++ b/packages/spec/scripts/build-declaration-map.ts @@ -104,8 +104,6 @@ const PKG_DIR = path.resolve(fileURLToPath(new URL('.', import.meta.url)), '..') export const DECLARATION_MAP_DIR_NAME = 'declaration-map'; const MAP_DIR = path.resolve(PKG_DIR, DECLARATION_MAP_DIR_NAME); -const MANIFEST_DIR = path.resolve(PKG_DIR, SCHEMA_MANIFEST_DIR_NAME); -const ORIGINS_DIR = path.resolve(PKG_DIR, EXPORT_ORIGINS_DIR_NAME); const CHECK = process.argv.includes('--check'); const SELF_TEST = process.argv.includes('--self-test'); diff --git a/packages/spec/scripts/check-generated.ts b/packages/spec/scripts/check-generated.ts index cbea426f0f..d57ccb30fc 100644 --- a/packages/spec/scripts/check-generated.ts +++ b/packages/spec/scripts/check-generated.ts @@ -121,6 +121,13 @@ const GATED: ReadonlyArray<{ // and a non-deterministic timeout that ejected unrelated PRs from the merge // queue), so its freshness is what those pins mean. { check: 'check:export-origins', gen: 'gen:export-origins', artifact: 'export-origins/' }, + // The TS-declaration-name → registry-name map (#13712). Composed from the two + // artifacts above it in this list — json-schema.manifest/ (via + // check:authorable-surface) and export-origins/ — plus a syntactic pass over + // src/ for module-private base declarations (ObjectSchemaBase → data/Object), + // so it runs AFTER both inputs' own gates and a `--fix` regenerates it after + // them. Reads src/ and committed artifacts only: no build needed. + { check: 'check:declaration-map', gen: 'gen:declaration-map', artifact: 'declaration-map/' }, { check: 'check:docs', gen: 'gen:docs', diff --git a/packages/spec/scripts/declaration-map.test.ts b/packages/spec/scripts/declaration-map.test.ts new file mode 100644 index 0000000000..9c1d12bb71 --- /dev/null +++ b/packages/spec/scripts/declaration-map.test.ts @@ -0,0 +1,92 @@ +// Copyright (c) 2026 ObjectStack. Licensed under the Apache-2.0 license. + +/** + * Pins over the committed `declaration-map/` artifact (#13712). + * + * The artifact's funding consumer is diff-side tooling that holds a changed + * line's ENCLOSING DECLARATION name and must decide whether it declares an + * authorable container — so the two measured true positives of that consumer + * are pinned here BY NAME, against the committed bytes (not against a fresh + * computation: `check:declaration-map` already proves bytes ↔ sources; these + * pins prove the bytes carry the specific facts the consumer was funded on). + * + * - `ObjectSchemaBase` → `data/Object` — the module-private base case: the + * name exists only in source text, recovered by the generator's syntactic + * unwinding. If this pin reds, that pass regressed (or the base was + * renamed — update the pin and the generator's canary together). + * - `DatasourceSchema` → `data/Datasource` — the plain export case. (The + * issue's prose used `DatasourceDef` as a stand-in; no such declaration + * exists — `schemaMode`'s enclosing declaration is `DatasourceSchema`.) + * + * Plus the guards that keep the pins from passing vacuously: the aggregate map + * is NON-EMPTY at scale, a known-absent name really misses (a permissive + * reader — a Proxy, a prototype hit — would answer everything), and every + * recorded value is a def key the schema manifest actually publishes. + */ + +import { describe, expect, it } from 'vitest'; +import fs from 'node:fs'; +import path from 'node:path'; +import { fileURLToPath } from 'node:url'; + +const PKG_DIR = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..'); +const MAP_DIR = path.resolve(PKG_DIR, 'declaration-map'); +const MANIFEST_DIR = path.resolve(PKG_DIR, 'json-schema.manifest'); + +interface Shard { + description: string; + category: string; + entries: Record; + collisions: string[]; +} + +function readShards(dir: string): Record[] { + return fs + .readdirSync(dir) + .filter((f) => f.endsWith('.json')) + .sort() + .map((f) => JSON.parse(fs.readFileSync(path.join(dir, f), 'utf8')) as Record); +} + +const shards = readShards(MAP_DIR) as unknown as Shard[]; +const entries: Record = Object.assign({}, ...shards.map((s) => s.entries)); + +describe('declaration-map/ (#13712)', () => { + it('is non-empty at the scale the surface implies', () => { + // ~1,600 def keys each contribute at least one name; a truncated or + // half-composed artifact cannot reach this floor. + expect(Object.keys(entries).length).toBeGreaterThan(1000); + expect(shards.length).toBeGreaterThanOrEqual(10); + }); + + it('pins the module-private base case: ObjectSchemaBase → data/Object', () => { + expect(entries['ObjectSchemaBase']).toBe('data/Object'); + }); + + it('pins the plain export case: DatasourceSchema → data/Datasource', () => { + expect(entries['DatasourceSchema']).toBe('data/Datasource'); + }); + + it('positive control: a known-absent name misses, so a hit means something', () => { + // `DatasourceDef` is the issue's stand-in spelling; no such declaration + // exists in src/. A reader that answered it would answer anything, and + // both pins above would stop being evidence. + expect(Object.prototype.hasOwnProperty.call(entries, 'DatasourceDef')).toBe(false); + expect(entries['ThisDeclarationDoesNotExist13712']).toBeUndefined(); + }); + + it('every recorded value is a def key the schema manifest publishes', () => { + const published = new Set( + readShards(MANIFEST_DIR).flatMap((s) => (s as { schemas?: string[] }).schemas ?? []), + ); + expect(published.size).toBeGreaterThan(1000); + const strays = Object.entries(entries).filter(([, defKey]) => !published.has(defKey)); + expect(strays).toEqual([]); + }); + + it('a name never appears as both an entry and a collision', () => { + const collided = new Set(shards.flatMap((s) => s.collisions)); + const both = Object.keys(entries).filter((n) => collided.has(n)); + expect(both).toEqual([]); + }); +}); diff --git a/scripts/regen-artifacts.mjs b/scripts/regen-artifacts.mjs index 156b00dbe1..bc4d3b6253 100644 --- a/scripts/regen-artifacts.mjs +++ b/scripts/regen-artifacts.mjs @@ -127,6 +127,12 @@ export const REGEN_ARTIFACTS = Object.freeze([ // — the exact churn profile the driver exists for. NO `readsDist`: it reads // `src/`, so a merge that moved sources is all it needs to be re-run against. { path: 'packages/spec/export-origins/**', gen: 'gen:export-origins', check: 'check:export-origins' }, + // The #13712 TS-declaration-name → registry-name map. Composed from + // json-schema.manifest/ + export-origins/ (both rows above, so a regen pass + // that runs in list order refreshes its inputs first) plus a syntactic pass + // over src/ for module-private base declarations. NO `readsDist`: like its + // export-origins sibling it reads `src/` and committed artifacts only. + { path: 'packages/spec/declaration-map/**', gen: 'gen:declaration-map', check: 'check:declaration-map' }, // `readsSchemaTree` is the `readsDist` above, one artifact over (#4723). Both // `gen:docs` and `check:docs` render from `packages/spec/json-schema/`, which is // GITIGNORED — a merge therefore never delivers it, and a leftover tree from