@contractspec/bundle.library 3.8.10 → 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.
Files changed (643) hide show
  1. package/.turbo/turbo-build.log +606 -594
  2. package/CHANGELOG.md +37 -0
  3. package/dist/application/context-storage/index.js +1 -28
  4. package/dist/application/index.js +13 -2133
  5. package/dist/application/mcp/cliMcp.js +4 -452
  6. package/dist/application/mcp/common.js +1 -193
  7. package/dist/application/mcp/contractsMcp.js +2 -549
  8. package/dist/application/mcp/contractsMcpResources.js +2 -123
  9. package/dist/application/mcp/contractsMcpTools.js +1 -199
  10. package/dist/application/mcp/docsMcp.catalog.js +3 -381
  11. package/dist/application/mcp/docsMcp.data.js +1 -147
  12. package/dist/application/mcp/docsMcp.js +6 -1039
  13. package/dist/application/mcp/docsMcp.prompts.js +6 -521
  14. package/dist/application/mcp/docsMcp.reference.js +3 -235
  15. package/dist/application/mcp/docsMcp.resources.js +3 -519
  16. package/dist/application/mcp/docsMcp.tools.js +3 -518
  17. package/dist/application/mcp/index.js +13 -2106
  18. package/dist/application/mcp/internalMcp.js +2 -410
  19. package/dist/application/mcp/normalizeMcpRequest.js +1 -21
  20. package/dist/application/mcp/providerRankingMcp.js +1 -530
  21. package/dist/bundles/LibraryBundle.js +1 -138
  22. package/dist/bundles/index.js +1 -138
  23. package/dist/components/docs/DocsIndexPage.js +2 -912
  24. package/dist/components/docs/advanced/AdvancedMCPPage.js +4 -271
  25. package/dist/components/docs/advanced/AdvancedOverlayEditorPage.js +1 -107
  26. package/dist/components/docs/advanced/AdvancedRenderersPage.js +2 -118
  27. package/dist/components/docs/advanced/AdvancedSpecExperimentsPage.js +4 -92
  28. package/dist/components/docs/advanced/AdvancedTelemetryPage.js +2 -373
  29. package/dist/components/docs/advanced/AdvancedWorkflowMonitoringPage.js +2 -99
  30. package/dist/components/docs/advanced/index.js +10 -1055
  31. package/dist/components/docs/architecture/ArchitectureAppConfigPage.js +6 -243
  32. package/dist/components/docs/architecture/ArchitectureControlPlanePage.js +3 -160
  33. package/dist/components/docs/architecture/ArchitectureIntegrationBindingPage.js +7 -259
  34. package/dist/components/docs/architecture/ArchitectureKnowledgeBindingPage.js +6 -374
  35. package/dist/components/docs/architecture/ArchitectureMultiTenancyPage.js +2 -166
  36. package/dist/components/docs/architecture/ArchitectureOverviewPage.js +1 -143
  37. package/dist/components/docs/architecture/index.js +20 -1340
  38. package/dist/components/docs/comparison/ComparisonAutomationPlatformsPage.js +1 -245
  39. package/dist/components/docs/comparison/ComparisonEnterprisePlatformsPage.js +1 -230
  40. package/dist/components/docs/comparison/ComparisonInternalToolBuildersPage.js +1 -245
  41. package/dist/components/docs/comparison/ComparisonOverviewPage.js +1 -202
  42. package/dist/components/docs/comparison/ComparisonWindmillPage.js +1 -254
  43. package/dist/components/docs/comparison/ComparisonWorkflowEnginesPage.js +1 -339
  44. package/dist/components/docs/comparison/index.js +1 -1510
  45. package/dist/components/docs/docsManifest.js +1 -611
  46. package/dist/components/docs/docsManifest.test.d.ts +1 -0
  47. package/dist/components/docs/ecosystem/IntegrationsPage.js +2 -103
  48. package/dist/components/docs/ecosystem/PluginsPage.js +13 -179
  49. package/dist/components/docs/ecosystem/RegistryPage.js +7 -100
  50. package/dist/components/docs/ecosystem/TemplatesPage.js +3 -141
  51. package/dist/components/docs/ecosystem/ecosystem.docblocks.js +2 -48
  52. package/dist/components/docs/ecosystem/index.js +23 -569
  53. package/dist/components/docs/examples/DocsExamplesPage.js +4 -124
  54. package/dist/components/docs/examples/ExampleShowcasePage.js +4 -244
  55. package/dist/components/docs/examples/exampleShowcaseData.js +4 -39
  56. package/dist/components/docs/examples/index.js +4 -330
  57. package/dist/components/docs/generated/docs-index.generated.js +1 -5
  58. package/dist/components/docs/generated/index.js +1 -74
  59. package/dist/components/docs/generated/loader.js +1 -74
  60. package/dist/components/docs/getting-started/CLIPage.js +4 -271
  61. package/dist/components/docs/getting-started/CompatibilityPage.js +1 -173
  62. package/dist/components/docs/getting-started/DataViewTutorialPage.js +4 -134
  63. package/dist/components/docs/getting-started/DeveloperToolsPage.js +1 -194
  64. package/dist/components/docs/getting-started/HelloWorldPage.js +5 -183
  65. package/dist/components/docs/getting-started/InstallationPage.js +3 -154
  66. package/dist/components/docs/getting-started/StartHerePage.js +2 -129
  67. package/dist/components/docs/getting-started/TroubleshootingPage.js +2 -168
  68. package/dist/components/docs/getting-started/VSCodeExtensionPage.js +1 -432
  69. package/dist/components/docs/getting-started/getting-started.docblocks.js +4 -41
  70. package/dist/components/docs/getting-started/index.js +18 -1869
  71. package/dist/components/docs/guides/GuideCIDiffGatingPage.js +2 -196
  72. package/dist/components/docs/guides/GuideConnectInRepoPage.d.ts +1 -0
  73. package/dist/components/docs/guides/GuideConnectInRepoPage.js +44 -0
  74. package/dist/components/docs/guides/GuideContractTypesPage.js +6 -541
  75. package/dist/components/docs/guides/GuideDocsPipelinePage.js +3 -207
  76. package/dist/components/docs/guides/GuideFirstModuleBundlePage.d.ts +1 -0
  77. package/dist/components/docs/guides/GuideFirstModuleBundlePage.js +76 -0
  78. package/dist/components/docs/guides/GuideGenerateDocsClientsSchemasPage.js +2 -209
  79. package/dist/components/docs/guides/GuideHostBuilderWorkbenchPage.d.ts +1 -0
  80. package/dist/components/docs/guides/GuideHostBuilderWorkbenchPage.js +70 -0
  81. package/dist/components/docs/guides/GuideImportExistingCodebasesPage.js +8 -754
  82. package/dist/components/docs/guides/GuideNextjsOneEndpointPage.js +6 -268
  83. package/dist/components/docs/guides/GuideSpecValidationTypingPage.js +4 -196
  84. package/dist/components/docs/guides/GuidesIndexPage.js +2 -169
  85. package/dist/components/docs/guides/guides.docblocks.js +11 -75
  86. package/dist/components/docs/guides/index.d.ts +3 -0
  87. package/dist/components/docs/guides/index.js +213 -2428
  88. package/dist/components/docs/index.js +542 -24310
  89. package/dist/components/docs/integrations/IntegrationsCircuitBreakersPage.js +2 -42
  90. package/dist/components/docs/integrations/IntegrationsElevenLabsPage.js +3 -105
  91. package/dist/components/docs/integrations/IntegrationsGithubPage.js +3 -142
  92. package/dist/components/docs/integrations/IntegrationsGmailPage.js +3 -109
  93. package/dist/components/docs/integrations/IntegrationsGoogleCalendarPage.js +3 -79
  94. package/dist/components/docs/integrations/IntegrationsHealthRoutingPage.js +3 -146
  95. package/dist/components/docs/integrations/IntegrationsMistralPage.js +5 -150
  96. package/dist/components/docs/integrations/IntegrationsOpenAIPage.js +5 -140
  97. package/dist/components/docs/integrations/IntegrationsOverviewPage.js +1 -160
  98. package/dist/components/docs/integrations/IntegrationsPostmarkPage.js +4 -218
  99. package/dist/components/docs/integrations/IntegrationsPowensPage.js +4 -300
  100. package/dist/components/docs/integrations/IntegrationsQdrantPage.js +5 -111
  101. package/dist/components/docs/integrations/IntegrationsResendPage.js +3 -102
  102. package/dist/components/docs/integrations/IntegrationsS3Page.js +4 -124
  103. package/dist/components/docs/integrations/IntegrationsSlackPage.js +3 -144
  104. package/dist/components/docs/integrations/IntegrationsSpecModelPage.js +7 -290
  105. package/dist/components/docs/integrations/IntegrationsStripePage.js +6 -327
  106. package/dist/components/docs/integrations/IntegrationsTwilioPage.js +3 -128
  107. package/dist/components/docs/integrations/IntegrationsWhatsappMetaPage.js +2 -146
  108. package/dist/components/docs/integrations/IntegrationsWhatsappTwilioPage.js +2 -156
  109. package/dist/components/docs/integrations/index.js +52 -3100
  110. package/dist/components/docs/intent/ContractFirstApiPage.js +2 -126
  111. package/dist/components/docs/intent/DeterministicCodegenPage.js +2 -148
  112. package/dist/components/docs/intent/GenerateClientFromSchemaPage.js +7 -207
  113. package/dist/components/docs/intent/OpenapiAlternativePage.js +3 -201
  114. package/dist/components/docs/intent/SchemaValidationTypescriptPage.js +4 -144
  115. package/dist/components/docs/intent/SpecDrivenDevelopmentPage.js +2 -126
  116. package/dist/components/docs/intent/index.js +15 -1135
  117. package/dist/components/docs/intent/intent-pages.docblocks.js +1 -201
  118. package/dist/components/docs/knowledge/KnowledgeCategoriesPage.js +6 -750
  119. package/dist/components/docs/knowledge/KnowledgeExamplesPage.js +4 -175
  120. package/dist/components/docs/knowledge/KnowledgeOverviewPage.js +1 -116
  121. package/dist/components/docs/knowledge/KnowledgeSourcesPage.js +8 -391
  122. package/dist/components/docs/knowledge/KnowledgeSpacesPage.js +6 -302
  123. package/dist/components/docs/knowledge/index.js +21 -1730
  124. package/dist/components/docs/libraries/LibrariesAccessibilityPage.js +3 -198
  125. package/dist/components/docs/libraries/LibrariesAiAgentPage.js +3 -141
  126. package/dist/components/docs/libraries/LibrariesAnalyticsPage.js +4 -80
  127. package/dist/components/docs/libraries/LibrariesContentGenPage.js +2 -100
  128. package/dist/components/docs/libraries/LibrariesContractsPage.js +2 -284
  129. package/dist/components/docs/libraries/LibrariesCostTrackingPage.js +3 -112
  130. package/dist/components/docs/libraries/LibrariesDataBackendPage.js +2 -166
  131. package/dist/components/docs/libraries/LibrariesDataViewsPage.js +3 -186
  132. package/dist/components/docs/libraries/LibrariesDesignSystemPage.js +4 -279
  133. package/dist/components/docs/libraries/LibrariesEvolutionPage.js +4 -127
  134. package/dist/components/docs/libraries/LibrariesGraphQLPage.js +2 -173
  135. package/dist/components/docs/libraries/LibrariesGrowthPage.js +3 -88
  136. package/dist/components/docs/libraries/LibrariesMultiTenancyPage.js +3 -108
  137. package/dist/components/docs/libraries/LibrariesObservabilityPage.js +5 -130
  138. package/dist/components/docs/libraries/LibrariesOverlayEnginePage.js +4 -110
  139. package/dist/components/docs/libraries/LibrariesOverviewPage.js +1 -170
  140. package/dist/components/docs/libraries/LibrariesPersonalizationPage.js +4 -114
  141. package/dist/components/docs/libraries/LibrariesProgressiveDeliveryPage.js +3 -132
  142. package/dist/components/docs/libraries/LibrariesResiliencePage.js +4 -120
  143. package/dist/components/docs/libraries/LibrariesRuntimePage.js +2 -200
  144. package/dist/components/docs/libraries/LibrariesSLOPage.js +3 -116
  145. package/dist/components/docs/libraries/LibrariesSchemaPage.js +3 -273
  146. package/dist/components/docs/libraries/LibrariesSupportBotPage.js +3 -134
  147. package/dist/components/docs/libraries/LibrariesTestingPage.js +3 -133
  148. package/dist/components/docs/libraries/LibrariesUIKitPage.js +2 -230
  149. package/dist/components/docs/libraries/LibrariesWorkflowComposerPage.js +3 -88
  150. package/dist/components/docs/libraries/LibrariesWorkflowsPage.js +2 -181
  151. package/dist/components/docs/libraries/index.js +54 -4147
  152. package/dist/components/docs/manifesto/ManifestoPage.js +1 -86
  153. package/dist/components/docs/ops/AutoEvolutionOpsPage.js +2 -132
  154. package/dist/components/docs/ops/DistributedTracingOpsPage.js +2 -71
  155. package/dist/components/docs/ops/index.js +3 -202
  156. package/dist/components/docs/ops/ops-lifecycle.docblocks.js +3 -38
  157. package/dist/components/docs/ops/ops-runbooks-a.docblocks.js +3 -94
  158. package/dist/components/docs/ops/ops-runbooks-b.docblocks.js +3 -76
  159. package/dist/components/docs/ops/ops-slo-tenant.docblocks.js +3 -76
  160. package/dist/components/docs/ops/ops-top.docs.js +2 -17
  161. package/dist/components/docs/ops/ops.docs.js +10 -302
  162. package/dist/components/docs/product/product.docblocks.js +5 -72
  163. package/dist/components/docs/reference/DocsMarkdownContent.js +2 -196
  164. package/dist/components/docs/reference/DocsReferenceContent.js +3 -256
  165. package/dist/components/docs/reference/DocsReferenceIndexClient.js +2 -127
  166. package/dist/components/docs/reference/DocsReferenceIndexPage.js +2 -206
  167. package/dist/components/docs/reference/DocsReferencePage.js +3 -265
  168. package/dist/components/docs/reference/docsMarkdownParser.js +2 -92
  169. package/dist/components/docs/reference/index.js +4 -470
  170. package/dist/components/docs/safety/SafetyAuditingPage.js +2 -350
  171. package/dist/components/docs/safety/SafetyMigrationsPage.js +2 -359
  172. package/dist/components/docs/safety/SafetyOverviewPage.js +1 -101
  173. package/dist/components/docs/safety/SafetyPDPPage.js +2 -301
  174. package/dist/components/docs/safety/SafetySecurityTrustPage.js +1 -206
  175. package/dist/components/docs/safety/SafetySigningPage.js +3 -90
  176. package/dist/components/docs/safety/SafetyTenantIsolationPage.js +2 -79
  177. package/dist/components/docs/safety/index.js +7 -1480
  178. package/dist/components/docs/shared/StudioPrompt.js +1 -31
  179. package/dist/components/docs/specs/SpecsBuilderControlPlanePage.d.ts +1 -0
  180. package/dist/components/docs/specs/SpecsBuilderControlPlanePage.js +34 -0
  181. package/dist/components/docs/specs/SpecsCapabilitiesPage.js +2 -158
  182. package/dist/components/docs/specs/SpecsConnectPage.d.ts +1 -0
  183. package/dist/components/docs/specs/SpecsConnectPage.js +8 -0
  184. package/dist/components/docs/specs/SpecsDataViewsPage.js +2 -260
  185. package/dist/components/docs/specs/SpecsModuleBundlesPage.d.ts +1 -0
  186. package/dist/components/docs/specs/SpecsModuleBundlesPage.js +67 -0
  187. package/dist/components/docs/specs/SpecsOverlaysPage.js +2 -372
  188. package/dist/components/docs/specs/SpecsOverviewPage.js +1 -186
  189. package/dist/components/docs/specs/SpecsPolicyPage.js +3 -420
  190. package/dist/components/docs/specs/SpecsWorkflowsPage.js +2 -325
  191. package/dist/components/docs/specs/index.d.ts +3 -0
  192. package/dist/components/docs/specs/index.js +109 -1715
  193. package/dist/components/docs/studio/StudioBYOKPage.js +1 -26
  194. package/dist/components/docs/studio/StudioDeploymentsPage.js +1 -26
  195. package/dist/components/docs/studio/StudioGettingStartedPage.js +1 -26
  196. package/dist/components/docs/studio/StudioIntegrationsPage.js +1 -26
  197. package/dist/components/docs/studio/StudioOverviewPage.js +1 -157
  198. package/dist/components/docs/studio/StudioVisualBuilderPage.js +1 -26
  199. package/dist/components/docs/studio/index.js +1 -282
  200. package/dist/components/docs/tech/contracts/tech-docs.docblocks.js +2 -19
  201. package/dist/components/integrations/index.js +2 -600
  202. package/dist/components/integrations/molecules/IntegrationCard.js +1 -100
  203. package/dist/components/integrations/organisms/IntegrationMarketplace.js +1 -214
  204. package/dist/components/integrations/organisms/IntegrationSettings.js +2 -284
  205. package/dist/components/integrations/organisms/KnowledgeSourceList.js +1 -103
  206. package/dist/components/legal/PrivacyTemplate.js +1 -1025
  207. package/dist/components/legal/TermsTemplate.js +1 -941
  208. package/dist/components/legal/index.js +1 -1963
  209. package/dist/components/shared/FeatureGateNotice.js +1 -38
  210. package/dist/components/shared/index.js +1 -38
  211. package/dist/components/shell/WorkspaceHeader.js +1 -100
  212. package/dist/components/shell/WorkspaceProjectShellLayout.js +1 -222
  213. package/dist/components/shell/WorkspaceShellRenderer.js +1 -228
  214. package/dist/components/shell/WorkspaceSidebar.js +1 -68
  215. package/dist/components/shell/index.js +1 -287
  216. package/dist/components/templates/engine/index.js +1 -39
  217. package/dist/components/templates/index.js +11 -965
  218. package/dist/components/templates/messaging/ConversationList.js +2 -83
  219. package/dist/components/templates/messaging/MessageComposer.js +4 -150
  220. package/dist/components/templates/messaging/MessageThread.js +3 -83
  221. package/dist/components/templates/messaging/MessagingWorkspace.js +5 -265
  222. package/dist/components/templates/messaging/index.js +5 -269
  223. package/dist/components/templates/recipes/LanguageSwitcher.js +1 -16
  224. package/dist/components/templates/recipes/RecipeCard.js +1 -80
  225. package/dist/components/templates/recipes/RecipeDetail.js +1 -74
  226. package/dist/components/templates/recipes/RecipeList.js +3 -245
  227. package/dist/components/templates/recipes/index.js +3 -248
  228. package/dist/components/templates/todos/FilterBar.js +1 -107
  229. package/dist/components/templates/todos/TaskForm.js +2 -158
  230. package/dist/components/templates/todos/TaskItem.js +1 -77
  231. package/dist/components/templates/todos/TaskList.js +5 -449
  232. package/dist/components/templates/todos/index.js +5 -452
  233. package/dist/config/contractspec-blueprint.js +1 -123
  234. package/dist/config/contractspec-branding.js +1 -44
  235. package/dist/config/contractspec-routes.js +1 -24
  236. package/dist/config/index.js +1 -126
  237. package/dist/features/contracts-registry.js +1 -178
  238. package/dist/features/docs/docs.contracts.js +1 -17
  239. package/dist/features/docs/index.js +1 -17
  240. package/dist/features/docs.feature.js +1 -33
  241. package/dist/features/index.js +1 -315
  242. package/dist/features/mcp.feature.js +1 -30
  243. package/dist/features/presentations.feature.js +1 -33
  244. package/dist/features/registry.js +1 -116
  245. package/dist/index.js +556 -28593
  246. package/dist/infrastructure/elysia/index.js +1 -35
  247. package/dist/infrastructure/elysia/logger.js +1 -35
  248. package/dist/infrastructure/index.js +1 -35
  249. package/dist/libs/email/client.js +1 -114
  250. package/dist/libs/email/contact.js +12 -165
  251. package/dist/libs/email/newsletter.js +6 -167
  252. package/dist/libs/email/types.js +0 -2
  253. package/dist/libs/email/utils.js +2 -8
  254. package/dist/libs/email/waitlist-application.js +28 -209
  255. package/dist/libs/email/waitlist.js +6 -167
  256. package/dist/libs/email.js +46 -363
  257. package/dist/libs/posthog/client.js +1 -63
  258. package/dist/libs/posthog/native.js +1 -23
  259. package/dist/libs/posthog/server.js +1 -13
  260. package/dist/libs/pricing-examples.js +1 -18
  261. package/dist/node/application/context-storage/index.js +1 -28
  262. package/dist/node/application/index.js +13 -2133
  263. package/dist/node/application/mcp/cliMcp.js +4 -452
  264. package/dist/node/application/mcp/common.js +1 -193
  265. package/dist/node/application/mcp/contractsMcp.js +2 -549
  266. package/dist/node/application/mcp/contractsMcpResources.js +2 -123
  267. package/dist/node/application/mcp/contractsMcpTools.js +1 -199
  268. package/dist/node/application/mcp/docsMcp.catalog.js +3 -381
  269. package/dist/node/application/mcp/docsMcp.data.js +1 -147
  270. package/dist/node/application/mcp/docsMcp.js +6 -1039
  271. package/dist/node/application/mcp/docsMcp.prompts.js +6 -521
  272. package/dist/node/application/mcp/docsMcp.reference.js +3 -235
  273. package/dist/node/application/mcp/docsMcp.resources.js +3 -519
  274. package/dist/node/application/mcp/docsMcp.tools.js +3 -518
  275. package/dist/node/application/mcp/index.js +13 -2106
  276. package/dist/node/application/mcp/internalMcp.js +2 -410
  277. package/dist/node/application/mcp/normalizeMcpRequest.js +1 -21
  278. package/dist/node/application/mcp/providerRankingMcp.js +1 -530
  279. package/dist/node/bundles/LibraryBundle.js +1 -138
  280. package/dist/node/bundles/index.js +1 -138
  281. package/dist/node/components/docs/DocsIndexPage.js +2 -912
  282. package/dist/node/components/docs/advanced/AdvancedMCPPage.js +4 -271
  283. package/dist/node/components/docs/advanced/AdvancedOverlayEditorPage.js +1 -107
  284. package/dist/node/components/docs/advanced/AdvancedRenderersPage.js +2 -118
  285. package/dist/node/components/docs/advanced/AdvancedSpecExperimentsPage.js +4 -92
  286. package/dist/node/components/docs/advanced/AdvancedTelemetryPage.js +2 -373
  287. package/dist/node/components/docs/advanced/AdvancedWorkflowMonitoringPage.js +2 -99
  288. package/dist/node/components/docs/advanced/index.js +10 -1055
  289. package/dist/node/components/docs/architecture/ArchitectureAppConfigPage.js +6 -243
  290. package/dist/node/components/docs/architecture/ArchitectureControlPlanePage.js +3 -160
  291. package/dist/node/components/docs/architecture/ArchitectureIntegrationBindingPage.js +7 -259
  292. package/dist/node/components/docs/architecture/ArchitectureKnowledgeBindingPage.js +6 -374
  293. package/dist/node/components/docs/architecture/ArchitectureMultiTenancyPage.js +2 -166
  294. package/dist/node/components/docs/architecture/ArchitectureOverviewPage.js +1 -143
  295. package/dist/node/components/docs/architecture/index.js +20 -1340
  296. package/dist/node/components/docs/comparison/ComparisonAutomationPlatformsPage.js +1 -245
  297. package/dist/node/components/docs/comparison/ComparisonEnterprisePlatformsPage.js +1 -230
  298. package/dist/node/components/docs/comparison/ComparisonInternalToolBuildersPage.js +1 -245
  299. package/dist/node/components/docs/comparison/ComparisonOverviewPage.js +1 -202
  300. package/dist/node/components/docs/comparison/ComparisonWindmillPage.js +1 -254
  301. package/dist/node/components/docs/comparison/ComparisonWorkflowEnginesPage.js +1 -339
  302. package/dist/node/components/docs/comparison/index.js +1 -1510
  303. package/dist/node/components/docs/docsManifest.js +1 -611
  304. package/dist/node/components/docs/ecosystem/IntegrationsPage.js +2 -103
  305. package/dist/node/components/docs/ecosystem/PluginsPage.js +13 -179
  306. package/dist/node/components/docs/ecosystem/RegistryPage.js +7 -100
  307. package/dist/node/components/docs/ecosystem/TemplatesPage.js +3 -141
  308. package/dist/node/components/docs/ecosystem/ecosystem.docblocks.js +2 -48
  309. package/dist/node/components/docs/ecosystem/index.js +23 -569
  310. package/dist/node/components/docs/examples/DocsExamplesPage.js +4 -124
  311. package/dist/node/components/docs/examples/ExampleShowcasePage.js +4 -244
  312. package/dist/node/components/docs/examples/exampleShowcaseData.js +4 -39
  313. package/dist/node/components/docs/examples/index.js +4 -330
  314. package/dist/node/components/docs/generated/docs-index.generated.js +1 -5
  315. package/dist/node/components/docs/generated/index.js +1 -74
  316. package/dist/node/components/docs/generated/loader.js +1 -74
  317. package/dist/node/components/docs/getting-started/CLIPage.js +4 -271
  318. package/dist/node/components/docs/getting-started/CompatibilityPage.js +1 -173
  319. package/dist/node/components/docs/getting-started/DataViewTutorialPage.js +4 -134
  320. package/dist/node/components/docs/getting-started/DeveloperToolsPage.js +1 -194
  321. package/dist/node/components/docs/getting-started/HelloWorldPage.js +5 -183
  322. package/dist/node/components/docs/getting-started/InstallationPage.js +3 -154
  323. package/dist/node/components/docs/getting-started/StartHerePage.js +2 -129
  324. package/dist/node/components/docs/getting-started/TroubleshootingPage.js +2 -168
  325. package/dist/node/components/docs/getting-started/VSCodeExtensionPage.js +1 -432
  326. package/dist/node/components/docs/getting-started/getting-started.docblocks.js +4 -41
  327. package/dist/node/components/docs/getting-started/index.js +18 -1869
  328. package/dist/node/components/docs/guides/GuideCIDiffGatingPage.js +2 -196
  329. package/dist/node/components/docs/guides/GuideConnectInRepoPage.js +43 -0
  330. package/dist/node/components/docs/guides/GuideContractTypesPage.js +6 -541
  331. package/dist/node/components/docs/guides/GuideDocsPipelinePage.js +3 -207
  332. package/dist/node/components/docs/guides/GuideFirstModuleBundlePage.js +75 -0
  333. package/dist/node/components/docs/guides/GuideGenerateDocsClientsSchemasPage.js +2 -209
  334. package/dist/node/components/docs/guides/GuideHostBuilderWorkbenchPage.js +69 -0
  335. package/dist/node/components/docs/guides/GuideImportExistingCodebasesPage.js +8 -754
  336. package/dist/node/components/docs/guides/GuideNextjsOneEndpointPage.js +6 -268
  337. package/dist/node/components/docs/guides/GuideSpecValidationTypingPage.js +4 -196
  338. package/dist/node/components/docs/guides/GuidesIndexPage.js +2 -169
  339. package/dist/node/components/docs/guides/guides.docblocks.js +11 -75
  340. package/dist/node/components/docs/guides/index.js +213 -2428
  341. package/dist/node/components/docs/index.js +542 -24310
  342. package/dist/node/components/docs/integrations/IntegrationsCircuitBreakersPage.js +2 -42
  343. package/dist/node/components/docs/integrations/IntegrationsElevenLabsPage.js +3 -105
  344. package/dist/node/components/docs/integrations/IntegrationsGithubPage.js +3 -142
  345. package/dist/node/components/docs/integrations/IntegrationsGmailPage.js +3 -109
  346. package/dist/node/components/docs/integrations/IntegrationsGoogleCalendarPage.js +3 -79
  347. package/dist/node/components/docs/integrations/IntegrationsHealthRoutingPage.js +3 -146
  348. package/dist/node/components/docs/integrations/IntegrationsMistralPage.js +5 -150
  349. package/dist/node/components/docs/integrations/IntegrationsOpenAIPage.js +5 -140
  350. package/dist/node/components/docs/integrations/IntegrationsOverviewPage.js +1 -160
  351. package/dist/node/components/docs/integrations/IntegrationsPostmarkPage.js +4 -218
  352. package/dist/node/components/docs/integrations/IntegrationsPowensPage.js +4 -300
  353. package/dist/node/components/docs/integrations/IntegrationsQdrantPage.js +5 -111
  354. package/dist/node/components/docs/integrations/IntegrationsResendPage.js +3 -102
  355. package/dist/node/components/docs/integrations/IntegrationsS3Page.js +4 -124
  356. package/dist/node/components/docs/integrations/IntegrationsSlackPage.js +3 -144
  357. package/dist/node/components/docs/integrations/IntegrationsSpecModelPage.js +7 -290
  358. package/dist/node/components/docs/integrations/IntegrationsStripePage.js +6 -327
  359. package/dist/node/components/docs/integrations/IntegrationsTwilioPage.js +3 -128
  360. package/dist/node/components/docs/integrations/IntegrationsWhatsappMetaPage.js +2 -146
  361. package/dist/node/components/docs/integrations/IntegrationsWhatsappTwilioPage.js +2 -156
  362. package/dist/node/components/docs/integrations/index.js +52 -3100
  363. package/dist/node/components/docs/intent/ContractFirstApiPage.js +2 -126
  364. package/dist/node/components/docs/intent/DeterministicCodegenPage.js +2 -148
  365. package/dist/node/components/docs/intent/GenerateClientFromSchemaPage.js +7 -207
  366. package/dist/node/components/docs/intent/OpenapiAlternativePage.js +3 -201
  367. package/dist/node/components/docs/intent/SchemaValidationTypescriptPage.js +4 -144
  368. package/dist/node/components/docs/intent/SpecDrivenDevelopmentPage.js +2 -126
  369. package/dist/node/components/docs/intent/index.js +15 -1135
  370. package/dist/node/components/docs/intent/intent-pages.docblocks.js +1 -201
  371. package/dist/node/components/docs/knowledge/KnowledgeCategoriesPage.js +6 -750
  372. package/dist/node/components/docs/knowledge/KnowledgeExamplesPage.js +4 -175
  373. package/dist/node/components/docs/knowledge/KnowledgeOverviewPage.js +1 -116
  374. package/dist/node/components/docs/knowledge/KnowledgeSourcesPage.js +8 -391
  375. package/dist/node/components/docs/knowledge/KnowledgeSpacesPage.js +6 -302
  376. package/dist/node/components/docs/knowledge/index.js +21 -1730
  377. package/dist/node/components/docs/libraries/LibrariesAccessibilityPage.js +3 -198
  378. package/dist/node/components/docs/libraries/LibrariesAiAgentPage.js +3 -141
  379. package/dist/node/components/docs/libraries/LibrariesAnalyticsPage.js +4 -80
  380. package/dist/node/components/docs/libraries/LibrariesContentGenPage.js +2 -100
  381. package/dist/node/components/docs/libraries/LibrariesContractsPage.js +2 -284
  382. package/dist/node/components/docs/libraries/LibrariesCostTrackingPage.js +3 -112
  383. package/dist/node/components/docs/libraries/LibrariesDataBackendPage.js +2 -166
  384. package/dist/node/components/docs/libraries/LibrariesDataViewsPage.js +3 -186
  385. package/dist/node/components/docs/libraries/LibrariesDesignSystemPage.js +4 -279
  386. package/dist/node/components/docs/libraries/LibrariesEvolutionPage.js +4 -127
  387. package/dist/node/components/docs/libraries/LibrariesGraphQLPage.js +2 -173
  388. package/dist/node/components/docs/libraries/LibrariesGrowthPage.js +3 -88
  389. package/dist/node/components/docs/libraries/LibrariesMultiTenancyPage.js +3 -108
  390. package/dist/node/components/docs/libraries/LibrariesObservabilityPage.js +5 -130
  391. package/dist/node/components/docs/libraries/LibrariesOverlayEnginePage.js +4 -110
  392. package/dist/node/components/docs/libraries/LibrariesOverviewPage.js +1 -170
  393. package/dist/node/components/docs/libraries/LibrariesPersonalizationPage.js +4 -114
  394. package/dist/node/components/docs/libraries/LibrariesProgressiveDeliveryPage.js +3 -132
  395. package/dist/node/components/docs/libraries/LibrariesResiliencePage.js +4 -120
  396. package/dist/node/components/docs/libraries/LibrariesRuntimePage.js +2 -200
  397. package/dist/node/components/docs/libraries/LibrariesSLOPage.js +3 -116
  398. package/dist/node/components/docs/libraries/LibrariesSchemaPage.js +3 -273
  399. package/dist/node/components/docs/libraries/LibrariesSupportBotPage.js +3 -134
  400. package/dist/node/components/docs/libraries/LibrariesTestingPage.js +3 -133
  401. package/dist/node/components/docs/libraries/LibrariesUIKitPage.js +2 -230
  402. package/dist/node/components/docs/libraries/LibrariesWorkflowComposerPage.js +3 -88
  403. package/dist/node/components/docs/libraries/LibrariesWorkflowsPage.js +2 -181
  404. package/dist/node/components/docs/libraries/index.js +54 -4147
  405. package/dist/node/components/docs/manifesto/ManifestoPage.js +1 -86
  406. package/dist/node/components/docs/ops/AutoEvolutionOpsPage.js +2 -132
  407. package/dist/node/components/docs/ops/DistributedTracingOpsPage.js +2 -71
  408. package/dist/node/components/docs/ops/index.js +3 -202
  409. package/dist/node/components/docs/ops/ops-lifecycle.docblocks.js +3 -38
  410. package/dist/node/components/docs/ops/ops-runbooks-a.docblocks.js +3 -94
  411. package/dist/node/components/docs/ops/ops-runbooks-b.docblocks.js +3 -76
  412. package/dist/node/components/docs/ops/ops-slo-tenant.docblocks.js +3 -76
  413. package/dist/node/components/docs/ops/ops-top.docs.js +2 -17
  414. package/dist/node/components/docs/ops/ops.docs.js +10 -302
  415. package/dist/node/components/docs/product/product.docblocks.js +5 -72
  416. package/dist/node/components/docs/reference/DocsMarkdownContent.js +2 -196
  417. package/dist/node/components/docs/reference/DocsReferenceContent.js +3 -256
  418. package/dist/node/components/docs/reference/DocsReferenceIndexClient.js +2 -127
  419. package/dist/node/components/docs/reference/DocsReferenceIndexPage.js +2 -206
  420. package/dist/node/components/docs/reference/DocsReferencePage.js +3 -265
  421. package/dist/node/components/docs/reference/docsMarkdownParser.js +2 -92
  422. package/dist/node/components/docs/reference/index.js +4 -470
  423. package/dist/node/components/docs/safety/SafetyAuditingPage.js +2 -350
  424. package/dist/node/components/docs/safety/SafetyMigrationsPage.js +2 -359
  425. package/dist/node/components/docs/safety/SafetyOverviewPage.js +1 -101
  426. package/dist/node/components/docs/safety/SafetyPDPPage.js +2 -301
  427. package/dist/node/components/docs/safety/SafetySecurityTrustPage.js +1 -206
  428. package/dist/node/components/docs/safety/SafetySigningPage.js +3 -90
  429. package/dist/node/components/docs/safety/SafetyTenantIsolationPage.js +2 -79
  430. package/dist/node/components/docs/safety/index.js +7 -1480
  431. package/dist/node/components/docs/shared/StudioPrompt.js +1 -31
  432. package/dist/node/components/docs/specs/SpecsBuilderControlPlanePage.js +33 -0
  433. package/dist/node/components/docs/specs/SpecsCapabilitiesPage.js +2 -158
  434. package/dist/node/components/docs/specs/SpecsConnectPage.js +7 -0
  435. package/dist/node/components/docs/specs/SpecsDataViewsPage.js +2 -260
  436. package/dist/node/components/docs/specs/SpecsModuleBundlesPage.js +66 -0
  437. package/dist/node/components/docs/specs/SpecsOverlaysPage.js +2 -372
  438. package/dist/node/components/docs/specs/SpecsOverviewPage.js +1 -186
  439. package/dist/node/components/docs/specs/SpecsPolicyPage.js +3 -420
  440. package/dist/node/components/docs/specs/SpecsWorkflowsPage.js +2 -325
  441. package/dist/node/components/docs/specs/index.js +109 -1715
  442. package/dist/node/components/docs/studio/StudioBYOKPage.js +1 -26
  443. package/dist/node/components/docs/studio/StudioDeploymentsPage.js +1 -26
  444. package/dist/node/components/docs/studio/StudioGettingStartedPage.js +1 -26
  445. package/dist/node/components/docs/studio/StudioIntegrationsPage.js +1 -26
  446. package/dist/node/components/docs/studio/StudioOverviewPage.js +1 -157
  447. package/dist/node/components/docs/studio/StudioVisualBuilderPage.js +1 -26
  448. package/dist/node/components/docs/studio/index.js +1 -282
  449. package/dist/node/components/docs/tech/contracts/tech-docs.docblocks.js +2 -19
  450. package/dist/node/components/integrations/index.js +2 -600
  451. package/dist/node/components/integrations/molecules/IntegrationCard.js +1 -100
  452. package/dist/node/components/integrations/organisms/IntegrationMarketplace.js +1 -214
  453. package/dist/node/components/integrations/organisms/IntegrationSettings.js +2 -284
  454. package/dist/node/components/integrations/organisms/KnowledgeSourceList.js +1 -103
  455. package/dist/node/components/legal/PrivacyTemplate.js +1 -1025
  456. package/dist/node/components/legal/TermsTemplate.js +1 -941
  457. package/dist/node/components/legal/index.js +1 -1963
  458. package/dist/node/components/shared/FeatureGateNotice.js +1 -38
  459. package/dist/node/components/shared/index.js +1 -38
  460. package/dist/node/components/shell/WorkspaceHeader.js +1 -100
  461. package/dist/node/components/shell/WorkspaceProjectShellLayout.js +1 -222
  462. package/dist/node/components/shell/WorkspaceShellRenderer.js +1 -228
  463. package/dist/node/components/shell/WorkspaceSidebar.js +1 -68
  464. package/dist/node/components/shell/index.js +1 -287
  465. package/dist/node/components/templates/engine/index.js +1 -39
  466. package/dist/node/components/templates/index.js +11 -965
  467. package/dist/node/components/templates/messaging/ConversationList.js +2 -83
  468. package/dist/node/components/templates/messaging/MessageComposer.js +4 -150
  469. package/dist/node/components/templates/messaging/MessageThread.js +3 -83
  470. package/dist/node/components/templates/messaging/MessagingWorkspace.js +5 -265
  471. package/dist/node/components/templates/messaging/index.js +5 -269
  472. package/dist/node/components/templates/recipes/LanguageSwitcher.js +1 -16
  473. package/dist/node/components/templates/recipes/RecipeCard.js +1 -80
  474. package/dist/node/components/templates/recipes/RecipeDetail.js +1 -74
  475. package/dist/node/components/templates/recipes/RecipeList.js +3 -245
  476. package/dist/node/components/templates/recipes/index.js +3 -248
  477. package/dist/node/components/templates/todos/FilterBar.js +1 -107
  478. package/dist/node/components/templates/todos/TaskForm.js +2 -158
  479. package/dist/node/components/templates/todos/TaskItem.js +1 -77
  480. package/dist/node/components/templates/todos/TaskList.js +5 -449
  481. package/dist/node/components/templates/todos/index.js +5 -452
  482. package/dist/node/config/contractspec-blueprint.js +1 -123
  483. package/dist/node/config/contractspec-branding.js +1 -44
  484. package/dist/node/config/contractspec-routes.js +1 -24
  485. package/dist/node/config/index.js +1 -126
  486. package/dist/node/features/contracts-registry.js +1 -178
  487. package/dist/node/features/docs/docs.contracts.js +1 -17
  488. package/dist/node/features/docs/index.js +1 -17
  489. package/dist/node/features/docs.feature.js +1 -33
  490. package/dist/node/features/index.js +1 -315
  491. package/dist/node/features/mcp.feature.js +1 -30
  492. package/dist/node/features/presentations.feature.js +1 -33
  493. package/dist/node/features/registry.js +1 -116
  494. package/dist/node/index.js +556 -28593
  495. package/dist/node/infrastructure/elysia/index.js +1 -35
  496. package/dist/node/infrastructure/elysia/logger.js +1 -35
  497. package/dist/node/infrastructure/index.js +1 -35
  498. package/dist/node/libs/email/client.js +1 -114
  499. package/dist/node/libs/email/contact.js +12 -165
  500. package/dist/node/libs/email/newsletter.js +6 -167
  501. package/dist/node/libs/email/types.js +0 -2
  502. package/dist/node/libs/email/utils.js +2 -8
  503. package/dist/node/libs/email/waitlist-application.js +28 -209
  504. package/dist/node/libs/email/waitlist.js +6 -167
  505. package/dist/node/libs/email.js +46 -363
  506. package/dist/node/libs/posthog/client.js +1 -63
  507. package/dist/node/libs/posthog/native.js +1 -23
  508. package/dist/node/libs/posthog/server.js +1 -13
  509. package/dist/node/libs/pricing-examples.js +1 -18
  510. package/dist/node/presentation/features/atoms/FeatureIcon/FeatureIcon.js +1 -97
  511. package/dist/node/presentation/features/atoms/FeatureIcon/index.js +1 -97
  512. package/dist/node/presentation/features/atoms/index.js +1 -97
  513. package/dist/node/presentation/features/hooks/index.js +1 -397
  514. package/dist/node/presentation/features/hooks/useContractsRegistry.js +1 -289
  515. package/dist/node/presentation/features/hooks/useFeatureFilters.js +1 -75
  516. package/dist/node/presentation/features/hooks/useFeatureRegistry.js +1 -147
  517. package/dist/node/presentation/features/hooks/useRelatedDocs.js +1 -28
  518. package/dist/node/presentation/features/index.js +1 -3063
  519. package/dist/node/presentation/features/molecules/FeatureCard/FeatureCard.js +1 -366
  520. package/dist/node/presentation/features/molecules/FeatureCard/index.js +1 -366
  521. package/dist/node/presentation/features/molecules/FeatureCategoryHeader/FeatureCategoryHeader.js +1 -50
  522. package/dist/node/presentation/features/molecules/FeatureCategoryHeader/index.js +1 -50
  523. package/dist/node/presentation/features/molecules/FeatureFilters/FeatureFilters.js +1 -92
  524. package/dist/node/presentation/features/molecules/FeatureFilters/index.js +1 -92
  525. package/dist/node/presentation/features/molecules/FeatureHoverPreview/FeatureHoverPreview.js +1 -176
  526. package/dist/node/presentation/features/molecules/FeatureHoverPreview/index.js +1 -176
  527. package/dist/node/presentation/features/molecules/index.js +1 -505
  528. package/dist/node/presentation/features/organisms/FeatureDataViewsList.js +1 -304
  529. package/dist/node/presentation/features/organisms/FeatureDetail/FeatureDetail.js +1 -154
  530. package/dist/node/presentation/features/organisms/FeatureDetail/index.js +1 -154
  531. package/dist/node/presentation/features/organisms/FeatureDiscovery/FeatureDiscovery.js +1 -909
  532. package/dist/node/presentation/features/organisms/FeatureDiscovery/index.js +1 -909
  533. package/dist/node/presentation/features/organisms/FeatureEventsList.js +1 -302
  534. package/dist/node/presentation/features/organisms/FeatureFormsList.js +1 -302
  535. package/dist/node/presentation/features/organisms/FeatureOperationsList.js +1 -180
  536. package/dist/node/presentation/features/organisms/FeaturePresentationsList.js +1 -304
  537. package/dist/node/presentation/features/organisms/index.js +1 -1359
  538. package/dist/node/presentation/features/templates/FeatureDataViewDetailTemplate/FeatureDataViewDetailTemplate.js +1 -332
  539. package/dist/node/presentation/features/templates/FeatureDataViewDetailTemplate/index.js +1 -332
  540. package/dist/node/presentation/features/templates/FeatureDataViewsTemplate/FeatureDataViewsTemplate.js +1 -342
  541. package/dist/node/presentation/features/templates/FeatureDataViewsTemplate/index.js +1 -342
  542. package/dist/node/presentation/features/templates/FeatureEventDetailTemplate/FeatureEventDetailTemplate.js +1 -303
  543. package/dist/node/presentation/features/templates/FeatureEventDetailTemplate/index.js +1 -303
  544. package/dist/node/presentation/features/templates/FeatureEventsTemplate/FeatureEventsTemplate.js +1 -340
  545. package/dist/node/presentation/features/templates/FeatureEventsTemplate/index.js +1 -340
  546. package/dist/node/presentation/features/templates/FeatureFormDetailTemplate/FeatureFormDetailTemplate.js +1 -329
  547. package/dist/node/presentation/features/templates/FeatureFormDetailTemplate/index.js +1 -329
  548. package/dist/node/presentation/features/templates/FeatureFormsTemplate/FeatureFormsTemplate.js +1 -340
  549. package/dist/node/presentation/features/templates/FeatureFormsTemplate/index.js +1 -340
  550. package/dist/node/presentation/features/templates/FeatureOperationDetailTemplate/FeatureOperationDetailTemplate.js +1 -302
  551. package/dist/node/presentation/features/templates/FeatureOperationDetailTemplate/index.js +1 -302
  552. package/dist/node/presentation/features/templates/FeatureOperationsTemplate/FeatureOperationsTemplate.js +1 -218
  553. package/dist/node/presentation/features/templates/FeatureOperationsTemplate/index.js +1 -218
  554. package/dist/node/presentation/features/templates/FeatureOverviewTemplate/FeatureOverviewTemplate.js +1 -187
  555. package/dist/node/presentation/features/templates/FeatureOverviewTemplate/index.js +1 -187
  556. package/dist/node/presentation/features/templates/FeaturePresentationDetailTemplate/FeaturePresentationDetailTemplate.js +1 -306
  557. package/dist/node/presentation/features/templates/FeaturePresentationDetailTemplate/index.js +1 -306
  558. package/dist/node/presentation/features/templates/FeaturePresentationsTemplate/FeaturePresentationsTemplate.js +1 -342
  559. package/dist/node/presentation/features/templates/FeaturePresentationsTemplate/index.js +1 -342
  560. package/dist/presentation/features/atoms/FeatureIcon/FeatureIcon.js +1 -97
  561. package/dist/presentation/features/atoms/FeatureIcon/index.js +1 -97
  562. package/dist/presentation/features/atoms/index.js +1 -97
  563. package/dist/presentation/features/hooks/index.js +1 -397
  564. package/dist/presentation/features/hooks/useContractsRegistry.js +1 -289
  565. package/dist/presentation/features/hooks/useFeatureFilters.js +1 -75
  566. package/dist/presentation/features/hooks/useFeatureRegistry.js +1 -147
  567. package/dist/presentation/features/hooks/useRelatedDocs.js +1 -28
  568. package/dist/presentation/features/index.js +1 -3063
  569. package/dist/presentation/features/molecules/FeatureCard/FeatureCard.js +1 -366
  570. package/dist/presentation/features/molecules/FeatureCard/index.js +1 -366
  571. package/dist/presentation/features/molecules/FeatureCategoryHeader/FeatureCategoryHeader.js +1 -50
  572. package/dist/presentation/features/molecules/FeatureCategoryHeader/index.js +1 -50
  573. package/dist/presentation/features/molecules/FeatureFilters/FeatureFilters.js +1 -92
  574. package/dist/presentation/features/molecules/FeatureFilters/index.js +1 -92
  575. package/dist/presentation/features/molecules/FeatureHoverPreview/FeatureHoverPreview.js +1 -176
  576. package/dist/presentation/features/molecules/FeatureHoverPreview/index.js +1 -176
  577. package/dist/presentation/features/molecules/index.js +1 -505
  578. package/dist/presentation/features/organisms/FeatureDataViewsList.js +1 -304
  579. package/dist/presentation/features/organisms/FeatureDetail/FeatureDetail.js +1 -154
  580. package/dist/presentation/features/organisms/FeatureDetail/index.js +1 -154
  581. package/dist/presentation/features/organisms/FeatureDiscovery/FeatureDiscovery.js +1 -909
  582. package/dist/presentation/features/organisms/FeatureDiscovery/index.js +1 -909
  583. package/dist/presentation/features/organisms/FeatureEventsList.js +1 -302
  584. package/dist/presentation/features/organisms/FeatureFormsList.js +1 -302
  585. package/dist/presentation/features/organisms/FeatureOperationsList.js +1 -180
  586. package/dist/presentation/features/organisms/FeaturePresentationsList.js +1 -304
  587. package/dist/presentation/features/organisms/index.js +1 -1359
  588. package/dist/presentation/features/templates/FeatureDataViewDetailTemplate/FeatureDataViewDetailTemplate.js +1 -332
  589. package/dist/presentation/features/templates/FeatureDataViewDetailTemplate/index.js +1 -332
  590. package/dist/presentation/features/templates/FeatureDataViewsTemplate/FeatureDataViewsTemplate.js +1 -342
  591. package/dist/presentation/features/templates/FeatureDataViewsTemplate/index.js +1 -342
  592. package/dist/presentation/features/templates/FeatureEventDetailTemplate/FeatureEventDetailTemplate.js +1 -303
  593. package/dist/presentation/features/templates/FeatureEventDetailTemplate/index.js +1 -303
  594. package/dist/presentation/features/templates/FeatureEventsTemplate/FeatureEventsTemplate.js +1 -340
  595. package/dist/presentation/features/templates/FeatureEventsTemplate/index.js +1 -340
  596. package/dist/presentation/features/templates/FeatureFormDetailTemplate/FeatureFormDetailTemplate.js +1 -329
  597. package/dist/presentation/features/templates/FeatureFormDetailTemplate/index.js +1 -329
  598. package/dist/presentation/features/templates/FeatureFormsTemplate/FeatureFormsTemplate.js +1 -340
  599. package/dist/presentation/features/templates/FeatureFormsTemplate/index.js +1 -340
  600. package/dist/presentation/features/templates/FeatureOperationDetailTemplate/FeatureOperationDetailTemplate.js +1 -302
  601. package/dist/presentation/features/templates/FeatureOperationDetailTemplate/index.js +1 -302
  602. package/dist/presentation/features/templates/FeatureOperationsTemplate/FeatureOperationsTemplate.js +1 -218
  603. package/dist/presentation/features/templates/FeatureOperationsTemplate/index.js +1 -218
  604. package/dist/presentation/features/templates/FeatureOverviewTemplate/FeatureOverviewTemplate.js +1 -187
  605. package/dist/presentation/features/templates/FeatureOverviewTemplate/index.js +1 -187
  606. package/dist/presentation/features/templates/FeaturePresentationDetailTemplate/FeaturePresentationDetailTemplate.js +1 -306
  607. package/dist/presentation/features/templates/FeaturePresentationDetailTemplate/index.js +1 -306
  608. package/dist/presentation/features/templates/FeaturePresentationsTemplate/FeaturePresentationsTemplate.js +1 -342
  609. package/dist/presentation/features/templates/FeaturePresentationsTemplate/index.js +1 -342
  610. package/package.json +103 -31
  611. package/src/components/docs/DocsIndexPage.tsx +55 -0
  612. package/src/components/docs/architecture/ArchitectureControlPlanePage.tsx +19 -0
  613. package/src/components/docs/architecture/ArchitectureOverviewPage.tsx +34 -0
  614. package/src/components/docs/docsManifest.test.ts +70 -0
  615. package/src/components/docs/docsManifest.ts +71 -1
  616. package/src/components/docs/ecosystem/PluginsPage.tsx +24 -10
  617. package/src/components/docs/ecosystem/RegistryPage.tsx +11 -6
  618. package/src/components/docs/generated/docs-index._common.json +206 -273
  619. package/src/components/docs/generated/docs-index.control-plane.json +18 -0
  620. package/src/components/docs/generated/docs-index.defineExample.json +10 -0
  621. package/src/components/docs/generated/docs-index.manifest.json +22 -12
  622. package/src/components/docs/generated/docs-index.platform-acp.json +64 -0
  623. package/src/components/docs/generated/docs-index.platform-agent.json +89 -1
  624. package/src/components/docs/generated/docs-index.platform-context.json +48 -0
  625. package/src/components/docs/generated/docs-index.platform-control-plane.json +72 -0
  626. package/src/components/docs/generated/docs-index.platform-database.json +40 -0
  627. package/src/components/docs/generated/docs-index.platform-docs.json +64 -0
  628. package/src/components/docs/generated/docs-index.platform-provider-ranking.json +89 -1
  629. package/src/components/docs/generated/docs-index.pocket-family-office.json +8 -0
  630. package/src/components/docs/generated/docs-index.unknown.json +8 -0
  631. package/src/components/docs/guides/GuideConnectInRepoPage.tsx +184 -0
  632. package/src/components/docs/guides/GuideFirstModuleBundlePage.tsx +182 -0
  633. package/src/components/docs/guides/GuideHostBuilderWorkbenchPage.tsx +230 -0
  634. package/src/components/docs/guides/GuidesIndexPage.tsx +21 -0
  635. package/src/components/docs/guides/index.ts +3 -0
  636. package/src/components/docs/specs/SpecsBuilderControlPlanePage.tsx +210 -0
  637. package/src/components/docs/specs/SpecsConnectPage.tsx +162 -0
  638. package/src/components/docs/specs/SpecsModuleBundlesPage.tsx +223 -0
  639. package/src/components/docs/specs/SpecsOverlaysPage.tsx +20 -0
  640. package/src/components/docs/specs/SpecsOverviewPage.tsx +44 -0
  641. package/src/components/docs/specs/index.ts +3 -0
  642. package/src/components/docs/studio/StudioOverviewPage.tsx +26 -0
  643. package/src/infrastructure/elysia/logger.ts +11 -3
