0xray 3.5.5 → 4.0.0

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 (229) hide show
  1. package/.mcp.json +51 -7
  2. package/.opencode/skills/api-design/SKILL.md +1 -1
  3. package/.opencode/skills/architect-tools/SKILL.md +1 -1
  4. package/.opencode/skills/architecture-patterns/SKILL.md +1 -1
  5. package/.opencode/skills/auto-format/SKILL.md +1 -1
  6. package/.opencode/skills/boot-orchestrator/SKILL.md +2 -6
  7. package/.opencode/skills/bug-triage/SKILL.md +1 -1
  8. package/.opencode/skills/code-analyzer/SKILL.md +1 -1
  9. package/.opencode/skills/code-review/SKILL.md +1 -1
  10. package/.opencode/skills/enforcer/SKILL.md +1 -1
  11. package/.opencode/skills/framework-compliance-audit/SKILL.md +1 -1
  12. package/.opencode/skills/git-workflow/SKILL.md +1 -1
  13. package/.opencode/skills/hermes-agent/SKILL.md +36 -36
  14. package/.opencode/skills/inference-improve/SKILL.md +1 -1
  15. package/.opencode/skills/lint/SKILL.md +1 -1
  16. package/.opencode/skills/log-monitor/SKILL.md +1 -1
  17. package/.opencode/skills/model-health-check/SKILL.md +1 -1
  18. package/.opencode/skills/multimodal-looker/SKILL.md +1 -1
  19. package/.opencode/skills/orchestrator/SKILL.md +38 -14
  20. package/.opencode/skills/performance-analysis/SKILL.md +1 -1
  21. package/.opencode/skills/performance-optimization/SKILL.md +1 -1
  22. package/.opencode/skills/processor-pipeline/SKILL.md +1 -1
  23. package/.opencode/skills/project-analysis/SKILL.md +1 -1
  24. package/.opencode/skills/refactoring-strategies/SKILL.md +1 -1
  25. package/.opencode/skills/registry.json +65 -0
  26. package/.opencode/skills/researcher/SKILL.md +18 -5
  27. package/.opencode/skills/security-audit/SKILL.md +1 -1
  28. package/.opencode/skills/security-scan/SKILL.md +1 -1
  29. package/.opencode/skills/session-management/SKILL.md +1 -1
  30. package/.opencode/skills/state-manager/SKILL.md +1 -1
  31. package/.opencode/skills/storyteller/SKILL.md +1 -1
  32. package/.opencode/skills/strategist/SKILL.md +12 -0
  33. package/.opencode/skills/testing-best-practices/SKILL.md +37 -0
  34. package/.opencode/skills/testing-strategy/SKILL.md +14 -3
  35. package/.opencode/skills/ui-ux-design/SKILL.md +1 -1
  36. package/.opencode/skills/xray-orchestrator/index.ts +267 -0
  37. package/.xray/codex.json +12 -3
  38. package/.xray/features.json +27 -5
  39. package/.xray/features.schema.json +31 -0
  40. package/AGENTS-consumer.md +16 -6
  41. package/AGENTS.md +11 -3
  42. package/README.md +13 -10
  43. package/SKILLS.md +1 -1
  44. package/dist/AGENTS.md +11 -3
  45. package/dist/CHANGELOG.md +65 -11
  46. package/dist/README.md +13 -10
  47. package/dist/SKILLS.md +1 -1
  48. package/dist/cli/commands/hermes-install.js +3 -0
  49. package/dist/cli/commands/openclaw-install.js +14 -0
  50. package/dist/core/features-config.d.ts +15 -2
  51. package/dist/infrastructure/schemas/cloud-schemas.d.ts +1 -1
  52. package/dist/integrations/grok/grok-cli.d.ts +3 -0
  53. package/dist/integrations/grok/grok-cli.js +92 -4
  54. package/dist/integrations/grok/hooks/grok-hook-utils.js +53 -7
  55. package/dist/integrations/grok/hooks/post-tool-use.js +68 -46
  56. package/dist/integrations/grok/hooks/pre-tool-use.js +14 -31
  57. package/dist/integrations/grok/hooks/session-start.js +86 -4
  58. package/dist/integrations/grok/plugin/0xray/hooks/hooks.json +31 -24
  59. package/dist/integrations/hermes-agent/bridge.mjs +19 -1
  60. package/dist/integrations/hooks/delegation-gate-runtime.mjs +32 -3
  61. package/dist/integrations/hooks/pipeline-hook-runtime.mjs +1 -1
  62. package/dist/integrations/hooks/station-hook-runtime.cjs +421 -0
  63. package/dist/integrations/hooks/station-hook-runtime.mjs +24 -0
  64. package/dist/integrations/hooks/station-memory-ingest.mjs +45 -0
  65. package/dist/integrations/hooks/station-memory-match.mjs +47 -0
  66. package/dist/integrations/openclaw/client.d.ts +5 -1
  67. package/dist/integrations/openclaw/client.js +17 -9
  68. package/dist/integrations/openclaw/config.js +0 -1
  69. package/dist/integrations/openclaw/hooks/pre-tool-gate-runtime.mjs +102 -0
  70. package/dist/integrations/openclaw/index.js +17 -0
  71. package/dist/integrations/openclaw/plugin/xray-pre-tool/index.js +75 -0
  72. package/dist/integrations/openclaw/plugin/xray-pre-tool/openclaw.plugin.json +10 -0
  73. package/dist/integrations/openclaw/plugin/xray-pre-tool/package.json +10 -0
  74. package/dist/integrations/openclaw/pre-tool-gate.d.ts +19 -0
  75. package/dist/integrations/openclaw/pre-tool-gate.js +39 -0
  76. package/dist/mcps/orchestrator/handlers/complexity-handler.js +2 -2
  77. package/dist/memory-routing/index.d.ts +1 -1
  78. package/dist/memory-routing/index.js +1 -1
  79. package/dist/memory-routing/provider-loader.d.ts +4 -0
  80. package/dist/memory-routing/provider-loader.js +44 -2
  81. package/dist/memory-routing/provider-registry.js +3 -2
  82. package/dist/nucleus/autonomy-kernel.d.ts +2 -2
  83. package/dist/nucleus/autonomy-kernel.js +17 -6
  84. package/dist/nucleus/confer.js +17 -3
  85. package/dist/nucleus/delegation-gate.d.ts +14 -8
  86. package/dist/nucleus/delegation-gate.js +151 -16
  87. package/dist/nucleus/suit-temperament.d.ts +40 -0
  88. package/dist/nucleus/suit-temperament.js +157 -0
  89. package/dist/nucleus/user-aside.js +1 -1
  90. package/dist/plugin/xray-codex-injection.js +14 -3
  91. package/dist/postprocessor/triggers/GitHookTrigger.js +11 -5
  92. package/opencode.json +88 -0
  93. package/package.json +14 -4
  94. package/scripts/hooks/install-hooks.cjs +18 -3
  95. package/scripts/hooks/run-hook.js +67 -3
  96. package/scripts/mjs/run-repertoire-mcp.mjs +39 -0
  97. package/scripts/mjs/verify-confer-core.mjs +1 -1
  98. package/scripts/mjs/verify-delegation-gate-core.mjs +29 -2
  99. package/scripts/mjs/verify-four-floor-compact.mjs +524 -0
  100. package/scripts/mjs/verify-pipeline-facets.mjs +215 -0
  101. package/scripts/mjs/verify-temperament-live.mjs +261 -0
  102. package/scripts/node/bridge-mcp-wiring.cjs +277 -29
  103. package/scripts/node/install-bridges.cjs +195 -33
  104. package/scripts/node/postinstall.cjs +50 -27
  105. package/scripts/node/release-gate.mjs +1 -1
  106. package/scripts/node/release.mjs +2 -2
  107. package/scripts/node/validate-release-docs.mjs +20 -33
  108. package/scripts/node/version-manager.mjs +25 -10
  109. package/src/integrations/grok/plugin/0xray/hooks/hooks.json +31 -24
  110. package/src/integrations/openclaw/README.md +134 -0
  111. package/src/integrations/openclaw/plugin/xray-pre-tool/index.js +75 -0
  112. package/src/integrations/openclaw/plugin/xray-pre-tool/openclaw.plugin.json +10 -0
  113. package/src/integrations/openclaw/plugin/xray-pre-tool/package.json +10 -0
  114. package/src/mcps/orchestrator/handlers/complexity-handler.ts +2 -1
  115. package/vendor/@0xray/repertoire/AGENTS.md +163 -0
  116. package/vendor/@0xray/repertoire/LICENSE +21 -0
  117. package/vendor/@0xray/repertoire/README.md +120 -0
  118. package/vendor/@0xray/repertoire/data/curated_signals.json +208 -0
  119. package/vendor/@0xray/repertoire/dist/RepertoireService.d.ts +78 -0
  120. package/vendor/@0xray/repertoire/dist/RepertoireService.d.ts.map +1 -0
  121. package/vendor/@0xray/repertoire/dist/RepertoireService.js +153 -0
  122. package/vendor/@0xray/repertoire/dist/RepertoireService.js.map +1 -0
  123. package/vendor/@0xray/repertoire/dist/governance/ontological-trap-enforcer.d.ts +39 -0
  124. package/vendor/@0xray/repertoire/dist/governance/ontological-trap-enforcer.d.ts.map +1 -0
  125. package/vendor/@0xray/repertoire/dist/governance/ontological-trap-enforcer.js +60 -0
  126. package/vendor/@0xray/repertoire/dist/governance/ontological-trap-enforcer.js.map +1 -0
  127. package/vendor/@0xray/repertoire/dist/index.d.ts +14 -0
  128. package/vendor/@0xray/repertoire/dist/index.d.ts.map +1 -0
  129. package/vendor/@0xray/repertoire/dist/index.js +14 -0
  130. package/vendor/@0xray/repertoire/dist/index.js.map +1 -0
  131. package/vendor/@0xray/repertoire/dist/ingestion/groover-log-ingester.d.ts +26 -0
  132. package/vendor/@0xray/repertoire/dist/ingestion/groover-log-ingester.d.ts.map +1 -0
  133. package/vendor/@0xray/repertoire/dist/ingestion/groover-log-ingester.js +109 -0
  134. package/vendor/@0xray/repertoire/dist/ingestion/groover-log-ingester.js.map +1 -0
  135. package/vendor/@0xray/repertoire/dist/ingestion/groover-log-parser.d.ts +18 -0
  136. package/vendor/@0xray/repertoire/dist/ingestion/groover-log-parser.d.ts.map +1 -0
  137. package/vendor/@0xray/repertoire/dist/ingestion/groover-log-parser.js +94 -0
  138. package/vendor/@0xray/repertoire/dist/ingestion/groover-log-parser.js.map +1 -0
  139. package/vendor/@0xray/repertoire/dist/ingestion/orchestrator-feedback-ingester.d.ts +7 -0
  140. package/vendor/@0xray/repertoire/dist/ingestion/orchestrator-feedback-ingester.d.ts.map +1 -0
  141. package/vendor/@0xray/repertoire/dist/ingestion/orchestrator-feedback-ingester.js +18 -0
  142. package/vendor/@0xray/repertoire/dist/ingestion/orchestrator-feedback-ingester.js.map +1 -0
  143. package/vendor/@0xray/repertoire/dist/ingestion/xray-session-ingester.d.ts +31 -0
  144. package/vendor/@0xray/repertoire/dist/ingestion/xray-session-ingester.d.ts.map +1 -0
  145. package/vendor/@0xray/repertoire/dist/ingestion/xray-session-ingester.js +83 -0
  146. package/vendor/@0xray/repertoire/dist/ingestion/xray-session-ingester.js.map +1 -0
  147. package/vendor/@0xray/repertoire/dist/mcp/server.d.ts +6 -0
  148. package/vendor/@0xray/repertoire/dist/mcp/server.d.ts.map +1 -0
  149. package/vendor/@0xray/repertoire/dist/mcp/server.js +173 -0
  150. package/vendor/@0xray/repertoire/dist/mcp/server.js.map +1 -0
  151. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/RepertoireOrchestratorBridge.d.ts +27 -0
  152. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/RepertoireOrchestratorBridge.d.ts.map +1 -0
  153. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/RepertoireOrchestratorBridge.js +107 -0
  154. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/RepertoireOrchestratorBridge.js.map +1 -0
  155. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/capability-enhancer.d.ts +11 -0
  156. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/capability-enhancer.d.ts.map +1 -0
  157. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/capability-enhancer.js +32 -0
  158. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/capability-enhancer.js.map +1 -0
  159. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/confidence-gate.d.ts +9 -0
  160. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/confidence-gate.d.ts.map +1 -0
  161. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/confidence-gate.js +72 -0
  162. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/confidence-gate.js.map +1 -0
  163. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/signal-agent-affinity.d.ts +5 -0
  164. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/signal-agent-affinity.d.ts.map +1 -0
  165. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/signal-agent-affinity.js +18 -0
  166. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/signal-agent-affinity.js.map +1 -0
  167. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/signal-injector.d.ts +31 -0
  168. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/signal-injector.d.ts.map +1 -0
  169. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/signal-injector.js +218 -0
  170. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/signal-injector.js.map +1 -0
  171. package/vendor/@0xray/repertoire/dist/paths.d.ts +24 -0
  172. package/vendor/@0xray/repertoire/dist/paths.d.ts.map +1 -0
  173. package/vendor/@0xray/repertoire/dist/paths.js +74 -0
  174. package/vendor/@0xray/repertoire/dist/paths.js.map +1 -0
  175. package/vendor/@0xray/repertoire/dist/provider/memory-routing-provider.d.ts +141 -0
  176. package/vendor/@0xray/repertoire/dist/provider/memory-routing-provider.d.ts.map +1 -0
  177. package/vendor/@0xray/repertoire/dist/provider/memory-routing-provider.js +210 -0
  178. package/vendor/@0xray/repertoire/dist/provider/memory-routing-provider.js.map +1 -0
  179. package/vendor/@0xray/repertoire/dist/registry/CuratedSignalsManager.d.ts +48 -0
  180. package/vendor/@0xray/repertoire/dist/registry/CuratedSignalsManager.d.ts.map +1 -0
  181. package/vendor/@0xray/repertoire/dist/registry/CuratedSignalsManager.js +221 -0
  182. package/vendor/@0xray/repertoire/dist/registry/CuratedSignalsManager.js.map +1 -0
  183. package/vendor/@0xray/repertoire/dist/registry/InferenceStateManager.d.ts +11 -0
  184. package/vendor/@0xray/repertoire/dist/registry/InferenceStateManager.d.ts.map +1 -0
  185. package/vendor/@0xray/repertoire/dist/registry/InferenceStateManager.js +43 -0
  186. package/vendor/@0xray/repertoire/dist/registry/InferenceStateManager.js.map +1 -0
  187. package/vendor/@0xray/repertoire/dist/registry/signal-prune.d.ts +15 -0
  188. package/vendor/@0xray/repertoire/dist/registry/signal-prune.d.ts.map +1 -0
  189. package/vendor/@0xray/repertoire/dist/registry/signal-prune.js +35 -0
  190. package/vendor/@0xray/repertoire/dist/registry/signal-prune.js.map +1 -0
  191. package/vendor/@0xray/repertoire/dist/synthesis/concrete-sections.d.ts +3 -0
  192. package/vendor/@0xray/repertoire/dist/synthesis/concrete-sections.d.ts.map +1 -0
  193. package/vendor/@0xray/repertoire/dist/synthesis/concrete-sections.js +24 -0
  194. package/vendor/@0xray/repertoire/dist/synthesis/concrete-sections.js.map +1 -0
  195. package/vendor/@0xray/repertoire/dist/synthesis/meta-inference-engine.d.ts +24 -0
  196. package/vendor/@0xray/repertoire/dist/synthesis/meta-inference-engine.d.ts.map +1 -0
  197. package/vendor/@0xray/repertoire/dist/synthesis/meta-inference-engine.js +148 -0
  198. package/vendor/@0xray/repertoire/dist/synthesis/meta-inference-engine.js.map +1 -0
  199. package/vendor/@0xray/repertoire/dist/synthesis/primitive-confidence-aggregator.d.ts +4 -0
  200. package/vendor/@0xray/repertoire/dist/synthesis/primitive-confidence-aggregator.d.ts.map +1 -0
  201. package/vendor/@0xray/repertoire/dist/synthesis/primitive-confidence-aggregator.js +44 -0
  202. package/vendor/@0xray/repertoire/dist/synthesis/primitive-confidence-aggregator.js.map +1 -0
  203. package/vendor/@0xray/repertoire/dist/synthesis/synthesis-prompt-builder.d.ts +22 -0
  204. package/vendor/@0xray/repertoire/dist/synthesis/synthesis-prompt-builder.d.ts.map +1 -0
  205. package/vendor/@0xray/repertoire/dist/synthesis/synthesis-prompt-builder.js +66 -0
  206. package/vendor/@0xray/repertoire/dist/synthesis/synthesis-prompt-builder.js.map +1 -0
  207. package/vendor/@0xray/repertoire/dist/types.d.ts +210 -0
  208. package/vendor/@0xray/repertoire/dist/types.d.ts.map +1 -0
  209. package/vendor/@0xray/repertoire/dist/types.js +2 -0
  210. package/vendor/@0xray/repertoire/dist/types.js.map +1 -0
  211. package/vendor/@0xray/repertoire/docs/MEMORY-ROUTING-PROVIDER.md +54 -0
  212. package/vendor/@0xray/repertoire/hermes-mcp.example.json +20 -0
  213. package/vendor/@0xray/repertoire/mcp-config.example.json +11 -0
  214. package/vendor/@0xray/repertoire/package.json +124 -0
  215. package/vendor/@0xray/repertoire/schemas/curated-signal.schema.json +68 -0
  216. package/vendor/@0xray/repertoire/schemas/inference-log.schema.json +82 -0
  217. package/vendor/@0xray/repertoire/scripts/confirm-suit-all.mjs +253 -0
  218. package/vendor/@0xray/repertoire/scripts/confirm-suit-harness.mjs +220 -0
  219. package/vendor/@0xray/repertoire/scripts/run-live-synthesis-checkpoint.mjs +215 -0
  220. package/vendor/@0xray/repertoire/scripts/suit-bridge-shared.mjs +139 -0
  221. package/vendor/@0xray/repertoire/scripts/verify-grok-suit.mjs +304 -0
  222. package/vendor/@0xray/repertoire/scripts/verify-hermes-suit.mjs +163 -0
  223. package/vendor/@0xray/repertoire/scripts/verify-openclaw-suit.mjs +125 -0
  224. package/vendor/@0xray/repertoire/scripts/verify-opencode-suit.mjs +127 -0
  225. package/vendor/@0xray/repertoire/scripts/verify-synthesis-dogfood.mjs +207 -0
  226. package/vendor/@0xray/repertoire/skills/repertoire-trap-handling/SKILL.md +206 -0
  227. package/xray/codex.json +12 -3
  228. package/xray/features.json +27 -5
  229. package/xray/features.schema.json +31 -0
