@lucern/pack-host 0.1.0-alpha.2

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 (104) hide show
  1. package/README.md +64 -0
  2. package/dist/contracts.d.ts +77 -0
  3. package/dist/contracts.js +21 -0
  4. package/dist/contracts.js.map +1 -0
  5. package/dist/convex.config.d.ts +5 -0
  6. package/dist/convex.config.js +9 -0
  7. package/dist/convex.config.js.map +1 -0
  8. package/dist/dependencyResolution.d.ts +18 -0
  9. package/dist/dependencyResolution.js +131 -0
  10. package/dist/dependencyResolution.js.map +1 -0
  11. package/dist/domain-pack/authoring.d.ts +172 -0
  12. package/dist/domain-pack/authoring.js +1896 -0
  13. package/dist/domain-pack/authoring.js.map +1 -0
  14. package/dist/domain-pack/contracts.d.ts +183 -0
  15. package/dist/domain-pack/contracts.js +65 -0
  16. package/dist/domain-pack/contracts.js.map +1 -0
  17. package/dist/domain-pack/index.d.ts +8 -0
  18. package/dist/domain-pack/index.js +3813 -0
  19. package/dist/domain-pack/index.js.map +1 -0
  20. package/dist/domain-pack/ontology/software-entities-v1.d.ts +102 -0
  21. package/dist/domain-pack/ontology/software-entities-v1.js +104 -0
  22. package/dist/domain-pack/ontology/software-entities-v1.js.map +1 -0
  23. package/dist/domain-pack/packs/developer-reasoning.d.ts +14 -0
  24. package/dist/domain-pack/packs/developer-reasoning.js +339 -0
  25. package/dist/domain-pack/packs/developer-reasoning.js.map +1 -0
  26. package/dist/domain-pack/packs/engineering-accelerator.d.ts +11 -0
  27. package/dist/domain-pack/packs/engineering-accelerator.js +1348 -0
  28. package/dist/domain-pack/packs/engineering-accelerator.js.map +1 -0
  29. package/dist/domain-pack/packs/index.d.ts +18 -0
  30. package/dist/domain-pack/packs/index.js +2653 -0
  31. package/dist/domain-pack/packs/index.js.map +1 -0
  32. package/dist/domain-pack/shaping.d.ts +54 -0
  33. package/dist/domain-pack/shaping.js +1013 -0
  34. package/dist/domain-pack/shaping.js.map +1 -0
  35. package/dist/domain-pack/validation.d.ts +26 -0
  36. package/dist/domain-pack/validation.js +775 -0
  37. package/dist/domain-pack/validation.js.map +1 -0
  38. package/dist/domain-pack.d.ts +8 -0
  39. package/dist/domain-pack.js +3813 -0
  40. package/dist/domain-pack.js.map +1 -0
  41. package/dist/index.d.ts +29 -0
  42. package/dist/index.js +5520 -0
  43. package/dist/index.js.map +1 -0
  44. package/dist/lifecycle.d.ts +27 -0
  45. package/dist/lifecycle.js +98 -0
  46. package/dist/lifecycle.js.map +1 -0
  47. package/dist/manifestValidation.d.ts +28 -0
  48. package/dist/manifestValidation.js +253 -0
  49. package/dist/manifestValidation.js.map +1 -0
  50. package/dist/manifests/chat-v1.d.ts +10 -0
  51. package/dist/manifests/chat-v1.js +87 -0
  52. package/dist/manifests/chat-v1.js.map +1 -0
  53. package/dist/manifests/deals-v1.d.ts +10 -0
  54. package/dist/manifests/deals-v1.js +107 -0
  55. package/dist/manifests/deals-v1.js.map +1 -0
  56. package/dist/manifests/decisions-v1.d.ts +10 -0
  57. package/dist/manifests/decisions-v1.js +103 -0
  58. package/dist/manifests/decisions-v1.js.map +1 -0
  59. package/dist/manifests/documents-v1.d.ts +10 -0
  60. package/dist/manifests/documents-v1.js +88 -0
  61. package/dist/manifests/documents-v1.js.map +1 -0
  62. package/dist/manifests/epistemic-algorithms-v1.d.ts +10 -0
  63. package/dist/manifests/epistemic-algorithms-v1.js +107 -0
  64. package/dist/manifests/epistemic-algorithms-v1.js.map +1 -0
  65. package/dist/manifests/graph-visualization-v1.d.ts +10 -0
  66. package/dist/manifests/graph-visualization-v1.js +88 -0
  67. package/dist/manifests/graph-visualization-v1.js.map +1 -0
  68. package/dist/manifests/index.d.ts +23 -0
  69. package/dist/manifests/index.js +955 -0
  70. package/dist/manifests/index.js.map +1 -0
  71. package/dist/manifests/news-v1.d.ts +10 -0
  72. package/dist/manifests/news-v1.js +93 -0
  73. package/dist/manifests/news-v1.js.map +1 -0
  74. package/dist/manifests/philosophy-mode-v1.d.ts +10 -0
  75. package/dist/manifests/philosophy-mode-v1.js +100 -0
  76. package/dist/manifests/philosophy-mode-v1.js.map +1 -0
  77. package/dist/manifests/task-management-v1.d.ts +10 -0
  78. package/dist/manifests/task-management-v1.js +86 -0
  79. package/dist/manifests/task-management-v1.js.map +1 -0
  80. package/dist/manifests/team-analysis-v1.d.ts +10 -0
  81. package/dist/manifests/team-analysis-v1.js +93 -0
  82. package/dist/manifests/team-analysis-v1.js.map +1 -0
  83. package/dist/manifests/themes-v1.d.ts +10 -0
  84. package/dist/manifests/themes-v1.js +118 -0
  85. package/dist/manifests/themes-v1.js.map +1 -0
  86. package/dist/manifests/user-profiles-v1.d.ts +10 -0
  87. package/dist/manifests/user-profiles-v1.js +100 -0
  88. package/dist/manifests/user-profiles-v1.js.map +1 -0
  89. package/dist/manifests.d.ts +14 -0
  90. package/dist/manifests.js +955 -0
  91. package/dist/manifests.js.map +1 -0
  92. package/dist/namespacePolicy.d.ts +26 -0
  93. package/dist/namespacePolicy.js +129 -0
  94. package/dist/namespacePolicy.js.map +1 -0
  95. package/dist/registry.d.ts +13 -0
  96. package/dist/registry.js +1710 -0
  97. package/dist/registry.js.map +1 -0
  98. package/dist/runtime.d.ts +19 -0
  99. package/dist/runtime.js +638 -0
  100. package/dist/runtime.js.map +1 -0
  101. package/dist/serviceContracts.d.ts +18 -0
  102. package/dist/serviceContracts.js +64 -0
  103. package/dist/serviceContracts.js.map +1 -0
  104. package/package.json +48 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/contracts.ts","../src/manifests/chat-v1.ts","../src/manifests/deals-v1.ts","../src/manifests/decisions-v1.ts","../src/manifests/documents-v1.ts","../src/manifests/epistemic-algorithms-v1.ts","../src/manifests/graph-visualization-v1.ts","../src/manifests/news-v1.ts","../src/manifests/philosophy-mode-v1.ts","../src/manifests/task-management-v1.ts","../src/manifests/team-analysis-v1.ts","../src/manifests/themes-v1.ts","../src/manifests/user-profiles-v1.ts","../src/manifests/index.ts"],"names":[],"mappings":"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","file":"manifests.js","sourcesContent":["/**\n * App Pack Contracts\n *\n * Canonical type contracts for Lucern app-pack manifests and runtime metadata.\n */\n\nexport type PackLifecycle = \"active\" | \"beta\" | \"experimental\";\n\nexport type PackCategory =\n | \"conversation\"\n | \"research\"\n | \"graph\"\n | \"analytics\"\n | \"workflow\"\n | \"decision\"\n | \"news\"\n | \"documents\"\n | \"identity\"\n | \"operations\"\n | \"domain\";\n\nexport type PackAudience = string;\n\nexport type PolicyAction = \"read\" | \"summarize\" | \"export\" | \"mutate\" | \"admin\";\n\nexport type PolicyResource =\n | \"project\"\n | \"node\"\n | \"edge\"\n | \"artifact\"\n | \"report_section\"\n | \"tool_action\"\n | \"task\"\n | \"user_profile\"\n | \"team_analytics\";\n\nexport type ProjectionBehavior =\n | \"none\"\n | \"inherits_policy\"\n | \"projection_required\";\n\nexport type PackRuntimeStage =\n | \"registered\"\n | \"validated\"\n | \"installed\"\n | \"enabled\"\n | \"degraded\"\n | \"disabled\"\n | \"removed\";\n\nexport type SharedService =\n | \"decision-kernel\"\n | \"knowledge-compiler\"\n | \"learning-loop\";\n\nexport type SharedServiceMode = \"required\" | \"optional\";\n\nexport type RouteNamespace = {\n web: string[];\n api: string[];\n};\n\nexport type SurfaceOwnership = {\n components: string[];\n convex: string[];\n tools: string[];\n};\n\nexport type PolicyRule = {\n resource: PolicyResource;\n actions: PolicyAction[];\n notes?: string;\n};\n\nexport type PolicyProfile = {\n audiences: PackAudience[];\n rules: PolicyRule[];\n};\n\nexport type DataContract = {\n requiredNodeTypes: string[];\n requiredEdgeTypes: string[];\n requiredTables: string[];\n projectionBehavior: ProjectionBehavior;\n};\n\nexport type TemplateAssets = {\n workflows: string[];\n prompts: string[];\n reports: string[];\n uiLabels: string[];\n};\n\nexport type PackTestSuite = {\n parity: string[];\n policy: string[];\n contract: string[];\n};\n\nexport type SharedServiceIntegration = {\n service: SharedService;\n mode: SharedServiceMode;\n contracts: string[];\n};\n\nexport type AppPackManifest = {\n key: string;\n name: string;\n version: string;\n lifecycle: PackLifecycle;\n category: PackCategory;\n description: string;\n dependencies: string[];\n capabilityFlags: string[];\n routeNamespace: RouteNamespace;\n surfaces: SurfaceOwnership;\n policyProfile: PolicyProfile;\n dataContract: DataContract;\n templates: TemplateAssets;\n testSuite: PackTestSuite;\n sharedServices: SharedServiceIntegration[];\n};\n\ntype AppPackManifestInput = Omit<AppPackManifest, \"sharedServices\"> & {\n sharedServices?: SharedServiceIntegration[];\n};\n\nfunction normalizeStringArray(values: string[]): string[] {\n const normalized = values\n .map((value) => value.trim())\n .filter((value) => value.length > 0);\n return Array.from(new Set(normalized));\n}\n\nexport function defineAppPackManifest(\n manifest: AppPackManifestInput\n): AppPackManifest {\n const sharedServices = (manifest.sharedServices ?? []).map((integration) => ({\n ...integration,\n contracts: normalizeStringArray(integration.contracts),\n }));\n\n return {\n ...manifest,\n dependencies: normalizeStringArray(manifest.dependencies),\n capabilityFlags: normalizeStringArray(manifest.capabilityFlags),\n sharedServices,\n };\n}\n","/**\n * App Pack Manifest: chat-v1\n *\n * Declarative runtime contract for the chat-v1 application pack.\n */\n\nimport { defineAppPackManifest } from \"../contracts\";\n\nexport const chatV1Manifest = defineAppPackManifest({\n key: \"chat-v1\",\n name: \"Chat\",\n version: \"1.0.0\",\n lifecycle: \"active\",\n category: \"conversation\",\n description:\n \"Core conversational runtime, streaming orchestration, and tool invocation shell.\",\n dependencies: [],\n capabilityFlags: [\n \"chat.streaming\",\n \"chat.history\",\n \"tool.invocation\",\n \"slash.commands\",\n \"voice.mode\",\n ],\n routeNamespace: {\n web: [\"/(chat)/chat\", \"/(chat)/chat/[id]\"],\n api: [\n \"/(chat)/api/chat\",\n \"/(chat)/api/coach\",\n \"/(chat)/api/history\",\n \"/(chat)/api/suggestions\",\n \"/(chat)/api/vote\",\n ],\n },\n surfaces: {\n components: [\n \"components/chat/*\",\n \"components/chat/sidebars/*\",\n \"components/chat/viewers/*\",\n ],\n convex: [\"convex/chats.ts\", \"convex/messages.ts\", \"convex/chatState.ts\"],\n tools: [\"lib/ai/tools/project-tools.ts\"],\n },\n policyProfile: {\n audiences: [\"internal\", \"lp\", \"public\"],\n rules: [\n { resource: \"project\", actions: [\"read\", \"summarize\"] },\n {\n resource: \"tool_action\",\n actions: [\"read\", \"mutate\"],\n notes: \"Mutation tools must pass server-side policy checks.\",\n },\n { resource: \"artifact\", actions: [\"read\", \"summarize\"] },\n ],\n },\n dataContract: {\n requiredNodeTypes: [\"belief\", \"question\", \"evidence\", \"theme\", \"deal\"],\n requiredEdgeTypes: [\"informs\", \"answers\", \"belongs_to\"],\n requiredTables: [\"chats\", \"messages\", \"chatState\", \"projects\"],\n projectionBehavior: \"inherits_policy\",\n },\n templates: {\n workflows: [\"chat/default\", \"chat/voice-mode\"],\n prompts: [\"chat/main-system-prompt\", \"chat/voice-mode-style\"],\n reports: [],\n uiLabels: [\"chat\", \"assistant\", \"conversation\"],\n },\n testSuite: {\n parity: [\"chat-streaming-parity\", \"slash-command-parity\"],\n policy: [\"chat-context-filtering\", \"tool-deny-enforcement\"],\n contract: [\"chat-pack-contract-v1\"],\n },\n});\n","/**\n * App Pack Manifest: deals-v1\n *\n * Declarative runtime contract for the deals-v1 application pack.\n */\n\nimport { defineAppPackManifest } from \"../contracts\";\n\nexport const dealsV1Manifest = defineAppPackManifest({\n key: \"deals-v1\",\n name: \"Deals\",\n version: \"1.0.0\",\n lifecycle: \"beta\",\n category: \"domain\",\n description:\n \"Deal diligence application using shared reasoning graph primitives with deal-calibrated workflows.\",\n dependencies: [\n \"chat-v1\",\n \"documents-v1\",\n \"news-v1\",\n \"decisions-v1\",\n ],\n capabilityFlags: [\n \"deal.lifecycle\",\n \"diligence.workflow\",\n \"deal.risk-assessment\",\n \"decision.integration\",\n ],\n routeNamespace: {\n web: [\"/(projects)/projects\", \"/(projects)/projects/[projectId]\"],\n api: [\"/api/research/*\", \"/api/tasks/*\", \"/api/reports/*\"],\n },\n surfaces: {\n components: [\n \"app/(projects)/projects/page.tsx\",\n \"components/project/*\",\n \"components/workspace/views/*\",\n ],\n convex: [\"convex/projects.ts\", \"convex/epistemicDecisions.ts\"],\n tools: [\n \"lib/ai/tools/navigation-tools.ts\",\n \"lib/ai/tools/decision-tools.ts\",\n ],\n },\n policyProfile: {\n audiences: [\"internal\", \"lp\"],\n rules: [\n { resource: \"project\", actions: [\"read\", \"summarize\", \"mutate\"] },\n { resource: \"node\", actions: [\"read\", \"summarize\", \"mutate\"] },\n { resource: \"artifact\", actions: [\"read\", \"summarize\", \"export\"] },\n { resource: \"tool_action\", actions: [\"read\", \"mutate\"] },\n ],\n },\n dataContract: {\n requiredNodeTypes: [\"deal\", \"belief\", \"question\", \"evidence\", \"decision\"],\n requiredEdgeTypes: [\n \"evaluates\",\n \"informs\",\n \"depends_on\",\n \"based_on_belief\",\n ],\n requiredTables: [\n \"projects\",\n \"epistemicNodes\",\n \"epistemicEdges\",\n \"decisionEvents\",\n ],\n projectionBehavior: \"projection_required\",\n },\n templates: {\n workflows: [\"deals/diligence-default\", \"deals/ic-prep\"],\n prompts: [\"deals/main-system-prompt\", \"deals/risk-ledger-draft\"],\n reports: [\"deal-memo\", \"knowledge-map\"],\n uiLabels: [\"deal\", \"diligence\", \"investment_case\", \"ic_readiness\"],\n },\n testSuite: {\n parity: [\"deal-workflow-parity\"],\n policy: [\"deal-data-audience-filtering\"],\n contract: [\"deals-pack-contract-v1\"],\n },\n sharedServices: [\n {\n service: \"decision-kernel\",\n mode: \"required\",\n contracts: [\"decision-kernel-v1\"],\n },\n {\n service: \"knowledge-compiler\",\n mode: \"required\",\n contracts: [\"knowledge-compiler-v1\"],\n },\n ],\n});\n","/**\n * App Pack Manifest: decisions-v1\n *\n * Declarative runtime contract for the decisions-v1 application pack.\n */\n\nimport { defineAppPackManifest } from \"../contracts\";\n\nexport const decisionsV1Manifest = defineAppPackManifest({\n key: \"decisions-v1\",\n name: \"Decisions\",\n version: \"1.0.0\",\n lifecycle: \"beta\",\n category: \"decision\",\n description:\n \"Graph-native decision workflow with belief-level voting, risk ledgers, and snapshot locking.\",\n dependencies: [\"epistemic-algorithms-v1\"],\n capabilityFlags: [\n \"decision.workflow\",\n \"belief.level-voting\",\n \"risk.ledger\",\n \"decision.snapshot\",\n ],\n routeNamespace: {\n web: [\"/(projects)/projects/[projectId]/decisions\"],\n api: [\"/api/thesis-audit/*\", \"/api/reports/*\"],\n },\n surfaces: {\n components: [\"app/(projects)/projects/[projectId]/decisions/page.tsx\"],\n convex: [\"convex/epistemicDecisions.ts\", \"convex/convictionEngine.ts\"],\n tools: [\n \"lib/ai/tools/decision-tools.ts\",\n \"lib/ai/tools/conviction-tools.ts\",\n ],\n },\n policyProfile: {\n audiences: [\"internal\", \"lp\"],\n rules: [\n { resource: \"project\", actions: [\"read\", \"summarize\", \"mutate\"] },\n { resource: \"node\", actions: [\"read\", \"summarize\", \"mutate\"] },\n { resource: \"edge\", actions: [\"read\", \"mutate\"] },\n { resource: \"artifact\", actions: [\"read\", \"export\"] },\n ],\n },\n dataContract: {\n requiredNodeTypes: [\"decision\", \"belief\", \"question\", \"evidence\", \"theme\"],\n requiredEdgeTypes: [\n \"based_on_belief\",\n \"based_on_question\",\n \"informed_by_theme\",\n \"blocked_by_contradiction\",\n ],\n requiredTables: [\n \"epistemicNodes\",\n \"epistemicEdges\",\n \"decisionEvents\",\n \"beliefVotes\",\n \"decisionRiskLedger\",\n \"decisionSnapshots\",\n ],\n projectionBehavior: \"projection_required\",\n },\n templates: {\n workflows: [\"decisions/pre-ic\", \"decisions/in-ic\", \"decisions/post-ic\"],\n prompts: [\n \"decisions/main-system-prompt\",\n \"decisions/risk-ledger-assistant\",\n ],\n reports: [\"decision-brief\", \"ic-memo\"],\n uiLabels: [\"decision\", \"risk_ledger\", \"vote_map\", \"snapshot\"],\n },\n testSuite: {\n parity: [\"decision-flow-parity\"],\n policy: [\"decision-lineage-visibility\"],\n contract: [\"decisions-pack-contract-v1\"],\n },\n sharedServices: [\n {\n service: \"decision-kernel\",\n mode: \"required\",\n contracts: [\"decision-kernel-v1\"],\n },\n {\n service: \"knowledge-compiler\",\n mode: \"required\",\n contracts: [\"knowledge-compiler-v1\"],\n },\n ],\n});\n","/**\n * App Pack Manifest: documents-v1\n *\n * Declarative runtime contract for the documents-v1 application pack.\n */\n\nimport { defineAppPackManifest } from \"../contracts\";\n\nexport const documentsV1Manifest = defineAppPackManifest({\n key: \"documents-v1\",\n name: \"Documents\",\n version: \"1.0.0\",\n lifecycle: \"active\",\n category: \"documents\",\n description:\n \"Document upload, extraction, annotation, and conversion into graph-grounded evidence.\",\n dependencies: [\"chat-v1\"],\n capabilityFlags: [\n \"document.ingestion\",\n \"document.extraction\",\n \"document.annotation\",\n \"document.rag\",\n ],\n routeNamespace: {\n web: [\n \"/(projects)/projects/[projectId]/documents\",\n \"/(projects)/projects/[projectId]/documents/[documentId]\",\n ],\n api: [\"/api/documents/*\", \"/api/rag/document\", \"/api/rag/extract-pdf\"],\n },\n surfaces: {\n components: [\"components/documents/*\", \"components/document/*\"],\n convex: [\n \"convex/projectDocuments.ts\",\n \"convex/documents.ts\",\n \"convex/documentAnnotations.ts\",\n \"convex/projectDocumentsActions.ts\",\n ],\n tools: [\"lib/ai/tools/create-document.ts\"],\n },\n policyProfile: {\n audiences: [\"internal\", \"lp\"],\n rules: [\n { resource: \"artifact\", actions: [\"read\", \"summarize\", \"mutate\"] },\n { resource: \"project\", actions: [\"read\", \"summarize\", \"mutate\"] },\n { resource: \"tool_action\", actions: [\"read\", \"mutate\"] },\n ],\n },\n dataContract: {\n requiredNodeTypes: [\"source\", \"excerpt\", \"evidence\", \"synthesis\"],\n requiredEdgeTypes: [\"extracted_from\", \"based_on\", \"informs\"],\n requiredTables: [\n \"projectDocuments\",\n \"projectDocumentsSyncLog\",\n \"documentAnnotations\",\n \"epistemicNodes\",\n ],\n projectionBehavior: \"inherits_policy\",\n },\n templates: {\n workflows: [\n \"documents/upload-extract-link\",\n \"documents/annotate-to-evidence\",\n ],\n prompts: [\"documents/extraction\", \"documents/summarization\"],\n reports: [],\n uiLabels: [\"documents\", \"annotations\", \"excerpts\", \"sources\"],\n },\n testSuite: {\n parity: [\"documents-page-parity\"],\n policy: [\"document-access-enforcement\"],\n contract: [\"documents-pack-contract-v1\"],\n },\n});\n","/**\n * App Pack Manifest: epistemic-algorithms-v1\n *\n * Declarative runtime contract for the epistemic-algorithms-v1 application pack.\n */\n\nimport { defineAppPackManifest } from \"../contracts\";\n\nexport const epistemicAlgorithmsV1Manifest = defineAppPackManifest({\n key: \"epistemic-algorithms-v1\",\n name: \"Epistemic Algorithms\",\n version: \"1.0.0\",\n lifecycle: \"active\",\n category: \"analytics\",\n description:\n \"Reasoning quality engines: contradiction detection, conviction dynamics, and graph intelligence analytics.\",\n dependencies: [\"graph-visualization-v1\", \"chat-v1\"],\n capabilityFlags: [\n \"contradiction.detection\",\n \"conviction.analytics\",\n \"reasoning.depth\",\n \"bias.detection\",\n ],\n routeNamespace: {\n web: [\n \"/(projects)/projects/[projectId]/contradictions\",\n \"/(projects)/projects/[projectId]/thesis-audit\",\n ],\n api: [\"/api/thesis-audit\", \"/api/graph-explain\", \"/api/lucern/*\"],\n },\n surfaces: {\n components: [\"components/epistemic/*\", \"components/contradiction/*\"],\n convex: [\n \"convex/contradictions.ts\",\n \"convex/convictionEngine.ts\",\n \"convex/graphIntelligence.ts\",\n \"convex/thesisAuditAgents.ts\",\n ],\n tools: [\"lib/ai/tools/graph-intelligence-tools.ts\"],\n },\n policyProfile: {\n audiences: [\"internal\", \"lp\"],\n rules: [\n { resource: \"node\", actions: [\"read\", \"summarize\"] },\n { resource: \"edge\", actions: [\"read\", \"summarize\"] },\n { resource: \"artifact\", actions: [\"read\", \"summarize\", \"export\"] },\n ],\n },\n dataContract: {\n requiredNodeTypes: [\"belief\", \"question\", \"evidence\", \"theme\", \"decision\"],\n requiredEdgeTypes: [\n \"informs\",\n \"contradicts\",\n \"depends_on\",\n \"strengthened_by\",\n \"weakened_by\",\n \"collapses_if\",\n ],\n requiredTables: [\n \"contradictions\",\n \"beliefConfidence\",\n \"epistemicAudit\",\n \"graphAnalysisResults\",\n ],\n projectionBehavior: \"inherits_policy\",\n },\n templates: {\n workflows: [\"epistemic/contradiction-resolution\", \"epistemic/thesis-audit\"],\n prompts: [\n \"graph-intelligence/full-guide\",\n \"graph-intelligence/bias-detection\",\n ],\n reports: [\"knowledge_map\"],\n uiLabels: [\n \"contradiction\",\n \"conviction\",\n \"thesis_audit\",\n \"epistemic_health\",\n ],\n },\n testSuite: {\n parity: [\"epistemic-algorithm-output-parity\"],\n policy: [\"epistemic-output-scope-filtering\"],\n contract: [\"epistemic-algorithms-pack-contract-v1\"],\n },\n sharedServices: [\n {\n service: \"knowledge-compiler\",\n mode: \"required\",\n contracts: [\"knowledge-compiler-v1\"],\n },\n ],\n});\n","/**\n * App Pack Manifest: graph-visualization-v1\n *\n * Declarative runtime contract for the graph-visualization-v1 application pack.\n */\n\nimport { defineAppPackManifest } from \"../contracts\";\n\nexport const graphVisualizationV1Manifest = defineAppPackManifest({\n key: \"graph-visualization-v1\",\n name: \"Graph Visualization\",\n version: \"1.0.0\",\n lifecycle: \"active\",\n category: \"graph\",\n description:\n \"Interactive graph explorer for node/edge traversal, neighborhood inspection, and query rendering.\",\n dependencies: [\"chat-v1\"],\n capabilityFlags: [\n \"graph.rendering\",\n \"graph.query\",\n \"graph.highlighting\",\n \"graph.neighborhood\",\n ],\n routeNamespace: {\n web: [\"/(projects)/projects/[projectId]/graph\"],\n api: [\"/api/graph\", \"/api/graph-query\", \"/api/graph-suggestions\"],\n },\n surfaces: {\n components: [\n \"app/(projects)/projects/[projectId]/graph/components/*\",\n \"components/workspace/views/ProjectHomeView.tsx\",\n ],\n convex: [\"convex/epistemicQueries.ts\", \"convex/neo4jQueries.ts\"],\n tools: [\n \"lib/ai/tools/knowledge-graph-tools.ts\",\n \"lib/ai/tools/cypher-tools.ts\",\n ],\n },\n policyProfile: {\n audiences: [\"internal\", \"lp\"],\n rules: [\n { resource: \"node\", actions: [\"read\", \"summarize\"] },\n { resource: \"edge\", actions: [\"read\", \"summarize\"] },\n { resource: \"tool_action\", actions: [\"read\"] },\n ],\n },\n dataContract: {\n requiredNodeTypes: [\n \"belief\",\n \"question\",\n \"evidence\",\n \"theme\",\n \"deal\",\n \"decision\",\n ],\n requiredEdgeTypes: [\"informs\", \"answers\", \"belongs_to\", \"depends_on\"],\n requiredTables: [\"epistemicNodes\", \"epistemicEdges\"],\n projectionBehavior: \"inherits_policy\",\n },\n templates: {\n workflows: [\"graph/query-and-traverse\"],\n prompts: [\n \"graph-intelligence/query\",\n \"graph-intelligence/suggestions-extraction\",\n ],\n reports: [],\n uiLabels: [\"graph\", \"nodes\", \"edges\", \"lineage\"],\n },\n testSuite: {\n parity: [\"graph-query-parity\", \"graph-render-parity\"],\n policy: [\"graph-node-visibility-filtering\"],\n contract: [\"graph-visualization-pack-contract-v1\"],\n },\n});\n","/**\n * App Pack Manifest: news-v1\n *\n * Declarative runtime contract for the news-v1 application pack.\n */\n\nimport { defineAppPackManifest } from \"../contracts\";\n\nexport const newsV1Manifest = defineAppPackManifest({\n key: \"news-v1\",\n name: \"News\",\n version: \"1.0.0\",\n lifecycle: \"active\",\n category: \"news\",\n description:\n \"News ingestion, curation, and contextual linkage into the reasoning graph.\",\n dependencies: [\"chat-v1\"],\n capabilityFlags: [\n \"news.search\",\n \"news.ingestion\",\n \"news.curation\",\n \"news.graph-linkage\",\n ],\n routeNamespace: {\n web: [\n \"/(projects)/projects/[projectId]/news-v3\",\n \"/(projects)/projects/[projectId]/news-v3/[articleId]\",\n ],\n api: [\"/api/news/search\", \"/api/intelligence/smart-news-search\"],\n },\n surfaces: {\n components: [\"components/news/*\"],\n convex: [\n \"convex/projectNews.ts\",\n \"convex/newsArticles.ts\",\n \"convex/newsCurationJobs.ts\",\n \"convex/articleCache.ts\",\n ],\n tools: [\"lib/ai/tools/research-tools.ts\"],\n },\n policyProfile: {\n audiences: [\"internal\", \"lp\", \"public\"],\n rules: [\n { resource: \"project\", actions: [\"read\", \"summarize\", \"mutate\"] },\n { resource: \"artifact\", actions: [\"read\", \"summarize\", \"export\"] },\n { resource: \"node\", actions: [\"read\", \"summarize\"] },\n ],\n },\n dataContract: {\n requiredNodeTypes: [\"source\", \"evidence\", \"synthesis\", \"theme\", \"deal\"],\n requiredEdgeTypes: [\"extracted_from\", \"informs\", \"belongs_to\"],\n requiredTables: [\n \"projectNews\",\n \"savedNewsArticles\",\n \"newsCurationJobs\",\n \"articleCache\",\n \"epistemicNodes\",\n ],\n projectionBehavior: \"inherits_policy\",\n },\n templates: {\n workflows: [\"news/search-import-curate\", \"news/evidence-linking\"],\n prompts: [\"news/summary\", \"news/relevance-scoring\"],\n reports: [\"news-digest\"],\n uiLabels: [\"news\", \"articles\", \"curation\", \"signals\"],\n },\n testSuite: {\n parity: [\"news-v3-parity\"],\n policy: [\"news-audience-redaction\"],\n contract: [\"news-pack-contract-v1\"],\n },\n sharedServices: [\n {\n service: \"knowledge-compiler\",\n mode: \"required\",\n contracts: [\"knowledge-compiler-v1\"],\n },\n ],\n});\n","/**\n * App Pack Manifest: philosophy-mode-v1\n *\n * Declarative runtime contract for the philosophy-mode-v1 application pack.\n */\n\nimport { defineAppPackManifest } from \"../contracts\";\n\nexport const philosophyModeV1Manifest = defineAppPackManifest({\n key: \"philosophy-mode-v1\",\n name: \"Philosophy Mode\",\n version: \"1.0.0\",\n lifecycle: \"active\",\n category: \"domain\",\n description:\n \"Investor worldview extraction, archetype synthesis, and philosophy profile management.\",\n dependencies: [\"chat-v1\", \"user-profiles-v1\"],\n capabilityFlags: [\n \"philosophy.extraction\",\n \"philosophy.profiles\",\n \"archetype.classification\",\n \"worldview.synthesis\",\n ],\n routeNamespace: {\n web: [\"/(chat)/chat/[id]\"],\n api: [\n \"/api/philosophy/detect\",\n \"/api/philosophy/extract\",\n \"/api/philosophy/get-profile\",\n \"/api/philosophy/ingest\",\n \"/api/philosophy/synthesize\",\n ],\n },\n surfaces: {\n components: [\n \"components/chat/sidebars/PhilosophyModeSidebar.tsx\",\n \"components/philosophy/ArchetypeDisplay.tsx\",\n ],\n convex: [\n \"convex/philosophy.ts\",\n \"convex/philosophyQueries.ts\",\n \"convex/projectPhilosophy.ts\",\n ],\n tools: [\"lib/ai/tools/philosophy-tools.ts\"],\n },\n policyProfile: {\n audiences: [\"internal\"],\n rules: [\n { resource: \"user_profile\", actions: [\"read\", \"mutate\"] },\n { resource: \"project\", actions: [\"read\", \"summarize\"] },\n { resource: \"tool_action\", actions: [\"read\", \"mutate\"] },\n ],\n },\n dataContract: {\n requiredNodeTypes: [\"belief\", \"question\", \"theme\"],\n requiredEdgeTypes: [\"belongs_to\", \"relates_to_thesis\"],\n requiredTables: [\n \"marketPhilosophyProfiles\",\n \"marketPhilosophyAtoms\",\n \"marketPhilosophyContent\",\n \"philosophyUploads\",\n ],\n projectionBehavior: \"inherits_policy\",\n },\n templates: {\n workflows: [\"philosophy/conversation-to-profile\"],\n prompts: [\n \"philosophy/deep-thinker\",\n \"philosophy/welcome-back\",\n \"philosophy/detect-philosophical-statement\",\n \"philosophy/content-classifier\",\n \"philosophy/atom-extractor\",\n \"philosophy/summarize-investor-profile\",\n \"philosophy/team-aggregator\",\n \"philosophy/market-synthesis\",\n \"thematic/extractor\",\n ],\n reports: [],\n uiLabels: [\"philosophy_mode\", \"investor_worldview\", \"archetype\"],\n },\n testSuite: {\n parity: [\"philosophy-profile-parity\"],\n policy: [\"philosophy-profile-isolation\"],\n contract: [\"philosophy-pack-contract-v1\"],\n },\n});\n","/**\n * App Pack Manifest: task-management-v1\n *\n * Declarative runtime contract for the task-management-v1 application pack.\n */\n\nimport { defineAppPackManifest } from \"../contracts\";\n\nexport const taskManagementV1Manifest = defineAppPackManifest({\n key: \"task-management-v1\",\n name: \"Task Management\",\n version: \"1.0.0\",\n lifecycle: \"active\",\n category: \"operations\",\n description:\n \"Operational task system linked to beliefs, questions, worktrees, and AI-assisted execution.\",\n dependencies: [\"chat-v1\"],\n capabilityFlags: [\n \"task.lifecycle\",\n \"task.assignment\",\n \"task.attachments\",\n \"task.ai-execution\",\n \"task.evidence-capture\",\n ],\n routeNamespace: {\n web: [\"/(projects)/projects/[projectId]/tasks\"],\n api: [\n \"/api/tasks/execute\",\n \"/api/tasks/execute-workflow\",\n \"/api/tasks/refresh-call-script\",\n ],\n },\n surfaces: {\n components: [\"components/task/*\"],\n convex: [\n \"convex/tasks.ts\",\n \"convex/_taskHelpers.ts\",\n \"convex/_taskQueryLogic.ts\",\n ],\n tools: [\"lib/ai/tools/task-tools.ts\"],\n },\n policyProfile: {\n audiences: [\"internal\", \"lp\"],\n rules: [\n { resource: \"task\", actions: [\"read\", \"mutate\", \"admin\"] },\n { resource: \"project\", actions: [\"read\", \"summarize\", \"mutate\"] },\n { resource: \"tool_action\", actions: [\"read\", \"mutate\"] },\n { resource: \"artifact\", actions: [\"read\", \"summarize\", \"mutate\"] },\n ],\n },\n dataContract: {\n requiredNodeTypes: [\"belief\", \"question\", \"evidence\", \"synthesis\"],\n requiredEdgeTypes: [\"informs\", \"tests\", \"belongs_to\"],\n requiredTables: [\"tasks\", \"projects\", \"epistemicNodes\", \"epistemicEdges\"],\n projectionBehavior: \"inherits_policy\",\n },\n templates: {\n workflows: [\n \"tasks/research-plan\",\n \"tasks/execution-loop\",\n \"tasks/evidence-capture\",\n ],\n prompts: [\"tasks/call-script\", \"tasks/research-plan-generator\"],\n reports: [],\n uiLabels: [\"tasks\", \"assignee\", \"checklist\", \"workflow_status\"],\n },\n testSuite: {\n parity: [\"task-management-parity\"],\n policy: [\"task-project-access-enforcement\"],\n contract: [\"task-management-pack-contract-v1\"],\n },\n});\n","/**\n * App Pack Manifest: team-analysis-v1\n *\n * Declarative runtime contract for the team-analysis-v1 application pack.\n */\n\nimport { defineAppPackManifest } from \"../contracts\";\n\nexport const teamAnalysisV1Manifest = defineAppPackManifest({\n key: \"team-analysis-v1\",\n name: \"Team Analysis\",\n version: \"1.0.0\",\n lifecycle: \"active\",\n category: \"analytics\",\n description:\n \"Team-level behavioral analytics, archetype distribution, and comparative operating patterns.\",\n dependencies: [\"user-profiles-v1\"],\n capabilityFlags: [\n \"team.analytics\",\n \"team.behavioral-summary\",\n \"team.archetype-distribution\",\n \"team.activity-heatmap\",\n ],\n routeNamespace: {\n web: [\"/(team)/team\"],\n api: [\"/api/coaching/*\"],\n },\n surfaces: {\n components: [\"components/charts/*\", \"components/coaching/*\"],\n convex: [\n \"convex/users.ts\",\n \"convex/userAnalytics.ts\",\n \"convex/projectCards.ts\",\n ],\n tools: [],\n },\n policyProfile: {\n audiences: [\"internal\", \"tenant_admin\"],\n rules: [\n { resource: \"team_analytics\", actions: [\"read\", \"admin\"] },\n { resource: \"user_profile\", actions: [\"read\"] },\n { resource: \"project\", actions: [\"read\"] },\n ],\n },\n dataContract: {\n requiredNodeTypes: [\"belief\", \"question\", \"evidence\"],\n requiredEdgeTypes: [\"informs\", \"tests\"],\n requiredTables: [\n \"users\",\n \"userEpistemicJourney\",\n \"epistemicAudit\",\n \"proposalEvents\",\n \"biSuggestions\",\n \"beliefConfidence\",\n \"contradictions\",\n \"worktrees\",\n \"tasks\",\n ],\n projectionBehavior: \"none\",\n },\n templates: {\n workflows: [\"team/behavioral-summary\", \"team/coverage-gap-analysis\"],\n prompts: [\"coaching/team-summary\", \"coaching/team-recommendations\"],\n reports: [\"team-operating-review\"],\n uiLabels: [\"team\", \"behavior\", \"distribution\", \"coverage\"],\n },\n testSuite: {\n parity: [\"team-page-parity\"],\n policy: [\"team-analytics-admin-scope\"],\n contract: [\"team-analysis-pack-contract-v1\"],\n },\n sharedServices: [\n {\n service: \"knowledge-compiler\",\n mode: \"required\",\n contracts: [\"knowledge-compiler-v1\"],\n },\n ],\n});\n","/**\n * App Pack Manifest: themes-v1\n *\n * Declarative runtime contract for the themes-v1 application pack.\n */\n\nimport { defineAppPackManifest } from \"../contracts\";\n\nexport const themesV1Manifest = defineAppPackManifest({\n key: \"themes-v1\",\n name: \"Themes\",\n version: \"1.0.0\",\n lifecycle: \"active\",\n category: \"domain\",\n description:\n \"Thematic research lifecycle built on graph primitives, worktree workflows, and conviction analytics.\",\n dependencies: [\n \"chat-v1\",\n \"epistemic-algorithms-v1\",\n \"news-v1\",\n \"documents-v1\",\n ],\n capabilityFlags: [\n \"theme.lifecycle\",\n \"belief.question.evidence\",\n \"thesis.development\",\n \"reporting\",\n ],\n routeNamespace: {\n web: [\n \"/(projects)/projects\",\n \"/(projects)/projects/[projectId]\",\n \"/(projects)/projects/[projectId]/beliefs-v2\",\n \"/(projects)/projects/[projectId]/questions\",\n \"/(projects)/projects/[projectId]/research\",\n \"/(projects)/projects/[projectId]/reports\",\n ],\n api: [\"/api/research/*\", \"/api/reports/*\", \"/api/questions/*\"],\n },\n surfaces: {\n components: [\n \"components/project/*\",\n \"components/belief/*\",\n \"components/question/*\",\n \"components/research/*\",\n \"components/reports/*\",\n ],\n convex: [\n \"convex/themes.ts\",\n \"convex/projects.ts\",\n \"convex/thematicWorkflow.ts\",\n \"convex/reports.ts\",\n ],\n tools: [\n \"lib/ai/tools/belief-tools.ts\",\n \"lib/ai/tools/question-tools.ts\",\n \"lib/ai/tools/navigation-tools.ts\",\n ],\n },\n policyProfile: {\n audiences: [\"internal\", \"lp\", \"public\"],\n rules: [\n { resource: \"project\", actions: [\"read\", \"summarize\", \"mutate\"] },\n { resource: \"node\", actions: [\"read\", \"summarize\", \"mutate\"] },\n { resource: \"edge\", actions: [\"read\", \"mutate\"] },\n { resource: \"report_section\", actions: [\"read\", \"summarize\", \"export\"] },\n ],\n },\n dataContract: {\n requiredNodeTypes: [\"theme\", \"belief\", \"question\", \"evidence\", \"synthesis\"],\n requiredEdgeTypes: [\"belongs_to\", \"relates_to_thesis\", \"informs\", \"tests\"],\n requiredTables: [\n \"projects\",\n \"epistemicNodes\",\n \"epistemicEdges\",\n \"reports\",\n \"reportSections\",\n \"reportTemplates\",\n ],\n projectionBehavior: \"projection_required\",\n },\n templates: {\n workflows: [\"themes/default-lifecycle\", \"themes/worktree-thesis-loop\"],\n prompts: [\n \"thematic/extractor\",\n \"reports/thematic-long-form/thesis-statement\",\n \"reports/thematic-long-form/belief-map\",\n ],\n reports: [\"thematic-long-form\", \"knowledge-map\"],\n uiLabels: [\"theme\", \"belief\", \"question\", \"evidence\", \"conviction\"],\n },\n testSuite: {\n parity: [\"themes-v1-parity-against-current\"],\n policy: [\"theme-compilation-entitlement-filtering\"],\n contract: [\"themes-pack-contract-v1\"],\n },\n sharedServices: [\n {\n service: \"knowledge-compiler\",\n mode: \"required\",\n contracts: [\"knowledge-compiler-v1\"],\n },\n ],\n});\n","/**\n * App Pack Manifest: user-profiles-v1\n *\n * Declarative runtime contract for the user-profiles-v1 application pack.\n */\n\nimport { defineAppPackManifest } from \"../contracts\";\n\nexport const userProfilesV1Manifest = defineAppPackManifest({\n key: \"user-profiles-v1\",\n name: \"User Profiles\",\n version: \"1.0.0\",\n lifecycle: \"active\",\n category: \"identity\",\n description:\n \"Individual cognition and operating profile layer including journey progression, archetypes, and behavioral telemetry.\",\n dependencies: [],\n capabilityFlags: [\n \"user.profile\",\n \"user.journey\",\n \"user.analytics\",\n \"voice.preferences\",\n ],\n routeNamespace: {\n web: [\"/(team)/team/[userId]\"],\n api: [\"/api/philosophy/get-profile\", \"/api/mobile/v1/session\"],\n },\n surfaces: {\n components: [\n \"components/user/*\",\n \"components/philosophy/ArchetypeDisplay.tsx\",\n ],\n convex: [\n \"convex/users.ts\",\n \"convex/userJourney.ts\",\n \"convex/userSessions.ts\",\n \"convex/userAnalytics.ts\",\n ],\n tools: [],\n },\n policyProfile: {\n audiences: [\"internal\", \"tenant_admin\"],\n rules: [\n {\n resource: \"user_profile\",\n actions: [\"read\", \"mutate\"],\n notes: \"Users can edit self; tenant admins can read broader profiles.\",\n },\n { resource: \"project\", actions: [\"read\"] },\n { resource: \"team_analytics\", actions: [\"read\"] },\n ],\n },\n dataContract: {\n requiredNodeTypes: [],\n requiredEdgeTypes: [],\n requiredTables: [\n \"users\",\n \"userEpistemicJourney\",\n \"userSessions\",\n \"investorProfiles\",\n \"investorProfileAtoms\",\n \"voiceProfiles\",\n \"userVoiceSettings\",\n \"archetypeHistory\",\n ],\n projectionBehavior: \"none\",\n },\n templates: {\n workflows: [\"user/profile-synthesis\", \"user/journey-update\"],\n prompts: [\"coaching/user-eval\", \"philosophy/profile-synthesis\"],\n reports: [\"user-profile-summary\"],\n uiLabels: [\"profile\", \"journey\", \"archetype\", \"calibration\"],\n },\n testSuite: {\n parity: [\"user-profile-page-parity\"],\n policy: [\"user-profile-self-vs-admin-access\"],\n contract: [\"user-profiles-pack-contract-v1\"],\n },\n sharedServices: [\n {\n service: \"knowledge-compiler\",\n mode: \"required\",\n contracts: [\"knowledge-compiler-v1\"],\n },\n ],\n});\n","/**\n * App Pack Manifest Exports\n *\n * Aggregated exports for versioned app-pack manifests.\n */\n\nimport type { AppPackManifest } from \"../contracts\";\nimport { chatV1Manifest } from \"./chat-v1\";\nimport { dealsV1Manifest } from \"./deals-v1\";\nimport { decisionsV1Manifest } from \"./decisions-v1\";\nimport { documentsV1Manifest } from \"./documents-v1\";\nimport { epistemicAlgorithmsV1Manifest } from \"./epistemic-algorithms-v1\";\nimport { graphVisualizationV1Manifest } from \"./graph-visualization-v1\";\nimport { newsV1Manifest } from \"./news-v1\";\nimport { philosophyModeV1Manifest } from \"./philosophy-mode-v1\";\nimport { taskManagementV1Manifest } from \"./task-management-v1\";\nimport { teamAnalysisV1Manifest } from \"./team-analysis-v1\";\nimport { themesV1Manifest } from \"./themes-v1\";\nimport { userProfilesV1Manifest } from \"./user-profiles-v1\";\n\nexport {\n chatV1Manifest,\n decisionsV1Manifest,\n dealsV1Manifest,\n documentsV1Manifest,\n epistemicAlgorithmsV1Manifest,\n graphVisualizationV1Manifest,\n newsV1Manifest,\n philosophyModeV1Manifest,\n taskManagementV1Manifest,\n teamAnalysisV1Manifest,\n themesV1Manifest,\n userProfilesV1Manifest,\n};\n\nexport const allAppPackManifests: AppPackManifest[] = [\n philosophyModeV1Manifest,\n chatV1Manifest,\n graphVisualizationV1Manifest,\n epistemicAlgorithmsV1Manifest,\n themesV1Manifest,\n dealsV1Manifest,\n decisionsV1Manifest,\n newsV1Manifest,\n documentsV1Manifest,\n userProfilesV1Manifest,\n teamAnalysisV1Manifest,\n taskManagementV1Manifest,\n];\n"]}