@@ -1,149 +1,9 @@
1
1
  // @bun
2
- // src/components/docs/knowledge/KnowledgeCategoriesPage.tsx
3
- import Link from "@contractspec/lib.ui-link";
4
- import { ChevronRight } from "lucide-react";
5
- import { jsx, jsxs } from "react/jsx-runtime";
6
- function KnowledgeCategoriesPage() {
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: "Knowledge Categories"
16
- }),
17
- /* @__PURE__ */ jsx("p", {
18
- className: "text-muted-foreground",
19
- children: "ContractSpec classifies knowledge into four categories based on trust level, source authority, and intended use. This classification determines how knowledge can be used in workflows, policy decisions, and agent responses."
20
- })
21
- ]
22
- }),
23
- /* @__PURE__ */ jsxs("div", {
24
- className: "space-y-4",
25
- children: [
26
- /* @__PURE__ */ jsx("h2", {
27
- className: "font-bold text-2xl",
28
- children: "The four categories"
29
- }),
30
- /* @__PURE__ */ jsx("div", {
31
- className: "overflow-x-auto rounded-lg border border-border bg-background/50 p-4 font-mono text-muted-foreground text-sm",
32
- children: /* @__PURE__ */ jsx("pre", {
33
- children: `type KnowledgeCategory =
2
+ import g from"@contractspec/lib.ui-link";import{ChevronRight as w}from"lucide-react";import{jsx as e,jsxs as a}from"react/jsx-runtime";function y(){return a("div",{className:"space-y-8",children:[a("div",{className:"space-y-4",children:[e("h1",{className:"font-bold text-4xl",children:"Knowledge Categories"}),e("p",{className:"text-muted-foreground",children:"ContractSpec classifies knowledge into four categories based on trust level, source authority, and intended use. This classification determines how knowledge can be used in workflows, policy decisions, and agent responses."})]}),a("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"The four categories"}),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:`type KnowledgeCategory =
34
3
  | "canonical" // Internal ground truth
35
4
  | "operational" // Internal operational docs
36
5
  | "external" // Third-party reference
37
- | "ephemeral"; // Temporary context`
38
- })
39
- })
40
- ]
41
- }),
42
- /* @__PURE__ */ jsxs("div", {
43
- className: "space-y-6",
44
- children: [
45
- /* @__PURE__ */ jsxs("div", {
46
- className: "space-y-4",
47
- children: [
48
- /* @__PURE__ */ jsx("h3", {
49
- className: "font-semibold text-xl",
50
- children: "1. Canonical"
51
- }),
52
- /* @__PURE__ */ jsxs("p", {
53
- className: "text-muted-foreground",
54
- children: [
55
- /* @__PURE__ */ jsx("strong", {
56
- children: "Trust level:"
57
- }),
58
- " Highest - Authoritative ground truth"
59
- ]
60
- }),
61
- /* @__PURE__ */ jsxs("div", {
62
- className: "space-y-3",
63
- children: [
64
- /* @__PURE__ */ jsxs("div", {
65
- children: [
66
- /* @__PURE__ */ jsx("h4", {
67
- className: "mb-2 font-semibold text-sm",
68
- children: "What it contains:"
69
- }),
70
- /* @__PURE__ */ jsxs("ul", {
71
- className: "ml-4 list-inside list-disc space-y-1 text-muted-foreground text-sm",
72
- children: [
73
- /* @__PURE__ */ jsx("li", {
74
- children: "Official product specifications and schemas"
75
- }),
76
- /* @__PURE__ */ jsx("li", {
77
- children: "Company policies and procedures"
78
- }),
79
- /* @__PURE__ */ jsx("li", {
80
- children: "Legal terms and compliance requirements"
81
- }),
82
- /* @__PURE__ */ jsx("li", {
83
- children: "Pricing rules and business logic"
84
- }),
85
- /* @__PURE__ */ jsx("li", {
86
- children: "Data classification and security policies"
87
- })
88
- ]
89
- })
90
- ]
91
- }),
92
- /* @__PURE__ */ jsxs("div", {
93
- children: [
94
- /* @__PURE__ */ jsx("h4", {
95
- className: "mb-2 font-semibold text-sm",
96
- children: "How it's used:"
97
- }),
98
- /* @__PURE__ */ jsxs("ul", {
99
- className: "ml-4 list-inside list-disc space-y-1 text-muted-foreground text-sm",
100
- children: [
101
- /* @__PURE__ */ jsxs("li", {
102
- children: [
103
- /* @__PURE__ */ jsx("strong", {
104
- children: "Policy decisions"
105
- }),
106
- " - Can drive PDP decisions"
107
- ]
108
- }),
109
- /* @__PURE__ */ jsxs("li", {
110
- children: [
111
- /* @__PURE__ */ jsx("strong", {
112
- children: "Validation"
113
- }),
114
- " - Used to validate user inputs and operations"
115
- ]
116
- }),
117
- /* @__PURE__ */ jsxs("li", {
118
- children: [
119
- /* @__PURE__ */ jsx("strong", {
120
- children: "Code generation"
121
- }),
122
- " - Source of truth for generated code"
123
- ]
124
- }),
125
- /* @__PURE__ */ jsxs("li", {
126
- children: [
127
- /* @__PURE__ */ jsx("strong", {
128
- children: "Compliance"
129
- }),
130
- " - Reference for audit and regulatory checks"
131
- ]
132
- })
133
- ]
134
- })
135
- ]
136
- }),
137
- /* @__PURE__ */ jsxs("div", {
138
- children: [
139
- /* @__PURE__ */ jsx("h4", {
140
- className: "mb-2 font-semibold text-sm",
141
- children: "Examples:"
142
- }),
143
- /* @__PURE__ */ jsx("div", {
144
- className: "overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",
145
- children: /* @__PURE__ */ jsx("pre", {
146
- children: `// Product Canon space
6
+ | "ephemeral"; // Temporary context`})})]}),a("div",{className:"space-y-6",children:[a("div",{className:"space-y-4",children:[e("h3",{className:"font-semibold text-xl",children:"1. Canonical"}),a("p",{className:"text-muted-foreground",children:[e("strong",{children:"Trust level:"})," Highest - Authoritative ground truth"]}),a("div",{className:"space-y-3",children:[a("div",{children:[e("h4",{className:"mb-2 font-semibold text-sm",children:"What it contains:"}),a("ul",{className:"ml-4 list-inside list-disc space-y-1 text-muted-foreground text-sm",children:[e("li",{children:"Official product specifications and schemas"}),e("li",{children:"Company policies and procedures"}),e("li",{children:"Legal terms and compliance requirements"}),e("li",{children:"Pricing rules and business logic"}),e("li",{children:"Data classification and security policies"})]})]}),a("div",{children:[e("h4",{className:"mb-2 font-semibold text-sm",children:"How it's used:"}),a("ul",{className:"ml-4 list-inside list-disc space-y-1 text-muted-foreground text-sm",children:[a("li",{children:[e("strong",{children:"Policy decisions"})," - Can drive PDP decisions"]}),a("li",{children:[e("strong",{children:"Validation"})," - Used to validate user inputs and operations"]}),a("li",{children:[e("strong",{children:"Code generation"})," - Source of truth for generated code"]}),a("li",{children:[e("strong",{children:"Compliance"})," - Reference for audit and regulatory checks"]})]})]}),a("div",{children:[e("h4",{className:"mb-2 font-semibold text-sm",children:"Examples:"}),e("div",{className:"overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",children:e("pre",{children:`// Product Canon space
147
7
  {
148
8
  id: "product-canon",
149
9
  category: "canonical",
@@ -163,129 +23,7 @@ function KnowledgeCategoriesPage() {
163
23
  "access-policies.rego",
164
24
  "compliance-requirements.md"
165
25
  ]
166
- }`
167
- })
168
- })
169
- ]
170
- }),
171
- /* @__PURE__ */ jsx("div", {
172
- className: "card-subtle border-violet-500/30 bg-violet-500/10 p-3",
173
- children: /* @__PURE__ */ jsxs("p", {
174
- className: "text-sm text-violet-300",
175
- children: [
176
- /* @__PURE__ */ jsx("strong", {
177
- children: "\u26A0\uFE0F Important:"
178
- }),
179
- " Canonical knowledge is immutable once indexed. Changes require re-sync and versioning."
180
- ]
181
- })
182
- })
183
- ]
184
- })
185
- ]
186
- }),
187
- /* @__PURE__ */ jsxs("div", {
188
- className: "space-y-4",
189
- children: [
190
- /* @__PURE__ */ jsx("h3", {
191
- className: "font-semibold text-xl",
192
- children: "2. Operational"
193
- }),
194
- /* @__PURE__ */ jsxs("p", {
195
- className: "text-muted-foreground",
196
- children: [
197
- /* @__PURE__ */ jsx("strong", {
198
- children: "Trust level:"
199
- }),
200
- " High - Internal but not authoritative"
201
- ]
202
- }),
203
- /* @__PURE__ */ jsxs("div", {
204
- className: "space-y-3",
205
- children: [
206
- /* @__PURE__ */ jsxs("div", {
207
- children: [
208
- /* @__PURE__ */ jsx("h4", {
209
- className: "mb-2 font-semibold text-sm",
210
- children: "What it contains:"
211
- }),
212
- /* @__PURE__ */ jsxs("ul", {
213
- className: "ml-4 list-inside list-disc space-y-1 text-muted-foreground text-sm",
214
- children: [
215
- /* @__PURE__ */ jsx("li", {
216
- children: "Support ticket history and resolutions"
217
- }),
218
- /* @__PURE__ */ jsx("li", {
219
- children: "Internal runbooks and playbooks"
220
- }),
221
- /* @__PURE__ */ jsx("li", {
222
- children: "Sales materials and customer communications"
223
- }),
224
- /* @__PURE__ */ jsx("li", {
225
- children: "Product management docs and roadmaps"
226
- }),
227
- /* @__PURE__ */ jsx("li", {
228
- children: "Team wikis and knowledge bases"
229
- })
230
- ]
231
- })
232
- ]
233
- }),
234
- /* @__PURE__ */ jsxs("div", {
235
- children: [
236
- /* @__PURE__ */ jsx("h4", {
237
- className: "mb-2 font-semibold text-sm",
238
- children: "How it's used:"
239
- }),
240
- /* @__PURE__ */ jsxs("ul", {
241
- className: "ml-4 list-inside list-disc space-y-1 text-muted-foreground text-sm",
242
- children: [
243
- /* @__PURE__ */ jsxs("li", {
244
- children: [
245
- /* @__PURE__ */ jsx("strong", {
246
- children: "Context"
247
- }),
248
- " - Provides helpful context for decisions"
249
- ]
250
- }),
251
- /* @__PURE__ */ jsxs("li", {
252
- children: [
253
- /* @__PURE__ */ jsx("strong", {
254
- children: "Suggestions"
255
- }),
256
- " - Informs recommendations, not requirements"
257
- ]
258
- }),
259
- /* @__PURE__ */ jsxs("li", {
260
- children: [
261
- /* @__PURE__ */ jsx("strong", {
262
- children: "Learning"
263
- }),
264
- " - Helps agents learn from past interactions"
265
- ]
266
- }),
267
- /* @__PURE__ */ jsxs("li", {
268
- children: [
269
- /* @__PURE__ */ jsx("strong", {
270
- children: "Troubleshooting"
271
- }),
272
- " - Guides problem-solving workflows"
273
- ]
274
- })
275
- ]
276
- })
277
- ]
278
- }),
279
- /* @__PURE__ */ jsxs("div", {
280
- children: [
281
- /* @__PURE__ */ jsx("h4", {
282
- className: "mb-2 font-semibold text-sm",
283
- children: "Examples:"
284
- }),
285
- /* @__PURE__ */ jsx("div", {
286
- className: "overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",
287
- children: /* @__PURE__ */ jsx("pre", {
288
- children: `// Support History space
26
+ }`})})]}),e("div",{className:"card-subtle border-violet-500/30 bg-violet-500/10 p-3",children:a("p",{className:"text-sm text-violet-300",children:[e("strong",{children:"\u26A0\uFE0F Important:"})," Canonical knowledge is immutable once indexed. Changes require re-sync and versioning."]})})]})]}),a("div",{className:"space-y-4",children:[e("h3",{className:"font-semibold text-xl",children:"2. Operational"}),a("p",{className:"text-muted-foreground",children:[e("strong",{children:"Trust level:"})," High - Internal but not authoritative"]}),a("div",{className:"space-y-3",children:[a("div",{children:[e("h4",{className:"mb-2 font-semibold text-sm",children:"What it contains:"}),a("ul",{className:"ml-4 list-inside list-disc space-y-1 text-muted-foreground text-sm",children:[e("li",{children:"Support ticket history and resolutions"}),e("li",{children:"Internal runbooks and playbooks"}),e("li",{children:"Sales materials and customer communications"}),e("li",{children:"Product management docs and roadmaps"}),e("li",{children:"Team wikis and knowledge bases"})]})]}),a("div",{children:[e("h4",{className:"mb-2 font-semibold text-sm",children:"How it's used:"}),a("ul",{className:"ml-4 list-inside list-disc space-y-1 text-muted-foreground text-sm",children:[a("li",{children:[e("strong",{children:"Context"})," - Provides helpful context for decisions"]}),a("li",{children:[e("strong",{children:"Suggestions"})," - Informs recommendations, not requirements"]}),a("li",{children:[e("strong",{children:"Learning"})," - Helps agents learn from past interactions"]}),a("li",{children:[e("strong",{children:"Troubleshooting"})," - Guides problem-solving workflows"]})]})]}),a("div",{children:[e("h4",{className:"mb-2 font-semibold text-sm",children:"Examples:"}),e("div",{className:"overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",children:e("pre",{children:`// Support History space
289
27
  {
290
28
  id: "support-history",
291
29
  category: "operational",
@@ -305,117 +43,7 @@ function KnowledgeCategoriesPage() {
305
43
  "confluence:product-docs",
306
44
  "google-drive:runbooks"
307
45
  ]
308
- }`
309
- })
310
- })
311
- ]
312
- })
313
- ]
314
- })
315
- ]
316
- }),
317
- /* @__PURE__ */ jsxs("div", {
318
- className: "space-y-4",
319
- children: [
320
- /* @__PURE__ */ jsx("h3", {
321
- className: "font-semibold text-xl",
322
- children: "3. External"
323
- }),
324
- /* @__PURE__ */ jsxs("p", {
325
- className: "text-muted-foreground",
326
- children: [
327
- /* @__PURE__ */ jsx("strong", {
328
- children: "Trust level:"
329
- }),
330
- " Medium - Reference only"
331
- ]
332
- }),
333
- /* @__PURE__ */ jsxs("div", {
334
- className: "space-y-3",
335
- children: [
336
- /* @__PURE__ */ jsxs("div", {
337
- children: [
338
- /* @__PURE__ */ jsx("h4", {
339
- className: "mb-2 font-semibold text-sm",
340
- children: "What it contains:"
341
- }),
342
- /* @__PURE__ */ jsxs("ul", {
343
- className: "ml-4 list-inside list-disc space-y-1 text-muted-foreground text-sm",
344
- children: [
345
- /* @__PURE__ */ jsx("li", {
346
- children: "Third-party integration documentation (Stripe, Twilio)"
347
- }),
348
- /* @__PURE__ */ jsx("li", {
349
- children: "Regulatory and compliance documents"
350
- }),
351
- /* @__PURE__ */ jsx("li", {
352
- children: "Industry standards and best practices"
353
- }),
354
- /* @__PURE__ */ jsx("li", {
355
- children: "Public API documentation"
356
- }),
357
- /* @__PURE__ */ jsx("li", {
358
- children: "External knowledge bases"
359
- })
360
- ]
361
- })
362
- ]
363
- }),
364
- /* @__PURE__ */ jsxs("div", {
365
- children: [
366
- /* @__PURE__ */ jsx("h4", {
367
- className: "mb-2 font-semibold text-sm",
368
- children: "How it's used:"
369
- }),
370
- /* @__PURE__ */ jsxs("ul", {
371
- className: "ml-4 list-inside list-disc space-y-1 text-muted-foreground text-sm",
372
- children: [
373
- /* @__PURE__ */ jsxs("li", {
374
- children: [
375
- /* @__PURE__ */ jsx("strong", {
376
- children: "Reference"
377
- }),
378
- " - Consulted but not authoritative"
379
- ]
380
- }),
381
- /* @__PURE__ */ jsxs("li", {
382
- children: [
383
- /* @__PURE__ */ jsx("strong", {
384
- children: "Integration help"
385
- }),
386
- " - Guides external API usage"
387
- ]
388
- }),
389
- /* @__PURE__ */ jsxs("li", {
390
- children: [
391
- /* @__PURE__ */ jsx("strong", {
392
- children: "Compliance context"
393
- }),
394
- " - Provides regulatory background"
395
- ]
396
- }),
397
- /* @__PURE__ */ jsxs("li", {
398
- children: [
399
- /* @__PURE__ */ jsx("strong", {
400
- children: "Never for policy"
401
- }),
402
- " - Cannot drive policy decisions"
403
- ]
404
- })
405
- ]
406
- })
407
- ]
408
- }),
409
- /* @__PURE__ */ jsxs("div", {
410
- children: [
411
- /* @__PURE__ */ jsx("h4", {
412
- className: "mb-2 font-semibold text-sm",
413
- children: "Examples:"
414
- }),
415
- /* @__PURE__ */ jsx("div", {
416
- className: "overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",
417
- children: /* @__PURE__ */ jsx("pre", {
418
- children: `// External Provider Docs space
46
+ }`})})]})]})]}),a("div",{className:"space-y-4",children:[e("h3",{className:"font-semibold text-xl",children:"3. External"}),a("p",{className:"text-muted-foreground",children:[e("strong",{children:"Trust level:"})," Medium - Reference only"]}),a("div",{className:"space-y-3",children:[a("div",{children:[e("h4",{className:"mb-2 font-semibold text-sm",children:"What it contains:"}),a("ul",{className:"ml-4 list-inside list-disc space-y-1 text-muted-foreground text-sm",children:[e("li",{children:"Third-party integration documentation (Stripe, Twilio)"}),e("li",{children:"Regulatory and compliance documents"}),e("li",{children:"Industry standards and best practices"}),e("li",{children:"Public API documentation"}),e("li",{children:"External knowledge bases"})]})]}),a("div",{children:[e("h4",{className:"mb-2 font-semibold text-sm",children:"How it's used:"}),a("ul",{className:"ml-4 list-inside list-disc space-y-1 text-muted-foreground text-sm",children:[a("li",{children:[e("strong",{children:"Reference"})," - Consulted but not authoritative"]}),a("li",{children:[e("strong",{children:"Integration help"})," - Guides external API usage"]}),a("li",{children:[e("strong",{children:"Compliance context"})," - Provides regulatory background"]}),a("li",{children:[e("strong",{children:"Never for policy"})," - Cannot drive policy decisions"]})]})]}),a("div",{children:[e("h4",{className:"mb-2 font-semibold text-sm",children:"Examples:"}),e("div",{className:"overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",children:e("pre",{children:`// External Provider Docs space
419
47
  {
420
48
  id: "provider-docs",
421
49
  category: "external",
@@ -435,129 +63,7 @@ function KnowledgeCategoriesPage() {
435
63
  "url:https://www.hhs.gov/hipaa",
436
64
  "pdf:SOC2-requirements.pdf"
437
65
  ]
438
- }`
439
- })
440
- })
441
- ]
442
- }),
443
- /* @__PURE__ */ jsx("div", {
444
- className: "card-subtle border-amber-500/30 bg-amber-500/10 p-3",
445
- children: /* @__PURE__ */ jsxs("p", {
446
- className: "text-amber-300 text-sm",
447
- children: [
448
- /* @__PURE__ */ jsx("strong", {
449
- children: "\u26A0\uFE0F Note:"
450
- }),
451
- ` External knowledge should be clearly marked in agent responses as "according to [source]" to indicate it's not internal authority.`
452
- ]
453
- })
454
- })
455
- ]
456
- })
457
- ]
458
- }),
459
- /* @__PURE__ */ jsxs("div", {
460
- className: "space-y-4",
461
- children: [
462
- /* @__PURE__ */ jsx("h3", {
463
- className: "font-semibold text-xl",
464
- children: "4. Ephemeral"
465
- }),
466
- /* @__PURE__ */ jsxs("p", {
467
- className: "text-muted-foreground",
468
- children: [
469
- /* @__PURE__ */ jsx("strong", {
470
- children: "Trust level:"
471
- }),
472
- " Low - Temporary context only"
473
- ]
474
- }),
475
- /* @__PURE__ */ jsxs("div", {
476
- className: "space-y-3",
477
- children: [
478
- /* @__PURE__ */ jsxs("div", {
479
- children: [
480
- /* @__PURE__ */ jsx("h4", {
481
- className: "mb-2 font-semibold text-sm",
482
- children: "What it contains:"
483
- }),
484
- /* @__PURE__ */ jsxs("ul", {
485
- className: "ml-4 list-inside list-disc space-y-1 text-muted-foreground text-sm",
486
- children: [
487
- /* @__PURE__ */ jsx("li", {
488
- children: "Agent conversation history and scratchpads"
489
- }),
490
- /* @__PURE__ */ jsx("li", {
491
- children: "Session-specific context and state"
492
- }),
493
- /* @__PURE__ */ jsx("li", {
494
- children: "Draft documents and work-in-progress"
495
- }),
496
- /* @__PURE__ */ jsx("li", {
497
- children: "Temporary calculations and intermediate results"
498
- }),
499
- /* @__PURE__ */ jsx("li", {
500
- children: "User-provided context for current task"
501
- })
502
- ]
503
- })
504
- ]
505
- }),
506
- /* @__PURE__ */ jsxs("div", {
507
- children: [
508
- /* @__PURE__ */ jsx("h4", {
509
- className: "mb-2 font-semibold text-sm",
510
- children: "How it's used:"
511
- }),
512
- /* @__PURE__ */ jsxs("ul", {
513
- className: "ml-4 list-inside list-disc space-y-1 text-muted-foreground text-sm",
514
- children: [
515
- /* @__PURE__ */ jsxs("li", {
516
- children: [
517
- /* @__PURE__ */ jsx("strong", {
518
- children: "Session continuity"
519
- }),
520
- " - Maintains conversation context"
521
- ]
522
- }),
523
- /* @__PURE__ */ jsxs("li", {
524
- children: [
525
- /* @__PURE__ */ jsx("strong", {
526
- children: "Working memory"
527
- }),
528
- " - Stores intermediate results"
529
- ]
530
- }),
531
- /* @__PURE__ */ jsxs("li", {
532
- children: [
533
- /* @__PURE__ */ jsx("strong", {
534
- children: "Never persisted long-term"
535
- }),
536
- " - Auto-purged after session"
537
- ]
538
- }),
539
- /* @__PURE__ */ jsxs("li", {
540
- children: [
541
- /* @__PURE__ */ jsx("strong", {
542
- children: "Never for decisions"
543
- }),
544
- " - Cannot influence policy or validation"
545
- ]
546
- })
547
- ]
548
- })
549
- ]
550
- }),
551
- /* @__PURE__ */ jsxs("div", {
552
- children: [
553
- /* @__PURE__ */ jsx("h4", {
554
- className: "mb-2 font-semibold text-sm",
555
- children: "Examples:"
556
- }),
557
- /* @__PURE__ */ jsx("div", {
558
- className: "overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",
559
- children: /* @__PURE__ */ jsx("pre", {
560
- children: `// Agent Scratchpad space
66
+ }`})})]}),e("div",{className:"card-subtle border-amber-500/30 bg-amber-500/10 p-3",children:a("p",{className:"text-amber-300 text-sm",children:[e("strong",{children:"\u26A0\uFE0F Note:"}),` External knowledge should be clearly marked in agent responses as "according to [source]" to indicate it's not internal authority.`]})})]})]}),a("div",{className:"space-y-4",children:[e("h3",{className:"font-semibold text-xl",children:"4. Ephemeral"}),a("p",{className:"text-muted-foreground",children:[e("strong",{children:"Trust level:"})," Low - Temporary context only"]}),a("div",{className:"space-y-3",children:[a("div",{children:[e("h4",{className:"mb-2 font-semibold text-sm",children:"What it contains:"}),a("ul",{className:"ml-4 list-inside list-disc space-y-1 text-muted-foreground text-sm",children:[e("li",{children:"Agent conversation history and scratchpads"}),e("li",{children:"Session-specific context and state"}),e("li",{children:"Draft documents and work-in-progress"}),e("li",{children:"Temporary calculations and intermediate results"}),e("li",{children:"User-provided context for current task"})]})]}),a("div",{children:[e("h4",{className:"mb-2 font-semibold text-sm",children:"How it's used:"}),a("ul",{className:"ml-4 list-inside list-disc space-y-1 text-muted-foreground text-sm",children:[a("li",{children:[e("strong",{children:"Session continuity"})," - Maintains conversation context"]}),a("li",{children:[e("strong",{children:"Working memory"})," - Stores intermediate results"]}),a("li",{children:[e("strong",{children:"Never persisted long-term"})," - Auto-purged after session"]}),a("li",{children:[e("strong",{children:"Never for decisions"})," - Cannot influence policy or validation"]})]})]}),a("div",{children:[e("h4",{className:"mb-2 font-semibold text-sm",children:"Examples:"}),e("div",{className:"overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",children:e("pre",{children:`// Agent Scratchpad space
561
67
  {
562
68
  id: "agent-scratchpad",
563
69
  category: "ephemeral",
@@ -577,298 +83,7 @@ function KnowledgeCategoriesPage() {
577
83
  "session:user-uploads",
578
84
  "session:form-drafts"
579
85
  ]
580
- }`
581
- })
582
- })
583
- ]
584
- }),
585
- /* @__PURE__ */ jsx("div", {
586
- className: "card-subtle border-red-500/30 bg-red-500/10 p-3",
587
- children: /* @__PURE__ */ jsxs("p", {
588
- className: "text-red-300 text-sm",
589
- children: [
590
- /* @__PURE__ */ jsx("strong", {
591
- children: "\u26A0\uFE0F Critical:"
592
- }),
593
- " Ephemeral knowledge is never used for policy decisions, compliance checks, or any authoritative purpose."
594
- ]
595
- })
596
- })
597
- ]
598
- })
599
- ]
600
- })
601
- ]
602
- }),
603
- /* @__PURE__ */ jsxs("div", {
604
- className: "space-y-4",
605
- children: [
606
- /* @__PURE__ */ jsx("h2", {
607
- className: "font-bold text-2xl",
608
- children: "Category comparison"
609
- }),
610
- /* @__PURE__ */ jsx("div", {
611
- className: "overflow-x-auto rounded-lg border border-border/50",
612
- children: /* @__PURE__ */ jsxs("table", {
613
- className: "w-full text-left text-sm",
614
- children: [
615
- /* @__PURE__ */ jsx("thead", {
616
- className: "bg-card/50",
617
- children: /* @__PURE__ */ jsxs("tr", {
618
- className: "border-border/50 border-b",
619
- children: [
620
- /* @__PURE__ */ jsx("th", {
621
- className: "px-4 py-3 font-semibold",
622
- children: "Feature"
623
- }),
624
- /* @__PURE__ */ jsx("th", {
625
- className: "px-4 py-3 font-semibold",
626
- children: "Canonical"
627
- }),
628
- /* @__PURE__ */ jsx("th", {
629
- className: "px-4 py-3 font-semibold",
630
- children: "Operational"
631
- }),
632
- /* @__PURE__ */ jsx("th", {
633
- className: "px-4 py-3 font-semibold",
634
- children: "External"
635
- }),
636
- /* @__PURE__ */ jsx("th", {
637
- className: "px-4 py-3 font-semibold",
638
- children: "Ephemeral"
639
- })
640
- ]
641
- })
642
- }),
643
- /* @__PURE__ */ jsxs("tbody", {
644
- className: "divide-y divide-border/50",
645
- children: [
646
- /* @__PURE__ */ jsxs("tr", {
647
- children: [
648
- /* @__PURE__ */ jsx("td", {
649
- className: "px-4 py-3 font-semibold",
650
- children: "Trust Level"
651
- }),
652
- /* @__PURE__ */ jsx("td", {
653
- className: "px-4 py-3",
654
- children: "Highest"
655
- }),
656
- /* @__PURE__ */ jsx("td", {
657
- className: "px-4 py-3",
658
- children: "High"
659
- }),
660
- /* @__PURE__ */ jsx("td", {
661
- className: "px-4 py-3",
662
- children: "Medium"
663
- }),
664
- /* @__PURE__ */ jsx("td", {
665
- className: "px-4 py-3",
666
- children: "Low"
667
- })
668
- ]
669
- }),
670
- /* @__PURE__ */ jsxs("tr", {
671
- children: [
672
- /* @__PURE__ */ jsx("td", {
673
- className: "px-4 py-3 font-semibold",
674
- children: "Policy Impact"
675
- }),
676
- /* @__PURE__ */ jsx("td", {
677
- className: "px-4 py-3",
678
- children: "\u2705 Can drive decisions"
679
- }),
680
- /* @__PURE__ */ jsx("td", {
681
- className: "px-4 py-3",
682
- children: "\u26A0\uFE0F Can inform"
683
- }),
684
- /* @__PURE__ */ jsx("td", {
685
- className: "px-4 py-3",
686
- children: "\u274C Reference only"
687
- }),
688
- /* @__PURE__ */ jsx("td", {
689
- className: "px-4 py-3",
690
- children: "\u274C Never used"
691
- })
692
- ]
693
- }),
694
- /* @__PURE__ */ jsxs("tr", {
695
- children: [
696
- /* @__PURE__ */ jsx("td", {
697
- className: "px-4 py-3 font-semibold",
698
- children: "Mutability"
699
- }),
700
- /* @__PURE__ */ jsx("td", {
701
- className: "px-4 py-3",
702
- children: "Immutable"
703
- }),
704
- /* @__PURE__ */ jsx("td", {
705
- className: "px-4 py-3",
706
- children: "Mutable"
707
- }),
708
- /* @__PURE__ */ jsx("td", {
709
- className: "px-4 py-3",
710
- children: "Mutable"
711
- }),
712
- /* @__PURE__ */ jsx("td", {
713
- className: "px-4 py-3",
714
- children: "Temporary"
715
- })
716
- ]
717
- }),
718
- /* @__PURE__ */ jsxs("tr", {
719
- children: [
720
- /* @__PURE__ */ jsx("td", {
721
- className: "px-4 py-3 font-semibold",
722
- children: "Retention"
723
- }),
724
- /* @__PURE__ */ jsx("td", {
725
- className: "px-4 py-3",
726
- children: "Permanent"
727
- }),
728
- /* @__PURE__ */ jsx("td", {
729
- className: "px-4 py-3",
730
- children: "Long-term"
731
- }),
732
- /* @__PURE__ */ jsx("td", {
733
- className: "px-4 py-3",
734
- children: "Long-term"
735
- }),
736
- /* @__PURE__ */ jsx("td", {
737
- className: "px-4 py-3",
738
- children: "Short-term"
739
- })
740
- ]
741
- }),
742
- /* @__PURE__ */ jsxs("tr", {
743
- children: [
744
- /* @__PURE__ */ jsx("td", {
745
- className: "px-4 py-3 font-semibold",
746
- children: "Audit Level"
747
- }),
748
- /* @__PURE__ */ jsx("td", {
749
- className: "px-4 py-3",
750
- children: "Full audit"
751
- }),
752
- /* @__PURE__ */ jsx("td", {
753
- className: "px-4 py-3",
754
- children: "Full audit"
755
- }),
756
- /* @__PURE__ */ jsx("td", {
757
- className: "px-4 py-3",
758
- children: "Basic audit"
759
- }),
760
- /* @__PURE__ */ jsx("td", {
761
- className: "px-4 py-3",
762
- children: "Minimal audit"
763
- })
764
- ]
765
- })
766
- ]
767
- })
768
- ]
769
- })
770
- })
771
- ]
772
- }),
773
- /* @__PURE__ */ jsxs("div", {
774
- className: "space-y-4",
775
- children: [
776
- /* @__PURE__ */ jsx("h2", {
777
- className: "font-bold text-2xl",
778
- children: "Best practices"
779
- }),
780
- /* @__PURE__ */ jsxs("ul", {
781
- className: "list-inside list-disc space-y-2 text-muted-foreground",
782
- children: [
783
- /* @__PURE__ */ jsx("li", {
784
- children: "Use canonical for anything that affects policy, pricing, or compliance"
785
- }),
786
- /* @__PURE__ */ jsx("li", {
787
- children: "Use operational for context that helps but doesn't dictate decisions"
788
- }),
789
- /* @__PURE__ */ jsx("li", {
790
- children: "Use external for reference material that's helpful but not authoritative"
791
- }),
792
- /* @__PURE__ */ jsx("li", {
793
- children: "Use ephemeral for temporary working memory that shouldn't persist"
794
- }),
795
- /* @__PURE__ */ jsx("li", {
796
- children: "Never mix categories in a single knowledge space - keep them separate"
797
- }),
798
- /* @__PURE__ */ jsx("li", {
799
- children: "Document the category and purpose of each knowledge space clearly"
800
- })
801
- ]
802
- })
803
- ]
804
- }),
805
- /* @__PURE__ */ jsxs("div", {
806
- className: "flex items-center gap-4 pt-4",
807
- children: [
808
- /* @__PURE__ */ jsx(Link, {
809
- href: "/docs/knowledge",
810
- className: "btn-ghost",
811
- children: "Back to Knowledge"
812
- }),
813
- /* @__PURE__ */ jsxs(Link, {
814
- href: "/docs/knowledge/spaces",
815
- className: "btn-primary",
816
- children: [
817
- "Knowledge Spaces ",
818
- /* @__PURE__ */ jsx(ChevronRight, {
819
- size: 16
820
- })
821
- ]
822
- })
823
- ]
824
- })
825
- ]
826
- });
827
- }
828
-
829
- // src/components/docs/knowledge/KnowledgeExamplesPage.tsx
830
- import Link2 from "@contractspec/lib.ui-link";
831
- import { jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
832
- function KnowledgeExamplesPage() {
833
- return /* @__PURE__ */ jsxs2("div", {
834
- className: "space-y-8",
835
- children: [
836
- /* @__PURE__ */ jsxs2("div", {
837
- className: "space-y-4",
838
- children: [
839
- /* @__PURE__ */ jsx2("h1", {
840
- className: "font-bold text-4xl",
841
- children: "Knowledge Examples"
842
- }),
843
- /* @__PURE__ */ jsx2("p", {
844
- className: "text-muted-foreground",
845
- children: "Real-world examples of how different applications use knowledge spaces to power intelligent workflows and agents."
846
- })
847
- ]
848
- }),
849
- /* @__PURE__ */ jsxs2("div", {
850
- className: "space-y-6",
851
- children: [
852
- /* @__PURE__ */ jsxs2("div", {
853
- className: "space-y-4",
854
- children: [
855
- /* @__PURE__ */ jsx2("h2", {
856
- className: "font-bold text-2xl",
857
- children: "Example 1: ArtisanOS Support Agent"
858
- }),
859
- /* @__PURE__ */ jsxs2("p", {
860
- className: "text-muted-foreground",
861
- children: [
862
- /* @__PURE__ */ jsx2("strong", {
863
- children: "Context:"
864
- }),
865
- " ArtisanOS needs a support agent that can answer product questions using official documentation and learn from past support tickets."
866
- ]
867
- }),
868
- /* @__PURE__ */ jsx2("div", {
869
- className: "overflow-x-auto rounded-lg border border-border bg-background/50 p-4 font-mono text-muted-foreground text-sm",
870
- children: /* @__PURE__ */ jsx2("pre", {
871
- children: `// Knowledge spaces
86
+ }`})})]}),e("div",{className:"card-subtle border-red-500/30 bg-red-500/10 p-3",children:a("p",{className:"text-red-300 text-sm",children:[e("strong",{children:"\u26A0\uFE0F Critical:"})," Ephemeral knowledge is never used for policy decisions, compliance checks, or any authoritative purpose."]})})]})]})]}),a("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"Category comparison"}),e("div",{className:"overflow-x-auto rounded-lg border border-border/50",children:a("table",{className:"w-full text-left text-sm",children:[e("thead",{className:"bg-card/50",children:a("tr",{className:"border-border/50 border-b",children:[e("th",{className:"px-4 py-3 font-semibold",children:"Feature"}),e("th",{className:"px-4 py-3 font-semibold",children:"Canonical"}),e("th",{className:"px-4 py-3 font-semibold",children:"Operational"}),e("th",{className:"px-4 py-3 font-semibold",children:"External"}),e("th",{className:"px-4 py-3 font-semibold",children:"Ephemeral"})]})}),a("tbody",{className:"divide-y divide-border/50",children:[a("tr",{children:[e("td",{className:"px-4 py-3 font-semibold",children:"Trust Level"}),e("td",{className:"px-4 py-3",children:"Highest"}),e("td",{className:"px-4 py-3",children:"High"}),e("td",{className:"px-4 py-3",children:"Medium"}),e("td",{className:"px-4 py-3",children:"Low"})]}),a("tr",{children:[e("td",{className:"px-4 py-3 font-semibold",children:"Policy Impact"}),e("td",{className:"px-4 py-3",children:"\u2705 Can drive decisions"}),e("td",{className:"px-4 py-3",children:"\u26A0\uFE0F Can inform"}),e("td",{className:"px-4 py-3",children:"\u274C Reference only"}),e("td",{className:"px-4 py-3",children:"\u274C Never used"})]}),a("tr",{children:[e("td",{className:"px-4 py-3 font-semibold",children:"Mutability"}),e("td",{className:"px-4 py-3",children:"Immutable"}),e("td",{className:"px-4 py-3",children:"Mutable"}),e("td",{className:"px-4 py-3",children:"Mutable"}),e("td",{className:"px-4 py-3",children:"Temporary"})]}),a("tr",{children:[e("td",{className:"px-4 py-3 font-semibold",children:"Retention"}),e("td",{className:"px-4 py-3",children:"Permanent"}),e("td",{className:"px-4 py-3",children:"Long-term"}),e("td",{className:"px-4 py-3",children:"Long-term"}),e("td",{className:"px-4 py-3",children:"Short-term"})]}),a("tr",{children:[e("td",{className:"px-4 py-3 font-semibold",children:"Audit Level"}),e("td",{className:"px-4 py-3",children:"Full audit"}),e("td",{className:"px-4 py-3",children:"Full audit"}),e("td",{className:"px-4 py-3",children:"Basic audit"}),e("td",{className:"px-4 py-3",children:"Minimal audit"})]})]})]})})]}),a("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"Best practices"}),a("ul",{className:"list-inside list-disc space-y-2 text-muted-foreground",children:[e("li",{children:"Use canonical for anything that affects policy, pricing, or compliance"}),e("li",{children:"Use operational for context that helps but doesn't dictate decisions"}),e("li",{children:"Use external for reference material that's helpful but not authoritative"}),e("li",{children:"Use ephemeral for temporary working memory that shouldn't persist"}),e("li",{children:"Never mix categories in a single knowledge space - keep them separate"}),e("li",{children:"Document the category and purpose of each knowledge space clearly"})]})]}),a("div",{className:"flex items-center gap-4 pt-4",children:[e(g,{href:"/docs/knowledge",className:"btn-ghost",children:"Back to Knowledge"}),a(g,{href:"/docs/knowledge/spaces",className:"btn-primary",children:["Knowledge Spaces ",e(w,{size:16})]})]})]})}import c from"@contractspec/lib.ui-link";import{jsx as d,jsxs as i}from"react/jsx-runtime";function v(){return i("div",{className:"space-y-8",children:[i("div",{className:"space-y-4",children:[d("h1",{className:"font-bold text-4xl",children:"Knowledge Examples"}),d("p",{className:"text-muted-foreground",children:"Real-world examples of how different applications use knowledge spaces to power intelligent workflows and agents."})]}),i("div",{className:"space-y-6",children:[i("div",{className:"space-y-4",children:[d("h2",{className:"font-bold text-2xl",children:"Example 1: ArtisanOS Support Agent"}),i("p",{className:"text-muted-foreground",children:[d("strong",{children:"Context:"})," ArtisanOS needs a support agent that can answer product questions using official documentation and learn from past support tickets."]}),d("div",{className:"overflow-x-auto rounded-lg border border-border bg-background/50 p-4 font-mono text-muted-foreground text-sm",children:d("pre",{children:`// Knowledge spaces
872
87
  knowledgeSpaces: [
873
88
  {
874
89
  id: "product-canon",
@@ -922,31 +137,7 @@ steps:
922
137
  content: |
923
138
  Question: \${input.question}
924
139
  Docs: \${steps.search-canon.output.results}
925
- History: \${steps.search-history.output.results}`
926
- })
927
- })
928
- ]
929
- }),
930
- /* @__PURE__ */ jsxs2("div", {
931
- className: "space-y-4",
932
- children: [
933
- /* @__PURE__ */ jsx2("h2", {
934
- className: "font-bold text-2xl",
935
- children: "Example 2: HCircle Invoice Generation"
936
- }),
937
- /* @__PURE__ */ jsxs2("p", {
938
- className: "text-muted-foreground",
939
- children: [
940
- /* @__PURE__ */ jsx2("strong", {
941
- children: "Context:"
942
- }),
943
- " HCircle needs to generate invoices using house playbook rules and resident service history."
944
- ]
945
- }),
946
- /* @__PURE__ */ jsx2("div", {
947
- className: "overflow-x-auto rounded-lg border border-border bg-background/50 p-4 font-mono text-muted-foreground text-sm",
948
- children: /* @__PURE__ */ jsx2("pre", {
949
- children: `// Knowledge spaces
140
+ History: \${steps.search-history.output.results}`})})]}),i("div",{className:"space-y-4",children:[d("h2",{className:"font-bold text-2xl",children:"Example 2: HCircle Invoice Generation"}),i("p",{className:"text-muted-foreground",children:[d("strong",{children:"Context:"})," HCircle needs to generate invoices using house playbook rules and resident service history."]}),d("div",{className:"overflow-x-auto rounded-lg border border-border bg-background/50 p-4 font-mono text-muted-foreground text-sm",children:d("pre",{children:`// Knowledge spaces
950
141
  knowledgeSpaces: [
951
142
  {
952
143
  id: "house-playbook",
@@ -992,31 +183,7 @@ steps:
992
183
  capability: database.insert
993
184
  inputs:
994
185
  table: "invoices"
995
- data: \${steps.calculate-total.output}`
996
- })
997
- })
998
- ]
999
- }),
1000
- /* @__PURE__ */ jsxs2("div", {
1001
- className: "space-y-4",
1002
- children: [
1003
- /* @__PURE__ */ jsx2("h2", {
1004
- className: "font-bold text-2xl",
1005
- children: "Example 3: Multi-tenant SaaS with External Docs"
1006
- }),
1007
- /* @__PURE__ */ jsxs2("p", {
1008
- className: "text-muted-foreground",
1009
- children: [
1010
- /* @__PURE__ */ jsx2("strong", {
1011
- children: "Context:"
1012
- }),
1013
- " A SaaS platform needs to help users integrate with Stripe, using both internal guides and Stripe's official documentation."
1014
- ]
1015
- }),
1016
- /* @__PURE__ */ jsx2("div", {
1017
- className: "overflow-x-auto rounded-lg border border-border bg-background/50 p-4 font-mono text-muted-foreground text-sm",
1018
- children: /* @__PURE__ */ jsx2("pre", {
1019
- children: `// Knowledge spaces
186
+ data: \${steps.calculate-total.output}`})})]}),i("div",{className:"space-y-4",children:[d("h2",{className:"font-bold text-2xl",children:"Example 3: Multi-tenant SaaS with External Docs"}),i("p",{className:"text-muted-foreground",children:[d("strong",{children:"Context:"})," A SaaS platform needs to help users integrate with Stripe, using both internal guides and Stripe's official documentation."]}),d("div",{className:"overflow-x-auto rounded-lg border border-border bg-background/50 p-4 font-mono text-muted-foreground text-sm",children:d("pre",{children:`// Knowledge spaces
1020
187
  knowledgeSpaces: [
1021
188
  {
1022
189
  id: "integration-guides",
@@ -1084,238 +251,7 @@ steps:
1084
251
  Question: \${input.question}
1085
252
  Internal: \${steps.search-internal-guides.output.results}
1086
253
  Stripe: \${steps.search-stripe-docs.output.results}
1087
- Past: \${steps.search-past-questions.output.results}`
1088
- })
1089
- })
1090
- ]
1091
- })
1092
- ]
1093
- }),
1094
- /* @__PURE__ */ jsxs2("div", {
1095
- className: "space-y-4",
1096
- children: [
1097
- /* @__PURE__ */ jsx2("h2", {
1098
- className: "font-bold text-2xl",
1099
- children: "Key patterns"
1100
- }),
1101
- /* @__PURE__ */ jsxs2("ul", {
1102
- className: "list-inside list-disc space-y-2 text-muted-foreground",
1103
- children: [
1104
- /* @__PURE__ */ jsxs2("li", {
1105
- children: [
1106
- /* @__PURE__ */ jsx2("strong", {
1107
- children: "Canonical first"
1108
- }),
1109
- " - Always search canonical spaces before operational or external"
1110
- ]
1111
- }),
1112
- /* @__PURE__ */ jsxs2("li", {
1113
- children: [
1114
- /* @__PURE__ */ jsx2("strong", {
1115
- children: "Category-aware prompts"
1116
- }),
1117
- " - Tell the LLM which sources are authoritative vs reference"
1118
- ]
1119
- }),
1120
- /* @__PURE__ */ jsxs2("li", {
1121
- children: [
1122
- /* @__PURE__ */ jsx2("strong", {
1123
- children: "Multi-space queries"
1124
- }),
1125
- " - Combine results from multiple spaces for richer context"
1126
- ]
1127
- }),
1128
- /* @__PURE__ */ jsxs2("li", {
1129
- children: [
1130
- /* @__PURE__ */ jsx2("strong", {
1131
- children: "Limit results"
1132
- }),
1133
- " - Use appropriate limits (3-5) to avoid token overflow"
1134
- ]
1135
- }),
1136
- /* @__PURE__ */ jsxs2("li", {
1137
- children: [
1138
- /* @__PURE__ */ jsx2("strong", {
1139
- children: "Audit everything"
1140
- }),
1141
- " - Log all knowledge queries for debugging and compliance"
1142
- ]
1143
- })
1144
- ]
1145
- })
1146
- ]
1147
- }),
1148
- /* @__PURE__ */ jsxs2("div", {
1149
- className: "flex items-center gap-4 pt-4",
1150
- children: [
1151
- /* @__PURE__ */ jsx2(Link2, {
1152
- href: "/docs/knowledge/sources",
1153
- className: "btn-ghost",
1154
- children: "Previous: Sources"
1155
- }),
1156
- /* @__PURE__ */ jsx2(Link2, {
1157
- href: "/docs/architecture/knowledge-binding",
1158
- className: "btn-ghost",
1159
- children: "Knowledge Binding"
1160
- })
1161
- ]
1162
- })
1163
- ]
1164
- });
1165
- }
1166
-
1167
- // src/components/docs/knowledge/KnowledgeOverviewPage.tsx
1168
- import Link3 from "@contractspec/lib.ui-link";
1169
- import { jsx as jsx3, jsxs as jsxs3 } from "react/jsx-runtime";
1170
- var knowledgeTracks = [
1171
- {
1172
- title: "Categories",
1173
- body: "Separate canonical truth from operational notes, external material, and ephemeral working context.",
1174
- href: "/docs/knowledge/categories"
1175
- },
1176
- {
1177
- title: "Spaces",
1178
- body: "Define the storage and retrieval boundary for each knowledge domain.",
1179
- href: "/docs/knowledge/spaces"
1180
- },
1181
- {
1182
- title: "Sources",
1183
- body: "Connect tenant-owned sources explicitly instead of letting context leak in through prompts alone.",
1184
- href: "/docs/knowledge/sources"
1185
- },
1186
- {
1187
- title: "Examples",
1188
- body: "See how support, compliance, and product systems consume trusted knowledge at runtime.",
1189
- href: "/docs/knowledge/examples"
1190
- }
1191
- ];
1192
- function KnowledgeOverviewPage() {
1193
- return /* @__PURE__ */ jsxs3("div", {
1194
- className: "space-y-10",
1195
- children: [
1196
- /* @__PURE__ */ jsxs3("div", {
1197
- className: "space-y-3",
1198
- children: [
1199
- /* @__PURE__ */ jsx3("p", {
1200
- className: "editorial-kicker",
1201
- children: "Operate"
1202
- }),
1203
- /* @__PURE__ */ jsx3("h1", {
1204
- className: "font-serif text-4xl tracking-[-0.04em] md:text-5xl",
1205
- children: "Knowledge is part of the runtime, not a sidecar prompt hack."
1206
- }),
1207
- /* @__PURE__ */ jsx3("p", {
1208
- className: "max-w-3xl text-lg text-muted-foreground leading-8",
1209
- children: "When AI-native systems depend on external context, the context needs the same discipline as the rest of the stack. ContractSpec treats knowledge as typed, bounded, and governable so teams can reason about trust, isolation, and retrieval behavior."
1210
- })
1211
- ]
1212
- }),
1213
- /* @__PURE__ */ jsx3("section", {
1214
- className: "editorial-panel space-y-5",
1215
- children: /* @__PURE__ */ jsxs3("div", {
1216
- className: "space-y-2",
1217
- children: [
1218
- /* @__PURE__ */ jsx3("h2", {
1219
- className: "font-serif text-3xl tracking-[-0.03em]",
1220
- children: "How knowledge enters the system"
1221
- }),
1222
- /* @__PURE__ */ jsxs3("ul", {
1223
- className: "editorial-list",
1224
- children: [
1225
- /* @__PURE__ */ jsxs3("li", {
1226
- children: [
1227
- /* @__PURE__ */ jsx3("span", {
1228
- className: "editorial-list-marker"
1229
- }),
1230
- /* @__PURE__ */ jsx3("span", {
1231
- children: "Define the trust category and retrieval expectations first."
1232
- })
1233
- ]
1234
- }),
1235
- /* @__PURE__ */ jsxs3("li", {
1236
- children: [
1237
- /* @__PURE__ */ jsx3("span", {
1238
- className: "editorial-list-marker"
1239
- }),
1240
- /* @__PURE__ */ jsx3("span", {
1241
- children: "Bind tenant-owned sources explicitly to those knowledge spaces."
1242
- })
1243
- ]
1244
- }),
1245
- /* @__PURE__ */ jsxs3("li", {
1246
- children: [
1247
- /* @__PURE__ */ jsx3("span", {
1248
- className: "editorial-list-marker"
1249
- }),
1250
- /* @__PURE__ */ jsx3("span", {
1251
- children: "Consume knowledge through capabilities and workflows, not through invisible prompt assumptions."
1252
- })
1253
- ]
1254
- })
1255
- ]
1256
- })
1257
- ]
1258
- })
1259
- }),
1260
- /* @__PURE__ */ jsx3("div", {
1261
- className: "grid gap-4 md:grid-cols-2",
1262
- children: knowledgeTracks.map((item) => /* @__PURE__ */ jsxs3(Link3, {
1263
- href: item.href,
1264
- className: "editorial-panel",
1265
- children: [
1266
- /* @__PURE__ */ jsx3("h2", {
1267
- className: "font-semibold text-xl",
1268
- children: item.title
1269
- }),
1270
- /* @__PURE__ */ jsx3("p", {
1271
- className: "mt-2 text-muted-foreground text-sm leading-7",
1272
- children: item.body
1273
- })
1274
- ]
1275
- }, item.href))
1276
- })
1277
- ]
1278
- });
1279
- }
1280
-
1281
- // src/components/docs/knowledge/KnowledgeSourcesPage.tsx
1282
- import Link4 from "@contractspec/lib.ui-link";
1283
- import { ChevronRight as ChevronRight2 } from "lucide-react";
1284
- import { jsx as jsx4, jsxs as jsxs4 } from "react/jsx-runtime";
1285
- function KnowledgeSourcesPage() {
1286
- return /* @__PURE__ */ jsxs4("div", {
1287
- className: "space-y-8",
1288
- children: [
1289
- /* @__PURE__ */ jsxs4("div", {
1290
- className: "space-y-4",
1291
- children: [
1292
- /* @__PURE__ */ jsx4("h1", {
1293
- className: "font-bold text-4xl",
1294
- children: "Knowledge Sources"
1295
- }),
1296
- /* @__PURE__ */ jsxs4("p", {
1297
- className: "text-muted-foreground",
1298
- children: [
1299
- "A ",
1300
- /* @__PURE__ */ jsx4("strong", {
1301
- children: "KnowledgeSourceConfig"
1302
- }),
1303
- " connects a tenant's data sources (Notion, Gmail, uploads, databases) to knowledge spaces. Each source is synced, chunked, embedded, and indexed according to the space's configuration."
1304
- ]
1305
- })
1306
- ]
1307
- }),
1308
- /* @__PURE__ */ jsxs4("div", {
1309
- className: "space-y-4",
1310
- children: [
1311
- /* @__PURE__ */ jsx4("h2", {
1312
- className: "font-bold text-2xl",
1313
- children: "KnowledgeSourceConfig"
1314
- }),
1315
- /* @__PURE__ */ jsx4("div", {
1316
- className: "overflow-x-auto rounded-lg border border-border bg-background/50 p-4 font-mono text-muted-foreground text-sm",
1317
- children: /* @__PURE__ */ jsx4("pre", {
1318
- children: `type KnowledgeSourceConfig = {
254
+ Past: \${steps.search-past-questions.output.results}`})})]})]}),i("div",{className:"space-y-4",children:[d("h2",{className:"font-bold text-2xl",children:"Key patterns"}),i("ul",{className:"list-inside list-disc space-y-2 text-muted-foreground",children:[i("li",{children:[d("strong",{children:"Canonical first"})," - Always search canonical spaces before operational or external"]}),i("li",{children:[d("strong",{children:"Category-aware prompts"})," - Tell the LLM which sources are authoritative vs reference"]}),i("li",{children:[d("strong",{children:"Multi-space queries"})," - Combine results from multiple spaces for richer context"]}),i("li",{children:[d("strong",{children:"Limit results"})," - Use appropriate limits (3-5) to avoid token overflow"]}),i("li",{children:[d("strong",{children:"Audit everything"})," - Log all knowledge queries for debugging and compliance"]})]})]}),i("div",{className:"flex items-center gap-4 pt-4",children:[d(c,{href:"/docs/knowledge/sources",className:"btn-ghost",children:"Previous: Sources"}),d(c,{href:"/docs/architecture/knowledge-binding",className:"btn-ghost",children:"Knowledge Binding"})]})]})}import N from"@contractspec/lib.ui-link";import{jsx as n,jsxs as m}from"react/jsx-runtime";var u=[{title:"Categories",body:"Separate canonical truth from operational notes, external material, and ephemeral working context.",href:"/docs/knowledge/categories"},{title:"Spaces",body:"Define the storage and retrieval boundary for each knowledge domain.",href:"/docs/knowledge/spaces"},{title:"Sources",body:"Connect tenant-owned sources explicitly instead of letting context leak in through prompts alone.",href:"/docs/knowledge/sources"},{title:"Examples",body:"See how support, compliance, and product systems consume trusted knowledge at runtime.",href:"/docs/knowledge/examples"}];function k(){return m("div",{className:"space-y-10",children:[m("div",{className:"space-y-3",children:[n("p",{className:"editorial-kicker",children:"Operate"}),n("h1",{className:"font-serif text-4xl tracking-[-0.04em] md:text-5xl",children:"Knowledge is part of the runtime, not a sidecar prompt hack."}),n("p",{className:"max-w-3xl text-lg text-muted-foreground leading-8",children:"When AI-native systems depend on external context, the context needs the same discipline as the rest of the stack. ContractSpec treats knowledge as typed, bounded, and governable so teams can reason about trust, isolation, and retrieval behavior."})]}),n("section",{className:"editorial-panel space-y-5",children:m("div",{className:"space-y-2",children:[n("h2",{className:"font-serif text-3xl tracking-[-0.03em]",children:"How knowledge enters the system"}),m("ul",{className:"editorial-list",children:[m("li",{children:[n("span",{className:"editorial-list-marker"}),n("span",{children:"Define the trust category and retrieval expectations first."})]}),m("li",{children:[n("span",{className:"editorial-list-marker"}),n("span",{children:"Bind tenant-owned sources explicitly to those knowledge spaces."})]}),m("li",{children:[n("span",{className:"editorial-list-marker"}),n("span",{children:"Consume knowledge through capabilities and workflows, not through invisible prompt assumptions."})]})]})]})}),n("div",{className:"grid gap-4 md:grid-cols-2",children:u.map((p)=>m(N,{href:p.href,className:"editorial-panel",children:[n("h2",{className:"font-semibold text-xl",children:p.title}),n("p",{className:"mt-2 text-muted-foreground text-sm leading-7",children:p.body})]},p.href))})]})}import f from"@contractspec/lib.ui-link";import{ChevronRight as b}from"lucide-react";import{jsx as t,jsxs as l}from"react/jsx-runtime";function P(){return l("div",{className:"space-y-8",children:[l("div",{className:"space-y-4",children:[t("h1",{className:"font-bold text-4xl",children:"Knowledge Sources"}),l("p",{className:"text-muted-foreground",children:["A ",t("strong",{children:"KnowledgeSourceConfig"})," connects a tenant's data sources (Notion, Gmail, uploads, databases) to knowledge spaces. Each source is synced, chunked, embedded, and indexed according to the space's configuration."]})]}),l("div",{className:"space-y-4",children:[t("h2",{className:"font-bold text-2xl",children:"KnowledgeSourceConfig"}),t("div",{className:"overflow-x-auto rounded-lg border border-border bg-background/50 p-4 font-mono text-muted-foreground text-sm",children:t("pre",{children:`type KnowledgeSourceConfig = {
1319
255
  id: string;
1320
256
  tenantId: string;
1321
257
  spaceId: string;
@@ -1342,245 +278,27 @@ function KnowledgeSourcesPage() {
1342
278
  metadata?: Record<string, unknown>;
1343
279
  createdAt: string;
1344
280
  updatedAt: string;
1345
- };`
1346
- })
1347
- })
1348
- ]
1349
- }),
1350
- /* @__PURE__ */ jsxs4("div", {
1351
- className: "space-y-4",
1352
- children: [
1353
- /* @__PURE__ */ jsx4("h2", {
1354
- className: "font-bold text-2xl",
1355
- children: "Source types"
1356
- }),
1357
- /* @__PURE__ */ jsxs4("div", {
1358
- className: "space-y-6",
1359
- children: [
1360
- /* @__PURE__ */ jsxs4("div", {
1361
- className: "card-subtle p-4",
1362
- children: [
1363
- /* @__PURE__ */ jsx4("h3", {
1364
- className: "mb-2 font-semibold text-lg",
1365
- children: "Uploaded Documents"
1366
- }),
1367
- /* @__PURE__ */ jsx4("div", {
1368
- className: "overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",
1369
- children: /* @__PURE__ */ jsx4("pre", {
1370
- children: `{
281
+ };`})})]}),l("div",{className:"space-y-4",children:[t("h2",{className:"font-bold text-2xl",children:"Source types"}),l("div",{className:"space-y-6",children:[l("div",{className:"card-subtle p-4",children:[t("h3",{className:"mb-2 font-semibold text-lg",children:"Uploaded Documents"}),t("div",{className:"overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",children:t("pre",{children:`{
1371
282
  kind: "uploaded-document",
1372
283
  location: "s3://bucket/tenant-123/docs/product-spec.pdf",
1373
284
  syncPolicy: { manual: true }
1374
- }`
1375
- })
1376
- }),
1377
- /* @__PURE__ */ jsx4("p", {
1378
- className: "mt-2 text-muted-foreground text-sm",
1379
- children: "PDFs, Word docs, presentations uploaded by users"
1380
- })
1381
- ]
1382
- }),
1383
- /* @__PURE__ */ jsxs4("div", {
1384
- className: "card-subtle p-4",
1385
- children: [
1386
- /* @__PURE__ */ jsx4("h3", {
1387
- className: "mb-2 font-semibold text-lg",
1388
- children: "Notion"
1389
- }),
1390
- /* @__PURE__ */ jsx4("div", {
1391
- className: "overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",
1392
- children: /* @__PURE__ */ jsx4("pre", {
1393
- children: `{
285
+ }`})}),t("p",{className:"mt-2 text-muted-foreground text-sm",children:"PDFs, Word docs, presentations uploaded by users"})]}),l("div",{className:"card-subtle p-4",children:[t("h3",{className:"mb-2 font-semibold text-lg",children:"Notion"}),t("div",{className:"overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",children:t("pre",{children:`{
1394
286
  kind: "notion",
1395
287
  location: "https://notion.so/workspace/product-docs",
1396
288
  syncPolicy: { interval: "1h", webhook: true }
1397
- }`
1398
- })
1399
- }),
1400
- /* @__PURE__ */ jsx4("p", {
1401
- className: "mt-2 text-muted-foreground text-sm",
1402
- children: "Notion pages and databases with real-time webhook updates"
1403
- })
1404
- ]
1405
- }),
1406
- /* @__PURE__ */ jsxs4("div", {
1407
- className: "card-subtle p-4",
1408
- children: [
1409
- /* @__PURE__ */ jsx4("h3", {
1410
- className: "mb-2 font-semibold text-lg",
1411
- children: "Gmail / Email"
1412
- }),
1413
- /* @__PURE__ */ jsx4("div", {
1414
- className: "overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",
1415
- children: /* @__PURE__ */ jsx4("pre", {
1416
- children: `{
289
+ }`})}),t("p",{className:"mt-2 text-muted-foreground text-sm",children:"Notion pages and databases with real-time webhook updates"})]}),l("div",{className:"card-subtle p-4",children:[t("h3",{className:"mb-2 font-semibold text-lg",children:"Gmail / Email"}),t("div",{className:"overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",children:t("pre",{children:`{
1417
290
  kind: "email",
1418
291
  location: "support@company.com",
1419
292
  syncPolicy: { webhook: true }
1420
- }`
1421
- })
1422
- }),
1423
- /* @__PURE__ */ jsx4("p", {
1424
- className: "mt-2 text-muted-foreground text-sm",
1425
- children: "Email threads from Gmail or other providers"
1426
- })
1427
- ]
1428
- }),
1429
- /* @__PURE__ */ jsxs4("div", {
1430
- className: "card-subtle p-4",
1431
- children: [
1432
- /* @__PURE__ */ jsx4("h3", {
1433
- className: "mb-2 font-semibold text-lg",
1434
- children: "Database Query"
1435
- }),
1436
- /* @__PURE__ */ jsx4("div", {
1437
- className: "overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",
1438
- children: /* @__PURE__ */ jsx4("pre", {
1439
- children: `{
293
+ }`})}),t("p",{className:"mt-2 text-muted-foreground text-sm",children:"Email threads from Gmail or other providers"})]}),l("div",{className:"card-subtle p-4",children:[t("h3",{className:"mb-2 font-semibold text-lg",children:"Database Query"}),t("div",{className:"overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",children:t("pre",{children:`{
1440
294
  kind: "database-query",
1441
295
  location: "SELECT * FROM products WHERE active = true",
1442
296
  syncPolicy: { interval: "24h" }
1443
- }`
1444
- })
1445
- }),
1446
- /* @__PURE__ */ jsx4("p", {
1447
- className: "mt-2 text-muted-foreground text-sm",
1448
- children: "Structured data from application databases"
1449
- })
1450
- ]
1451
- }),
1452
- /* @__PURE__ */ jsxs4("div", {
1453
- className: "card-subtle p-4",
1454
- children: [
1455
- /* @__PURE__ */ jsx4("h3", {
1456
- className: "mb-2 font-semibold text-lg",
1457
- children: "URL / Web Scraping"
1458
- }),
1459
- /* @__PURE__ */ jsx4("div", {
1460
- className: "overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",
1461
- children: /* @__PURE__ */ jsx4("pre", {
1462
- children: `{
297
+ }`})}),t("p",{className:"mt-2 text-muted-foreground text-sm",children:"Structured data from application databases"})]}),l("div",{className:"card-subtle p-4",children:[t("h3",{className:"mb-2 font-semibold text-lg",children:"URL / Web Scraping"}),t("div",{className:"overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",children:t("pre",{children:`{
1463
298
  kind: "url",
1464
299
  location: "https://stripe.com/docs",
1465
300
  syncPolicy: { interval: "24h" }
1466
- }`
1467
- })
1468
- }),
1469
- /* @__PURE__ */ jsx4("p", {
1470
- className: "mt-2 text-muted-foreground text-sm",
1471
- children: "External documentation and web content"
1472
- })
1473
- ]
1474
- })
1475
- ]
1476
- })
1477
- ]
1478
- }),
1479
- /* @__PURE__ */ jsxs4("div", {
1480
- className: "space-y-4",
1481
- children: [
1482
- /* @__PURE__ */ jsx4("h2", {
1483
- className: "font-bold text-2xl",
1484
- children: "Sync strategies"
1485
- }),
1486
- /* @__PURE__ */ jsx4("div", {
1487
- className: "overflow-x-auto rounded-lg border border-border/50",
1488
- children: /* @__PURE__ */ jsxs4("table", {
1489
- className: "w-full text-left text-sm",
1490
- children: [
1491
- /* @__PURE__ */ jsx4("thead", {
1492
- className: "bg-card/50",
1493
- children: /* @__PURE__ */ jsxs4("tr", {
1494
- className: "border-border/50 border-b",
1495
- children: [
1496
- /* @__PURE__ */ jsx4("th", {
1497
- className: "px-4 py-3 font-semibold",
1498
- children: "Strategy"
1499
- }),
1500
- /* @__PURE__ */ jsx4("th", {
1501
- className: "px-4 py-3 font-semibold",
1502
- children: "When to Use"
1503
- }),
1504
- /* @__PURE__ */ jsx4("th", {
1505
- className: "px-4 py-3 font-semibold",
1506
- children: "Latency"
1507
- })
1508
- ]
1509
- })
1510
- }),
1511
- /* @__PURE__ */ jsxs4("tbody", {
1512
- className: "divide-y divide-border/50",
1513
- children: [
1514
- /* @__PURE__ */ jsxs4("tr", {
1515
- children: [
1516
- /* @__PURE__ */ jsx4("td", {
1517
- className: "px-4 py-3 font-mono text-xs",
1518
- children: "webhook"
1519
- }),
1520
- /* @__PURE__ */ jsx4("td", {
1521
- className: "px-4 py-3",
1522
- children: "Real-time updates (Notion, Gmail, Slack)"
1523
- }),
1524
- /* @__PURE__ */ jsx4("td", {
1525
- className: "px-4 py-3",
1526
- children: "Seconds"
1527
- })
1528
- ]
1529
- }),
1530
- /* @__PURE__ */ jsxs4("tr", {
1531
- children: [
1532
- /* @__PURE__ */ jsx4("td", {
1533
- className: "px-4 py-3 font-mono text-xs",
1534
- children: "interval"
1535
- }),
1536
- /* @__PURE__ */ jsx4("td", {
1537
- className: "px-4 py-3",
1538
- children: "Periodic sync (databases, URLs)"
1539
- }),
1540
- /* @__PURE__ */ jsx4("td", {
1541
- className: "px-4 py-3",
1542
- children: "Minutes to hours"
1543
- })
1544
- ]
1545
- }),
1546
- /* @__PURE__ */ jsxs4("tr", {
1547
- children: [
1548
- /* @__PURE__ */ jsx4("td", {
1549
- className: "px-4 py-3 font-mono text-xs",
1550
- children: "manual"
1551
- }),
1552
- /* @__PURE__ */ jsx4("td", {
1553
- className: "px-4 py-3",
1554
- children: "User-triggered (uploads, one-time imports)"
1555
- }),
1556
- /* @__PURE__ */ jsx4("td", {
1557
- className: "px-4 py-3",
1558
- children: "On-demand"
1559
- })
1560
- ]
1561
- })
1562
- ]
1563
- })
1564
- ]
1565
- })
1566
- })
1567
- ]
1568
- }),
1569
- /* @__PURE__ */ jsxs4("div", {
1570
- className: "space-y-4",
1571
- children: [
1572
- /* @__PURE__ */ jsx4("h2", {
1573
- className: "font-bold text-2xl",
1574
- children: "Example: Multi-source space"
1575
- }),
1576
- /* @__PURE__ */ jsx4("p", {
1577
- className: "text-muted-foreground",
1578
- children: "A single knowledge space can be fed by multiple sources:"
1579
- }),
1580
- /* @__PURE__ */ jsx4("div", {
1581
- className: "overflow-x-auto rounded-lg border border-border bg-background/50 p-4 font-mono text-muted-foreground text-sm",
1582
- children: /* @__PURE__ */ jsx4("pre", {
1583
- children: `// Product Canon space with multiple sources
301
+ }`})}),t("p",{className:"mt-2 text-muted-foreground text-sm",children:"External documentation and web content"})]})]})]}),l("div",{className:"space-y-4",children:[t("h2",{className:"font-bold text-2xl",children:"Sync strategies"}),t("div",{className:"overflow-x-auto rounded-lg border border-border/50",children:l("table",{className:"w-full text-left text-sm",children:[t("thead",{className:"bg-card/50",children:l("tr",{className:"border-border/50 border-b",children:[t("th",{className:"px-4 py-3 font-semibold",children:"Strategy"}),t("th",{className:"px-4 py-3 font-semibold",children:"When to Use"}),t("th",{className:"px-4 py-3 font-semibold",children:"Latency"})]})}),l("tbody",{className:"divide-y divide-border/50",children:[l("tr",{children:[t("td",{className:"px-4 py-3 font-mono text-xs",children:"webhook"}),t("td",{className:"px-4 py-3",children:"Real-time updates (Notion, Gmail, Slack)"}),t("td",{className:"px-4 py-3",children:"Seconds"})]}),l("tr",{children:[t("td",{className:"px-4 py-3 font-mono text-xs",children:"interval"}),t("td",{className:"px-4 py-3",children:"Periodic sync (databases, URLs)"}),t("td",{className:"px-4 py-3",children:"Minutes to hours"})]}),l("tr",{children:[t("td",{className:"px-4 py-3 font-mono text-xs",children:"manual"}),t("td",{className:"px-4 py-3",children:"User-triggered (uploads, one-time imports)"}),t("td",{className:"px-4 py-3",children:"On-demand"})]})]})]})})]}),l("div",{className:"space-y-4",children:[t("h2",{className:"font-bold text-2xl",children:"Example: Multi-source space"}),t("p",{className:"text-muted-foreground",children:"A single knowledge space can be fed by multiple sources:"}),t("div",{className:"overflow-x-auto rounded-lg border border-border bg-background/50 p-4 font-mono text-muted-foreground text-sm",children:t("pre",{children:`// Product Canon space with multiple sources
1584
302
  {
1585
303
  spaceId: "product-canon",
1586
304
  sources: [
@@ -1603,171 +321,7 @@ function KnowledgeSourcesPage() {
1603
321
  syncPolicy: { manual: true }
1604
322
  }
1605
323
  ]
1606
- }`
1607
- })
1608
- })
1609
- ]
1610
- }),
1611
- /* @__PURE__ */ jsxs4("div", {
1612
- className: "space-y-4",
1613
- children: [
1614
- /* @__PURE__ */ jsx4("h2", {
1615
- className: "font-bold text-2xl",
1616
- children: "Processing pipeline"
1617
- }),
1618
- /* @__PURE__ */ jsx4("p", {
1619
- className: "text-muted-foreground",
1620
- children: "When a source is synced, ContractSpec processes it through several stages:"
1621
- }),
1622
- /* @__PURE__ */ jsxs4("ol", {
1623
- className: "list-inside list-decimal space-y-3 text-muted-foreground",
1624
- children: [
1625
- /* @__PURE__ */ jsxs4("li", {
1626
- children: [
1627
- /* @__PURE__ */ jsx4("strong", {
1628
- children: "Fetch"
1629
- }),
1630
- " - Retrieve content from source (API, database, file)"
1631
- ]
1632
- }),
1633
- /* @__PURE__ */ jsxs4("li", {
1634
- children: [
1635
- /* @__PURE__ */ jsx4("strong", {
1636
- children: "Parse"
1637
- }),
1638
- " - Extract text from documents (PDF, Word, HTML)"
1639
- ]
1640
- }),
1641
- /* @__PURE__ */ jsxs4("li", {
1642
- children: [
1643
- /* @__PURE__ */ jsx4("strong", {
1644
- children: "Chunk"
1645
- }),
1646
- " - Split into semantic chunks (paragraphs, sections)"
1647
- ]
1648
- }),
1649
- /* @__PURE__ */ jsxs4("li", {
1650
- children: [
1651
- /* @__PURE__ */ jsx4("strong", {
1652
- children: "Embed"
1653
- }),
1654
- " - Generate vector embeddings (OpenAI, Cohere)"
1655
- ]
1656
- }),
1657
- /* @__PURE__ */ jsxs4("li", {
1658
- children: [
1659
- /* @__PURE__ */ jsx4("strong", {
1660
- children: "Index"
1661
- }),
1662
- " - Store in vector database (Qdrant) or search engine"
1663
- ]
1664
- }),
1665
- /* @__PURE__ */ jsxs4("li", {
1666
- children: [
1667
- /* @__PURE__ */ jsx4("strong", {
1668
- children: "Audit"
1669
- }),
1670
- " - Log sync operation and results"
1671
- ]
1672
- })
1673
- ]
1674
- })
1675
- ]
1676
- }),
1677
- /* @__PURE__ */ jsxs4("div", {
1678
- className: "space-y-4",
1679
- children: [
1680
- /* @__PURE__ */ jsx4("h2", {
1681
- className: "font-bold text-2xl",
1682
- children: "Best practices"
1683
- }),
1684
- /* @__PURE__ */ jsxs4("ul", {
1685
- className: "list-inside list-disc space-y-2 text-muted-foreground",
1686
- children: [
1687
- /* @__PURE__ */ jsx4("li", {
1688
- children: "Use webhooks for real-time sources (Notion, Gmail) to minimize latency"
1689
- }),
1690
- /* @__PURE__ */ jsx4("li", {
1691
- children: "Set appropriate sync intervals - hourly for active docs, daily for stable content"
1692
- }),
1693
- /* @__PURE__ */ jsx4("li", {
1694
- children: "Monitor sync failures and set up alerts for critical sources"
1695
- }),
1696
- /* @__PURE__ */ jsx4("li", {
1697
- children: "Test sources in sandbox before enabling in production"
1698
- }),
1699
- /* @__PURE__ */ jsx4("li", {
1700
- children: "Document the purpose and ownership of each source for your team"
1701
- }),
1702
- /* @__PURE__ */ jsx4("li", {
1703
- children: "Use manual sync for sensitive or infrequently updated content"
1704
- })
1705
- ]
1706
- })
1707
- ]
1708
- }),
1709
- /* @__PURE__ */ jsxs4("div", {
1710
- className: "flex items-center gap-4 pt-4",
1711
- children: [
1712
- /* @__PURE__ */ jsx4(Link4, {
1713
- href: "/docs/knowledge/spaces",
1714
- className: "btn-ghost",
1715
- children: "Previous: Spaces"
1716
- }),
1717
- /* @__PURE__ */ jsxs4(Link4, {
1718
- href: "/docs/knowledge/examples",
1719
- className: "btn-primary",
1720
- children: [
1721
- "Examples ",
1722
- /* @__PURE__ */ jsx4(ChevronRight2, {
1723
- size: 16
1724
- })
1725
- ]
1726
- })
1727
- ]
1728
- })
1729
- ]
1730
- });
1731
- }
1732
-
1733
- // src/components/docs/knowledge/KnowledgeSpacesPage.tsx
1734
- import Link5 from "@contractspec/lib.ui-link";
1735
- import { ChevronRight as ChevronRight3 } from "lucide-react";
1736
- import { jsx as jsx5, jsxs as jsxs5 } from "react/jsx-runtime";
1737
- function KnowledgeSpacesPage() {
1738
- return /* @__PURE__ */ jsxs5("div", {
1739
- className: "space-y-8",
1740
- children: [
1741
- /* @__PURE__ */ jsxs5("div", {
1742
- className: "space-y-4",
1743
- children: [
1744
- /* @__PURE__ */ jsx5("h1", {
1745
- className: "font-bold text-4xl",
1746
- children: "Knowledge Spaces"
1747
- }),
1748
- /* @__PURE__ */ jsxs5("p", {
1749
- className: "text-muted-foreground",
1750
- children: [
1751
- "A ",
1752
- /* @__PURE__ */ jsx5("strong", {
1753
- children: "KnowledgeSpaceSpec"
1754
- }),
1755
- " defines a logical domain of knowledge with a specific category, storage strategy, and intended audience. Spaces are defined globally and populated per-tenant through knowledge sources."
1756
- ]
1757
- })
1758
- ]
1759
- }),
1760
- /* @__PURE__ */ jsxs5("div", {
1761
- className: "space-y-4",
1762
- children: [
1763
- /* @__PURE__ */ jsx5("h2", {
1764
- className: "font-bold text-2xl",
1765
- children: "KnowledgeSpaceSpec"
1766
- }),
1767
- /* @__PURE__ */ jsx5("div", {
1768
- className: "overflow-x-auto rounded-lg border border-border bg-background/50 p-4 font-mono text-muted-foreground text-sm",
1769
- children: /* @__PURE__ */ jsx5("pre", {
1770
- children: `type KnowledgeSpaceSpec = {
324
+ }`})})]}),l("div",{className:"space-y-4",children:[t("h2",{className:"font-bold text-2xl",children:"Processing pipeline"}),t("p",{className:"text-muted-foreground",children:"When a source is synced, ContractSpec processes it through several stages:"}),l("ol",{className:"list-inside list-decimal space-y-3 text-muted-foreground",children:[l("li",{children:[t("strong",{children:"Fetch"})," - Retrieve content from source (API, database, file)"]}),l("li",{children:[t("strong",{children:"Parse"})," - Extract text from documents (PDF, Word, HTML)"]}),l("li",{children:[t("strong",{children:"Chunk"})," - Split into semantic chunks (paragraphs, sections)"]}),l("li",{children:[t("strong",{children:"Embed"})," - Generate vector embeddings (OpenAI, Cohere)"]}),l("li",{children:[t("strong",{children:"Index"})," - Store in vector database (Qdrant) or search engine"]}),l("li",{children:[t("strong",{children:"Audit"})," - Log sync operation and results"]})]})]}),l("div",{className:"space-y-4",children:[t("h2",{className:"font-bold text-2xl",children:"Best practices"}),l("ul",{className:"list-inside list-disc space-y-2 text-muted-foreground",children:[t("li",{children:"Use webhooks for real-time sources (Notion, Gmail) to minimize latency"}),t("li",{children:"Set appropriate sync intervals - hourly for active docs, daily for stable content"}),t("li",{children:"Monitor sync failures and set up alerts for critical sources"}),t("li",{children:"Test sources in sandbox before enabling in production"}),t("li",{children:"Document the purpose and ownership of each source for your team"}),t("li",{children:"Use manual sync for sensitive or infrequently updated content"})]})]}),l("div",{className:"flex items-center gap-4 pt-4",children:[t(f,{href:"/docs/knowledge/spaces",className:"btn-ghost",children:"Previous: Spaces"}),l(f,{href:"/docs/knowledge/examples",className:"btn-primary",children:["Examples ",t(b,{size:16})]})]})]})}import h from"@contractspec/lib.ui-link";import{ChevronRight as K}from"lucide-react";import{jsx as o,jsxs as r}from"react/jsx-runtime";function O(){return r("div",{className:"space-y-8",children:[r("div",{className:"space-y-4",children:[o("h1",{className:"font-bold text-4xl",children:"Knowledge Spaces"}),r("p",{className:"text-muted-foreground",children:["A ",o("strong",{children:"KnowledgeSpaceSpec"})," defines a logical domain of knowledge with a specific category, storage strategy, and intended audience. Spaces are defined globally and populated per-tenant through knowledge sources."]})]}),r("div",{className:"space-y-4",children:[o("h2",{className:"font-bold text-2xl",children:"KnowledgeSpaceSpec"}),o("div",{className:"overflow-x-auto rounded-lg border border-border bg-background/50 p-4 font-mono text-muted-foreground text-sm",children:o("pre",{children:`type KnowledgeSpaceSpec = {
1771
325
  id: string;
1772
326
  label: string;
1773
327
  description: string;
@@ -1792,32 +346,7 @@ function KnowledgeSpacesPage() {
1792
346
  owner?: string;
1793
347
  createdAt: string;
1794
348
  updatedAt: string;
1795
- };`
1796
- })
1797
- })
1798
- ]
1799
- }),
1800
- /* @__PURE__ */ jsxs5("div", {
1801
- className: "space-y-4",
1802
- children: [
1803
- /* @__PURE__ */ jsx5("h2", {
1804
- className: "font-bold text-2xl",
1805
- children: "Common knowledge spaces"
1806
- }),
1807
- /* @__PURE__ */ jsxs5("div", {
1808
- className: "space-y-6",
1809
- children: [
1810
- /* @__PURE__ */ jsxs5("div", {
1811
- className: "card-subtle p-4",
1812
- children: [
1813
- /* @__PURE__ */ jsx5("h3", {
1814
- className: "mb-2 font-semibold text-lg",
1815
- children: "Product Canon"
1816
- }),
1817
- /* @__PURE__ */ jsx5("div", {
1818
- className: "overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",
1819
- children: /* @__PURE__ */ jsx5("pre", {
1820
- children: `{
349
+ };`})})]}),r("div",{className:"space-y-4",children:[o("h2",{className:"font-bold text-2xl",children:"Common knowledge spaces"}),r("div",{className:"space-y-6",children:[r("div",{className:"card-subtle p-4",children:[o("h3",{className:"mb-2 font-semibold text-lg",children:"Product Canon"}),o("div",{className:"overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",children:o("pre",{children:`{
1821
350
  id: "product-canon",
1822
351
  label: "Product Canon",
1823
352
  description: "Official product specifications and schemas",
@@ -1827,31 +356,7 @@ function KnowledgeSpacesPage() {
1827
356
  indexProvider: "qdrant",
1828
357
  vectorDimensions: 1536,
1829
358
  retentionPolicy: { versions: 10 }
1830
- }`
1831
- })
1832
- }),
1833
- /* @__PURE__ */ jsxs5("p", {
1834
- className: "mt-2 text-muted-foreground text-sm",
1835
- children: [
1836
- /* @__PURE__ */ jsx5("strong", {
1837
- children: "Use cases:"
1838
- }),
1839
- " Invoice generation, quote creation, product recommendations, schema validation"
1840
- ]
1841
- })
1842
- ]
1843
- }),
1844
- /* @__PURE__ */ jsxs5("div", {
1845
- className: "card-subtle p-4",
1846
- children: [
1847
- /* @__PURE__ */ jsx5("h3", {
1848
- className: "mb-2 font-semibold text-lg",
1849
- children: "Support History"
1850
- }),
1851
- /* @__PURE__ */ jsx5("div", {
1852
- className: "overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",
1853
- children: /* @__PURE__ */ jsx5("pre", {
1854
- children: `{
359
+ }`})}),r("p",{className:"mt-2 text-muted-foreground text-sm",children:[o("strong",{children:"Use cases:"})," Invoice generation, quote creation, product recommendations, schema validation"]})]}),r("div",{className:"card-subtle p-4",children:[o("h3",{className:"mb-2 font-semibold text-lg",children:"Support History"}),o("div",{className:"overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",children:o("pre",{children:`{
1855
360
  id: "support-history",
1856
361
  label: "Support History",
1857
362
  description: "Past support tickets and resolutions",
@@ -1861,31 +366,7 @@ function KnowledgeSpacesPage() {
1861
366
  indexProvider: "qdrant",
1862
367
  vectorDimensions: 1536,
1863
368
  retentionPolicy: { days: 365 }
1864
- }`
1865
- })
1866
- }),
1867
- /* @__PURE__ */ jsxs5("p", {
1868
- className: "mt-2 text-muted-foreground text-sm",
1869
- children: [
1870
- /* @__PURE__ */ jsx5("strong", {
1871
- children: "Use cases:"
1872
- }),
1873
- " Customer support, troubleshooting, similar issue detection"
1874
- ]
1875
- })
1876
- ]
1877
- }),
1878
- /* @__PURE__ */ jsxs5("div", {
1879
- className: "card-subtle p-4",
1880
- children: [
1881
- /* @__PURE__ */ jsx5("h3", {
1882
- className: "mb-2 font-semibold text-lg",
1883
- children: "External Provider Docs"
1884
- }),
1885
- /* @__PURE__ */ jsx5("div", {
1886
- className: "overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",
1887
- children: /* @__PURE__ */ jsx5("pre", {
1888
- children: `{
369
+ }`})}),r("p",{className:"mt-2 text-muted-foreground text-sm",children:[o("strong",{children:"Use cases:"})," Customer support, troubleshooting, similar issue detection"]})]}),r("div",{className:"card-subtle p-4",children:[o("h3",{className:"mb-2 font-semibold text-lg",children:"External Provider Docs"}),o("div",{className:"overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",children:o("pre",{children:`{
1889
370
  id: "provider-docs",
1890
371
  label: "External Provider Docs",
1891
372
  description: "Third-party integration documentation",
@@ -1894,31 +375,7 @@ function KnowledgeSpacesPage() {
1894
375
  storageStrategy: "search",
1895
376
  indexProvider: "elasticsearch",
1896
377
  retentionPolicy: { days: 90 }
1897
- }`
1898
- })
1899
- }),
1900
- /* @__PURE__ */ jsxs5("p", {
1901
- className: "mt-2 text-muted-foreground text-sm",
1902
- children: [
1903
- /* @__PURE__ */ jsx5("strong", {
1904
- children: "Use cases:"
1905
- }),
1906
- " Integration help, API reference, troubleshooting external services"
1907
- ]
1908
- })
1909
- ]
1910
- }),
1911
- /* @__PURE__ */ jsxs5("div", {
1912
- className: "card-subtle p-4",
1913
- children: [
1914
- /* @__PURE__ */ jsx5("h3", {
1915
- className: "mb-2 font-semibold text-lg",
1916
- children: "Agent Scratchpad"
1917
- }),
1918
- /* @__PURE__ */ jsx5("div", {
1919
- className: "overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",
1920
- children: /* @__PURE__ */ jsx5("pre", {
1921
- children: `{
378
+ }`})}),r("p",{className:"mt-2 text-muted-foreground text-sm",children:[o("strong",{children:"Use cases:"})," Integration help, API reference, troubleshooting external services"]})]}),r("div",{className:"card-subtle p-4",children:[o("h3",{className:"mb-2 font-semibold text-lg",children:"Agent Scratchpad"}),o("div",{className:"overflow-x-auto rounded border border-border bg-background/50 p-3 font-mono text-muted-foreground text-xs",children:o("pre",{children:`{
1922
379
  id: "agent-scratchpad",
1923
380
  label: "Agent Scratchpad",
1924
381
  description: "Temporary agent working memory",
@@ -1928,170 +385,4 @@ function KnowledgeSpacesPage() {
1928
385
  indexProvider: "qdrant",
1929
386
  vectorDimensions: 1536,
1930
387
  retentionPolicy: { days: 1 }
1931
- }`
1932
- })
1933
- }),
1934
- /* @__PURE__ */ jsxs5("p", {
1935
- className: "mt-2 text-muted-foreground text-sm",
1936
- children: [
1937
- /* @__PURE__ */ jsx5("strong", {
1938
- children: "Use cases:"
1939
- }),
1940
- " Conversation continuity, intermediate calculations, session state"
1941
- ]
1942
- })
1943
- ]
1944
- })
1945
- ]
1946
- })
1947
- ]
1948
- }),
1949
- /* @__PURE__ */ jsxs5("div", {
1950
- className: "space-y-4",
1951
- children: [
1952
- /* @__PURE__ */ jsx5("h2", {
1953
- className: "font-bold text-2xl",
1954
- children: "Storage strategies"
1955
- }),
1956
- /* @__PURE__ */ jsx5("div", {
1957
- className: "overflow-x-auto rounded-lg border border-border/50",
1958
- children: /* @__PURE__ */ jsxs5("table", {
1959
- className: "w-full text-left text-sm",
1960
- children: [
1961
- /* @__PURE__ */ jsx5("thead", {
1962
- className: "bg-card/50",
1963
- children: /* @__PURE__ */ jsxs5("tr", {
1964
- className: "border-border/50 border-b",
1965
- children: [
1966
- /* @__PURE__ */ jsx5("th", {
1967
- className: "px-4 py-3 font-semibold",
1968
- children: "Strategy"
1969
- }),
1970
- /* @__PURE__ */ jsx5("th", {
1971
- className: "px-4 py-3 font-semibold",
1972
- children: "Best For"
1973
- }),
1974
- /* @__PURE__ */ jsx5("th", {
1975
- className: "px-4 py-3 font-semibold",
1976
- children: "Providers"
1977
- })
1978
- ]
1979
- })
1980
- }),
1981
- /* @__PURE__ */ jsxs5("tbody", {
1982
- className: "divide-y divide-border/50",
1983
- children: [
1984
- /* @__PURE__ */ jsxs5("tr", {
1985
- children: [
1986
- /* @__PURE__ */ jsx5("td", {
1987
- className: "px-4 py-3 font-mono text-xs",
1988
- children: "vector"
1989
- }),
1990
- /* @__PURE__ */ jsx5("td", {
1991
- className: "px-4 py-3",
1992
- children: "Semantic search, RAG, similarity matching"
1993
- }),
1994
- /* @__PURE__ */ jsx5("td", {
1995
- className: "px-4 py-3",
1996
- children: "Qdrant, Pinecone, Weaviate"
1997
- })
1998
- ]
1999
- }),
2000
- /* @__PURE__ */ jsxs5("tr", {
2001
- children: [
2002
- /* @__PURE__ */ jsx5("td", {
2003
- className: "px-4 py-3 font-mono text-xs",
2004
- children: "search"
2005
- }),
2006
- /* @__PURE__ */ jsx5("td", {
2007
- className: "px-4 py-3",
2008
- children: "Keyword search, exact matching, filtering"
2009
- }),
2010
- /* @__PURE__ */ jsx5("td", {
2011
- className: "px-4 py-3",
2012
- children: "Elasticsearch, Algolia"
2013
- })
2014
- ]
2015
- }),
2016
- /* @__PURE__ */ jsxs5("tr", {
2017
- children: [
2018
- /* @__PURE__ */ jsx5("td", {
2019
- className: "px-4 py-3 font-mono text-xs",
2020
- children: "hybrid"
2021
- }),
2022
- /* @__PURE__ */ jsx5("td", {
2023
- className: "px-4 py-3",
2024
- children: "Combined semantic + keyword search"
2025
- }),
2026
- /* @__PURE__ */ jsx5("td", {
2027
- className: "px-4 py-3",
2028
- children: "Qdrant + Elasticsearch"
2029
- })
2030
- ]
2031
- })
2032
- ]
2033
- })
2034
- ]
2035
- })
2036
- })
2037
- ]
2038
- }),
2039
- /* @__PURE__ */ jsxs5("div", {
2040
- className: "space-y-4",
2041
- children: [
2042
- /* @__PURE__ */ jsx5("h2", {
2043
- className: "font-bold text-2xl",
2044
- children: "Best practices"
2045
- }),
2046
- /* @__PURE__ */ jsxs5("ul", {
2047
- className: "list-inside list-disc space-y-2 text-muted-foreground",
2048
- children: [
2049
- /* @__PURE__ */ jsx5("li", {
2050
- children: "Choose storage strategy based on query patterns - use vector for semantic, search for exact"
2051
- }),
2052
- /* @__PURE__ */ jsx5("li", {
2053
- children: "Set appropriate retention policies - canonical is permanent, ephemeral is short-lived"
2054
- }),
2055
- /* @__PURE__ */ jsx5("li", {
2056
- children: "Use consistent vector dimensions across spaces that will be queried together"
2057
- }),
2058
- /* @__PURE__ */ jsx5("li", {
2059
- children: "Document the intended audience and use cases for each space"
2060
- }),
2061
- /* @__PURE__ */ jsx5("li", {
2062
- children: "Monitor space size and query performance - add sharding if needed"
2063
- })
2064
- ]
2065
- })
2066
- ]
2067
- }),
2068
- /* @__PURE__ */ jsxs5("div", {
2069
- className: "flex items-center gap-4 pt-4",
2070
- children: [
2071
- /* @__PURE__ */ jsx5(Link5, {
2072
- href: "/docs/knowledge/categories",
2073
- className: "btn-ghost",
2074
- children: "Previous: Categories"
2075
- }),
2076
- /* @__PURE__ */ jsxs5(Link5, {
2077
- href: "/docs/knowledge/sources",
2078
- className: "btn-primary",
2079
- children: [
2080
- "Knowledge Sources ",
2081
- /* @__PURE__ */ jsx5(ChevronRight3, {
2082
- size: 16
2083
- })
2084
- ]
2085
- })
2086
- ]
2087
- })
2088
- ]
2089
- });
2090
- }
2091
- export {
2092
- KnowledgeSpacesPage,
2093
- KnowledgeSourcesPage,
2094
- KnowledgeOverviewPage,
2095
- KnowledgeExamplesPage,
2096
- KnowledgeCategoriesPage
2097
- };
388
+ }`})}),r("p",{className:"mt-2 text-muted-foreground text-sm",children:[o("strong",{children:"Use cases:"})," Conversation continuity, intermediate calculations, session state"]})]})]})]}),r("div",{className:"space-y-4",children:[o("h2",{className:"font-bold text-2xl",children:"Storage strategies"}),o("div",{className:"overflow-x-auto rounded-lg border border-border/50",children:r("table",{className:"w-full text-left text-sm",children:[o("thead",{className:"bg-card/50",children:r("tr",{className:"border-border/50 border-b",children:[o("th",{className:"px-4 py-3 font-semibold",children:"Strategy"}),o("th",{className:"px-4 py-3 font-semibold",children:"Best For"}),o("th",{className:"px-4 py-3 font-semibold",children:"Providers"})]})}),r("tbody",{className:"divide-y divide-border/50",children:[r("tr",{children:[o("td",{className:"px-4 py-3 font-mono text-xs",children:"vector"}),o("td",{className:"px-4 py-3",children:"Semantic search, RAG, similarity matching"}),o("td",{className:"px-4 py-3",children:"Qdrant, Pinecone, Weaviate"})]}),r("tr",{children:[o("td",{className:"px-4 py-3 font-mono text-xs",children:"search"}),o("td",{className:"px-4 py-3",children:"Keyword search, exact matching, filtering"}),o("td",{className:"px-4 py-3",children:"Elasticsearch, Algolia"})]}),r("tr",{children:[o("td",{className:"px-4 py-3 font-mono text-xs",children:"hybrid"}),o("td",{className:"px-4 py-3",children:"Combined semantic + keyword search"}),o("td",{className:"px-4 py-3",children:"Qdrant + Elasticsearch"})]})]})]})})]}),r("div",{className:"space-y-4",children:[o("h2",{className:"font-bold text-2xl",children:"Best practices"}),r("ul",{className:"list-inside list-disc space-y-2 text-muted-foreground",children:[o("li",{children:"Choose storage strategy based on query patterns - use vector for semantic, search for exact"}),o("li",{children:"Set appropriate retention policies - canonical is permanent, ephemeral is short-lived"}),o("li",{children:"Use consistent vector dimensions across spaces that will be queried together"}),o("li",{children:"Document the intended audience and use cases for each space"}),o("li",{children:"Monitor space size and query performance - add sharding if needed"})]})]}),r("div",{className:"flex items-center gap-4 pt-4",children:[o(h,{href:"/docs/knowledge/categories",className:"btn-ghost",children:"Previous: Categories"}),r(h,{href:"/docs/knowledge/sources",className:"btn-primary",children:["Knowledge Sources ",o(K,{size:16})]})]})]})}export{O as KnowledgeSpacesPage,P as KnowledgeSourcesPage,k as KnowledgeOverviewPage,v as KnowledgeExamplesPage,y as KnowledgeCategoriesPage};