@contractspec/bundle.library 3.8.9 → 3.8.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +606 -594
- package/CHANGELOG.md +68 -0
- package/dist/application/context-storage/index.js +1 -28
- package/dist/application/index.js +13 -2133
- package/dist/application/mcp/cliMcp.js +4 -452
- package/dist/application/mcp/common.js +1 -193
- package/dist/application/mcp/contractsMcp.js +2 -549
- package/dist/application/mcp/contractsMcpResources.js +2 -123
- package/dist/application/mcp/contractsMcpTools.js +1 -199
- package/dist/application/mcp/docsMcp.catalog.js +3 -381
- package/dist/application/mcp/docsMcp.data.js +1 -147
- package/dist/application/mcp/docsMcp.js +6 -1039
- package/dist/application/mcp/docsMcp.prompts.js +6 -521
- package/dist/application/mcp/docsMcp.reference.js +3 -235
- package/dist/application/mcp/docsMcp.resources.js +3 -519
- package/dist/application/mcp/docsMcp.tools.js +3 -518
- package/dist/application/mcp/index.js +13 -2106
- package/dist/application/mcp/internalMcp.js +2 -410
- package/dist/application/mcp/normalizeMcpRequest.js +1 -21
- package/dist/application/mcp/providerRankingMcp.js +1 -530
- package/dist/bundles/LibraryBundle.js +1 -138
- package/dist/bundles/index.js +1 -138
- package/dist/components/docs/DocsIndexPage.js +2 -912
- package/dist/components/docs/advanced/AdvancedMCPPage.js +4 -271
- package/dist/components/docs/advanced/AdvancedOverlayEditorPage.js +1 -107
- package/dist/components/docs/advanced/AdvancedRenderersPage.js +2 -118
- package/dist/components/docs/advanced/AdvancedSpecExperimentsPage.js +4 -92
- package/dist/components/docs/advanced/AdvancedTelemetryPage.js +2 -373
- package/dist/components/docs/advanced/AdvancedWorkflowMonitoringPage.js +2 -99
- package/dist/components/docs/advanced/index.js +10 -1055
- package/dist/components/docs/architecture/ArchitectureAppConfigPage.js +6 -243
- package/dist/components/docs/architecture/ArchitectureControlPlanePage.js +3 -160
- package/dist/components/docs/architecture/ArchitectureIntegrationBindingPage.js +7 -259
- package/dist/components/docs/architecture/ArchitectureKnowledgeBindingPage.js +6 -374
- package/dist/components/docs/architecture/ArchitectureMultiTenancyPage.js +2 -166
- package/dist/components/docs/architecture/ArchitectureOverviewPage.js +1 -143
- package/dist/components/docs/architecture/index.js +20 -1340
- package/dist/components/docs/comparison/ComparisonAutomationPlatformsPage.js +1 -245
- package/dist/components/docs/comparison/ComparisonEnterprisePlatformsPage.js +1 -230
- package/dist/components/docs/comparison/ComparisonInternalToolBuildersPage.js +1 -245
- package/dist/components/docs/comparison/ComparisonOverviewPage.js +1 -202
- package/dist/components/docs/comparison/ComparisonWindmillPage.js +1 -254
- package/dist/components/docs/comparison/ComparisonWorkflowEnginesPage.js +1 -339
- package/dist/components/docs/comparison/index.js +1 -1510
- package/dist/components/docs/docsManifest.js +1 -611
- package/dist/components/docs/docsManifest.test.d.ts +1 -0
- package/dist/components/docs/ecosystem/IntegrationsPage.js +2 -103
- package/dist/components/docs/ecosystem/PluginsPage.js +13 -179
- package/dist/components/docs/ecosystem/RegistryPage.js +7 -100
- package/dist/components/docs/ecosystem/TemplatesPage.js +3 -141
- package/dist/components/docs/ecosystem/ecosystem.docblocks.js +2 -48
- package/dist/components/docs/ecosystem/index.js +23 -569
- package/dist/components/docs/examples/DocsExamplesPage.js +4 -124
- package/dist/components/docs/examples/ExampleShowcasePage.js +4 -244
- package/dist/components/docs/examples/exampleShowcaseData.js +4 -39
- package/dist/components/docs/examples/index.js +4 -330
- package/dist/components/docs/generated/docs-index.generated.js +1 -5
- package/dist/components/docs/generated/index.js +1 -74
- package/dist/components/docs/generated/loader.js +1 -74
- package/dist/components/docs/getting-started/CLIPage.js +4 -271
- package/dist/components/docs/getting-started/CompatibilityPage.js +1 -173
- package/dist/components/docs/getting-started/DataViewTutorialPage.js +4 -134
- package/dist/components/docs/getting-started/DeveloperToolsPage.js +1 -194
- package/dist/components/docs/getting-started/HelloWorldPage.js +5 -183
- package/dist/components/docs/getting-started/InstallationPage.js +3 -154
- package/dist/components/docs/getting-started/StartHerePage.js +2 -129
- package/dist/components/docs/getting-started/TroubleshootingPage.js +2 -168
- package/dist/components/docs/getting-started/VSCodeExtensionPage.js +1 -432
- package/dist/components/docs/getting-started/getting-started.docblocks.js +4 -41
- package/dist/components/docs/getting-started/index.js +18 -1869
- package/dist/components/docs/guides/GuideCIDiffGatingPage.js +2 -196
- package/dist/components/docs/guides/GuideConnectInRepoPage.d.ts +1 -0
- package/dist/components/docs/guides/GuideConnectInRepoPage.js +44 -0
- package/dist/components/docs/guides/GuideContractTypesPage.js +6 -541
- package/dist/components/docs/guides/GuideDocsPipelinePage.js +3 -207
- package/dist/components/docs/guides/GuideFirstModuleBundlePage.d.ts +1 -0
- package/dist/components/docs/guides/GuideFirstModuleBundlePage.js +76 -0
- package/dist/components/docs/guides/GuideGenerateDocsClientsSchemasPage.js +2 -209
- package/dist/components/docs/guides/GuideHostBuilderWorkbenchPage.d.ts +1 -0
- package/dist/components/docs/guides/GuideHostBuilderWorkbenchPage.js +70 -0
- package/dist/components/docs/guides/GuideImportExistingCodebasesPage.js +8 -754
- package/dist/components/docs/guides/GuideNextjsOneEndpointPage.js +6 -268
- package/dist/components/docs/guides/GuideSpecValidationTypingPage.js +4 -196
- package/dist/components/docs/guides/GuidesIndexPage.js +2 -169
- package/dist/components/docs/guides/guides.docblocks.js +11 -75
- package/dist/components/docs/guides/index.d.ts +3 -0
- package/dist/components/docs/guides/index.js +213 -2428
- package/dist/components/docs/index.js +542 -24297
- package/dist/components/docs/integrations/IntegrationsCircuitBreakersPage.js +2 -42
- package/dist/components/docs/integrations/IntegrationsElevenLabsPage.js +3 -105
- package/dist/components/docs/integrations/IntegrationsGithubPage.js +3 -142
- package/dist/components/docs/integrations/IntegrationsGmailPage.js +3 -109
- package/dist/components/docs/integrations/IntegrationsGoogleCalendarPage.js +3 -79
- package/dist/components/docs/integrations/IntegrationsHealthRoutingPage.js +3 -146
- package/dist/components/docs/integrations/IntegrationsMistralPage.js +5 -150
- package/dist/components/docs/integrations/IntegrationsOpenAIPage.js +5 -140
- package/dist/components/docs/integrations/IntegrationsOverviewPage.js +1 -160
- package/dist/components/docs/integrations/IntegrationsPostmarkPage.js +4 -218
- package/dist/components/docs/integrations/IntegrationsPowensPage.js +4 -300
- package/dist/components/docs/integrations/IntegrationsQdrantPage.js +5 -111
- package/dist/components/docs/integrations/IntegrationsResendPage.js +3 -102
- package/dist/components/docs/integrations/IntegrationsS3Page.js +4 -124
- package/dist/components/docs/integrations/IntegrationsSlackPage.js +3 -144
- package/dist/components/docs/integrations/IntegrationsSpecModelPage.js +7 -290
- package/dist/components/docs/integrations/IntegrationsStripePage.js +6 -327
- package/dist/components/docs/integrations/IntegrationsTwilioPage.js +3 -128
- package/dist/components/docs/integrations/IntegrationsWhatsappMetaPage.js +2 -146
- package/dist/components/docs/integrations/IntegrationsWhatsappTwilioPage.js +2 -156
- package/dist/components/docs/integrations/index.js +52 -3100
- package/dist/components/docs/intent/ContractFirstApiPage.js +2 -126
- package/dist/components/docs/intent/DeterministicCodegenPage.js +2 -148
- package/dist/components/docs/intent/GenerateClientFromSchemaPage.js +7 -207
- package/dist/components/docs/intent/OpenapiAlternativePage.js +3 -201
- package/dist/components/docs/intent/SchemaValidationTypescriptPage.js +4 -144
- package/dist/components/docs/intent/SpecDrivenDevelopmentPage.js +2 -126
- package/dist/components/docs/intent/index.js +15 -1135
- package/dist/components/docs/intent/intent-pages.docblocks.js +1 -201
- package/dist/components/docs/knowledge/KnowledgeCategoriesPage.js +6 -750
- package/dist/components/docs/knowledge/KnowledgeExamplesPage.js +4 -175
- package/dist/components/docs/knowledge/KnowledgeOverviewPage.js +1 -116
- package/dist/components/docs/knowledge/KnowledgeSourcesPage.js +8 -391
- package/dist/components/docs/knowledge/KnowledgeSpacesPage.js +6 -302
- package/dist/components/docs/knowledge/index.js +21 -1730
- package/dist/components/docs/libraries/LibrariesAccessibilityPage.js +3 -198
- package/dist/components/docs/libraries/LibrariesAiAgentPage.js +3 -141
- package/dist/components/docs/libraries/LibrariesAnalyticsPage.js +4 -80
- package/dist/components/docs/libraries/LibrariesContentGenPage.js +2 -100
- package/dist/components/docs/libraries/LibrariesContractsPage.js +2 -284
- package/dist/components/docs/libraries/LibrariesCostTrackingPage.js +3 -112
- package/dist/components/docs/libraries/LibrariesDataBackendPage.js +2 -166
- package/dist/components/docs/libraries/LibrariesDataViewsPage.js +3 -186
- package/dist/components/docs/libraries/LibrariesDesignSystemPage.js +4 -279
- package/dist/components/docs/libraries/LibrariesEvolutionPage.js +4 -127
- package/dist/components/docs/libraries/LibrariesGraphQLPage.js +2 -173
- package/dist/components/docs/libraries/LibrariesGrowthPage.js +3 -88
- package/dist/components/docs/libraries/LibrariesMultiTenancyPage.js +3 -108
- package/dist/components/docs/libraries/LibrariesObservabilityPage.js +5 -130
- package/dist/components/docs/libraries/LibrariesOverlayEnginePage.js +4 -110
- package/dist/components/docs/libraries/LibrariesOverviewPage.js +1 -170
- package/dist/components/docs/libraries/LibrariesPersonalizationPage.js +4 -114
- package/dist/components/docs/libraries/LibrariesProgressiveDeliveryPage.js +3 -132
- package/dist/components/docs/libraries/LibrariesResiliencePage.js +4 -120
- package/dist/components/docs/libraries/LibrariesRuntimePage.js +2 -200
- package/dist/components/docs/libraries/LibrariesSLOPage.js +3 -116
- package/dist/components/docs/libraries/LibrariesSchemaPage.js +3 -273
- package/dist/components/docs/libraries/LibrariesSupportBotPage.js +3 -134
- package/dist/components/docs/libraries/LibrariesTestingPage.js +3 -133
- package/dist/components/docs/libraries/LibrariesUIKitPage.js +2 -230
- package/dist/components/docs/libraries/LibrariesWorkflowComposerPage.js +3 -88
- package/dist/components/docs/libraries/LibrariesWorkflowsPage.js +2 -181
- package/dist/components/docs/libraries/index.js +54 -4147
- package/dist/components/docs/manifesto/ManifestoPage.js +1 -86
- package/dist/components/docs/ops/AutoEvolutionOpsPage.js +2 -132
- package/dist/components/docs/ops/DistributedTracingOpsPage.js +2 -71
- package/dist/components/docs/ops/index.js +3 -202
- package/dist/components/docs/ops/ops-lifecycle.docblocks.js +3 -38
- package/dist/components/docs/ops/ops-runbooks-a.docblocks.js +3 -94
- package/dist/components/docs/ops/ops-runbooks-b.docblocks.js +3 -76
- package/dist/components/docs/ops/ops-slo-tenant.docblocks.js +3 -76
- package/dist/components/docs/ops/ops-top.docs.js +2 -17
- package/dist/components/docs/ops/ops.docs.js +10 -302
- package/dist/components/docs/product/product.docblocks.js +5 -72
- package/dist/components/docs/reference/DocsMarkdownContent.js +2 -196
- package/dist/components/docs/reference/DocsReferenceContent.js +3 -256
- package/dist/components/docs/reference/DocsReferenceIndexClient.js +2 -127
- package/dist/components/docs/reference/DocsReferenceIndexPage.js +2 -206
- package/dist/components/docs/reference/DocsReferencePage.js +3 -265
- package/dist/components/docs/reference/docsMarkdownParser.js +2 -92
- package/dist/components/docs/reference/index.js +4 -470
- package/dist/components/docs/safety/SafetyAuditingPage.js +2 -350
- package/dist/components/docs/safety/SafetyMigrationsPage.js +2 -359
- package/dist/components/docs/safety/SafetyOverviewPage.js +1 -101
- package/dist/components/docs/safety/SafetyPDPPage.js +2 -301
- package/dist/components/docs/safety/SafetySecurityTrustPage.js +1 -206
- package/dist/components/docs/safety/SafetySigningPage.js +3 -90
- package/dist/components/docs/safety/SafetyTenantIsolationPage.js +2 -79
- package/dist/components/docs/safety/index.js +7 -1480
- package/dist/components/docs/shared/StudioPrompt.js +1 -31
- package/dist/components/docs/specs/SpecsBuilderControlPlanePage.d.ts +1 -0
- package/dist/components/docs/specs/SpecsBuilderControlPlanePage.js +34 -0
- package/dist/components/docs/specs/SpecsCapabilitiesPage.js +2 -158
- package/dist/components/docs/specs/SpecsConnectPage.d.ts +1 -0
- package/dist/components/docs/specs/SpecsConnectPage.js +8 -0
- package/dist/components/docs/specs/SpecsDataViewsPage.js +2 -260
- package/dist/components/docs/specs/SpecsModuleBundlesPage.d.ts +1 -0
- package/dist/components/docs/specs/SpecsModuleBundlesPage.js +67 -0
- package/dist/components/docs/specs/SpecsOverlaysPage.js +2 -372
- package/dist/components/docs/specs/SpecsOverviewPage.js +1 -186
- package/dist/components/docs/specs/SpecsPolicyPage.js +3 -420
- package/dist/components/docs/specs/SpecsWorkflowsPage.js +2 -312
- package/dist/components/docs/specs/index.d.ts +3 -0
- package/dist/components/docs/specs/index.js +109 -1702
- package/dist/components/docs/studio/StudioBYOKPage.js +1 -26
- package/dist/components/docs/studio/StudioDeploymentsPage.js +1 -26
- package/dist/components/docs/studio/StudioGettingStartedPage.js +1 -26
- package/dist/components/docs/studio/StudioIntegrationsPage.js +1 -26
- package/dist/components/docs/studio/StudioOverviewPage.js +1 -157
- package/dist/components/docs/studio/StudioVisualBuilderPage.js +1 -26
- package/dist/components/docs/studio/index.js +1 -282
- package/dist/components/docs/tech/contracts/tech-docs.docblocks.js +2 -19
- package/dist/components/integrations/index.js +2 -600
- package/dist/components/integrations/molecules/IntegrationCard.js +1 -100
- package/dist/components/integrations/organisms/IntegrationMarketplace.js +1 -214
- package/dist/components/integrations/organisms/IntegrationSettings.js +2 -284
- package/dist/components/integrations/organisms/KnowledgeSourceList.js +1 -103
- package/dist/components/legal/PrivacyTemplate.js +1 -1025
- package/dist/components/legal/TermsTemplate.js +1 -941
- package/dist/components/legal/index.js +1 -1963
- package/dist/components/shared/FeatureGateNotice.js +1 -38
- package/dist/components/shared/index.js +1 -38
- package/dist/components/shell/WorkspaceHeader.js +1 -100
- package/dist/components/shell/WorkspaceProjectShellLayout.js +1 -222
- package/dist/components/shell/WorkspaceShellRenderer.js +1 -228
- package/dist/components/shell/WorkspaceSidebar.js +1 -68
- package/dist/components/shell/index.js +1 -287
- package/dist/components/templates/engine/index.js +1 -39
- package/dist/components/templates/index.js +11 -965
- package/dist/components/templates/messaging/ConversationList.js +2 -83
- package/dist/components/templates/messaging/MessageComposer.js +4 -150
- package/dist/components/templates/messaging/MessageThread.js +3 -83
- package/dist/components/templates/messaging/MessagingWorkspace.js +5 -265
- package/dist/components/templates/messaging/index.js +5 -269
- package/dist/components/templates/recipes/LanguageSwitcher.js +1 -16
- package/dist/components/templates/recipes/RecipeCard.js +1 -80
- package/dist/components/templates/recipes/RecipeDetail.js +1 -74
- package/dist/components/templates/recipes/RecipeList.js +3 -245
- package/dist/components/templates/recipes/index.js +3 -248
- package/dist/components/templates/todos/FilterBar.js +1 -107
- package/dist/components/templates/todos/TaskForm.js +2 -158
- package/dist/components/templates/todos/TaskItem.js +1 -77
- package/dist/components/templates/todos/TaskList.js +5 -449
- package/dist/components/templates/todos/index.js +5 -452
- package/dist/config/contractspec-blueprint.js +1 -123
- package/dist/config/contractspec-branding.js +1 -44
- package/dist/config/contractspec-routes.js +1 -24
- package/dist/config/index.js +1 -126
- package/dist/features/contracts-registry.js +1 -178
- package/dist/features/docs/docs.contracts.js +1 -17
- package/dist/features/docs/index.js +1 -17
- package/dist/features/docs.feature.js +1 -33
- package/dist/features/index.js +1 -315
- package/dist/features/mcp.feature.js +1 -30
- package/dist/features/presentations.feature.js +1 -33
- package/dist/features/registry.js +1 -116
- package/dist/index.js +556 -28580
- package/dist/infrastructure/elysia/index.js +1 -35
- package/dist/infrastructure/elysia/logger.js +1 -35
- package/dist/infrastructure/index.js +1 -35
- package/dist/libs/email/client.js +1 -114
- package/dist/libs/email/contact.js +12 -165
- package/dist/libs/email/newsletter.js +6 -167
- package/dist/libs/email/types.js +0 -2
- package/dist/libs/email/utils.js +2 -8
- package/dist/libs/email/waitlist-application.js +28 -209
- package/dist/libs/email/waitlist.js +6 -167
- package/dist/libs/email.js +46 -363
- package/dist/libs/posthog/client.js +1 -63
- package/dist/libs/posthog/native.js +1 -23
- package/dist/libs/posthog/server.js +1 -13
- package/dist/libs/pricing-examples.js +1 -18
- package/dist/node/application/context-storage/index.js +1 -28
- package/dist/node/application/index.js +13 -2133
- package/dist/node/application/mcp/cliMcp.js +4 -452
- package/dist/node/application/mcp/common.js +1 -193
- package/dist/node/application/mcp/contractsMcp.js +2 -549
- package/dist/node/application/mcp/contractsMcpResources.js +2 -123
- package/dist/node/application/mcp/contractsMcpTools.js +1 -199
- package/dist/node/application/mcp/docsMcp.catalog.js +3 -381
- package/dist/node/application/mcp/docsMcp.data.js +1 -147
- package/dist/node/application/mcp/docsMcp.js +6 -1039
- package/dist/node/application/mcp/docsMcp.prompts.js +6 -521
- package/dist/node/application/mcp/docsMcp.reference.js +3 -235
- package/dist/node/application/mcp/docsMcp.resources.js +3 -519
- package/dist/node/application/mcp/docsMcp.tools.js +3 -518
- package/dist/node/application/mcp/index.js +13 -2106
- package/dist/node/application/mcp/internalMcp.js +2 -410
- package/dist/node/application/mcp/normalizeMcpRequest.js +1 -21
- package/dist/node/application/mcp/providerRankingMcp.js +1 -530
- package/dist/node/bundles/LibraryBundle.js +1 -138
- package/dist/node/bundles/index.js +1 -138
- package/dist/node/components/docs/DocsIndexPage.js +2 -912
- package/dist/node/components/docs/advanced/AdvancedMCPPage.js +4 -271
- package/dist/node/components/docs/advanced/AdvancedOverlayEditorPage.js +1 -107
- package/dist/node/components/docs/advanced/AdvancedRenderersPage.js +2 -118
- package/dist/node/components/docs/advanced/AdvancedSpecExperimentsPage.js +4 -92
- package/dist/node/components/docs/advanced/AdvancedTelemetryPage.js +2 -373
- package/dist/node/components/docs/advanced/AdvancedWorkflowMonitoringPage.js +2 -99
- package/dist/node/components/docs/advanced/index.js +10 -1055
- package/dist/node/components/docs/architecture/ArchitectureAppConfigPage.js +6 -243
- package/dist/node/components/docs/architecture/ArchitectureControlPlanePage.js +3 -160
- package/dist/node/components/docs/architecture/ArchitectureIntegrationBindingPage.js +7 -259
- package/dist/node/components/docs/architecture/ArchitectureKnowledgeBindingPage.js +6 -374
- package/dist/node/components/docs/architecture/ArchitectureMultiTenancyPage.js +2 -166
- package/dist/node/components/docs/architecture/ArchitectureOverviewPage.js +1 -143
- package/dist/node/components/docs/architecture/index.js +20 -1340
- package/dist/node/components/docs/comparison/ComparisonAutomationPlatformsPage.js +1 -245
- package/dist/node/components/docs/comparison/ComparisonEnterprisePlatformsPage.js +1 -230
- package/dist/node/components/docs/comparison/ComparisonInternalToolBuildersPage.js +1 -245
- package/dist/node/components/docs/comparison/ComparisonOverviewPage.js +1 -202
- package/dist/node/components/docs/comparison/ComparisonWindmillPage.js +1 -254
- package/dist/node/components/docs/comparison/ComparisonWorkflowEnginesPage.js +1 -339
- package/dist/node/components/docs/comparison/index.js +1 -1510
- package/dist/node/components/docs/docsManifest.js +1 -611
- package/dist/node/components/docs/ecosystem/IntegrationsPage.js +2 -103
- package/dist/node/components/docs/ecosystem/PluginsPage.js +13 -179
- package/dist/node/components/docs/ecosystem/RegistryPage.js +7 -100
- package/dist/node/components/docs/ecosystem/TemplatesPage.js +3 -141
- package/dist/node/components/docs/ecosystem/ecosystem.docblocks.js +2 -48
- package/dist/node/components/docs/ecosystem/index.js +23 -569
- package/dist/node/components/docs/examples/DocsExamplesPage.js +4 -124
- package/dist/node/components/docs/examples/ExampleShowcasePage.js +4 -244
- package/dist/node/components/docs/examples/exampleShowcaseData.js +4 -39
- package/dist/node/components/docs/examples/index.js +4 -330
- package/dist/node/components/docs/generated/docs-index.generated.js +1 -5
- package/dist/node/components/docs/generated/index.js +1 -74
- package/dist/node/components/docs/generated/loader.js +1 -74
- package/dist/node/components/docs/getting-started/CLIPage.js +4 -271
- package/dist/node/components/docs/getting-started/CompatibilityPage.js +1 -173
- package/dist/node/components/docs/getting-started/DataViewTutorialPage.js +4 -134
- package/dist/node/components/docs/getting-started/DeveloperToolsPage.js +1 -194
- package/dist/node/components/docs/getting-started/HelloWorldPage.js +5 -183
- package/dist/node/components/docs/getting-started/InstallationPage.js +3 -154
- package/dist/node/components/docs/getting-started/StartHerePage.js +2 -129
- package/dist/node/components/docs/getting-started/TroubleshootingPage.js +2 -168
- package/dist/node/components/docs/getting-started/VSCodeExtensionPage.js +1 -432
- package/dist/node/components/docs/getting-started/getting-started.docblocks.js +4 -41
- package/dist/node/components/docs/getting-started/index.js +18 -1869
- package/dist/node/components/docs/guides/GuideCIDiffGatingPage.js +2 -196
- package/dist/node/components/docs/guides/GuideConnectInRepoPage.js +43 -0
- package/dist/node/components/docs/guides/GuideContractTypesPage.js +6 -541
- package/dist/node/components/docs/guides/GuideDocsPipelinePage.js +3 -207
- package/dist/node/components/docs/guides/GuideFirstModuleBundlePage.js +75 -0
- package/dist/node/components/docs/guides/GuideGenerateDocsClientsSchemasPage.js +2 -209
- package/dist/node/components/docs/guides/GuideHostBuilderWorkbenchPage.js +69 -0
- package/dist/node/components/docs/guides/GuideImportExistingCodebasesPage.js +8 -754
- package/dist/node/components/docs/guides/GuideNextjsOneEndpointPage.js +6 -268
- package/dist/node/components/docs/guides/GuideSpecValidationTypingPage.js +4 -196
- package/dist/node/components/docs/guides/GuidesIndexPage.js +2 -169
- package/dist/node/components/docs/guides/guides.docblocks.js +11 -75
- package/dist/node/components/docs/guides/index.js +213 -2428
- package/dist/node/components/docs/index.js +542 -24297
- package/dist/node/components/docs/integrations/IntegrationsCircuitBreakersPage.js +2 -42
- package/dist/node/components/docs/integrations/IntegrationsElevenLabsPage.js +3 -105
- package/dist/node/components/docs/integrations/IntegrationsGithubPage.js +3 -142
- package/dist/node/components/docs/integrations/IntegrationsGmailPage.js +3 -109
- package/dist/node/components/docs/integrations/IntegrationsGoogleCalendarPage.js +3 -79
- package/dist/node/components/docs/integrations/IntegrationsHealthRoutingPage.js +3 -146
- package/dist/node/components/docs/integrations/IntegrationsMistralPage.js +5 -150
- package/dist/node/components/docs/integrations/IntegrationsOpenAIPage.js +5 -140
- package/dist/node/components/docs/integrations/IntegrationsOverviewPage.js +1 -160
- package/dist/node/components/docs/integrations/IntegrationsPostmarkPage.js +4 -218
- package/dist/node/components/docs/integrations/IntegrationsPowensPage.js +4 -300
- package/dist/node/components/docs/integrations/IntegrationsQdrantPage.js +5 -111
- package/dist/node/components/docs/integrations/IntegrationsResendPage.js +3 -102
- package/dist/node/components/docs/integrations/IntegrationsS3Page.js +4 -124
- package/dist/node/components/docs/integrations/IntegrationsSlackPage.js +3 -144
- package/dist/node/components/docs/integrations/IntegrationsSpecModelPage.js +7 -290
- package/dist/node/components/docs/integrations/IntegrationsStripePage.js +6 -327
- package/dist/node/components/docs/integrations/IntegrationsTwilioPage.js +3 -128
- package/dist/node/components/docs/integrations/IntegrationsWhatsappMetaPage.js +2 -146
- package/dist/node/components/docs/integrations/IntegrationsWhatsappTwilioPage.js +2 -156
- package/dist/node/components/docs/integrations/index.js +52 -3100
- package/dist/node/components/docs/intent/ContractFirstApiPage.js +2 -126
- package/dist/node/components/docs/intent/DeterministicCodegenPage.js +2 -148
- package/dist/node/components/docs/intent/GenerateClientFromSchemaPage.js +7 -207
- package/dist/node/components/docs/intent/OpenapiAlternativePage.js +3 -201
- package/dist/node/components/docs/intent/SchemaValidationTypescriptPage.js +4 -144
- package/dist/node/components/docs/intent/SpecDrivenDevelopmentPage.js +2 -126
- package/dist/node/components/docs/intent/index.js +15 -1135
- package/dist/node/components/docs/intent/intent-pages.docblocks.js +1 -201
- package/dist/node/components/docs/knowledge/KnowledgeCategoriesPage.js +6 -750
- package/dist/node/components/docs/knowledge/KnowledgeExamplesPage.js +4 -175
- package/dist/node/components/docs/knowledge/KnowledgeOverviewPage.js +1 -116
- package/dist/node/components/docs/knowledge/KnowledgeSourcesPage.js +8 -391
- package/dist/node/components/docs/knowledge/KnowledgeSpacesPage.js +6 -302
- package/dist/node/components/docs/knowledge/index.js +21 -1730
- package/dist/node/components/docs/libraries/LibrariesAccessibilityPage.js +3 -198
- package/dist/node/components/docs/libraries/LibrariesAiAgentPage.js +3 -141
- package/dist/node/components/docs/libraries/LibrariesAnalyticsPage.js +4 -80
- package/dist/node/components/docs/libraries/LibrariesContentGenPage.js +2 -100
- package/dist/node/components/docs/libraries/LibrariesContractsPage.js +2 -284
- package/dist/node/components/docs/libraries/LibrariesCostTrackingPage.js +3 -112
- package/dist/node/components/docs/libraries/LibrariesDataBackendPage.js +2 -166
- package/dist/node/components/docs/libraries/LibrariesDataViewsPage.js +3 -186
- package/dist/node/components/docs/libraries/LibrariesDesignSystemPage.js +4 -279
- package/dist/node/components/docs/libraries/LibrariesEvolutionPage.js +4 -127
- package/dist/node/components/docs/libraries/LibrariesGraphQLPage.js +2 -173
- package/dist/node/components/docs/libraries/LibrariesGrowthPage.js +3 -88
- package/dist/node/components/docs/libraries/LibrariesMultiTenancyPage.js +3 -108
- package/dist/node/components/docs/libraries/LibrariesObservabilityPage.js +5 -130
- package/dist/node/components/docs/libraries/LibrariesOverlayEnginePage.js +4 -110
- package/dist/node/components/docs/libraries/LibrariesOverviewPage.js +1 -170
- package/dist/node/components/docs/libraries/LibrariesPersonalizationPage.js +4 -114
- package/dist/node/components/docs/libraries/LibrariesProgressiveDeliveryPage.js +3 -132
- package/dist/node/components/docs/libraries/LibrariesResiliencePage.js +4 -120
- package/dist/node/components/docs/libraries/LibrariesRuntimePage.js +2 -200
- package/dist/node/components/docs/libraries/LibrariesSLOPage.js +3 -116
- package/dist/node/components/docs/libraries/LibrariesSchemaPage.js +3 -273
- package/dist/node/components/docs/libraries/LibrariesSupportBotPage.js +3 -134
- package/dist/node/components/docs/libraries/LibrariesTestingPage.js +3 -133
- package/dist/node/components/docs/libraries/LibrariesUIKitPage.js +2 -230
- package/dist/node/components/docs/libraries/LibrariesWorkflowComposerPage.js +3 -88
- package/dist/node/components/docs/libraries/LibrariesWorkflowsPage.js +2 -181
- package/dist/node/components/docs/libraries/index.js +54 -4147
- package/dist/node/components/docs/manifesto/ManifestoPage.js +1 -86
- package/dist/node/components/docs/ops/AutoEvolutionOpsPage.js +2 -132
- package/dist/node/components/docs/ops/DistributedTracingOpsPage.js +2 -71
- package/dist/node/components/docs/ops/index.js +3 -202
- package/dist/node/components/docs/ops/ops-lifecycle.docblocks.js +3 -38
- package/dist/node/components/docs/ops/ops-runbooks-a.docblocks.js +3 -94
- package/dist/node/components/docs/ops/ops-runbooks-b.docblocks.js +3 -76
- package/dist/node/components/docs/ops/ops-slo-tenant.docblocks.js +3 -76
- package/dist/node/components/docs/ops/ops-top.docs.js +2 -17
- package/dist/node/components/docs/ops/ops.docs.js +10 -302
- package/dist/node/components/docs/product/product.docblocks.js +5 -72
- package/dist/node/components/docs/reference/DocsMarkdownContent.js +2 -196
- package/dist/node/components/docs/reference/DocsReferenceContent.js +3 -256
- package/dist/node/components/docs/reference/DocsReferenceIndexClient.js +2 -127
- package/dist/node/components/docs/reference/DocsReferenceIndexPage.js +2 -206
- package/dist/node/components/docs/reference/DocsReferencePage.js +3 -265
- package/dist/node/components/docs/reference/docsMarkdownParser.js +2 -92
- package/dist/node/components/docs/reference/index.js +4 -470
- package/dist/node/components/docs/safety/SafetyAuditingPage.js +2 -350
- package/dist/node/components/docs/safety/SafetyMigrationsPage.js +2 -359
- package/dist/node/components/docs/safety/SafetyOverviewPage.js +1 -101
- package/dist/node/components/docs/safety/SafetyPDPPage.js +2 -301
- package/dist/node/components/docs/safety/SafetySecurityTrustPage.js +1 -206
- package/dist/node/components/docs/safety/SafetySigningPage.js +3 -90
- package/dist/node/components/docs/safety/SafetyTenantIsolationPage.js +2 -79
- package/dist/node/components/docs/safety/index.js +7 -1480
- package/dist/node/components/docs/shared/StudioPrompt.js +1 -31
- package/dist/node/components/docs/specs/SpecsBuilderControlPlanePage.js +33 -0
- package/dist/node/components/docs/specs/SpecsCapabilitiesPage.js +2 -158
- package/dist/node/components/docs/specs/SpecsConnectPage.js +7 -0
- package/dist/node/components/docs/specs/SpecsDataViewsPage.js +2 -260
- package/dist/node/components/docs/specs/SpecsModuleBundlesPage.js +66 -0
- package/dist/node/components/docs/specs/SpecsOverlaysPage.js +2 -372
- package/dist/node/components/docs/specs/SpecsOverviewPage.js +1 -186
- package/dist/node/components/docs/specs/SpecsPolicyPage.js +3 -420
- package/dist/node/components/docs/specs/SpecsWorkflowsPage.js +2 -312
- package/dist/node/components/docs/specs/index.js +109 -1702
- package/dist/node/components/docs/studio/StudioBYOKPage.js +1 -26
- package/dist/node/components/docs/studio/StudioDeploymentsPage.js +1 -26
- package/dist/node/components/docs/studio/StudioGettingStartedPage.js +1 -26
- package/dist/node/components/docs/studio/StudioIntegrationsPage.js +1 -26
- package/dist/node/components/docs/studio/StudioOverviewPage.js +1 -157
- package/dist/node/components/docs/studio/StudioVisualBuilderPage.js +1 -26
- package/dist/node/components/docs/studio/index.js +1 -282
- package/dist/node/components/docs/tech/contracts/tech-docs.docblocks.js +2 -19
- package/dist/node/components/integrations/index.js +2 -600
- package/dist/node/components/integrations/molecules/IntegrationCard.js +1 -100
- package/dist/node/components/integrations/organisms/IntegrationMarketplace.js +1 -214
- package/dist/node/components/integrations/organisms/IntegrationSettings.js +2 -284
- package/dist/node/components/integrations/organisms/KnowledgeSourceList.js +1 -103
- package/dist/node/components/legal/PrivacyTemplate.js +1 -1025
- package/dist/node/components/legal/TermsTemplate.js +1 -941
- package/dist/node/components/legal/index.js +1 -1963
- package/dist/node/components/shared/FeatureGateNotice.js +1 -38
- package/dist/node/components/shared/index.js +1 -38
- package/dist/node/components/shell/WorkspaceHeader.js +1 -100
- package/dist/node/components/shell/WorkspaceProjectShellLayout.js +1 -222
- package/dist/node/components/shell/WorkspaceShellRenderer.js +1 -228
- package/dist/node/components/shell/WorkspaceSidebar.js +1 -68
- package/dist/node/components/shell/index.js +1 -287
- package/dist/node/components/templates/engine/index.js +1 -39
- package/dist/node/components/templates/index.js +11 -965
- package/dist/node/components/templates/messaging/ConversationList.js +2 -83
- package/dist/node/components/templates/messaging/MessageComposer.js +4 -150
- package/dist/node/components/templates/messaging/MessageThread.js +3 -83
- package/dist/node/components/templates/messaging/MessagingWorkspace.js +5 -265
- package/dist/node/components/templates/messaging/index.js +5 -269
- package/dist/node/components/templates/recipes/LanguageSwitcher.js +1 -16
- package/dist/node/components/templates/recipes/RecipeCard.js +1 -80
- package/dist/node/components/templates/recipes/RecipeDetail.js +1 -74
- package/dist/node/components/templates/recipes/RecipeList.js +3 -245
- package/dist/node/components/templates/recipes/index.js +3 -248
- package/dist/node/components/templates/todos/FilterBar.js +1 -107
- package/dist/node/components/templates/todos/TaskForm.js +2 -158
- package/dist/node/components/templates/todos/TaskItem.js +1 -77
- package/dist/node/components/templates/todos/TaskList.js +5 -449
- package/dist/node/components/templates/todos/index.js +5 -452
- package/dist/node/config/contractspec-blueprint.js +1 -123
- package/dist/node/config/contractspec-branding.js +1 -44
- package/dist/node/config/contractspec-routes.js +1 -24
- package/dist/node/config/index.js +1 -126
- package/dist/node/features/contracts-registry.js +1 -178
- package/dist/node/features/docs/docs.contracts.js +1 -17
- package/dist/node/features/docs/index.js +1 -17
- package/dist/node/features/docs.feature.js +1 -33
- package/dist/node/features/index.js +1 -315
- package/dist/node/features/mcp.feature.js +1 -30
- package/dist/node/features/presentations.feature.js +1 -33
- package/dist/node/features/registry.js +1 -116
- package/dist/node/index.js +556 -28580
- package/dist/node/infrastructure/elysia/index.js +1 -35
- package/dist/node/infrastructure/elysia/logger.js +1 -35
- package/dist/node/infrastructure/index.js +1 -35
- package/dist/node/libs/email/client.js +1 -114
- package/dist/node/libs/email/contact.js +12 -165
- package/dist/node/libs/email/newsletter.js +6 -167
- package/dist/node/libs/email/types.js +0 -2
- package/dist/node/libs/email/utils.js +2 -8
- package/dist/node/libs/email/waitlist-application.js +28 -209
- package/dist/node/libs/email/waitlist.js +6 -167
- package/dist/node/libs/email.js +46 -363
- package/dist/node/libs/posthog/client.js +1 -63
- package/dist/node/libs/posthog/native.js +1 -23
- package/dist/node/libs/posthog/server.js +1 -13
- package/dist/node/libs/pricing-examples.js +1 -18
- package/dist/node/presentation/features/atoms/FeatureIcon/FeatureIcon.js +1 -97
- package/dist/node/presentation/features/atoms/FeatureIcon/index.js +1 -97
- package/dist/node/presentation/features/atoms/index.js +1 -97
- package/dist/node/presentation/features/hooks/index.js +1 -397
- package/dist/node/presentation/features/hooks/useContractsRegistry.js +1 -289
- package/dist/node/presentation/features/hooks/useFeatureFilters.js +1 -75
- package/dist/node/presentation/features/hooks/useFeatureRegistry.js +1 -147
- package/dist/node/presentation/features/hooks/useRelatedDocs.js +1 -28
- package/dist/node/presentation/features/index.js +1 -3063
- package/dist/node/presentation/features/molecules/FeatureCard/FeatureCard.js +1 -366
- package/dist/node/presentation/features/molecules/FeatureCard/index.js +1 -366
- package/dist/node/presentation/features/molecules/FeatureCategoryHeader/FeatureCategoryHeader.js +1 -50
- package/dist/node/presentation/features/molecules/FeatureCategoryHeader/index.js +1 -50
- package/dist/node/presentation/features/molecules/FeatureFilters/FeatureFilters.js +1 -92
- package/dist/node/presentation/features/molecules/FeatureFilters/index.js +1 -92
- package/dist/node/presentation/features/molecules/FeatureHoverPreview/FeatureHoverPreview.js +1 -176
- package/dist/node/presentation/features/molecules/FeatureHoverPreview/index.js +1 -176
- package/dist/node/presentation/features/molecules/index.js +1 -505
- package/dist/node/presentation/features/organisms/FeatureDataViewsList.js +1 -304
- package/dist/node/presentation/features/organisms/FeatureDetail/FeatureDetail.js +1 -154
- package/dist/node/presentation/features/organisms/FeatureDetail/index.js +1 -154
- package/dist/node/presentation/features/organisms/FeatureDiscovery/FeatureDiscovery.js +1 -909
- package/dist/node/presentation/features/organisms/FeatureDiscovery/index.js +1 -909
- package/dist/node/presentation/features/organisms/FeatureEventsList.js +1 -302
- package/dist/node/presentation/features/organisms/FeatureFormsList.js +1 -302
- package/dist/node/presentation/features/organisms/FeatureOperationsList.js +1 -180
- package/dist/node/presentation/features/organisms/FeaturePresentationsList.js +1 -304
- package/dist/node/presentation/features/organisms/index.js +1 -1359
- package/dist/node/presentation/features/templates/FeatureDataViewDetailTemplate/FeatureDataViewDetailTemplate.js +1 -332
- package/dist/node/presentation/features/templates/FeatureDataViewDetailTemplate/index.js +1 -332
- package/dist/node/presentation/features/templates/FeatureDataViewsTemplate/FeatureDataViewsTemplate.js +1 -342
- package/dist/node/presentation/features/templates/FeatureDataViewsTemplate/index.js +1 -342
- package/dist/node/presentation/features/templates/FeatureEventDetailTemplate/FeatureEventDetailTemplate.js +1 -303
- package/dist/node/presentation/features/templates/FeatureEventDetailTemplate/index.js +1 -303
- package/dist/node/presentation/features/templates/FeatureEventsTemplate/FeatureEventsTemplate.js +1 -340
- package/dist/node/presentation/features/templates/FeatureEventsTemplate/index.js +1 -340
- package/dist/node/presentation/features/templates/FeatureFormDetailTemplate/FeatureFormDetailTemplate.js +1 -329
- package/dist/node/presentation/features/templates/FeatureFormDetailTemplate/index.js +1 -329
- package/dist/node/presentation/features/templates/FeatureFormsTemplate/FeatureFormsTemplate.js +1 -340
- package/dist/node/presentation/features/templates/FeatureFormsTemplate/index.js +1 -340
- package/dist/node/presentation/features/templates/FeatureOperationDetailTemplate/FeatureOperationDetailTemplate.js +1 -302
- package/dist/node/presentation/features/templates/FeatureOperationDetailTemplate/index.js +1 -302
- package/dist/node/presentation/features/templates/FeatureOperationsTemplate/FeatureOperationsTemplate.js +1 -218
- package/dist/node/presentation/features/templates/FeatureOperationsTemplate/index.js +1 -218
- package/dist/node/presentation/features/templates/FeatureOverviewTemplate/FeatureOverviewTemplate.js +1 -187
- package/dist/node/presentation/features/templates/FeatureOverviewTemplate/index.js +1 -187
- package/dist/node/presentation/features/templates/FeaturePresentationDetailTemplate/FeaturePresentationDetailTemplate.js +1 -306
- package/dist/node/presentation/features/templates/FeaturePresentationDetailTemplate/index.js +1 -306
- package/dist/node/presentation/features/templates/FeaturePresentationsTemplate/FeaturePresentationsTemplate.js +1 -342
- package/dist/node/presentation/features/templates/FeaturePresentationsTemplate/index.js +1 -342
- package/dist/presentation/features/atoms/FeatureIcon/FeatureIcon.js +1 -97
- package/dist/presentation/features/atoms/FeatureIcon/index.js +1 -97
- package/dist/presentation/features/atoms/index.js +1 -97
- package/dist/presentation/features/hooks/index.js +1 -397
- package/dist/presentation/features/hooks/useContractsRegistry.js +1 -289
- package/dist/presentation/features/hooks/useFeatureFilters.js +1 -75
- package/dist/presentation/features/hooks/useFeatureRegistry.js +1 -147
- package/dist/presentation/features/hooks/useRelatedDocs.js +1 -28
- package/dist/presentation/features/index.js +1 -3063
- package/dist/presentation/features/molecules/FeatureCard/FeatureCard.js +1 -366
- package/dist/presentation/features/molecules/FeatureCard/index.js +1 -366
- package/dist/presentation/features/molecules/FeatureCategoryHeader/FeatureCategoryHeader.js +1 -50
- package/dist/presentation/features/molecules/FeatureCategoryHeader/index.js +1 -50
- package/dist/presentation/features/molecules/FeatureFilters/FeatureFilters.js +1 -92
- package/dist/presentation/features/molecules/FeatureFilters/index.js +1 -92
- package/dist/presentation/features/molecules/FeatureHoverPreview/FeatureHoverPreview.js +1 -176
- package/dist/presentation/features/molecules/FeatureHoverPreview/index.js +1 -176
- package/dist/presentation/features/molecules/index.js +1 -505
- package/dist/presentation/features/organisms/FeatureDataViewsList.js +1 -304
- package/dist/presentation/features/organisms/FeatureDetail/FeatureDetail.js +1 -154
- package/dist/presentation/features/organisms/FeatureDetail/index.js +1 -154
- package/dist/presentation/features/organisms/FeatureDiscovery/FeatureDiscovery.js +1 -909
- package/dist/presentation/features/organisms/FeatureDiscovery/index.js +1 -909
- package/dist/presentation/features/organisms/FeatureEventsList.js +1 -302
- package/dist/presentation/features/organisms/FeatureFormsList.js +1 -302
- package/dist/presentation/features/organisms/FeatureOperationsList.js +1 -180
- package/dist/presentation/features/organisms/FeaturePresentationsList.js +1 -304
- package/dist/presentation/features/organisms/index.js +1 -1359
- package/dist/presentation/features/templates/FeatureDataViewDetailTemplate/FeatureDataViewDetailTemplate.js +1 -332
- package/dist/presentation/features/templates/FeatureDataViewDetailTemplate/index.js +1 -332
- package/dist/presentation/features/templates/FeatureDataViewsTemplate/FeatureDataViewsTemplate.js +1 -342
- package/dist/presentation/features/templates/FeatureDataViewsTemplate/index.js +1 -342
- package/dist/presentation/features/templates/FeatureEventDetailTemplate/FeatureEventDetailTemplate.js +1 -303
- package/dist/presentation/features/templates/FeatureEventDetailTemplate/index.js +1 -303
- package/dist/presentation/features/templates/FeatureEventsTemplate/FeatureEventsTemplate.js +1 -340
- package/dist/presentation/features/templates/FeatureEventsTemplate/index.js +1 -340
- package/dist/presentation/features/templates/FeatureFormDetailTemplate/FeatureFormDetailTemplate.js +1 -329
- package/dist/presentation/features/templates/FeatureFormDetailTemplate/index.js +1 -329
- package/dist/presentation/features/templates/FeatureFormsTemplate/FeatureFormsTemplate.js +1 -340
- package/dist/presentation/features/templates/FeatureFormsTemplate/index.js +1 -340
- package/dist/presentation/features/templates/FeatureOperationDetailTemplate/FeatureOperationDetailTemplate.js +1 -302
- package/dist/presentation/features/templates/FeatureOperationDetailTemplate/index.js +1 -302
- package/dist/presentation/features/templates/FeatureOperationsTemplate/FeatureOperationsTemplate.js +1 -218
- package/dist/presentation/features/templates/FeatureOperationsTemplate/index.js +1 -218
- package/dist/presentation/features/templates/FeatureOverviewTemplate/FeatureOverviewTemplate.js +1 -187
- package/dist/presentation/features/templates/FeatureOverviewTemplate/index.js +1 -187
- package/dist/presentation/features/templates/FeaturePresentationDetailTemplate/FeaturePresentationDetailTemplate.js +1 -306
- package/dist/presentation/features/templates/FeaturePresentationDetailTemplate/index.js +1 -306
- package/dist/presentation/features/templates/FeaturePresentationsTemplate/FeaturePresentationsTemplate.js +1 -342
- package/dist/presentation/features/templates/FeaturePresentationsTemplate/index.js +1 -342
- package/package.json +109 -37
- package/src/components/docs/DocsIndexPage.tsx +55 -0
- package/src/components/docs/architecture/ArchitectureControlPlanePage.tsx +19 -0
- package/src/components/docs/architecture/ArchitectureOverviewPage.tsx +34 -0
- package/src/components/docs/docsManifest.test.ts +70 -0
- package/src/components/docs/docsManifest.ts +71 -1
- package/src/components/docs/ecosystem/PluginsPage.tsx +24 -10
- package/src/components/docs/ecosystem/RegistryPage.tsx +11 -6
- package/src/components/docs/generated/docs-index._common.json +206 -273
- package/src/components/docs/generated/docs-index.control-plane.json +18 -0
- package/src/components/docs/generated/docs-index.defineExample.json +10 -0
- package/src/components/docs/generated/docs-index.manifest.json +22 -12
- package/src/components/docs/generated/docs-index.platform-acp.json +64 -0
- package/src/components/docs/generated/docs-index.platform-agent.json +89 -1
- package/src/components/docs/generated/docs-index.platform-context.json +48 -0
- package/src/components/docs/generated/docs-index.platform-control-plane.json +72 -0
- package/src/components/docs/generated/docs-index.platform-database.json +40 -0
- package/src/components/docs/generated/docs-index.platform-docs.json +64 -0
- package/src/components/docs/generated/docs-index.platform-provider-ranking.json +89 -1
- package/src/components/docs/generated/docs-index.pocket-family-office.json +8 -0
- package/src/components/docs/generated/docs-index.unknown.json +8 -0
- package/src/components/docs/guides/GuideConnectInRepoPage.tsx +184 -0
- package/src/components/docs/guides/GuideFirstModuleBundlePage.tsx +182 -0
- package/src/components/docs/guides/GuideHostBuilderWorkbenchPage.tsx +230 -0
- package/src/components/docs/guides/GuidesIndexPage.tsx +21 -0
- package/src/components/docs/guides/index.ts +3 -0
- package/src/components/docs/specs/SpecsBuilderControlPlanePage.tsx +210 -0
- package/src/components/docs/specs/SpecsConnectPage.tsx +162 -0
- package/src/components/docs/specs/SpecsModuleBundlesPage.tsx +223 -0
- package/src/components/docs/specs/SpecsOverlaysPage.tsx +20 -0
- package/src/components/docs/specs/SpecsOverviewPage.tsx +44 -0
- package/src/components/docs/specs/SpecsWorkflowsPage.tsx +9 -1
- package/src/components/docs/specs/index.ts +3 -0
- package/src/components/docs/studio/StudioOverviewPage.tsx +26 -0
- package/src/infrastructure/elysia/logger.ts +11 -3
|
@@ -1,113 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
|
|
3
|
-
import Link from "@contractspec/lib.ui-link";
|
|
4
|
-
import { ChevronRight } from "lucide-react";
|
|
5
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
-
function AdvancedTelemetryPage() {
|
|
7
|
-
return /* @__PURE__ */ jsxs("div", {
|
|
8
|
-
className: "space-y-8",
|
|
9
|
-
children: [
|
|
10
|
-
/* @__PURE__ */ jsxs("div", {
|
|
11
|
-
className: "space-y-4",
|
|
12
|
-
children: [
|
|
13
|
-
/* @__PURE__ */ jsx("h1", {
|
|
14
|
-
className: "font-bold text-4xl",
|
|
15
|
-
children: "Telemetry"
|
|
16
|
-
}),
|
|
17
|
-
/* @__PURE__ */ jsxs("p", {
|
|
18
|
-
className: "text-muted-foreground",
|
|
19
|
-
children: [
|
|
20
|
-
"A ",
|
|
21
|
-
/* @__PURE__ */ jsx("strong", {
|
|
22
|
-
children: "TelemetrySpec"
|
|
23
|
-
}),
|
|
24
|
-
" defines what metrics, logs, and traces to collect for observability. ContractSpec automatically instruments your application based on these specs, ensuring you have the visibility you need to monitor, debug, and optimize your system."
|
|
25
|
-
]
|
|
26
|
-
})
|
|
27
|
-
]
|
|
28
|
-
}),
|
|
29
|
-
/* @__PURE__ */ jsxs("div", {
|
|
30
|
-
className: "space-y-4",
|
|
31
|
-
children: [
|
|
32
|
-
/* @__PURE__ */ jsx("h2", {
|
|
33
|
-
className: "font-bold text-2xl",
|
|
34
|
-
children: "Why telemetry matters"
|
|
35
|
-
}),
|
|
36
|
-
/* @__PURE__ */ jsx("p", {
|
|
37
|
-
className: "text-muted-foreground",
|
|
38
|
-
children: "You can't fix what you can't see. Telemetry provides visibility into how your application is performing, where errors are occurring, and how users are interacting with your system. Without proper instrumentation, you're flying blind in production."
|
|
39
|
-
}),
|
|
40
|
-
/* @__PURE__ */ jsx("p", {
|
|
41
|
-
className: "text-muted-foreground",
|
|
42
|
-
children: "ContractSpec takes a spec-first approach to telemetry: you declare what you want to observe, and runtime adapters instrument operations automatically. This ensures consistent, comprehensive coverage without manual effort."
|
|
43
|
-
})
|
|
44
|
-
]
|
|
45
|
-
}),
|
|
46
|
-
/* @__PURE__ */ jsxs("div", {
|
|
47
|
-
className: "space-y-4",
|
|
48
|
-
children: [
|
|
49
|
-
/* @__PURE__ */ jsx("h2", {
|
|
50
|
-
className: "font-bold text-2xl",
|
|
51
|
-
children: "Three pillars of observability"
|
|
52
|
-
}),
|
|
53
|
-
/* @__PURE__ */ jsxs("div", {
|
|
54
|
-
className: "space-y-3",
|
|
55
|
-
children: [
|
|
56
|
-
/* @__PURE__ */ jsxs("div", {
|
|
57
|
-
children: [
|
|
58
|
-
/* @__PURE__ */ jsx("h3", {
|
|
59
|
-
className: "font-semibold text-lg",
|
|
60
|
-
children: "Metrics"
|
|
61
|
-
}),
|
|
62
|
-
/* @__PURE__ */ jsx("p", {
|
|
63
|
-
className: "text-muted-foreground",
|
|
64
|
-
children: "Numerical measurements collected over time. Examples: request count, error rate, latency percentiles, active users, queue depth. Metrics are cheap to collect and store, making them ideal for high-level monitoring and alerting."
|
|
65
|
-
})
|
|
66
|
-
]
|
|
67
|
-
}),
|
|
68
|
-
/* @__PURE__ */ jsxs("div", {
|
|
69
|
-
children: [
|
|
70
|
-
/* @__PURE__ */ jsx("h3", {
|
|
71
|
-
className: "font-semibold text-lg",
|
|
72
|
-
children: "Logs"
|
|
73
|
-
}),
|
|
74
|
-
/* @__PURE__ */ jsx("p", {
|
|
75
|
-
className: "text-muted-foreground",
|
|
76
|
-
children: 'Timestamped text records of events. Examples: "User 123 logged in", "Payment failed for order 456", "Database connection pool exhausted". Logs provide detailed context for debugging specific issues.'
|
|
77
|
-
})
|
|
78
|
-
]
|
|
79
|
-
}),
|
|
80
|
-
/* @__PURE__ */ jsxs("div", {
|
|
81
|
-
children: [
|
|
82
|
-
/* @__PURE__ */ jsx("h3", {
|
|
83
|
-
className: "font-semibold text-lg",
|
|
84
|
-
children: "Traces"
|
|
85
|
-
}),
|
|
86
|
-
/* @__PURE__ */ jsx("p", {
|
|
87
|
-
className: "text-muted-foreground",
|
|
88
|
-
children: "Records of requests as they flow through your system. A trace shows the complete path of a request\u2014which services it touched, how long each step took, and where errors occurred. Traces are essential for debugging distributed systems."
|
|
89
|
-
})
|
|
90
|
-
]
|
|
91
|
-
})
|
|
92
|
-
]
|
|
93
|
-
})
|
|
94
|
-
]
|
|
95
|
-
}),
|
|
96
|
-
/* @__PURE__ */ jsxs("div", {
|
|
97
|
-
className: "space-y-4",
|
|
98
|
-
children: [
|
|
99
|
-
/* @__PURE__ */ jsx("h2", {
|
|
100
|
-
className: "font-bold text-2xl",
|
|
101
|
-
children: "Example TelemetrySpec"
|
|
102
|
-
}),
|
|
103
|
-
/* @__PURE__ */ jsx("p", {
|
|
104
|
-
className: "text-muted-foreground",
|
|
105
|
-
children: "Here's how telemetry is configured in TypeScript:"
|
|
106
|
-
}),
|
|
107
|
-
/* @__PURE__ */ jsx("div", {
|
|
108
|
-
className: "overflow-x-auto rounded-lg border border-border bg-background/50 p-4 font-mono text-muted-foreground text-sm",
|
|
109
|
-
children: /* @__PURE__ */ jsx("pre", {
|
|
110
|
-
children: `import { defineTelemetry } from '@contractspec/lib.contracts-spec/telemetry';
|
|
2
|
+
import r from"@contractspec/lib.ui-link";import{ChevronRight as o}from"lucide-react";import{jsx as e,jsxs as t}from"react/jsx-runtime";function s(){return t("div",{className:"space-y-8",children:[t("div",{className:"space-y-4",children:[e("h1",{className:"font-bold text-4xl",children:"Telemetry"}),t("p",{className:"text-muted-foreground",children:["A ",e("strong",{children:"TelemetrySpec"})," defines what metrics, logs, and traces to collect for observability. ContractSpec automatically instruments your application based on these specs, ensuring you have the visibility you need to monitor, debug, and optimize your system."]})]}),t("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"Why telemetry matters"}),e("p",{className:"text-muted-foreground",children:"You can't fix what you can't see. Telemetry provides visibility into how your application is performing, where errors are occurring, and how users are interacting with your system. Without proper instrumentation, you're flying blind in production."}),e("p",{className:"text-muted-foreground",children:"ContractSpec takes a spec-first approach to telemetry: you declare what you want to observe, and runtime adapters instrument operations automatically. This ensures consistent, comprehensive coverage without manual effort."})]}),t("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"Three pillars of observability"}),t("div",{className:"space-y-3",children:[t("div",{children:[e("h3",{className:"font-semibold text-lg",children:"Metrics"}),e("p",{className:"text-muted-foreground",children:"Numerical measurements collected over time. Examples: request count, error rate, latency percentiles, active users, queue depth. Metrics are cheap to collect and store, making them ideal for high-level monitoring and alerting."})]}),t("div",{children:[e("h3",{className:"font-semibold text-lg",children:"Logs"}),e("p",{className:"text-muted-foreground",children:'Timestamped text records of events. Examples: "User 123 logged in", "Payment failed for order 456", "Database connection pool exhausted". Logs provide detailed context for debugging specific issues.'})]}),t("div",{children:[e("h3",{className:"font-semibold text-lg",children:"Traces"}),e("p",{className:"text-muted-foreground",children:"Records of requests as they flow through your system. A trace shows the complete path of a request\u2014which services it touched, how long each step took, and where errors occurred. Traces are essential for debugging distributed systems."})]})]})]}),t("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"Example TelemetrySpec"}),e("p",{className:"text-muted-foreground",children:"Here's how telemetry is configured in TypeScript:"}),e("div",{className:"overflow-x-auto rounded-lg border border-border bg-background/50 p-4 font-mono text-muted-foreground text-sm",children:e("pre",{children:`import { defineTelemetry } from '@contractspec/lib.contracts-spec/telemetry';
|
|
111
3
|
|
|
112
4
|
export const OrderProcessingTelemetry = defineTelemetry({
|
|
113
5
|
meta: {
|
|
@@ -152,267 +44,4 @@ export const OrderProcessingTelemetry = defineTelemetry({
|
|
|
152
44
|
notify: ['pagerduty', 'slack'],
|
|
153
45
|
},
|
|
154
46
|
],
|
|
155
|
-
});`
|
|
156
|
-
})
|
|
157
|
-
})
|
|
158
|
-
]
|
|
159
|
-
}),
|
|
160
|
-
/* @__PURE__ */ jsxs("div", {
|
|
161
|
-
className: "space-y-4",
|
|
162
|
-
children: [
|
|
163
|
-
/* @__PURE__ */ jsx("h2", {
|
|
164
|
-
className: "font-bold text-2xl",
|
|
165
|
-
children: "Automatic instrumentation"
|
|
166
|
-
}),
|
|
167
|
-
/* @__PURE__ */ jsx("p", {
|
|
168
|
-
className: "text-muted-foreground",
|
|
169
|
-
children: "ContractSpec automatically instruments:"
|
|
170
|
-
}),
|
|
171
|
-
/* @__PURE__ */ jsxs("ul", {
|
|
172
|
-
className: "list-inside list-disc space-y-2 text-muted-foreground",
|
|
173
|
-
children: [
|
|
174
|
-
/* @__PURE__ */ jsxs("li", {
|
|
175
|
-
children: [
|
|
176
|
-
/* @__PURE__ */ jsx("strong", {
|
|
177
|
-
children: "All operations"
|
|
178
|
-
}),
|
|
179
|
-
" \u2013 Request count, latency, error rate per Command/Query"
|
|
180
|
-
]
|
|
181
|
-
}),
|
|
182
|
-
/* @__PURE__ */ jsxs("li", {
|
|
183
|
-
children: [
|
|
184
|
-
/* @__PURE__ */ jsx("strong", {
|
|
185
|
-
children: "All workflows"
|
|
186
|
-
}),
|
|
187
|
-
" \u2013 Step execution time, retry counts, compensation events"
|
|
188
|
-
]
|
|
189
|
-
}),
|
|
190
|
-
/* @__PURE__ */ jsxs("li", {
|
|
191
|
-
children: [
|
|
192
|
-
/* @__PURE__ */ jsx("strong", {
|
|
193
|
-
children: "All data views"
|
|
194
|
-
}),
|
|
195
|
-
" \u2013 Query execution time, result set size"
|
|
196
|
-
]
|
|
197
|
-
}),
|
|
198
|
-
/* @__PURE__ */ jsxs("li", {
|
|
199
|
-
children: [
|
|
200
|
-
/* @__PURE__ */ jsx("strong", {
|
|
201
|
-
children: "All policy decisions"
|
|
202
|
-
}),
|
|
203
|
-
" \u2013 Decision time, permit/deny ratio"
|
|
204
|
-
]
|
|
205
|
-
}),
|
|
206
|
-
/* @__PURE__ */ jsxs("li", {
|
|
207
|
-
children: [
|
|
208
|
-
/* @__PURE__ */ jsx("strong", {
|
|
209
|
-
children: "System resources"
|
|
210
|
-
}),
|
|
211
|
-
" \u2013 CPU, memory, disk, network usage"
|
|
212
|
-
]
|
|
213
|
-
})
|
|
214
|
-
]
|
|
215
|
-
}),
|
|
216
|
-
/* @__PURE__ */ jsx("p", {
|
|
217
|
-
className: "text-muted-foreground",
|
|
218
|
-
children: "You don't need to add instrumentation code manually\u2014the runtime handles it based on your specs."
|
|
219
|
-
})
|
|
220
|
-
]
|
|
221
|
-
}),
|
|
222
|
-
/* @__PURE__ */ jsxs("div", {
|
|
223
|
-
className: "space-y-4",
|
|
224
|
-
children: [
|
|
225
|
-
/* @__PURE__ */ jsx("h2", {
|
|
226
|
-
className: "font-bold text-2xl",
|
|
227
|
-
children: "Integration with observability platforms"
|
|
228
|
-
}),
|
|
229
|
-
/* @__PURE__ */ jsx("p", {
|
|
230
|
-
className: "text-muted-foreground",
|
|
231
|
-
children: "ContractSpec supports multiple observability backends:"
|
|
232
|
-
}),
|
|
233
|
-
/* @__PURE__ */ jsxs("ul", {
|
|
234
|
-
className: "list-inside list-disc space-y-2 text-muted-foreground",
|
|
235
|
-
children: [
|
|
236
|
-
/* @__PURE__ */ jsxs("li", {
|
|
237
|
-
children: [
|
|
238
|
-
/* @__PURE__ */ jsx("strong", {
|
|
239
|
-
children: "Prometheus"
|
|
240
|
-
}),
|
|
241
|
-
" \u2013 For metrics collection and alerting"
|
|
242
|
-
]
|
|
243
|
-
}),
|
|
244
|
-
/* @__PURE__ */ jsxs("li", {
|
|
245
|
-
children: [
|
|
246
|
-
/* @__PURE__ */ jsx("strong", {
|
|
247
|
-
children: "Grafana"
|
|
248
|
-
}),
|
|
249
|
-
" \u2013 For dashboards and visualization"
|
|
250
|
-
]
|
|
251
|
-
}),
|
|
252
|
-
/* @__PURE__ */ jsxs("li", {
|
|
253
|
-
children: [
|
|
254
|
-
/* @__PURE__ */ jsx("strong", {
|
|
255
|
-
children: "Jaeger / Tempo"
|
|
256
|
-
}),
|
|
257
|
-
" \u2013 For distributed tracing"
|
|
258
|
-
]
|
|
259
|
-
}),
|
|
260
|
-
/* @__PURE__ */ jsxs("li", {
|
|
261
|
-
children: [
|
|
262
|
-
/* @__PURE__ */ jsx("strong", {
|
|
263
|
-
children: "Loki"
|
|
264
|
-
}),
|
|
265
|
-
" \u2013 For log aggregation"
|
|
266
|
-
]
|
|
267
|
-
}),
|
|
268
|
-
/* @__PURE__ */ jsxs("li", {
|
|
269
|
-
children: [
|
|
270
|
-
/* @__PURE__ */ jsx("strong", {
|
|
271
|
-
children: "Datadog"
|
|
272
|
-
}),
|
|
273
|
-
" \u2013 All-in-one observability platform"
|
|
274
|
-
]
|
|
275
|
-
}),
|
|
276
|
-
/* @__PURE__ */ jsxs("li", {
|
|
277
|
-
children: [
|
|
278
|
-
/* @__PURE__ */ jsx("strong", {
|
|
279
|
-
children: "New Relic"
|
|
280
|
-
}),
|
|
281
|
-
" \u2013 Application performance monitoring"
|
|
282
|
-
]
|
|
283
|
-
}),
|
|
284
|
-
/* @__PURE__ */ jsxs("li", {
|
|
285
|
-
children: [
|
|
286
|
-
/* @__PURE__ */ jsx("strong", {
|
|
287
|
-
children: "Honeycomb"
|
|
288
|
-
}),
|
|
289
|
-
" \u2013 Observability for complex systems"
|
|
290
|
-
]
|
|
291
|
-
})
|
|
292
|
-
]
|
|
293
|
-
}),
|
|
294
|
-
/* @__PURE__ */ jsx("p", {
|
|
295
|
-
className: "text-muted-foreground",
|
|
296
|
-
children: "You can configure multiple backends and send telemetry to all of them simultaneously."
|
|
297
|
-
})
|
|
298
|
-
]
|
|
299
|
-
}),
|
|
300
|
-
/* @__PURE__ */ jsxs("div", {
|
|
301
|
-
className: "space-y-4",
|
|
302
|
-
children: [
|
|
303
|
-
/* @__PURE__ */ jsx("h2", {
|
|
304
|
-
className: "font-bold text-2xl",
|
|
305
|
-
children: "Sampling and performance"
|
|
306
|
-
}),
|
|
307
|
-
/* @__PURE__ */ jsx("p", {
|
|
308
|
-
className: "text-muted-foreground",
|
|
309
|
-
children: "Collecting telemetry has a cost\u2014CPU, memory, network bandwidth, and storage. ContractSpec provides several mechanisms to control overhead:"
|
|
310
|
-
}),
|
|
311
|
-
/* @__PURE__ */ jsxs("ul", {
|
|
312
|
-
className: "list-inside list-disc space-y-2 text-muted-foreground",
|
|
313
|
-
children: [
|
|
314
|
-
/* @__PURE__ */ jsxs("li", {
|
|
315
|
-
children: [
|
|
316
|
-
/* @__PURE__ */ jsx("strong", {
|
|
317
|
-
children: "Sampling"
|
|
318
|
-
}),
|
|
319
|
-
" \u2013 Trace only a percentage of requests (e.g., 10%)"
|
|
320
|
-
]
|
|
321
|
-
}),
|
|
322
|
-
/* @__PURE__ */ jsxs("li", {
|
|
323
|
-
children: [
|
|
324
|
-
/* @__PURE__ */ jsx("strong", {
|
|
325
|
-
children: "Adaptive sampling"
|
|
326
|
-
}),
|
|
327
|
-
" \u2013 Automatically reduce sampling rate under high load"
|
|
328
|
-
]
|
|
329
|
-
}),
|
|
330
|
-
/* @__PURE__ */ jsxs("li", {
|
|
331
|
-
children: [
|
|
332
|
-
/* @__PURE__ */ jsx("strong", {
|
|
333
|
-
children: "Tail-based sampling"
|
|
334
|
-
}),
|
|
335
|
-
" \u2013 Keep traces for failed requests, sample successful ones"
|
|
336
|
-
]
|
|
337
|
-
}),
|
|
338
|
-
/* @__PURE__ */ jsxs("li", {
|
|
339
|
-
children: [
|
|
340
|
-
/* @__PURE__ */ jsx("strong", {
|
|
341
|
-
children: "Field redaction"
|
|
342
|
-
}),
|
|
343
|
-
" \u2013 Remove sensitive data from traces and logs"
|
|
344
|
-
]
|
|
345
|
-
}),
|
|
346
|
-
/* @__PURE__ */ jsxs("li", {
|
|
347
|
-
children: [
|
|
348
|
-
/* @__PURE__ */ jsx("strong", {
|
|
349
|
-
children: "Aggregation"
|
|
350
|
-
}),
|
|
351
|
-
" \u2013 Pre-aggregate metrics before sending to reduce network traffic"
|
|
352
|
-
]
|
|
353
|
-
})
|
|
354
|
-
]
|
|
355
|
-
})
|
|
356
|
-
]
|
|
357
|
-
}),
|
|
358
|
-
/* @__PURE__ */ jsxs("div", {
|
|
359
|
-
className: "space-y-4",
|
|
360
|
-
children: [
|
|
361
|
-
/* @__PURE__ */ jsx("h2", {
|
|
362
|
-
className: "font-bold text-2xl",
|
|
363
|
-
children: "Best practices"
|
|
364
|
-
}),
|
|
365
|
-
/* @__PURE__ */ jsxs("ul", {
|
|
366
|
-
className: "list-inside list-disc space-y-2 text-muted-foreground",
|
|
367
|
-
children: [
|
|
368
|
-
/* @__PURE__ */ jsx("li", {
|
|
369
|
-
children: "Start with high-level metrics (request rate, error rate, latency) and add more detailed instrumentation as needed."
|
|
370
|
-
}),
|
|
371
|
-
/* @__PURE__ */ jsx("li", {
|
|
372
|
-
children: "Use structured logging\u2014log events with structured fields, not free-form text."
|
|
373
|
-
}),
|
|
374
|
-
/* @__PURE__ */ jsx("li", {
|
|
375
|
-
children: "Set up alerts for critical metrics so you're notified when things go wrong."
|
|
376
|
-
}),
|
|
377
|
-
/* @__PURE__ */ jsx("li", {
|
|
378
|
-
children: "Use traces to debug complex issues\u2014they show the complete picture of a request."
|
|
379
|
-
}),
|
|
380
|
-
/* @__PURE__ */ jsx("li", {
|
|
381
|
-
children: "Redact sensitive data from logs and traces to comply with privacy regulations."
|
|
382
|
-
}),
|
|
383
|
-
/* @__PURE__ */ jsx("li", {
|
|
384
|
-
children: "Review dashboards regularly to understand normal behavior\u2014this makes anomalies easier to spot."
|
|
385
|
-
}),
|
|
386
|
-
/* @__PURE__ */ jsx("li", {
|
|
387
|
-
children: "Use sampling to control costs, but always trace errors and slow requests."
|
|
388
|
-
})
|
|
389
|
-
]
|
|
390
|
-
})
|
|
391
|
-
]
|
|
392
|
-
}),
|
|
393
|
-
/* @__PURE__ */ jsxs("div", {
|
|
394
|
-
className: "flex items-center gap-4 pt-4",
|
|
395
|
-
children: [
|
|
396
|
-
/* @__PURE__ */ jsx(Link, {
|
|
397
|
-
href: "/docs/advanced/mcp",
|
|
398
|
-
className: "btn-ghost",
|
|
399
|
-
children: "Previous: MCP Adapters"
|
|
400
|
-
}),
|
|
401
|
-
/* @__PURE__ */ jsxs(Link, {
|
|
402
|
-
href: "/docs/comparison",
|
|
403
|
-
className: "btn-primary",
|
|
404
|
-
children: [
|
|
405
|
-
"Next: Comparison ",
|
|
406
|
-
/* @__PURE__ */ jsx(ChevronRight, {
|
|
407
|
-
size: 16
|
|
408
|
-
})
|
|
409
|
-
]
|
|
410
|
-
})
|
|
411
|
-
]
|
|
412
|
-
})
|
|
413
|
-
]
|
|
414
|
-
});
|
|
415
|
-
}
|
|
416
|
-
export {
|
|
417
|
-
AdvancedTelemetryPage
|
|
418
|
-
};
|
|
47
|
+
});`})})]}),t("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"Automatic instrumentation"}),e("p",{className:"text-muted-foreground",children:"ContractSpec automatically instruments:"}),t("ul",{className:"list-inside list-disc space-y-2 text-muted-foreground",children:[t("li",{children:[e("strong",{children:"All operations"})," \u2013 Request count, latency, error rate per Command/Query"]}),t("li",{children:[e("strong",{children:"All workflows"})," \u2013 Step execution time, retry counts, compensation events"]}),t("li",{children:[e("strong",{children:"All data views"})," \u2013 Query execution time, result set size"]}),t("li",{children:[e("strong",{children:"All policy decisions"})," \u2013 Decision time, permit/deny ratio"]}),t("li",{children:[e("strong",{children:"System resources"})," \u2013 CPU, memory, disk, network usage"]})]}),e("p",{className:"text-muted-foreground",children:"You don't need to add instrumentation code manually\u2014the runtime handles it based on your specs."})]}),t("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"Integration with observability platforms"}),e("p",{className:"text-muted-foreground",children:"ContractSpec supports multiple observability backends:"}),t("ul",{className:"list-inside list-disc space-y-2 text-muted-foreground",children:[t("li",{children:[e("strong",{children:"Prometheus"})," \u2013 For metrics collection and alerting"]}),t("li",{children:[e("strong",{children:"Grafana"})," \u2013 For dashboards and visualization"]}),t("li",{children:[e("strong",{children:"Jaeger / Tempo"})," \u2013 For distributed tracing"]}),t("li",{children:[e("strong",{children:"Loki"})," \u2013 For log aggregation"]}),t("li",{children:[e("strong",{children:"Datadog"})," \u2013 All-in-one observability platform"]}),t("li",{children:[e("strong",{children:"New Relic"})," \u2013 Application performance monitoring"]}),t("li",{children:[e("strong",{children:"Honeycomb"})," \u2013 Observability for complex systems"]})]}),e("p",{className:"text-muted-foreground",children:"You can configure multiple backends and send telemetry to all of them simultaneously."})]}),t("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"Sampling and performance"}),e("p",{className:"text-muted-foreground",children:"Collecting telemetry has a cost\u2014CPU, memory, network bandwidth, and storage. ContractSpec provides several mechanisms to control overhead:"}),t("ul",{className:"list-inside list-disc space-y-2 text-muted-foreground",children:[t("li",{children:[e("strong",{children:"Sampling"})," \u2013 Trace only a percentage of requests (e.g., 10%)"]}),t("li",{children:[e("strong",{children:"Adaptive sampling"})," \u2013 Automatically reduce sampling rate under high load"]}),t("li",{children:[e("strong",{children:"Tail-based sampling"})," \u2013 Keep traces for failed requests, sample successful ones"]}),t("li",{children:[e("strong",{children:"Field redaction"})," \u2013 Remove sensitive data from traces and logs"]}),t("li",{children:[e("strong",{children:"Aggregation"})," \u2013 Pre-aggregate metrics before sending to reduce network traffic"]})]})]}),t("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"Best practices"}),t("ul",{className:"list-inside list-disc space-y-2 text-muted-foreground",children:[e("li",{children:"Start with high-level metrics (request rate, error rate, latency) and add more detailed instrumentation as needed."}),e("li",{children:"Use structured logging\u2014log events with structured fields, not free-form text."}),e("li",{children:"Set up alerts for critical metrics so you're notified when things go wrong."}),e("li",{children:"Use traces to debug complex issues\u2014they show the complete picture of a request."}),e("li",{children:"Redact sensitive data from logs and traces to comply with privacy regulations."}),e("li",{children:"Review dashboards regularly to understand normal behavior\u2014this makes anomalies easier to spot."}),e("li",{children:"Use sampling to control costs, but always trace errors and slow requests."})]})]}),t("div",{className:"flex items-center gap-4 pt-4",children:[e(r,{href:"/docs/advanced/mcp",className:"btn-ghost",children:"Previous: MCP Adapters"}),t(r,{href:"/docs/comparison",className:"btn-primary",children:["Next: Comparison ",e(o,{size:16})]})]})]})}export{s as AdvancedTelemetryPage};
|
|
@@ -1,42 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
|
|
3
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
|
-
function AdvancedWorkflowMonitoringPage() {
|
|
5
|
-
return /* @__PURE__ */ jsxs("div", {
|
|
6
|
-
className: "space-y-8",
|
|
7
|
-
children: [
|
|
8
|
-
/* @__PURE__ */ jsxs("div", {
|
|
9
|
-
className: "space-y-4",
|
|
10
|
-
children: [
|
|
11
|
-
/* @__PURE__ */ jsx("h1", {
|
|
12
|
-
className: "font-bold text-4xl",
|
|
13
|
-
children: "Workflow Monitoring"
|
|
14
|
-
}),
|
|
15
|
-
/* @__PURE__ */ jsx("p", {
|
|
16
|
-
className: "text-lg text-muted-foreground",
|
|
17
|
-
children: "Production workflows need robust observability. ContractSpec provides SLA monitoring, distributed tracing, and audit logging out of the box."
|
|
18
|
-
})
|
|
19
|
-
]
|
|
20
|
-
}),
|
|
21
|
-
/* @__PURE__ */ jsxs("div", {
|
|
22
|
-
className: "space-y-4",
|
|
23
|
-
children: [
|
|
24
|
-
/* @__PURE__ */ jsx("h2", {
|
|
25
|
-
className: "font-bold text-2xl",
|
|
26
|
-
children: "SLA Monitoring"
|
|
27
|
-
}),
|
|
28
|
-
/* @__PURE__ */ jsxs("p", {
|
|
29
|
-
children: [
|
|
30
|
-
"Use the ",
|
|
31
|
-
/* @__PURE__ */ jsx("code", {
|
|
32
|
-
children: "SLAMonitor"
|
|
33
|
-
}),
|
|
34
|
-
" to detect when workflows or individual steps exceed their budgeted duration."
|
|
35
|
-
]
|
|
36
|
-
}),
|
|
37
|
-
/* @__PURE__ */ jsx("pre", {
|
|
38
|
-
className: "rounded-lg border bg-muted p-4 text-sm",
|
|
39
|
-
children: `import { SLAMonitor } from '@contractspec/lib.contracts-spec/workflow/sla-monitor';
|
|
2
|
+
import{jsx as e,jsxs as o}from"react/jsx-runtime";function t(){return o("div",{className:"space-y-8",children:[o("div",{className:"space-y-4",children:[e("h1",{className:"font-bold text-4xl",children:"Workflow Monitoring"}),e("p",{className:"text-lg text-muted-foreground",children:"Production workflows need robust observability. ContractSpec provides SLA monitoring, distributed tracing, and audit logging out of the box."})]}),o("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"SLA Monitoring"}),o("p",{children:["Use the ",e("code",{children:"SLAMonitor"})," to detect when workflows or individual steps exceed their budgeted duration."]}),e("pre",{className:"rounded-lg border bg-muted p-4 text-sm",children:`import { SLAMonitor } from '@contractspec/lib.contracts-spec/workflow/sla-monitor';
|
|
40
3
|
|
|
41
4
|
const monitor = new SLAMonitor((event, payload) => {
|
|
42
5
|
if (event === 'workflow.sla_breach') {
|
|
@@ -46,64 +9,4 @@ const monitor = new SLAMonitor((event, payload) => {
|
|
|
46
9
|
});
|
|
47
10
|
|
|
48
11
|
// Check periodically
|
|
49
|
-
monitor.check(currentState, workflowSpec);`
|
|
50
|
-
})
|
|
51
|
-
]
|
|
52
|
-
}),
|
|
53
|
-
/* @__PURE__ */ jsxs("div", {
|
|
54
|
-
className: "space-y-4",
|
|
55
|
-
children: [
|
|
56
|
-
/* @__PURE__ */ jsx("h2", {
|
|
57
|
-
className: "font-bold text-2xl",
|
|
58
|
-
children: "Telemetry & Tracing"
|
|
59
|
-
}),
|
|
60
|
-
/* @__PURE__ */ jsx("p", {
|
|
61
|
-
children: "Workflows automatically generate OpenTelemetry spans for:"
|
|
62
|
-
}),
|
|
63
|
-
/* @__PURE__ */ jsxs("ul", {
|
|
64
|
-
className: "list-disc space-y-2 pl-6",
|
|
65
|
-
children: [
|
|
66
|
-
/* @__PURE__ */ jsx("li", {
|
|
67
|
-
children: "Overall workflow execution"
|
|
68
|
-
}),
|
|
69
|
-
/* @__PURE__ */ jsx("li", {
|
|
70
|
-
children: "Individual steps"
|
|
71
|
-
}),
|
|
72
|
-
/* @__PURE__ */ jsx("li", {
|
|
73
|
-
children: "Retries and compensation"
|
|
74
|
-
})
|
|
75
|
-
]
|
|
76
|
-
}),
|
|
77
|
-
/* @__PURE__ */ jsx("p", {
|
|
78
|
-
children: "Configure your OpenTelemetry exporter to send traces to Jaeger, Datadog, or Honeycomb."
|
|
79
|
-
})
|
|
80
|
-
]
|
|
81
|
-
}),
|
|
82
|
-
/* @__PURE__ */ jsxs("div", {
|
|
83
|
-
className: "space-y-4",
|
|
84
|
-
children: [
|
|
85
|
-
/* @__PURE__ */ jsx("h2", {
|
|
86
|
-
className: "font-bold text-2xl",
|
|
87
|
-
children: "Dashboarding"
|
|
88
|
-
}),
|
|
89
|
-
/* @__PURE__ */ jsxs("p", {
|
|
90
|
-
children: [
|
|
91
|
-
"You can build a custom dashboard using ",
|
|
92
|
-
/* @__PURE__ */ jsx("code", {
|
|
93
|
-
children: "DataViews"
|
|
94
|
-
}),
|
|
95
|
-
" over your workflow state database. See the DataViews tutorial for how to visualize ",
|
|
96
|
-
/* @__PURE__ */ jsx("code", {
|
|
97
|
-
children: "WorkflowState"
|
|
98
|
-
}),
|
|
99
|
-
" records."
|
|
100
|
-
]
|
|
101
|
-
})
|
|
102
|
-
]
|
|
103
|
-
})
|
|
104
|
-
]
|
|
105
|
-
});
|
|
106
|
-
}
|
|
107
|
-
export {
|
|
108
|
-
AdvancedWorkflowMonitoringPage
|
|
109
|
-
};
|
|
12
|
+
monitor.check(currentState, workflowSpec);`})]}),o("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"Telemetry & Tracing"}),e("p",{children:"Workflows automatically generate OpenTelemetry spans for:"}),o("ul",{className:"list-disc space-y-2 pl-6",children:[e("li",{children:"Overall workflow execution"}),e("li",{children:"Individual steps"}),e("li",{children:"Retries and compensation"})]}),e("p",{children:"Configure your OpenTelemetry exporter to send traces to Jaeger, Datadog, or Honeycomb."})]}),o("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"Dashboarding"}),o("p",{children:["You can build a custom dashboard using ",e("code",{children:"DataViews"})," over your workflow state database. See the DataViews tutorial for how to visualize ",e("code",{children:"WorkflowState"})," records."]})]})]})}export{t as AdvancedWorkflowMonitoringPage};
|