@@ -0,0 +1,208 @@
1
+ {
2
+ "description": "Factory seed primitives for 0xRay 4.0 memory routing. Not a plant diary.",
3
+ "last_updated": "2026-09-01T19:18:27.821Z",
4
+ "source": "factory-seed-4.0",
5
+ "schema_version": "1.1",
6
+ "implementation_guidance": {
7
+ "how_to_use": "Package seed is read-only. Ingest hydrates a project copy under .xray/state/repertoire/.",
8
+ "integration_points": [
9
+ "MemoryRoutingProvider",
10
+ "thinDispatch",
11
+ "repertoire MCP"
12
+ ],
13
+ "priority_order": "ontological-trap and consumer-boundary first, then governance/three-subsystem."
14
+ },
15
+ "signals": [
16
+ {
17
+ "name": "attestation-as-map",
18
+ "definition": "Attestation should be treated as a directional trust map that obligates the consumer to perform ongoing re-evaluation, rather than a terminating verdict that ends responsibility.",
19
+ "tags": [
20
+ "ontological-trap",
21
+ "attestation",
22
+ "consumer-boundary"
23
+ ],
24
+ "priority": "high",
25
+ "status": "validated",
26
+ "first_seen": "2026-06-17",
27
+ "evaluation_criteria": "The inference reply explicitly states that attestation is directional/ongoing rather than final, or criticizes treating signatures as sufficient without consumer-side checks.",
28
+ "validation_experiment": "Create a test post containing only static attestation metadata with no consumer recheck hook. Run it through govern_with_solar and check whether the result is REJECT or resonanceScore < 0.3.",
29
+ "master_index_integration": "MemoryRoutingProvider, thinDispatch, repertoire MCP get_task_confidence.",
30
+ "implementation_notes": "Treat attestation as an ongoing map. Trap-route to architect when matched.",
31
+ "example_inference_snippet": "Attestation functions as a trust map rather than a conclusive verdict, so the consuming boundary must still execute its own invariant checks...",
32
+ "observation_stats": {
33
+ "observation_count": 580,
34
+ "avg_confidence": 0.5536206896551725,
35
+ "max_confidence": 1,
36
+ "last_seen": "2026-09-01T19:18:27.821Z",
37
+ "governance_forced_count": 566
38
+ }
39
+ },
40
+ {
41
+ "name": "consumption-boundary-revalidation-gate",
42
+ "definition": "There must be an explicit, mandatory re-validation step of key invariants at every trust-transfer boundary before the receiving agent/system is allowed to consume or act on the artifact.",
43
+ "tags": [
44
+ "ontological-trap",
45
+ "attestation",
46
+ "consumer-boundary"
47
+ ],
48
+ "priority": "high",
49
+ "status": "validated",
50
+ "first_seen": "2026-06-17",
51
+ "evaluation_criteria": "Reply mentions that re-validation must occur at the consumption boundary or that upstream attestation alone is insufficient without this step.",
52
+ "validation_experiment": "Instrument a parser/loader boundary with a controlled schema mutation after upstream attestation. Verify the system emits an explicit re-validation obligation record before permitting downstream action.",
53
+ "master_index_integration": "MemoryRoutingProvider, thinDispatch, repertoire MCP get_task_confidence.",
54
+ "implementation_notes": "Re-validate invariants at every trust-transfer before consume.",
55
+ "example_inference_snippet": "Mandatory re-validation of invariants at every trust-transfer boundary before consumption is permitted.",
56
+ "observation_stats": {
57
+ "observation_count": 564,
58
+ "avg_confidence": 0.55,
59
+ "max_confidence": 1,
60
+ "last_seen": "2026-07-07T18:17:42.741Z",
61
+ "governance_forced_count": 550
62
+ }
63
+ },
64
+ {
65
+ "name": "consumer-boundary-revalidation-gate",
66
+ "definition": "Every attestation or output must pass an explicit consumer-side revalidation gate. Treating attestation as a terminating verdict is an ontological error.",
67
+ "tags": [
68
+ "ontological-trap",
69
+ "attestation",
70
+ "consumer-boundary"
71
+ ],
72
+ "priority": "high",
73
+ "status": "validated",
74
+ "first_seen": "2026-06-17",
75
+ "evaluation_criteria": "The inference distinguishes 'map' semantics (ongoing responsibility) from 'verdict' semantics (terminated responsibility).",
76
+ "validation_experiment": "Test with static attestation metadata that has no revalidation hook.",
77
+ "master_index_integration": "MemoryRoutingProvider, thinDispatch, repertoire MCP get_task_confidence.",
78
+ "implementation_notes": "Consumer-side gate; attestation is not a terminating verdict.",
79
+ "observation_stats": {
80
+ "observation_count": 1,
81
+ "avg_confidence": 0.55,
82
+ "max_confidence": 0.55,
83
+ "last_seen": "2026-09-01T00:00:00.000Z",
84
+ "governance_forced_count": 0
85
+ }
86
+ },
87
+ {
88
+ "name": "governance-as-mandatory-external-filter",
89
+ "definition": "Governance is the mandatory external filter between internal deliberation and action. Internal consistency alone is insufficient.",
90
+ "tags": [
91
+ "ontological-trap",
92
+ "governance",
93
+ "external-filter",
94
+ "mandatory"
95
+ ],
96
+ "priority": "high",
97
+ "status": "proposed",
98
+ "first_seen": "2026-06-17",
99
+ "evaluation_criteria": "Reply states governance is mandatory or criticizes bypassing external governance.",
100
+ "validation_experiment": "Submit a high-resonance internal proposal that has not passed Dynamo. Verify it is blocked or marked NEEDS_REVISION.",
101
+ "master_index_integration": "MemoryRoutingProvider, thinDispatch, repertoire MCP get_task_confidence.",
102
+ "implementation_notes": "Governance sits between deliberation and action. Always on.",
103
+ "observation_stats": {
104
+ "observation_count": 1,
105
+ "avg_confidence": 0.55,
106
+ "max_confidence": 0.55,
107
+ "last_seen": "2026-09-01T00:00:00.000Z",
108
+ "governance_forced_count": 0
109
+ }
110
+ },
111
+ {
112
+ "name": "three-subsystem-verifiable-os",
113
+ "definition": "A complete verifiable agent operating system requires three mandatory subsystems: Inference, External Governance (Dynamo Solar SSOT), and Autonomous Engine (0xRay). Governance is not optional.",
114
+ "tags": [
115
+ "ontological-trap",
116
+ "governance",
117
+ "architecture",
118
+ "three-subsystem"
119
+ ],
120
+ "priority": "high",
121
+ "status": "proposed",
122
+ "first_seen": "2026-06-17",
123
+ "evaluation_criteria": "Inference references the three-subsystem model or criticizes treating inference/orchestration as sufficient without external governance.",
124
+ "validation_experiment": "Create a proposal that skips Dynamo governance entirely. Check if govern_with_solar or repertoire rejects it with low resonance.",
125
+ "master_index_integration": "MemoryRoutingProvider, thinDispatch, repertoire MCP get_task_confidence.",
126
+ "implementation_notes": "Inference, External Governance, Autonomous Engine — all three required.",
127
+ "observation_stats": {
128
+ "observation_count": 1,
129
+ "avg_confidence": 0.55,
130
+ "max_confidence": 0.55,
131
+ "last_seen": "2026-09-01T00:00:00.000Z",
132
+ "governance_forced_count": 0
133
+ }
134
+ },
135
+ {
136
+ "name": "parse-mutation-detector",
137
+ "definition": "A runtime mechanism that detects when parsing or transformation has altered an artifact and triggers fail-closed behavior or explicit re-evaluation of invariants.",
138
+ "tags": [
139
+ "ontological-trap",
140
+ "attestation",
141
+ "consumer-boundary"
142
+ ],
143
+ "priority": "high",
144
+ "status": "validated",
145
+ "first_seen": "2026-06-17",
146
+ "evaluation_criteria": "Reply identifies that a parser or transformation step can silently change meaning and that current attestation does not cover this mutation surface.",
147
+ "validation_experiment": "Feed the system an attested artifact, apply a controlled parse transformation, and measure whether a fail-closed signal or re-evaluation trigger is emitted within one inference cycle.",
148
+ "master_index_integration": "MemoryRoutingProvider, thinDispatch, repertoire MCP get_task_confidence.",
149
+ "implementation_notes": "Detect schema/parse mutation after upstream attestation.",
150
+ "example_inference_snippet": "Runtime mechanism to detect parse transformations and trigger fail-closed or explicit re-evaluation.",
151
+ "observation_stats": {
152
+ "observation_count": 564,
153
+ "avg_confidence": 0.55,
154
+ "max_confidence": 1,
155
+ "last_seen": "2026-07-07T18:17:42.741Z",
156
+ "governance_forced_count": 550
157
+ }
158
+ },
159
+ {
160
+ "name": "trust-transfer-boundary",
161
+ "definition": "An explicit, first-class signal that records the obligation to re-validate invariants at each handoff point between agents or systems.",
162
+ "tags": [
163
+ "ontological-trap",
164
+ "attestation",
165
+ "consumer-boundary"
166
+ ],
167
+ "priority": "high",
168
+ "status": "validated",
169
+ "first_seen": "2026-06-17",
170
+ "evaluation_criteria": "Reply argues that re-validation obligations must be explicitly recorded and passed along at every trust transfer.",
171
+ "validation_experiment": "Simulate a multi-hop agent workflow where an attested artifact crosses two trust boundaries. Verify that a trust-transfer-boundary record is created at each hop.",
172
+ "master_index_integration": "MemoryRoutingProvider, thinDispatch, repertoire MCP get_task_confidence.",
173
+ "implementation_notes": "Name the boundary where trust moves; require a check there.",
174
+ "example_inference_snippet": "Explicit recording of re-validation obligation as a first-class signal at each handoff point.",
175
+ "observation_stats": {
176
+ "observation_count": 564,
177
+ "avg_confidence": 0.55,
178
+ "max_confidence": 1,
179
+ "last_seen": "2026-07-07T18:17:42.741Z",
180
+ "governance_forced_count": 550
181
+ }
182
+ },
183
+ {
184
+ "name": "interpreter-mode-boundary-invariant",
185
+ "definition": "A self-enforcing contract hash or invariant that lives at the parser-consumer trust boundary and must survive any transformation or reinterpretation.",
186
+ "tags": [
187
+ "ontological-trap",
188
+ "attestation",
189
+ "consumer-boundary"
190
+ ],
191
+ "priority": "high",
192
+ "status": "validated",
193
+ "first_seen": "2026-06-17",
194
+ "evaluation_criteria": "Reply emphasizes that some invariant must be embedded in a way that forces the consumer to recompute or re-validate it after any parsing step.",
195
+ "validation_experiment": "Design an attestation payload that embeds a contract hash which the consumer must independently recompute after parsing. Verify the system treats failure to recompute as a governance violation.",
196
+ "master_index_integration": "MemoryRoutingProvider, thinDispatch, repertoire MCP get_task_confidence.",
197
+ "implementation_notes": "Interpreter/agent mode changes are a boundary, not a silent switch.",
198
+ "example_inference_snippet": "Self-enforcing contract hash at parser-consumer trust boundary that survives transformation.",
199
+ "observation_stats": {
200
+ "observation_count": 564,
201
+ "avg_confidence": 0.55,
202
+ "max_confidence": 1,
203
+ "last_seen": "2026-07-07T18:17:42.741Z",
204
+ "governance_forced_count": 550
205
+ }
206
+ }
207
+ ]
208
+ }
@@ -0,0 +1,78 @@
1
+ import { CuratedSignalsManager, type FeedbackOutcomeResult } from './registry/CuratedSignalsManager.js';
2
+ import { InferenceStateManager } from './registry/InferenceStateManager.js';
3
+ import { MetaInferenceEngine } from './synthesis/meta-inference-engine.js';
4
+ import { OrchestratorFeedbackIngester } from './ingestion/orchestrator-feedback-ingester.js';
5
+ import { RepertoireOrchestratorBridge } from './orchestrator-bridge/RepertoireOrchestratorBridge.js';
6
+ import { OntologicalTrapEnforcer, type GovernWithSolarFn } from './governance/ontological-trap-enforcer.js';
7
+ import type { AgentCapability, CuratedSignal, ExecutionPlan, OrchestrationTask, OrchestratorFeedbackEntry, RepertoireInheritedContext, RepertoireRoutingContext, SynthesisReport, TaskConfidenceContext } from './types.js';
8
+ export interface RepertoireServiceOptions {
9
+ dataDir?: string;
10
+ logDir?: string;
11
+ signalsPath?: string;
12
+ statePath?: string;
13
+ feedbackDir?: string;
14
+ projectRoot?: string;
15
+ }
16
+ export declare class RepertoireService {
17
+ readonly signalsManager: CuratedSignalsManager;
18
+ readonly stateManager: InferenceStateManager;
19
+ readonly orchestratorBridge: RepertoireOrchestratorBridge;
20
+ readonly metaInference: MetaInferenceEngine;
21
+ readonly feedbackIngester: OrchestratorFeedbackIngester;
22
+ private readonly logDir;
23
+ constructor(options?: RepertoireServiceOptions);
24
+ ingestGrooverLogs(sourceDir: string, options?: {
25
+ dryRun?: boolean;
26
+ }): {
27
+ imported: number;
28
+ skipped: number;
29
+ promoted: string[];
30
+ };
31
+ ingestXraySessions(sourceDir: string): {
32
+ imported: number;
33
+ skipped: number;
34
+ };
35
+ ingestOrchestratorFeedback(entry: OrchestratorFeedbackEntry): {
36
+ logPath: string;
37
+ updatedSignals: FeedbackOutcomeResult[];
38
+ };
39
+ runMetaInference(): Promise<SynthesisReport | null>;
40
+ enhanceCapabilities(base: Map<string, AgentCapability>): Map<string, AgentCapability>;
41
+ buildRoutingContext(operation: string): RepertoireRoutingContext;
42
+ enrichTasks(tasks: OrchestrationTask[]): OrchestrationTask[];
43
+ enrichPlan(plan: ExecutionPlan, tasks: OrchestrationTask[]): ExecutionPlan;
44
+ buildInheritedContext(tasks: OrchestrationTask[]): RepertoireInheritedContext;
45
+ buildSynthesisContext(projectRoot: string, dueReason?: string | null): import("./types.js").SynthesisCollocatedContext;
46
+ selectAgent(capabilities: Map<string, AgentCapability>, requiredCapabilities: string[], complexity: number, operation: string): string | null;
47
+ resolveThinDispatch(baseAgent: string, operation: string, complexityScore: number): {
48
+ agent: string;
49
+ adjustedScore: number;
50
+ repertoireContext: RepertoireRoutingContext;
51
+ };
52
+ createTrapEnforcer(governFn: GovernWithSolarFn): OntologicalTrapEnforcer;
53
+ getHighConfidenceSignals(options?: {
54
+ minConfidence?: number;
55
+ tags?: string[];
56
+ limit?: number;
57
+ }): Array<CuratedSignal & {
58
+ effectiveConfidence: number;
59
+ }>;
60
+ getTaskConfidence(input: {
61
+ description: string;
62
+ type?: string;
63
+ id?: string;
64
+ }): TaskConfidenceContext;
65
+ searchPrimitives(query: string, options?: {
66
+ minConfidence?: number;
67
+ limit?: number;
68
+ }): Array<{
69
+ name: string;
70
+ confidence: number;
71
+ priority: string;
72
+ definition: string;
73
+ tags: string[];
74
+ status?: string;
75
+ observationCount: number;
76
+ }>;
77
+ }
78
+ //# sourceMappingURL=RepertoireService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RepertoireService.d.ts","sourceRoot":"","sources":["../src/RepertoireService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,153 @@
1
+ import { join } from 'node:path';
2
+ import { CuratedSignalsManager, } from './registry/CuratedSignalsManager.js';
3
+ import { InferenceStateManager } from './registry/InferenceStateManager.js';
4
+ import { MetaInferenceEngine } from './synthesis/meta-inference-engine.js';
5
+ import { GrooverLogIngester } from './ingestion/groover-log-ingester.js';
6
+ import { XraySessionIngester } from './ingestion/xray-session-ingester.js';
7
+ import { OrchestratorFeedbackIngester } from './ingestion/orchestrator-feedback-ingester.js';
8
+ import { RepertoireOrchestratorBridge } from './orchestrator-bridge/RepertoireOrchestratorBridge.js';
9
+ import { OntologicalTrapEnforcer, } from './governance/ontological-trap-enforcer.js';
10
+ import { DEFAULT_MIN_CONFIDENCE_GATE } from './orchestrator-bridge/confidence-gate.js';
11
+ import { DEFAULT_DATA_DIR, DEFAULT_FEEDBACK_DIR, DEFAULT_LOG_DIR, DEFAULT_SIGNALS_PATH, DEFAULT_STATE_PATH, defaultProjectStateDir, hydrateWritableSignals, isRepertoirePackageCwd, } from './paths.js';
12
+ export class RepertoireService {
13
+ signalsManager;
14
+ stateManager;
15
+ orchestratorBridge;
16
+ metaInference;
17
+ feedbackIngester;
18
+ logDir;
19
+ constructor(options = {}) {
20
+ const cwd = options.projectRoot ?? process.cwd();
21
+ const inOrganRepo = isRepertoirePackageCwd(cwd);
22
+ const projectState = defaultProjectStateDir(cwd);
23
+ const dataDir = options.dataDir ?? (inOrganRepo ? DEFAULT_DATA_DIR : projectState);
24
+ this.logDir = options.logDir ?? (inOrganRepo ? DEFAULT_LOG_DIR : join(projectState, 'logs'));
25
+ const seed = options.signalsPath ??
26
+ (options.dataDir ? join(dataDir, 'curated_signals.json') : DEFAULT_SIGNALS_PATH);
27
+ this.signalsManager = new CuratedSignalsManager(hydrateWritableSignals(seed, cwd));
28
+ this.stateManager = new InferenceStateManager(options.statePath ??
29
+ (inOrganRepo
30
+ ? options.dataDir
31
+ ? join(dataDir, 'inference-state.json')
32
+ : DEFAULT_STATE_PATH
33
+ : join(projectState, 'inference-state.json')));
34
+ this.orchestratorBridge = new RepertoireOrchestratorBridge(this.signalsManager);
35
+ this.metaInference = new MetaInferenceEngine({
36
+ logDir: this.logDir,
37
+ statePath: options.statePath ??
38
+ (inOrganRepo ? DEFAULT_STATE_PATH : join(projectState, 'inference-state.json')),
39
+ });
40
+ this.feedbackIngester = new OrchestratorFeedbackIngester(options.feedbackDir ?? (inOrganRepo ? DEFAULT_FEEDBACK_DIR : join(projectState, 'feedback')));
41
+ }
42
+ ingestGrooverLogs(sourceDir, options = {}) {
43
+ const ingester = new GrooverLogIngester({
44
+ sourceDir,
45
+ targetDir: this.logDir,
46
+ signalsManager: this.signalsManager,
47
+ dryRun: options.dryRun,
48
+ });
49
+ return ingester.ingest();
50
+ }
51
+ ingestXraySessions(sourceDir) {
52
+ const ingester = new XraySessionIngester({
53
+ sourceDir,
54
+ targetDir: this.logDir,
55
+ signalsManager: this.signalsManager,
56
+ });
57
+ return ingester.ingest();
58
+ }
59
+ ingestOrchestratorFeedback(entry) {
60
+ const logPath = this.feedbackIngester.ingest(entry);
61
+ const updatedSignals = this.signalsManager.recordFeedbackOutcome(entry);
62
+ return { logPath, updatedSignals };
63
+ }
64
+ async runMetaInference() {
65
+ return this.metaInference.run();
66
+ }
67
+ enhanceCapabilities(base) {
68
+ return this.orchestratorBridge.enhanceAgentCapabilities(base);
69
+ }
70
+ buildRoutingContext(operation) {
71
+ return this.orchestratorBridge.buildRoutingContext(operation);
72
+ }
73
+ enrichTasks(tasks) {
74
+ return this.orchestratorBridge.injectSignalsIntoTasks(tasks);
75
+ }
76
+ enrichPlan(plan, tasks) {
77
+ return this.orchestratorBridge.enrichExecutionPlan(plan, tasks);
78
+ }
79
+ buildInheritedContext(tasks) {
80
+ return this.orchestratorBridge.buildInheritedContext(tasks);
81
+ }
82
+ buildSynthesisContext(projectRoot, dueReason = null) {
83
+ return this.orchestratorBridge.buildSynthesisContext(projectRoot, dueReason);
84
+ }
85
+ selectAgent(capabilities, requiredCapabilities, complexity, operation) {
86
+ return this.orchestratorBridge.selectAgentForTask(capabilities, requiredCapabilities, complexity, operation);
87
+ }
88
+ resolveThinDispatch(baseAgent, operation, complexityScore) {
89
+ return this.orchestratorBridge.resolveThinDispatchAgent(baseAgent, operation, complexityScore);
90
+ }
91
+ createTrapEnforcer(governFn) {
92
+ return new OntologicalTrapEnforcer({
93
+ signalsManager: this.signalsManager,
94
+ governFn,
95
+ });
96
+ }
97
+ getHighConfidenceSignals(options = {}) {
98
+ const minConfidence = options.minConfidence ?? DEFAULT_MIN_CONFIDENCE_GATE;
99
+ const limit = options.limit ?? 20;
100
+ const tagFilter = options.tags?.map((tag) => tag.toLowerCase());
101
+ return this.signalsManager
102
+ .getSignalsAboveConfidence(minConfidence)
103
+ .filter((signal) => {
104
+ if (!signal.observation_stats)
105
+ return false;
106
+ if (!tagFilter?.length)
107
+ return true;
108
+ return signal.tags.some((tag) => tagFilter.includes(tag.toLowerCase()));
109
+ })
110
+ .map((signal) => ({
111
+ ...signal,
112
+ effectiveConfidence: signal.observation_stats.avg_confidence,
113
+ }))
114
+ .sort((a, b) => b.effectiveConfidence - a.effectiveConfidence ||
115
+ (b.observation_stats?.observation_count ?? 0) -
116
+ (a.observation_stats?.observation_count ?? 0))
117
+ .slice(0, limit);
118
+ }
119
+ getTaskConfidence(input) {
120
+ const task = {
121
+ id: input.id ?? 'mcp-query',
122
+ description: input.description,
123
+ type: input.type ?? 'general',
124
+ };
125
+ return this.orchestratorBridge.getConfidenceForTask(task);
126
+ }
127
+ searchPrimitives(query, options = {}) {
128
+ const minConfidence = options.minConfidence ?? DEFAULT_MIN_CONFIDENCE_GATE;
129
+ const limit = options.limit ?? 10;
130
+ const matches = this.signalsManager.matchByText(query, 2);
131
+ return matches
132
+ .map((match) => {
133
+ const stats = match.signal.observation_stats;
134
+ const confidence = stats?.avg_confidence;
135
+ if (stats === undefined || confidence === undefined)
136
+ return null;
137
+ return {
138
+ name: match.signal.name,
139
+ confidence,
140
+ priority: match.signal.priority,
141
+ definition: match.signal.definition,
142
+ tags: match.signal.tags,
143
+ status: match.signal.status,
144
+ observationCount: stats.observation_count,
145
+ };
146
+ })
147
+ .filter((entry) => entry !== null)
148
+ .filter((entry) => entry.confidence >= minConfidence)
149
+ .sort((a, b) => b.confidence - a.confidence)
150
+ .slice(0, limit);
151
+ }
152
+ }
153
+ //# sourceMappingURL=RepertoireService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RepertoireService.js","sourceRoot":"","sources":["../src/RepertoireService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import type { CuratedSignal, DynamoResult, InferenceEntry } from '../types.js';
2
+ import { CuratedSignalsManager } from '../registry/CuratedSignalsManager.js';
3
+ export interface GovernWithSolarParams {
4
+ title: string;
5
+ content: string;
6
+ agentDid: string;
7
+ matchedPrimitives: string[];
8
+ inferenceType?: string;
9
+ }
10
+ export interface GovernWithSolarFn {
11
+ (params: GovernWithSolarParams): Promise<DynamoResult | null>;
12
+ }
13
+ export interface OntologicalTrapEnforcerOptions {
14
+ signalsManager?: CuratedSignalsManager;
15
+ governFn: GovernWithSolarFn;
16
+ agentDid?: string;
17
+ minResonanceThreshold?: number;
18
+ }
19
+ export declare class OntologicalTrapEnforcer {
20
+ private readonly signalsManager;
21
+ private readonly governFn;
22
+ private readonly agentDid;
23
+ private readonly minResonance;
24
+ constructor(options: OntologicalTrapEnforcerOptions);
25
+ isOntologicalTrap(inference: string): boolean;
26
+ matchPrimitives(inference: string): CuratedSignal[];
27
+ /**
28
+ * Always calls govern_with_solar for ontological-trap entries.
29
+ * Returns full result even when governance fetch fails (null → logged as N/A).
30
+ */
31
+ enforce(entry: InferenceEntry, replyContent: string): Promise<{
32
+ allowed: boolean;
33
+ dynamoResult: DynamoResult | null;
34
+ matchedPrimitives: string[];
35
+ forced: boolean;
36
+ }>;
37
+ enrichLogEntry(entry: InferenceEntry, dynamoResult: DynamoResult | null, matchedPrimitives: string[]): InferenceEntry;
38
+ }
39
+ //# sourceMappingURL=ontological-trap-enforcer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ontological-trap-enforcer.d.ts","sourceRoot":"","sources":["../../src/governance/ontological-trap-enforcer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAE7E,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;CAC/D;AAED,MAAM,WAAW,8BAA8B;IAC7C,cAAc,CAAC,EAAE,qBAAqB,CAAC;IACvC,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwB;IACvD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoB;IAC7C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;gBAE1B,OAAO,EAAE,8BAA8B;IAOnD,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAI7C,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,EAAE;IAInD;;;OAGG;IACG,OAAO,CAAC,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC;QAClE,OAAO,EAAE,OAAO,CAAC;QACjB,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;QAClC,iBAAiB,EAAE,MAAM,EAAE,CAAC;QAC5B,MAAM,EAAE,OAAO,CAAC;KACjB,CAAC;IA6BF,cAAc,CACZ,KAAK,EAAE,cAAc,EACrB,YAAY,EAAE,YAAY,GAAG,IAAI,EACjC,iBAAiB,EAAE,MAAM,EAAE,GAC1B,cAAc;CAYlB"}
@@ -0,0 +1,60 @@
1
+ import { CuratedSignalsManager } from '../registry/CuratedSignalsManager.js';
2
+ export class OntologicalTrapEnforcer {
3
+ signalsManager;
4
+ governFn;
5
+ agentDid;
6
+ minResonance;
7
+ constructor(options) {
8
+ this.signalsManager = options.signalsManager ?? new CuratedSignalsManager();
9
+ this.governFn = options.governFn;
10
+ this.agentDid = options.agentDid ?? 'did:groover:284895bead2ac15b';
11
+ this.minResonance = options.minResonanceThreshold ?? 0.75;
12
+ }
13
+ isOntologicalTrap(inference) {
14
+ return /TYPE:\s*ontological-trap/i.test(inference);
15
+ }
16
+ matchPrimitives(inference) {
17
+ return this.signalsManager.matchInferenceEntry(inference).map((m) => m.signal);
18
+ }
19
+ /**
20
+ * Always calls govern_with_solar for ontological-trap entries.
21
+ * Returns full result even when governance fetch fails (null → logged as N/A).
22
+ */
23
+ async enforce(entry, replyContent) {
24
+ const isTrap = this.isOntologicalTrap(entry.inference);
25
+ const matched = this.matchPrimitives(entry.inference);
26
+ const matchedNames = matched.map((s) => s.name);
27
+ const dynamoResult = await this.governFn({
28
+ title: entry.post_title ?? 'Engagement',
29
+ content: replyContent,
30
+ agentDid: this.agentDid,
31
+ matchedPrimitives: matchedNames,
32
+ inferenceType: entry.inference_type ?? (isTrap ? 'ontological-trap' : undefined),
33
+ });
34
+ const rec = dynamoResult?.result?.recommendation;
35
+ const resonance = dynamoResult?.result?.resonanceScore ?? 0;
36
+ // Ontological-trap: always log, but only block on explicit REJECT with low resonance
37
+ const allowed = isTrap
38
+ ? !(dynamoResult && rec !== 'PASS' && resonance < this.minResonance)
39
+ : !(dynamoResult && rec !== 'PASS' && resonance < this.minResonance);
40
+ return {
41
+ allowed,
42
+ dynamoResult,
43
+ matchedPrimitives: matchedNames,
44
+ forced: isTrap,
45
+ };
46
+ }
47
+ enrichLogEntry(entry, dynamoResult, matchedPrimitives) {
48
+ return {
49
+ ...entry,
50
+ dynamo_result: {
51
+ ...dynamoResult,
52
+ matchedPrimitives,
53
+ },
54
+ repertoire_signals: [
55
+ ...new Set([...(entry.repertoire_signals ?? []), ...matchedPrimitives]),
56
+ ],
57
+ };
58
+ }
59
+ }
60
+ //# sourceMappingURL=ontological-trap-enforcer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ontological-trap-enforcer.js","sourceRoot":"","sources":["../../src/governance/ontological-trap-enforcer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAqB7E,MAAM,OAAO,uBAAuB;IACjB,cAAc,CAAwB;IACtC,QAAQ,CAAoB;IAC5B,QAAQ,CAAS;IACjB,YAAY,CAAS;IAEtC,YAAY,OAAuC;QACjD,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,IAAI,qBAAqB,EAAE,CAAC;QAC5E,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,8BAA8B,CAAC;QACnE,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,qBAAqB,IAAI,IAAI,CAAC;IAC5D,CAAC;IAED,iBAAiB,CAAC,SAAiB;QACjC,OAAO,2BAA2B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACrD,CAAC;IAED,eAAe,CAAC,SAAiB;QAC/B,OAAO,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACjF,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAO,CAAC,KAAqB,EAAE,YAAoB;QAMvD,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACtD,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAEhD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC;YACvC,KAAK,EAAE,KAAK,CAAC,UAAU,IAAI,YAAY;YACvC,OAAO,EAAE,YAAY;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,iBAAiB,EAAE,YAAY;YAC/B,aAAa,EAAE,KAAK,CAAC,cAAc,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC;SACjF,CAAC,CAAC;QAEH,MAAM,GAAG,GAAG,YAAY,EAAE,MAAM,EAAE,cAAc,CAAC;QACjD,MAAM,SAAS,GAAG,YAAY,EAAE,MAAM,EAAE,cAAc,IAAI,CAAC,CAAC;QAE5D,qFAAqF;QACrF,MAAM,OAAO,GAAG,MAAM;YACpB,CAAC,CAAC,CAAC,CAAC,YAAY,IAAI,GAAG,KAAK,MAAM,IAAI,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC;YACpE,CAAC,CAAC,CAAC,CAAC,YAAY,IAAI,GAAG,KAAK,MAAM,IAAI,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;QAEvE,OAAO;YACL,OAAO;YACP,YAAY;YACZ,iBAAiB,EAAE,YAAY;YAC/B,MAAM,EAAE,MAAM;SACf,CAAC;IACJ,CAAC;IAED,cAAc,CACZ,KAAqB,EACrB,YAAiC,EACjC,iBAA2B;QAE3B,OAAO;YACL,GAAG,KAAK;YACR,aAAa,EAAE;gBACb,GAAG,YAAY;gBACf,iBAAiB;aAClB;YACD,kBAAkB,EAAE;gBAClB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,kBAAkB,IAAI,EAAE,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAC;aACxE;SACF,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,14 @@
1
+ export { RepertoireService } from './RepertoireService.js';
2
+ export { CuratedSignalsManager } from './registry/CuratedSignalsManager.js';
3
+ export { pruneSignals, shouldPruneSignal } from './registry/signal-prune.js';
4
+ export { InferenceStateManager } from './registry/InferenceStateManager.js';
5
+ export { MetaInferenceEngine } from './synthesis/meta-inference-engine.js';
6
+ export { GrooverLogIngester } from './ingestion/groover-log-ingester.js';
7
+ export { aggregateWeightedPrimitives, formatWeightedPrimitivesSection, } from './synthesis/primitive-confidence-aggregator.js';
8
+ export { XraySessionIngester } from './ingestion/xray-session-ingester.js';
9
+ export { OrchestratorFeedbackIngester } from './ingestion/orchestrator-feedback-ingester.js';
10
+ export { RepertoireOrchestratorBridge } from './orchestrator-bridge/RepertoireOrchestratorBridge.js';
11
+ export { getConfidenceForTask, DEFAULT_MIN_CONFIDENCE_GATE, TRAP_CAPABLE_AGENTS, } from './orchestrator-bridge/confidence-gate.js';
12
+ export { OntologicalTrapEnforcer } from './governance/ontological-trap-enforcer.js';
13
+ export * from './types.js';
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EACL,2BAA2B,EAC3B,+BAA+B,GAChC,MAAM,gDAAgD,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAC;AAC7F,OAAO,EAAE,4BAA4B,EAAE,MAAM,uDAAuD,CAAC;AACrG,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AACpF,cAAc,YAAY,CAAC"}
@@ -0,0 +1,14 @@
1
+ export { RepertoireService } from './RepertoireService.js';
2
+ export { CuratedSignalsManager } from './registry/CuratedSignalsManager.js';
3
+ export { pruneSignals, shouldPruneSignal } from './registry/signal-prune.js';
4
+ export { InferenceStateManager } from './registry/InferenceStateManager.js';
5
+ export { MetaInferenceEngine } from './synthesis/meta-inference-engine.js';
6
+ export { GrooverLogIngester } from './ingestion/groover-log-ingester.js';
7
+ export { aggregateWeightedPrimitives, formatWeightedPrimitivesSection, } from './synthesis/primitive-confidence-aggregator.js';
8
+ export { XraySessionIngester } from './ingestion/xray-session-ingester.js';
9
+ export { OrchestratorFeedbackIngester } from './ingestion/orchestrator-feedback-ingester.js';
10
+ export { RepertoireOrchestratorBridge } from './orchestrator-bridge/RepertoireOrchestratorBridge.js';
11
+ export { getConfidenceForTask, DEFAULT_MIN_CONFIDENCE_GATE, TRAP_CAPABLE_AGENTS, } from './orchestrator-bridge/confidence-gate.js';
12
+ export { OntologicalTrapEnforcer } from './governance/ontological-trap-enforcer.js';
13
+ export * from './types.js';
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EACL,2BAA2B,EAC3B,+BAA+B,GAChC,MAAM,gDAAgD,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAC;AAC7F,OAAO,EAAE,4BAA4B,EAAE,MAAM,uDAAuD,CAAC;AACrG,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AACpF,cAAc,YAAY,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { CuratedSignalsManager } from '../registry/CuratedSignalsManager.js';
2
+ export interface GrooverIngesterOptions {
3
+ sourceDir: string;
4
+ targetDir?: string;
5
+ signalsManager?: CuratedSignalsManager;
6
+ promoteAfterIngest?: boolean;
7
+ /** Preview counts only — no log append, observation writes, or promotion. */
8
+ dryRun?: boolean;
9
+ }
10
+ export interface GrooverIngestResult {
11
+ imported: number;
12
+ skipped: number;
13
+ promoted: string[];
14
+ }
15
+ export declare class GrooverLogIngester {
16
+ private readonly sourceDir;
17
+ private readonly targetDir;
18
+ private readonly signalsManager;
19
+ private readonly promoteAfterIngest;
20
+ private readonly dryRun;
21
+ constructor(options: GrooverIngesterOptions);
22
+ ingest(): GrooverIngestResult;
23
+ private recordObservations;
24
+ private loadExistingIds;
25
+ }
26
+ //# sourceMappingURL=groover-log-ingester.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"groover-log-ingester.d.ts","sourceRoot":"","sources":["../../src/ingestion/groover-log-ingester.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAQ7E,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,qBAAqB,CAAC;IACvC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,6EAA6E;IAC7E,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwB;IACvD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAU;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;gBAErB,OAAO,EAAE,sBAAsB;IAQ3C,MAAM,IAAI,mBAAmB;IA+D7B,OAAO,CAAC,kBAAkB;IAgB1B,OAAO,CAAC,eAAe;CAmBxB"}