@@ -0,0 +1,26 @@
1
+ import { AppPackManifest } from './contracts.js';
2
+ import { PackValidationIssue } from './manifestValidation.js';
3
+
4
+ /**
5
+ * Pack Namespace Collision Policy
6
+ *
7
+ * Enforces explicit allowlisting for cross-pack route namespace sharing.
8
+ */
9
+
10
+ type NamespaceSurface = "web" | "api";
11
+ type NamespaceCollision = {
12
+ surface: NamespaceSurface;
13
+ namespace: string;
14
+ packKeys: string[];
15
+ };
16
+ type NamespaceCollisionAllowlistEntry = {
17
+ surface: NamespaceSurface;
18
+ namespace: string;
19
+ allowedPackKeys: string[];
20
+ rationale: string;
21
+ };
22
+ declare const PACK_NAMESPACE_COLLISION_ALLOWLIST: NamespaceCollisionAllowlistEntry[];
23
+ declare function detectNamespaceCollisions(manifests: AppPackManifest[]): NamespaceCollision[];
24
+ declare function validatePackNamespacePolicies(manifests: AppPackManifest[]): PackValidationIssue[];
25
+
26
+ export { type NamespaceCollision, type NamespaceCollisionAllowlistEntry, type NamespaceSurface, PACK_NAMESPACE_COLLISION_ALLOWLIST, detectNamespaceCollisions, validatePackNamespacePolicies };
@@ -0,0 +1,129 @@
1
+ // src/namespacePolicy.ts
2
+ var PACK_NAMESPACE_COLLISION_ALLOWLIST = [
3
+ {
4
+ surface: "web",
5
+ namespace: "/(chat)/chat/[id]",
6
+ allowedPackKeys: ["chat-v1", "philosophy-mode-v1"],
7
+ rationale: "Philosophy mode extends the chat surface and intentionally shares the chat detail route."
8
+ },
9
+ {
10
+ surface: "web",
11
+ namespace: "/(projects)/projects",
12
+ allowedPackKeys: ["deals-v1", "themes-v1"],
13
+ rationale: "Deals and themes intentionally share the topic index shell mounted under the legacy /projects customer-zero shell."
14
+ },
15
+ {
16
+ surface: "web",
17
+ namespace: "/(projects)/projects/[projectId]",
18
+ allowedPackKeys: ["deals-v1", "themes-v1"],
19
+ rationale: "Deals and themes intentionally share topic detail shell routing while the outer customer-zero shell still uses legacy project path segments."
20
+ },
21
+ {
22
+ surface: "api",
23
+ namespace: "/api/philosophy/get-profile",
24
+ allowedPackKeys: ["philosophy-mode-v1", "user-profiles-v1"],
25
+ rationale: "User profiles and philosophy mode share profile retrieval endpoint for compatibility."
26
+ },
27
+ {
28
+ surface: "api",
29
+ namespace: "/api/research/*",
30
+ allowedPackKeys: ["deals-v1", "themes-v1"],
31
+ rationale: "Deals and themes share research API namespace until productized API gateway split."
32
+ },
33
+ {
34
+ surface: "api",
35
+ namespace: "/api/reports/*",
36
+ allowedPackKeys: ["deals-v1", "decisions-v1", "themes-v1"],
37
+ rationale: "Domain packs intentionally consume shared report compiler endpoints in the same namespace."
38
+ }
39
+ ];
40
+ function toIssue(code, message, path, severity = "error") {
41
+ return {
42
+ code,
43
+ severity,
44
+ message,
45
+ path
46
+ };
47
+ }
48
+ function normalizeKeySet(values) {
49
+ return [...new Set(values)].sort().join("|");
50
+ }
51
+ function detectNamespaceCollisions(manifests) {
52
+ const collisions = [];
53
+ for (const surface of ["web", "api"]) {
54
+ const namespaceToPacks = /* @__PURE__ */ new Map();
55
+ for (const manifest of manifests) {
56
+ const namespaces = manifest.routeNamespace[surface];
57
+ for (const namespace of namespaces) {
58
+ const existing = namespaceToPacks.get(namespace) ?? [];
59
+ existing.push(manifest.key);
60
+ namespaceToPacks.set(namespace, existing);
61
+ }
62
+ }
63
+ for (const [namespace, packKeys] of namespaceToPacks.entries()) {
64
+ if (packKeys.length <= 1) {
65
+ continue;
66
+ }
67
+ collisions.push({
68
+ surface,
69
+ namespace,
70
+ packKeys: [...new Set(packKeys)].sort()
71
+ });
72
+ }
73
+ }
74
+ return collisions.sort((left, right) => {
75
+ if (left.surface !== right.surface) {
76
+ return left.surface.localeCompare(right.surface);
77
+ }
78
+ return left.namespace.localeCompare(right.namespace);
79
+ });
80
+ }
81
+ function validatePackNamespacePolicies(manifests) {
82
+ const issues = [];
83
+ const collisions = detectNamespaceCollisions(manifests);
84
+ const allowlistByKey = /* @__PURE__ */ new Map();
85
+ for (const entry of PACK_NAMESPACE_COLLISION_ALLOWLIST) {
86
+ const key = `${entry.surface}:${entry.namespace}`;
87
+ if (allowlistByKey.has(key)) {
88
+ issues.push(
89
+ toIssue(
90
+ "PACK_NAMESPACE_ALLOWLIST_DUPLICATE",
91
+ `Duplicate allowlist entry for ${key}.`,
92
+ "namespacePolicy.allowlist"
93
+ )
94
+ );
95
+ continue;
96
+ }
97
+ allowlistByKey.set(key, entry);
98
+ }
99
+ for (const collision of collisions) {
100
+ const key = `${collision.surface}:${collision.namespace}`;
101
+ const allowlistEntry = allowlistByKey.get(key);
102
+ if (!allowlistEntry) {
103
+ issues.push(
104
+ toIssue(
105
+ "PACK_NAMESPACE_COLLISION_UNAPPROVED",
106
+ `Unapproved ${collision.surface} namespace collision for "${collision.namespace}" across packs: ${collision.packKeys.join(", ")}`,
107
+ `namespacePolicy.${collision.surface}`
108
+ )
109
+ );
110
+ continue;
111
+ }
112
+ const collidedSet = normalizeKeySet(collision.packKeys);
113
+ const allowedSet = normalizeKeySet(allowlistEntry.allowedPackKeys);
114
+ if (collidedSet !== allowedSet) {
115
+ issues.push(
116
+ toIssue(
117
+ "PACK_NAMESPACE_COLLISION_MISMATCH",
118
+ `Collision set mismatch for "${collision.namespace}". collided=${collidedSet} allowlist=${allowedSet}`,
119
+ `namespacePolicy.${collision.surface}`
120
+ )
121
+ );
122
+ }
123
+ }
124
+ return issues;
125
+ }
126
+
127
+ export { PACK_NAMESPACE_COLLISION_ALLOWLIST, detectNamespaceCollisions, validatePackNamespacePolicies };
128
+ //# sourceMappingURL=namespacePolicy.js.map
129
+ //# sourceMappingURL=namespacePolicy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/namespacePolicy.ts"],"names":[],"mappings":"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","file":"namespacePolicy.js","sourcesContent":["/**\n * Pack Namespace Collision Policy\n *\n * Enforces explicit allowlisting for cross-pack route namespace sharing.\n */\n\nimport type { AppPackManifest } from \"./contracts\";\nimport type { PackValidationIssue } from \"./manifestValidation\";\n\nexport type NamespaceSurface = \"web\" | \"api\";\n\nexport type NamespaceCollision = {\n surface: NamespaceSurface;\n namespace: string;\n packKeys: string[];\n};\n\nexport type NamespaceCollisionAllowlistEntry = {\n surface: NamespaceSurface;\n namespace: string;\n allowedPackKeys: string[];\n rationale: string;\n};\n\nexport const PACK_NAMESPACE_COLLISION_ALLOWLIST: NamespaceCollisionAllowlistEntry[] =\n [\n {\n surface: \"web\",\n namespace: \"/(chat)/chat/[id]\",\n allowedPackKeys: [\"chat-v1\", \"philosophy-mode-v1\"],\n rationale:\n \"Philosophy mode extends the chat surface and intentionally shares the chat detail route.\",\n },\n {\n surface: \"web\",\n namespace: \"/(projects)/projects\",\n allowedPackKeys: [\"deals-v1\", \"themes-v1\"],\n rationale:\n \"Deals and themes intentionally share the topic index shell mounted under the legacy /projects customer-zero shell.\",\n },\n {\n surface: \"web\",\n namespace: \"/(projects)/projects/[projectId]\",\n allowedPackKeys: [\"deals-v1\", \"themes-v1\"],\n rationale:\n \"Deals and themes intentionally share topic detail shell routing while the outer customer-zero shell still uses legacy project path segments.\",\n },\n {\n surface: \"api\",\n namespace: \"/api/philosophy/get-profile\",\n allowedPackKeys: [\"philosophy-mode-v1\", \"user-profiles-v1\"],\n rationale:\n \"User profiles and philosophy mode share profile retrieval endpoint for compatibility.\",\n },\n {\n surface: \"api\",\n namespace: \"/api/research/*\",\n allowedPackKeys: [\"deals-v1\", \"themes-v1\"],\n rationale:\n \"Deals and themes share research API namespace until productized API gateway split.\",\n },\n {\n surface: \"api\",\n namespace: \"/api/reports/*\",\n allowedPackKeys: [\"deals-v1\", \"decisions-v1\", \"themes-v1\"],\n rationale:\n \"Domain packs intentionally consume shared report compiler endpoints in the same namespace.\",\n },\n ];\n\nfunction toIssue(\n code: string,\n message: string,\n path: string,\n severity: \"error\" | \"warning\" = \"error\"\n): PackValidationIssue {\n return {\n code,\n severity,\n message,\n path,\n };\n}\n\nfunction normalizeKeySet(values: string[]): string {\n return [...new Set(values)].sort().join(\"|\");\n}\n\nexport function detectNamespaceCollisions(\n manifests: AppPackManifest[]\n): NamespaceCollision[] {\n const collisions: NamespaceCollision[] = [];\n\n for (const surface of [\"web\", \"api\"] as const) {\n const namespaceToPacks = new Map<string, string[]>();\n for (const manifest of manifests) {\n const namespaces = manifest.routeNamespace[surface];\n for (const namespace of namespaces) {\n const existing = namespaceToPacks.get(namespace) ?? [];\n existing.push(manifest.key);\n namespaceToPacks.set(namespace, existing);\n }\n }\n\n for (const [namespace, packKeys] of namespaceToPacks.entries()) {\n if (packKeys.length <= 1) {\n continue;\n }\n collisions.push({\n surface,\n namespace,\n packKeys: [...new Set(packKeys)].sort(),\n });\n }\n }\n\n return collisions.sort((left, right) => {\n if (left.surface !== right.surface) {\n return left.surface.localeCompare(right.surface);\n }\n return left.namespace.localeCompare(right.namespace);\n });\n}\n\nexport function validatePackNamespacePolicies(\n manifests: AppPackManifest[]\n): PackValidationIssue[] {\n const issues: PackValidationIssue[] = [];\n const collisions = detectNamespaceCollisions(manifests);\n const allowlistByKey = new Map<string, NamespaceCollisionAllowlistEntry>();\n\n for (const entry of PACK_NAMESPACE_COLLISION_ALLOWLIST) {\n const key = `${entry.surface}:${entry.namespace}`;\n if (allowlistByKey.has(key)) {\n issues.push(\n toIssue(\n \"PACK_NAMESPACE_ALLOWLIST_DUPLICATE\",\n `Duplicate allowlist entry for ${key}.`,\n \"namespacePolicy.allowlist\"\n )\n );\n continue;\n }\n allowlistByKey.set(key, entry);\n }\n\n for (const collision of collisions) {\n const key = `${collision.surface}:${collision.namespace}`;\n const allowlistEntry = allowlistByKey.get(key);\n if (!allowlistEntry) {\n issues.push(\n toIssue(\n \"PACK_NAMESPACE_COLLISION_UNAPPROVED\",\n `Unapproved ${collision.surface} namespace collision for \"${collision.namespace}\" across packs: ${collision.packKeys.join(\", \")}`,\n `namespacePolicy.${collision.surface}`\n )\n );\n continue;\n }\n\n const collidedSet = normalizeKeySet(collision.packKeys);\n const allowedSet = normalizeKeySet(allowlistEntry.allowedPackKeys);\n if (collidedSet !== allowedSet) {\n issues.push(\n toIssue(\n \"PACK_NAMESPACE_COLLISION_MISMATCH\",\n `Collision set mismatch for \"${collision.namespace}\". collided=${collidedSet} allowlist=${allowedSet}`,\n `namespacePolicy.${collision.surface}`\n )\n );\n }\n }\n\n return issues;\n}\n"]}
@@ -0,0 +1,13 @@
1
+ import { PackEnablementPolicy, PackEnablementDecision } from './lifecycle.js';
2
+ import { PackRegistryValidationResult } from './runtime.js';
3
+ import { AppPackManifest } from './contracts.js';
4
+ import { PackSchemaDictionary } from './manifestValidation.js';
5
+
6
+ declare const appPackRegistry: Record<string, AppPackManifest>;
7
+ declare function getAppPackManifest(key: string): AppPackManifest | null;
8
+ declare function listAppPackManifests(): AppPackManifest[];
9
+ declare function getDependencyClosure(packKey: string): string[];
10
+ declare function validateAppPackRegistry(dictionary?: PackSchemaDictionary): PackRegistryValidationResult;
11
+ declare function evaluateAppPackEnablement(policy?: PackEnablementPolicy): PackEnablementDecision[];
12
+
13
+ export { appPackRegistry, evaluateAppPackEnablement, getAppPackManifest, getDependencyClosure, listAppPackManifests, validateAppPackRegistry };