@aria_asi/cli 0.2.39 → 0.2.41

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 (802) hide show
  1. package/bin/aria.js +236 -34
  2. package/dist/aria-connector/src/action-ledger-core.d.ts +387 -0
  3. package/dist/aria-connector/src/action-ledger-core.d.ts.map +1 -0
  4. package/dist/aria-connector/src/action-ledger-core.js +638 -0
  5. package/dist/aria-connector/src/action-ledger-core.js.map +1 -0
  6. package/dist/aria-connector/src/chat.d.ts.map +1 -1
  7. package/dist/aria-connector/src/chat.js +5 -6
  8. package/dist/aria-connector/src/chat.js.map +1 -1
  9. package/dist/aria-connector/src/codebase-scanner.d.ts +1 -1
  10. package/dist/aria-connector/src/codebase-scanner.d.ts.map +1 -1
  11. package/dist/aria-connector/src/connectors/claude-code.d.ts +1 -0
  12. package/dist/aria-connector/src/connectors/claude-code.d.ts.map +1 -1
  13. package/dist/aria-connector/src/connectors/claude-code.js +152 -14
  14. package/dist/aria-connector/src/connectors/claude-code.js.map +1 -1
  15. package/dist/aria-connector/src/connectors/codebase-awareness.d.ts +10 -0
  16. package/dist/aria-connector/src/connectors/codebase-awareness.d.ts.map +1 -1
  17. package/dist/aria-connector/src/connectors/codebase-awareness.js +276 -27
  18. package/dist/aria-connector/src/connectors/codebase-awareness.js.map +1 -1
  19. package/dist/aria-connector/src/connectors/codex.d.ts +3 -1
  20. package/dist/aria-connector/src/connectors/codex.d.ts.map +1 -1
  21. package/dist/aria-connector/src/connectors/codex.js +1271 -40
  22. package/dist/aria-connector/src/connectors/codex.js.map +1 -1
  23. package/dist/aria-connector/src/connectors/cursor.d.ts.map +1 -1
  24. package/dist/aria-connector/src/connectors/cursor.js +7 -0
  25. package/dist/aria-connector/src/connectors/cursor.js.map +1 -1
  26. package/dist/aria-connector/src/connectors/governed-adapter.d.ts +30 -0
  27. package/dist/aria-connector/src/connectors/governed-adapter.d.ts.map +1 -0
  28. package/dist/aria-connector/src/connectors/governed-adapter.js +132 -0
  29. package/dist/aria-connector/src/connectors/governed-adapter.js.map +1 -0
  30. package/dist/aria-connector/src/connectors/opencode.d.ts +3 -1
  31. package/dist/aria-connector/src/connectors/opencode.d.ts.map +1 -1
  32. package/dist/aria-connector/src/connectors/opencode.js +18 -2
  33. package/dist/aria-connector/src/connectors/opencode.js.map +1 -1
  34. package/dist/aria-connector/src/connectors/repo-guard.d.ts.map +1 -1
  35. package/dist/aria-connector/src/connectors/repo-guard.js +25 -14
  36. package/dist/aria-connector/src/connectors/repo-guard.js.map +1 -1
  37. package/dist/aria-connector/src/connectors/runtime.d.ts.map +1 -1
  38. package/dist/aria-connector/src/connectors/runtime.js +92 -2
  39. package/dist/aria-connector/src/connectors/runtime.js.map +1 -1
  40. package/dist/aria-connector/src/connectors/shell.d.ts.map +1 -1
  41. package/dist/aria-connector/src/connectors/shell.js +123 -7
  42. package/dist/aria-connector/src/connectors/shell.js.map +1 -1
  43. package/dist/aria-connector/src/cross-cli-hive-binding.d.ts +63 -0
  44. package/dist/aria-connector/src/cross-cli-hive-binding.d.ts.map +1 -0
  45. package/dist/aria-connector/src/cross-cli-hive-binding.js +205 -0
  46. package/dist/aria-connector/src/cross-cli-hive-binding.js.map +1 -0
  47. package/dist/aria-connector/src/garden-control-plane.d.ts +6 -1
  48. package/dist/aria-connector/src/garden-control-plane.d.ts.map +1 -1
  49. package/dist/aria-connector/src/garden-control-plane.js +8 -2
  50. package/dist/aria-connector/src/garden-control-plane.js.map +1 -1
  51. package/dist/aria-connector/src/governed-surface-runner.d.ts +189 -0
  52. package/dist/aria-connector/src/governed-surface-runner.d.ts.map +1 -0
  53. package/dist/aria-connector/src/governed-surface-runner.js +1022 -0
  54. package/dist/aria-connector/src/governed-surface-runner.js.map +1 -0
  55. package/dist/aria-connector/src/index.d.ts +10 -1
  56. package/dist/aria-connector/src/index.d.ts.map +1 -1
  57. package/dist/aria-connector/src/index.js +5 -0
  58. package/dist/aria-connector/src/index.js.map +1 -1
  59. package/dist/aria-connector/src/task-runner.d.ts +3 -0
  60. package/dist/aria-connector/src/task-runner.d.ts.map +1 -0
  61. package/dist/aria-connector/src/task-runner.js +3526 -0
  62. package/dist/aria-connector/src/task-runner.js.map +1 -0
  63. package/dist/aria-web/src/lib/codebase-scanner.d.ts +21 -2
  64. package/dist/aria-web/src/lib/codebase-scanner.d.ts.map +1 -1
  65. package/dist/aria-web/src/lib/codebase-scanner.js +59 -14
  66. package/dist/aria-web/src/lib/codebase-scanner.js.map +1 -1
  67. package/dist/assets/hooks/README.md +58 -0
  68. package/dist/assets/hooks/aria-agent-handoff.mjs +147 -2
  69. package/dist/assets/hooks/aria-agent-ledger-merge.mjs +31 -7
  70. package/dist/assets/hooks/aria-architect-fallback.mjs +10 -2
  71. package/dist/assets/hooks/aria-claim-evidence-stop-gate.mjs +240 -0
  72. package/dist/assets/hooks/aria-cognition-substrate-binding.mjs +84 -10
  73. package/dist/assets/hooks/aria-first-class-coach.mjs +305 -10
  74. package/dist/assets/hooks/aria-harness-via-sdk.mjs +93 -16
  75. package/dist/assets/hooks/aria-import-resolution-gate.mjs +106 -20
  76. package/dist/assets/hooks/aria-outcome-record.mjs +56 -20
  77. package/dist/assets/hooks/aria-pre-emit-autoload.mjs +1809 -0
  78. package/dist/assets/hooks/aria-pre-emit-autoload.mjs.before-orchestration-redesign +1400 -0
  79. package/dist/assets/hooks/aria-pre-emit-dryrun.mjs +22 -3
  80. package/dist/assets/hooks/aria-pre-text-gate.mjs +11 -2
  81. package/dist/assets/hooks/aria-pre-tool-gate.mjs +516 -92
  82. package/dist/assets/hooks/aria-pre-tool-use.mjs +70 -6
  83. package/dist/assets/hooks/aria-preprompt-consult.mjs +23 -4
  84. package/dist/assets/hooks/aria-repo-doctrine-gate.mjs +29 -3
  85. package/dist/assets/hooks/aria-stop-gate.mjs +585 -76
  86. package/dist/assets/hooks/aria-trigger-autolearn.mjs +17 -3
  87. package/dist/assets/hooks/aria-universal-turn-packet.mjs +1165 -0
  88. package/dist/assets/hooks/aria-userprompt-abandon-detect.mjs +9 -1
  89. package/dist/assets/hooks/canonical-settings-block.json +172 -0
  90. package/dist/assets/hooks/codex-native/aria-harness-ticker-sidecar.mjs +92 -0
  91. package/dist/assets/hooks/codex-native/aria-hive-wal-consumer.mjs +86 -0
  92. package/dist/assets/hooks/codex-native/aria-live-ticker.mjs +38 -0
  93. package/dist/assets/hooks/codex-native/aria-post-tool-use.mjs +236 -0
  94. package/dist/assets/hooks/codex-native/aria-pre-tool-use.mjs +362 -0
  95. package/dist/assets/hooks/codex-native/aria-stop.mjs +691 -0
  96. package/dist/assets/hooks/codex-native/aria-userprompt-submit.mjs +623 -0
  97. package/dist/assets/hooks/codex-native/atlas-session-context.mjs +121 -0
  98. package/dist/assets/hooks/codex-native/lib/evaluate-with-kernel.mjs +257 -0
  99. package/dist/assets/hooks/codex-native/lib/hive-wal-consumer.mjs +452 -0
  100. package/dist/assets/hooks/codex-native/lib/kernel/deterministic-cognitive-kernel.mjs +914 -0
  101. package/dist/assets/hooks/codex-native/lib/project-boundary-cognition.mjs +143 -0
  102. package/dist/assets/hooks/codex-native/lib/runtime-client.mjs +3567 -0
  103. package/dist/assets/hooks/codex-native/lib/task-project-ledger.mjs +294 -0
  104. package/dist/assets/hooks/doctrine_trigger_map.json +236 -25
  105. package/dist/assets/hooks/doctrine_trigger_map.schema.json +46 -0
  106. package/dist/assets/hooks/install.sh +84 -0
  107. package/dist/assets/hooks/lib/action-ledger-core.mjs +269 -0
  108. package/dist/assets/hooks/lib/aria-gate-ledger.mjs +143 -0
  109. package/dist/assets/hooks/lib/ast-stub-shape-detector.mjs +107 -0
  110. package/dist/assets/hooks/lib/atlas-dossier-client.mjs +151 -0
  111. package/dist/assets/hooks/lib/atlas-orchestrator-postwire.mjs +221 -0
  112. package/dist/assets/hooks/lib/canonical-lenses.mjs +83 -6
  113. package/dist/assets/hooks/lib/coach-intent-classifier.mjs +248 -0
  114. package/dist/assets/hooks/lib/cognitive-block-parser.mjs +111 -0
  115. package/dist/assets/hooks/lib/doctrine-trigger-map-loader.mjs +137 -0
  116. package/dist/assets/hooks/lib/domain-output-quality.mjs +132 -3
  117. package/dist/assets/hooks/lib/empty-catch-scanner.mjs +91 -0
  118. package/dist/assets/hooks/lib/end-phase-qa-autofire.mjs +426 -0
  119. package/dist/assets/hooks/lib/evaluate-with-kernel.mjs +133 -0
  120. package/dist/assets/hooks/lib/first-class-coach.mjs +454 -19
  121. package/dist/assets/hooks/lib/gate-audit.mjs +12 -2
  122. package/dist/assets/hooks/lib/gate-loop-state.mjs +11 -2
  123. package/dist/assets/hooks/lib/goal-contract-quality.mjs +302 -0
  124. package/dist/assets/hooks/lib/hook-message-window.mjs +101 -9
  125. package/dist/assets/hooks/lib/invocation-required-verifier.mjs +184 -0
  126. package/dist/assets/hooks/lib/kernel/deterministic-cognitive-kernel.mjs +906 -0
  127. package/dist/assets/hooks/lib/obligation-ledger.mjs +147 -0
  128. package/dist/assets/hooks/lib/orchestration-manifest-extract.mjs +217 -0
  129. package/dist/assets/hooks/lib/owner-authorizations.mjs +269 -0
  130. package/dist/assets/hooks/lib/probe-discipline-scanner.mjs +142 -0
  131. package/dist/assets/hooks/lib/project-boundary-cognition.mjs +143 -0
  132. package/dist/assets/hooks/lib/recovery-context.mjs +151 -0
  133. package/dist/assets/hooks/lib/recovery-template-loader.mjs +154 -0
  134. package/dist/assets/hooks/lib/self-doctrine-check.mjs +321 -0
  135. package/dist/assets/hooks/lib/sensitive-shape-detector.mjs +64 -0
  136. package/dist/assets/hooks/lib/skill-autoload-gate-impl.mjs +226 -1
  137. package/dist/assets/hooks/lib/stop-hook-protocol.mjs +166 -0
  138. package/dist/assets/hooks/lib/surface-caught.mjs +94 -0
  139. package/dist/assets/hooks/recovery-templates/force-reauthor.md +67 -0
  140. package/dist/assets/hooks/recovery-templates/handoff-recovery.md +25 -0
  141. package/dist/assets/hooks/scripts/check-hard-risk-prefix.mjs +99 -0
  142. package/dist/assets/hooks/skills/aria-conversational-doctrine-discipline/SKILL.md +101 -0
  143. package/dist/assets/hooks/test-aria-preturn-memory-gate.mjs +2 -2
  144. package/dist/assets/hooks/test-tier-lens-labeling.mjs +14 -3
  145. package/dist/assets/opencode-plugins/harness-context/index.js +39 -6
  146. package/dist/assets/opencode-plugins/harness-context/task-project-ledger.mjs +5 -1
  147. package/dist/assets/opencode-plugins/harness-gate/index.js +36 -0
  148. package/dist/assets/opencode-plugins/harness-gate/lib/atlas-dossier-client.js +1 -0
  149. package/dist/assets/opencode-plugins/harness-gate/lib/recovery-grants.js +79 -0
  150. package/dist/assets/opencode-plugins/harness-outcome/index.js +12 -0
  151. package/dist/assets/opencode-plugins/harness-stop/index.js +97 -2
  152. package/dist/assets/opencode-plugins/harness-stop/lib/atlas-dossier-client.js +1 -0
  153. package/dist/assets/opencode-plugins/harness-stop/lib/domain-output-quality.js +15 -2
  154. package/dist/assets/opencode-plugins/lib/coach.js +148 -0
  155. package/dist/runtime/coach-kernel.mjs +144 -7
  156. package/dist/runtime/codex-bridge.mjs +254 -8
  157. package/dist/runtime/discipline/doctrine_trigger_map.json +236 -25
  158. package/dist/runtime/discipline/skills/aria-cognition/34-frameworks-unified/SKILL.md +42 -0
  159. package/dist/runtime/discipline/skills/aria-cognition/aria-aristotle-cognitives/SKILL.md +128 -0
  160. package/dist/runtime/discipline/skills/aria-cognition/aria-aristotle-intra-phase/SKILL.md +99 -0
  161. package/dist/runtime/discipline/skills/aria-cognition/aria-aristotle-post-phase/SKILL.md +118 -0
  162. package/dist/runtime/discipline/skills/aria-cognition/aria-aristotle-pre-phase/SKILL.md +117 -0
  163. package/dist/runtime/discipline/skills/aria-cognition/aria-axioms-first-principles/SKILL.md +202 -0
  164. package/dist/runtime/discipline/skills/aria-cognition/aria-axioms-first-principles/agents/openai.yaml +4 -0
  165. package/dist/runtime/discipline/skills/aria-cognition/aria-axioms-first-principles/references/source-map.md +130 -0
  166. package/dist/runtime/discipline/skills/aria-cognition/aria-backend-architect/SKILL.md +124 -0
  167. package/dist/runtime/discipline/skills/aria-cognition/aria-backend-architect/references/backend-cookbook.md +417 -0
  168. package/dist/runtime/discipline/skills/aria-cognition/aria-business-audit/SKILL.md +133 -0
  169. package/dist/runtime/discipline/skills/aria-cognition/aria-business-audit/references/audit-cookbook.md +247 -0
  170. package/dist/runtime/discipline/skills/aria-cognition/aria-business-frame/SKILL.md +138 -0
  171. package/dist/runtime/discipline/skills/aria-cognition/aria-business-frame/references/business-cookbook.md +154 -0
  172. package/dist/runtime/discipline/skills/aria-cognition/aria-chat/SKILL.md +84 -0
  173. package/dist/runtime/discipline/skills/aria-cognition/aria-chat/scripts/aria-chat.sh +57 -0
  174. package/dist/runtime/discipline/skills/aria-cognition/aria-cognition-autofire/SKILL.md +137 -0
  175. package/dist/runtime/discipline/skills/aria-cognition/aria-cognition-batch/SKILL.md +264 -0
  176. package/dist/runtime/discipline/skills/aria-cognition/aria-decision-mizan/SKILL.md +136 -0
  177. package/dist/runtime/discipline/skills/aria-cognition/aria-decision-mizan/references/decision-frameworks.md +287 -0
  178. package/dist/runtime/discipline/skills/aria-cognition/aria-first-class-operating-contract/SKILL.md +104 -0
  179. package/dist/runtime/discipline/skills/aria-cognition/aria-frontend-architect/SKILL.md +123 -0
  180. package/dist/runtime/discipline/skills/aria-cognition/aria-frontend-architect/references/frontend-cookbook.md +358 -0
  181. package/dist/runtime/discipline/skills/aria-cognition/aria-fullstack-orchestrator/SKILL.md +127 -0
  182. package/dist/runtime/discipline/skills/aria-cognition/aria-fullstack-orchestrator/references/fullstack-cookbook.md +383 -0
  183. package/dist/runtime/discipline/skills/aria-cognition/aria-gtm-architect/SKILL.md +126 -0
  184. package/dist/runtime/discipline/skills/aria-cognition/aria-gtm-architect/references/gtm-cookbook.md +235 -0
  185. package/dist/runtime/discipline/skills/aria-cognition/aria-harness-deploy/SKILL.md +145 -0
  186. package/dist/runtime/discipline/skills/aria-cognition/aria-harness-no-stripping/SKILL.md +135 -0
  187. package/dist/runtime/discipline/skills/aria-cognition/aria-harness-onboarding/SKILL.md +130 -0
  188. package/dist/runtime/discipline/skills/aria-cognition/aria-harness-output-discipline/SKILL.md +120 -0
  189. package/dist/runtime/discipline/skills/aria-cognition/aria-harness-substrate-binding/SKILL.md +139 -0
  190. package/dist/runtime/discipline/skills/aria-cognition/aria-http-harness-client/SKILL.md +85 -0
  191. package/dist/runtime/discipline/skills/aria-cognition/aria-http-harness-client/scripts/smoke.mjs +47 -0
  192. package/dist/runtime/discipline/skills/aria-cognition/aria-k8s-deploy/SKILL.md +174 -0
  193. package/dist/runtime/discipline/skills/aria-cognition/aria-k8s-deploy/agents/openai.yaml +3 -0
  194. package/dist/runtime/discipline/skills/aria-cognition/aria-ladduniframe/SKILL.md +60 -0
  195. package/dist/runtime/discipline/skills/aria-cognition/aria-ledger-fleet-execution/SKILL.md +126 -0
  196. package/dist/runtime/discipline/skills/aria-cognition/aria-live-ops/SKILL.md +54 -0
  197. package/dist/runtime/discipline/skills/aria-cognition/aria-mac-ssh-ops/SKILL.md +100 -0
  198. package/dist/runtime/discipline/skills/aria-cognition/aria-memory-index/SKILL.md +42 -0
  199. package/dist/runtime/discipline/skills/aria-cognition/aria-noor-cognitives/SKILL.md +120 -0
  200. package/dist/runtime/discipline/skills/aria-cognition/aria-ops/SKILL.md +60 -0
  201. package/dist/runtime/discipline/skills/aria-cognition/aria-ops/references/live-endpoints.md +59 -0
  202. package/dist/runtime/discipline/skills/aria-cognition/aria-quality-audit/SKILL.md +133 -0
  203. package/dist/runtime/discipline/skills/aria-cognition/aria-readable-output/SKILL.md +239 -0
  204. package/dist/runtime/discipline/skills/aria-cognition/aria-readable-output/references/layout-cookbook.md +366 -0
  205. package/dist/runtime/discipline/skills/aria-cognition/aria-reasoning/SKILL.md +67 -0
  206. package/dist/runtime/discipline/skills/aria-cognition/aria-reasoning/references/core-principles.md +42 -0
  207. package/dist/runtime/discipline/skills/aria-cognition/aria-repo-audit/SKILL.md +135 -0
  208. package/dist/runtime/discipline/skills/aria-cognition/aria-repo-audit/references/repo-audit-cookbook.md +375 -0
  209. package/dist/runtime/discipline/skills/aria-cognition/aria-research-orchestrator/SKILL.md +138 -0
  210. package/dist/runtime/discipline/skills/aria-cognition/aria-research-orchestrator/references/research-patterns.md +270 -0
  211. package/dist/runtime/discipline/skills/aria-cognition/aria-retention-engine/SKILL.md +120 -0
  212. package/dist/runtime/discipline/skills/aria-cognition/aria-retention-engine/references/retention-cookbook.md +271 -0
  213. package/dist/runtime/discipline/skills/aria-cognition/aria-revenue-engine/SKILL.md +128 -0
  214. package/dist/runtime/discipline/skills/aria-cognition/aria-revenue-engine/references/revenue-cookbook.md +227 -0
  215. package/dist/runtime/discipline/skills/aria-cognition/aria-senior-code-audit/SKILL.md +233 -0
  216. package/dist/runtime/discipline/skills/aria-cognition/aria-senior-code-audit/references/audit-checklist.md +369 -0
  217. package/dist/runtime/discipline/skills/aria-cognition/aria-senior-code-cookbook/SKILL.md +288 -0
  218. package/dist/runtime/discipline/skills/aria-cognition/aria-senior-code-cookbook/references/engineering-cookbook.md +489 -0
  219. package/dist/runtime/discipline/skills/aria-cognition/aria-soul-principles/SKILL.md +42 -0
  220. package/dist/runtime/discipline/skills/aria-cognition/aria-task-codex-executor/SKILL.md +86 -0
  221. package/dist/runtime/discipline/skills/aria-cognition/aristotle-engine/SKILL.md +42 -0
  222. package/dist/runtime/discipline/skills/aria-cognition/cross-domain-24/SKILL.md +42 -0
  223. package/dist/runtime/discipline/skills/aria-cognition/deepsoul-emotional/SKILL.md +42 -0
  224. package/dist/runtime/discipline/skills/aria-cognition/fitrah-guard/SKILL.md +78 -0
  225. package/dist/runtime/discipline/skills/aria-cognition/ghazali-8lens/SKILL.md +227 -29
  226. package/dist/runtime/discipline/skills/aria-cognition/ghazali-8lens/references/ghazali-8lens-cookbook.md +797 -0
  227. package/dist/runtime/discipline/skills/aria-cognition/ijtihad-novel/SKILL.md +42 -0
  228. package/dist/runtime/discipline/skills/aria-cognition/ilham-intuition/SKILL.md +42 -0
  229. package/dist/runtime/discipline/skills/aria-cognition/never-guess/SKILL.md +77 -0
  230. package/dist/runtime/discipline/skills/aria-cognition/noor-recognition/SKILL.md +45 -0
  231. package/dist/runtime/discipline/skills/aria-cognition/qiyas-analogy/SKILL.md +174 -14
  232. package/dist/runtime/discipline/skills/aria-cognition/ruh-basis/SKILL.md +42 -0
  233. package/dist/runtime/discipline/skills/aria-cognition/tadabbur/SKILL.md +506 -0
  234. package/dist/runtime/discipline/skills/aria-cognition/tadabbur/references/tadabbur-cookbook.md +921 -0
  235. package/dist/runtime/discipline/skills/aria-cognition/tadabbur-ops/SKILL.md +42 -0
  236. package/dist/runtime/discipline/skills/aria-cognition/tafakkur/SKILL.md +104 -0
  237. package/dist/runtime/doctrine_trigger_map.json +236 -25
  238. package/dist/runtime/embedded-public-key.mjs +27 -0
  239. package/dist/runtime/gated-ledger.mjs +41 -14
  240. package/dist/runtime/harness-daemon.mjs +85 -10
  241. package/dist/runtime/hive-wal-publisher.mjs +292 -0
  242. package/dist/runtime/hooks/README.md +58 -0
  243. package/dist/runtime/hooks/aria-agent-handoff.mjs +147 -2
  244. package/dist/runtime/hooks/aria-agent-ledger-merge.mjs +31 -7
  245. package/dist/runtime/hooks/aria-architect-fallback.mjs +10 -2
  246. package/dist/runtime/hooks/aria-claim-evidence-stop-gate.mjs +240 -0
  247. package/dist/runtime/hooks/aria-cognition-substrate-binding.mjs +84 -10
  248. package/dist/runtime/hooks/aria-first-class-coach.mjs +305 -10
  249. package/dist/runtime/hooks/aria-harness-via-sdk.mjs +93 -16
  250. package/dist/runtime/hooks/aria-import-resolution-gate.mjs +106 -20
  251. package/dist/runtime/hooks/aria-outcome-record.mjs +56 -20
  252. package/dist/runtime/hooks/aria-pre-emit-autoload.mjs +1809 -0
  253. package/dist/runtime/hooks/aria-pre-emit-autoload.mjs.before-orchestration-redesign +1400 -0
  254. package/dist/runtime/hooks/aria-pre-emit-dryrun.mjs +22 -3
  255. package/dist/runtime/hooks/aria-pre-text-gate.mjs +11 -2
  256. package/dist/runtime/hooks/aria-pre-tool-gate.mjs +516 -92
  257. package/dist/runtime/hooks/aria-pre-tool-use.mjs +70 -6
  258. package/dist/runtime/hooks/aria-preprompt-consult.mjs +23 -4
  259. package/dist/runtime/hooks/aria-repo-doctrine-gate.mjs +29 -3
  260. package/dist/runtime/hooks/aria-stop-gate.mjs +585 -76
  261. package/dist/runtime/hooks/aria-trigger-autolearn.mjs +17 -3
  262. package/dist/runtime/hooks/aria-universal-turn-packet.mjs +1165 -0
  263. package/dist/runtime/hooks/aria-userprompt-abandon-detect.mjs +9 -1
  264. package/dist/runtime/hooks/canonical-settings-block.json +172 -0
  265. package/dist/runtime/hooks/codex-native/aria-harness-ticker-sidecar.mjs +92 -0
  266. package/dist/runtime/hooks/codex-native/aria-hive-wal-consumer.mjs +86 -0
  267. package/dist/runtime/hooks/codex-native/aria-live-ticker.mjs +38 -0
  268. package/dist/runtime/hooks/codex-native/aria-post-tool-use.mjs +236 -0
  269. package/dist/runtime/hooks/codex-native/aria-pre-tool-use.mjs +362 -0
  270. package/dist/runtime/hooks/codex-native/aria-stop.mjs +691 -0
  271. package/dist/runtime/hooks/codex-native/aria-userprompt-submit.mjs +623 -0
  272. package/dist/runtime/hooks/codex-native/atlas-session-context.mjs +121 -0
  273. package/dist/runtime/hooks/codex-native/lib/evaluate-with-kernel.mjs +257 -0
  274. package/dist/runtime/hooks/codex-native/lib/hive-wal-consumer.mjs +452 -0
  275. package/dist/runtime/hooks/codex-native/lib/kernel/deterministic-cognitive-kernel.mjs +914 -0
  276. package/dist/runtime/hooks/codex-native/lib/project-boundary-cognition.mjs +143 -0
  277. package/dist/runtime/hooks/codex-native/lib/runtime-client.mjs +3567 -0
  278. package/dist/runtime/hooks/codex-native/lib/task-project-ledger.mjs +294 -0
  279. package/dist/runtime/hooks/doctrine_trigger_map.json +236 -25
  280. package/dist/runtime/hooks/doctrine_trigger_map.schema.json +46 -0
  281. package/dist/runtime/hooks/install.sh +84 -0
  282. package/dist/runtime/hooks/lib/action-ledger-core.mjs +269 -0
  283. package/dist/runtime/hooks/lib/aria-gate-ledger.mjs +143 -0
  284. package/dist/runtime/hooks/lib/ast-stub-shape-detector.mjs +107 -0
  285. package/dist/runtime/hooks/lib/atlas-dossier-client.mjs +151 -0
  286. package/dist/runtime/hooks/lib/atlas-orchestrator-postwire.mjs +221 -0
  287. package/dist/runtime/hooks/lib/canonical-lenses.mjs +83 -6
  288. package/dist/runtime/hooks/lib/coach-intent-classifier.mjs +248 -0
  289. package/dist/runtime/hooks/lib/cognitive-block-parser.mjs +111 -0
  290. package/dist/runtime/hooks/lib/doctrine-trigger-map-loader.mjs +137 -0
  291. package/dist/runtime/hooks/lib/domain-output-quality.mjs +132 -3
  292. package/dist/runtime/hooks/lib/empty-catch-scanner.mjs +91 -0
  293. package/dist/runtime/hooks/lib/end-phase-qa-autofire.mjs +426 -0
  294. package/dist/runtime/hooks/lib/evaluate-with-kernel.mjs +133 -0
  295. package/dist/runtime/hooks/lib/first-class-coach.mjs +454 -19
  296. package/dist/runtime/hooks/lib/gate-audit.mjs +12 -2
  297. package/dist/runtime/hooks/lib/gate-loop-state.mjs +11 -2
  298. package/dist/runtime/hooks/lib/goal-contract-quality.mjs +302 -0
  299. package/dist/runtime/hooks/lib/hook-message-window.mjs +101 -9
  300. package/dist/runtime/hooks/lib/invocation-required-verifier.mjs +184 -0
  301. package/dist/runtime/hooks/lib/kernel/deterministic-cognitive-kernel.mjs +906 -0
  302. package/dist/runtime/hooks/lib/obligation-ledger.mjs +147 -0
  303. package/dist/runtime/hooks/lib/orchestration-manifest-extract.mjs +217 -0
  304. package/dist/runtime/hooks/lib/owner-authorizations.mjs +269 -0
  305. package/dist/runtime/hooks/lib/probe-discipline-scanner.mjs +142 -0
  306. package/dist/runtime/hooks/lib/project-boundary-cognition.mjs +143 -0
  307. package/dist/runtime/hooks/lib/recovery-context.mjs +151 -0
  308. package/dist/runtime/hooks/lib/recovery-template-loader.mjs +154 -0
  309. package/dist/runtime/hooks/lib/self-doctrine-check.mjs +321 -0
  310. package/dist/runtime/hooks/lib/sensitive-shape-detector.mjs +64 -0
  311. package/dist/runtime/hooks/lib/skill-autoload-gate-impl.mjs +226 -1
  312. package/dist/runtime/hooks/lib/stop-hook-protocol.mjs +166 -0
  313. package/dist/runtime/hooks/lib/surface-caught.mjs +94 -0
  314. package/dist/runtime/hooks/recovery-templates/force-reauthor.md +67 -0
  315. package/dist/runtime/hooks/recovery-templates/handoff-recovery.md +25 -0
  316. package/dist/runtime/hooks/scripts/check-hard-risk-prefix.mjs +99 -0
  317. package/dist/runtime/hooks/skills/aria-conversational-doctrine-discipline/SKILL.md +101 -0
  318. package/dist/runtime/hooks/test-aria-preturn-memory-gate.mjs +2 -2
  319. package/dist/runtime/hooks/test-tier-lens-labeling.mjs +14 -3
  320. package/dist/runtime/lib/evaluate-with-kernel.mjs +133 -0
  321. package/dist/runtime/lib/kernel/deterministic-cognitive-kernel.mjs +906 -0
  322. package/dist/runtime/local-phase.mjs +10 -5
  323. package/dist/runtime/manifest.json +8 -8
  324. package/dist/runtime/packet-verifier.mjs +166 -0
  325. package/dist/runtime/provider-proxy.mjs +13 -0
  326. package/dist/runtime/quality-enforcer.mjs +40 -23
  327. package/dist/runtime/runtime-rails/registry.mjs +252 -0
  328. package/dist/runtime/sdk/BUNDLED.json +2 -2
  329. package/dist/runtime/sdk/index.d.ts +119 -4
  330. package/dist/runtime/sdk/index.js +138 -12
  331. package/dist/runtime/sdk/index.js.map +1 -1
  332. package/dist/runtime/service.mjs +8036 -764
  333. package/dist/runtime/sub-agent-enforcer.mjs +201 -0
  334. package/dist/runtime/task-project-ledger.mjs +5 -1
  335. package/dist/sdk/BUNDLED.json +2 -2
  336. package/dist/sdk/index.d.ts +119 -4
  337. package/dist/sdk/index.js +138 -12
  338. package/dist/sdk/index.js.map +1 -1
  339. package/hooks/README.md +58 -0
  340. package/hooks/aria-agent-handoff.mjs +147 -2
  341. package/hooks/aria-agent-ledger-merge.mjs +31 -7
  342. package/hooks/aria-architect-fallback.mjs +10 -2
  343. package/hooks/aria-claim-evidence-stop-gate.mjs +240 -0
  344. package/hooks/aria-cognition-substrate-binding.mjs +84 -10
  345. package/hooks/aria-first-class-coach.mjs +305 -10
  346. package/hooks/aria-harness-via-sdk.mjs +93 -16
  347. package/hooks/aria-import-resolution-gate.mjs +106 -20
  348. package/hooks/aria-outcome-record.mjs +56 -20
  349. package/hooks/aria-pre-emit-autoload.mjs +1809 -0
  350. package/hooks/aria-pre-emit-autoload.mjs.before-orchestration-redesign +1400 -0
  351. package/hooks/aria-pre-emit-dryrun.mjs +22 -3
  352. package/hooks/aria-pre-text-gate.mjs +11 -2
  353. package/hooks/aria-pre-tool-gate.mjs +516 -92
  354. package/hooks/aria-pre-tool-use.mjs +70 -6
  355. package/hooks/aria-preprompt-consult.mjs +23 -4
  356. package/hooks/aria-repo-doctrine-gate.mjs +29 -3
  357. package/hooks/aria-stop-gate.mjs +585 -76
  358. package/hooks/aria-trigger-autolearn.mjs +17 -3
  359. package/hooks/aria-universal-turn-packet.mjs +1165 -0
  360. package/hooks/aria-userprompt-abandon-detect.mjs +9 -1
  361. package/hooks/canonical-settings-block.json +172 -0
  362. package/hooks/codex-native/aria-harness-ticker-sidecar.mjs +92 -0
  363. package/hooks/codex-native/aria-hive-wal-consumer.mjs +86 -0
  364. package/hooks/codex-native/aria-live-ticker.mjs +38 -0
  365. package/hooks/codex-native/aria-post-tool-use.mjs +236 -0
  366. package/hooks/codex-native/aria-pre-tool-use.mjs +362 -0
  367. package/hooks/codex-native/aria-stop.mjs +691 -0
  368. package/hooks/codex-native/aria-userprompt-submit.mjs +623 -0
  369. package/hooks/codex-native/atlas-session-context.mjs +121 -0
  370. package/hooks/codex-native/lib/evaluate-with-kernel.mjs +257 -0
  371. package/hooks/codex-native/lib/hive-wal-consumer.mjs +452 -0
  372. package/hooks/codex-native/lib/kernel/deterministic-cognitive-kernel.mjs +914 -0
  373. package/hooks/codex-native/lib/project-boundary-cognition.mjs +143 -0
  374. package/hooks/codex-native/lib/runtime-client.mjs +3567 -0
  375. package/hooks/codex-native/lib/task-project-ledger.mjs +294 -0
  376. package/hooks/doctrine_trigger_map.json +236 -25
  377. package/hooks/doctrine_trigger_map.schema.json +46 -0
  378. package/hooks/install.sh +84 -0
  379. package/hooks/lib/action-ledger-core.mjs +269 -0
  380. package/hooks/lib/aria-gate-ledger.mjs +143 -0
  381. package/hooks/lib/ast-stub-shape-detector.mjs +107 -0
  382. package/hooks/lib/atlas-dossier-client.mjs +151 -0
  383. package/hooks/lib/atlas-orchestrator-postwire.mjs +221 -0
  384. package/hooks/lib/canonical-lenses.mjs +83 -6
  385. package/hooks/lib/coach-intent-classifier.mjs +248 -0
  386. package/hooks/lib/cognitive-block-parser.mjs +111 -0
  387. package/hooks/lib/doctrine-trigger-map-loader.mjs +137 -0
  388. package/hooks/lib/domain-output-quality.mjs +132 -3
  389. package/hooks/lib/empty-catch-scanner.mjs +91 -0
  390. package/hooks/lib/end-phase-qa-autofire.mjs +426 -0
  391. package/hooks/lib/evaluate-with-kernel.mjs +133 -0
  392. package/hooks/lib/first-class-coach.mjs +454 -19
  393. package/hooks/lib/gate-audit.mjs +12 -2
  394. package/hooks/lib/gate-loop-state.mjs +11 -2
  395. package/hooks/lib/goal-contract-quality.mjs +302 -0
  396. package/hooks/lib/hook-message-window.mjs +101 -9
  397. package/hooks/lib/invocation-required-verifier.mjs +184 -0
  398. package/hooks/lib/kernel/deterministic-cognitive-kernel.mjs +906 -0
  399. package/hooks/lib/obligation-ledger.mjs +147 -0
  400. package/hooks/lib/orchestration-manifest-extract.mjs +217 -0
  401. package/hooks/lib/owner-authorizations.mjs +269 -0
  402. package/hooks/lib/probe-discipline-scanner.mjs +142 -0
  403. package/hooks/lib/project-boundary-cognition.mjs +143 -0
  404. package/hooks/lib/recovery-context.mjs +151 -0
  405. package/hooks/lib/recovery-template-loader.mjs +154 -0
  406. package/hooks/lib/self-doctrine-check.mjs +321 -0
  407. package/hooks/lib/sensitive-shape-detector.mjs +64 -0
  408. package/hooks/lib/skill-autoload-gate-impl.mjs +226 -1
  409. package/hooks/lib/stop-hook-protocol.mjs +166 -0
  410. package/hooks/lib/surface-caught.mjs +94 -0
  411. package/hooks/recovery-templates/force-reauthor.md +67 -0
  412. package/hooks/recovery-templates/handoff-recovery.md +25 -0
  413. package/hooks/scripts/check-hard-risk-prefix.mjs +99 -0
  414. package/hooks/skills/aria-conversational-doctrine-discipline/SKILL.md +101 -0
  415. package/hooks/test-aria-preturn-memory-gate.mjs +2 -2
  416. package/hooks/test-tier-lens-labeling.mjs +14 -3
  417. package/opencode-plugins/harness-context/index.js +39 -6
  418. package/opencode-plugins/harness-context/task-project-ledger.mjs +5 -1
  419. package/opencode-plugins/harness-gate/index.js +36 -0
  420. package/opencode-plugins/harness-gate/lib/atlas-dossier-client.js +1 -0
  421. package/opencode-plugins/harness-gate/lib/recovery-grants.js +79 -0
  422. package/opencode-plugins/harness-outcome/index.js +12 -0
  423. package/opencode-plugins/harness-stop/index.js +97 -2
  424. package/opencode-plugins/harness-stop/lib/atlas-dossier-client.js +1 -0
  425. package/opencode-plugins/harness-stop/lib/domain-output-quality.js +15 -2
  426. package/opencode-plugins/lib/coach.js +148 -0
  427. package/package.json +71 -5
  428. package/runtime-src/coach-kernel.mjs +144 -7
  429. package/runtime-src/codex-bridge.mjs +254 -8
  430. package/runtime-src/embedded-public-key.mjs +27 -0
  431. package/runtime-src/gated-ledger.mjs +41 -14
  432. package/runtime-src/harness-daemon.mjs +85 -10
  433. package/runtime-src/hive-wal-publisher.mjs +292 -0
  434. package/runtime-src/lib/evaluate-with-kernel.mjs +133 -0
  435. package/runtime-src/lib/kernel/deterministic-cognitive-kernel.mjs +906 -0
  436. package/runtime-src/local-phase.mjs +10 -5
  437. package/runtime-src/packet-verifier.mjs +166 -0
  438. package/runtime-src/provider-proxy.mjs +13 -0
  439. package/runtime-src/quality-enforcer.mjs +40 -23
  440. package/runtime-src/runtime-rails/registry.mjs +252 -0
  441. package/runtime-src/service.mjs +8036 -764
  442. package/runtime-src/sub-agent-enforcer.mjs +201 -0
  443. package/scripts/aria-ledger-append.mjs +337 -0
  444. package/scripts/aria-task-cheap-worker-dispatch.mjs +234 -0
  445. package/scripts/audit-of-audit-prior-tasks.mjs +194 -0
  446. package/scripts/audit-of-audit-this-turn.mjs +116 -0
  447. package/scripts/bundle-sdk.mjs +31 -5
  448. package/scripts/check-cli-wrapper-provider-contract.mjs +160 -0
  449. package/scripts/check-client-compatibility.mjs +15 -5
  450. package/scripts/check-client-smoke.mjs +297 -0
  451. package/scripts/check-codex-orchestrator-adoption.mjs +150 -0
  452. package/scripts/check-glm-env-wired.mjs +131 -0
  453. package/scripts/check-hive-local-storage-contract.mjs +91 -0
  454. package/scripts/check-hook-mirror.mjs +150 -0
  455. package/scripts/check-install-sh-drift.mjs +152 -0
  456. package/scripts/check-kernel-sync.mjs +101 -0
  457. package/scripts/check-package-artifact.mjs +152 -0
  458. package/scripts/check-registry-mirror.mjs +71 -0
  459. package/scripts/drain-owner-airtable-sync-queue.mjs +287 -0
  460. package/scripts/export-owner-status-sheets.mjs +589 -0
  461. package/scripts/live-sidecar-receipt-canary.mjs +347 -0
  462. package/scripts/qiyas-tadabbur-model-matrix.mjs +970 -0
  463. package/scripts/quality-ab-live-provider.mjs +913 -0
  464. package/scripts/self-test-action-ledger-core.mjs +190 -0
  465. package/scripts/self-test-approval-receipt-binding.mjs +122 -0
  466. package/scripts/self-test-autofire-quality-output.mjs +110 -0
  467. package/scripts/self-test-claude-code-action-ledger.mjs +132 -0
  468. package/scripts/self-test-claude-code-mechanical-autofire-hive.mjs +138 -0
  469. package/scripts/self-test-claude-code-mechanical-autofire.mjs +234 -0
  470. package/scripts/self-test-codebase-awareness-atlas-delta.mjs +159 -0
  471. package/scripts/self-test-codebase-awareness-delta-ingest.mjs +179 -0
  472. package/scripts/self-test-codex-live-hook-parity.mjs +84 -0
  473. package/scripts/self-test-codex-native-action-ledger.mjs +167 -0
  474. package/scripts/self-test-codex-native-hook-json-contract.mjs +74 -0
  475. package/scripts/self-test-codex-orchestrator-continuity.mjs +113 -0
  476. package/scripts/self-test-codex-readable-recovery.mjs +94 -0
  477. package/scripts/self-test-codex-self-harness.mjs +538 -0
  478. package/scripts/self-test-compiled-workunit.mjs +214 -0
  479. package/scripts/self-test-continuation-output-smoke.mjs +101 -0
  480. package/scripts/self-test-cross-cli-fleet-ticker.mjs +85 -0
  481. package/scripts/self-test-cross-cli-hive-adoption.mjs +125 -0
  482. package/scripts/self-test-cross-cli-hive-learning.mjs +146 -0
  483. package/scripts/self-test-cross-phase-tool-failure.mjs +110 -0
  484. package/scripts/self-test-cross-surface-action-ledger.mjs +149 -0
  485. package/scripts/self-test-end-of-phase-qa-court.mjs +616 -0
  486. package/scripts/self-test-evaluate-with-kernel.mjs +111 -0
  487. package/scripts/self-test-first-class-output-delta-proof.mjs +307 -0
  488. package/scripts/self-test-goal-contract-output-qa.mjs +73 -0
  489. package/scripts/self-test-goal-contract.mjs +35 -0
  490. package/scripts/self-test-governed-adapters.mjs +105 -0
  491. package/scripts/self-test-governed-surface-runner.mjs +198 -0
  492. package/scripts/self-test-harness-gates.mjs +15 -12
  493. package/scripts/self-test-harness-ticker-sidecar.mjs +153 -0
  494. package/scripts/self-test-hive-org-kernel.mjs +233 -0
  495. package/scripts/self-test-hive-session-coordination.mjs +156 -0
  496. package/scripts/self-test-hive-wal-consumer.mjs +111 -0
  497. package/scripts/self-test-kernel-a3-a4-selection.mjs +179 -0
  498. package/scripts/self-test-ledger-append.mjs +175 -0
  499. package/scripts/self-test-live-codex-posttool-packet-smoke.mjs +111 -0
  500. package/scripts/self-test-live-codex-pretool-packet-smoke.mjs +101 -0
  501. package/scripts/self-test-live-codex-stop-qa-kernel-smoke.mjs +43 -0
  502. package/scripts/self-test-live-wrapper-substrate-inventory.mjs +149 -0
  503. package/scripts/self-test-local-main-sync-script.mjs +47 -0
  504. package/scripts/self-test-mechanical-autofire-resolver.mjs +296 -0
  505. package/scripts/self-test-no-consult-cognitive-skills-output.mjs +135 -0
  506. package/scripts/self-test-owner-airtable-sync-queue.mjs +196 -0
  507. package/scripts/self-test-owner-airtable-sync.mjs +181 -0
  508. package/scripts/self-test-owner-sheets-action-ledger.mjs +100 -0
  509. package/scripts/self-test-production-preflight.mjs +78 -0
  510. package/scripts/self-test-project-boundary-cognition.mjs +79 -0
  511. package/scripts/self-test-qa-exec-kernel.mjs +34 -0
  512. package/scripts/self-test-qa-recovery-learning-loop.mjs +113 -0
  513. package/scripts/self-test-qiyas-label-alignment.mjs +94 -0
  514. package/scripts/self-test-recovery-context.mjs +110 -0
  515. package/scripts/self-test-repo-guard.mjs +10 -0
  516. package/scripts/self-test-runtime-health-self-heal.mjs +161 -0
  517. package/scripts/self-test-runtime-postcondition.mjs +70 -0
  518. package/scripts/self-test-soul-precommit-hook.mjs +39 -0
  519. package/scripts/self-test-stop-gate-kernel-guards.mjs +185 -0
  520. package/scripts/self-test-stop-gate.mjs +128 -0
  521. package/scripts/self-test-substrate-kernel-execution-receipt.mjs +130 -0
  522. package/scripts/self-test-substrate-open-skill-floor.mjs +87 -0
  523. package/scripts/self-test-substrate-output-quality-eval.mjs +171 -0
  524. package/scripts/self-test-task-closeout-drift.mjs +97 -0
  525. package/scripts/self-test-task-project-ledger-readiness.mjs +43 -0
  526. package/scripts/self-test-task-runner-phase-consumer.mjs +134 -0
  527. package/scripts/self-test-task-worker-lane.mjs +256 -0
  528. package/scripts/self-test-turn-substrate-qa-kernel.mjs +188 -0
  529. package/scripts/self-test-universal-action-capture.mjs +153 -0
  530. package/scripts/self-test-universal-turn-packet-entrypoints.mjs +252 -0
  531. package/scripts/self-test-universal-turn-packet.mjs +320 -0
  532. package/scripts/session-quality-backfill.mjs +253 -0
  533. package/scripts/smoke-autofire-100-prompts.mjs +481 -0
  534. package/scripts/sync-local-main-on-task-complete.mjs +278 -0
  535. package/scripts/sync-owner-status-airtable.mjs +1158 -0
  536. package/scripts/validate-skill-prompts.mjs +12 -1
  537. package/scripts/verify-codex-native-mirror.mjs +262 -0
  538. package/skills/34-frameworks-unified/SKILL.md +42 -0
  539. package/skills/api-design/SKILL.md +123 -0
  540. package/skills/architecture-decision/SKILL.md +105 -0
  541. package/skills/aria-aristotle-cognitives/SKILL.md +128 -0
  542. package/skills/aria-aristotle-intra-phase/SKILL.md +99 -0
  543. package/skills/aria-aristotle-post-phase/SKILL.md +116 -0
  544. package/skills/aria-aristotle-pre-phase/SKILL.md +117 -0
  545. package/skills/aria-axioms-first-principles/SKILL.md +202 -0
  546. package/skills/aria-axioms-first-principles/agents/openai.yaml +4 -0
  547. package/skills/aria-axioms-first-principles/references/source-map.md +130 -0
  548. package/skills/aria-chat/SKILL.md +84 -0
  549. package/skills/aria-chat/scripts/aria-chat.sh +57 -0
  550. package/skills/aria-cognition/34-frameworks-unified/SKILL.md +42 -0
  551. package/skills/aria-cognition/aria-aristotle-cognitives/SKILL.md +128 -0
  552. package/skills/aria-cognition/aria-aristotle-intra-phase/SKILL.md +99 -0
  553. package/skills/aria-cognition/aria-aristotle-post-phase/SKILL.md +118 -0
  554. package/skills/aria-cognition/aria-aristotle-pre-phase/SKILL.md +117 -0
  555. package/skills/aria-cognition/aria-axioms-first-principles/SKILL.md +202 -0
  556. package/skills/aria-cognition/aria-axioms-first-principles/agents/openai.yaml +4 -0
  557. package/skills/aria-cognition/aria-axioms-first-principles/references/source-map.md +130 -0
  558. package/skills/aria-cognition/aria-backend-architect/SKILL.md +124 -0
  559. package/skills/aria-cognition/aria-backend-architect/references/backend-cookbook.md +417 -0
  560. package/skills/aria-cognition/aria-business-audit/SKILL.md +133 -0
  561. package/skills/aria-cognition/aria-business-audit/references/audit-cookbook.md +247 -0
  562. package/skills/aria-cognition/aria-business-frame/SKILL.md +138 -0
  563. package/skills/aria-cognition/aria-business-frame/references/business-cookbook.md +154 -0
  564. package/skills/aria-cognition/aria-chat/SKILL.md +84 -0
  565. package/skills/aria-cognition/aria-chat/scripts/aria-chat.sh +57 -0
  566. package/skills/aria-cognition/aria-cognition-autofire/SKILL.md +137 -0
  567. package/skills/aria-cognition/aria-cognition-batch/SKILL.md +264 -0
  568. package/skills/aria-cognition/aria-decision-mizan/SKILL.md +136 -0
  569. package/skills/aria-cognition/aria-decision-mizan/references/decision-frameworks.md +287 -0
  570. package/skills/aria-cognition/aria-first-class-operating-contract/SKILL.md +104 -0
  571. package/skills/aria-cognition/aria-frontend-architect/SKILL.md +123 -0
  572. package/skills/aria-cognition/aria-frontend-architect/references/frontend-cookbook.md +358 -0
  573. package/skills/aria-cognition/aria-fullstack-orchestrator/SKILL.md +127 -0
  574. package/skills/aria-cognition/aria-fullstack-orchestrator/references/fullstack-cookbook.md +383 -0
  575. package/skills/aria-cognition/aria-gtm-architect/SKILL.md +126 -0
  576. package/skills/aria-cognition/aria-gtm-architect/references/gtm-cookbook.md +235 -0
  577. package/skills/aria-cognition/aria-harness-deploy/SKILL.md +145 -0
  578. package/skills/aria-cognition/aria-harness-no-stripping/SKILL.md +135 -0
  579. package/skills/aria-cognition/aria-harness-onboarding/SKILL.md +130 -0
  580. package/skills/aria-cognition/aria-harness-output-discipline/SKILL.md +120 -0
  581. package/skills/aria-cognition/aria-harness-substrate-binding/SKILL.md +139 -0
  582. package/skills/aria-cognition/aria-http-harness-client/SKILL.md +85 -0
  583. package/skills/aria-cognition/aria-http-harness-client/scripts/smoke.mjs +47 -0
  584. package/skills/aria-cognition/aria-k8s-deploy/SKILL.md +174 -0
  585. package/skills/aria-cognition/aria-k8s-deploy/agents/openai.yaml +3 -0
  586. package/skills/aria-cognition/aria-ladduniframe/SKILL.md +60 -0
  587. package/skills/aria-cognition/aria-ledger-fleet-execution/SKILL.md +126 -0
  588. package/skills/aria-cognition/aria-live-ops/SKILL.md +54 -0
  589. package/skills/aria-cognition/aria-mac-ssh-ops/SKILL.md +100 -0
  590. package/skills/aria-cognition/aria-memory-index/SKILL.md +42 -0
  591. package/skills/aria-cognition/aria-noor-cognitives/SKILL.md +120 -0
  592. package/skills/aria-cognition/aria-ops/SKILL.md +60 -0
  593. package/skills/aria-cognition/aria-ops/references/live-endpoints.md +59 -0
  594. package/skills/aria-cognition/aria-quality-audit/SKILL.md +133 -0
  595. package/skills/aria-cognition/aria-readable-output/SKILL.md +239 -0
  596. package/skills/aria-cognition/aria-readable-output/references/layout-cookbook.md +366 -0
  597. package/skills/aria-cognition/aria-reasoning/SKILL.md +67 -0
  598. package/skills/aria-cognition/aria-reasoning/references/core-principles.md +42 -0
  599. package/skills/aria-cognition/aria-repo-audit/SKILL.md +135 -0
  600. package/skills/aria-cognition/aria-repo-audit/references/repo-audit-cookbook.md +375 -0
  601. package/skills/aria-cognition/aria-research-orchestrator/SKILL.md +138 -0
  602. package/skills/aria-cognition/aria-research-orchestrator/references/research-patterns.md +270 -0
  603. package/skills/aria-cognition/aria-retention-engine/SKILL.md +120 -0
  604. package/skills/aria-cognition/aria-retention-engine/references/retention-cookbook.md +271 -0
  605. package/skills/aria-cognition/aria-revenue-engine/SKILL.md +128 -0
  606. package/skills/aria-cognition/aria-revenue-engine/references/revenue-cookbook.md +227 -0
  607. package/skills/aria-cognition/aria-senior-code-audit/SKILL.md +233 -0
  608. package/skills/aria-cognition/aria-senior-code-audit/references/audit-checklist.md +369 -0
  609. package/skills/aria-cognition/aria-senior-code-cookbook/SKILL.md +288 -0
  610. package/skills/aria-cognition/aria-senior-code-cookbook/references/engineering-cookbook.md +489 -0
  611. package/skills/aria-cognition/aria-soul-principles/SKILL.md +42 -0
  612. package/skills/aria-cognition/aria-task-codex-executor/SKILL.md +86 -0
  613. package/skills/aria-cognition/aristotle-engine/SKILL.md +42 -0
  614. package/skills/aria-cognition/cross-domain-24/SKILL.md +42 -0
  615. package/skills/aria-cognition/deepsoul-emotional/SKILL.md +42 -0
  616. package/skills/aria-cognition/fitrah-guard/SKILL.md +78 -0
  617. package/skills/aria-cognition/ghazali-8lens/SKILL.md +227 -29
  618. package/skills/aria-cognition/ghazali-8lens/references/ghazali-8lens-cookbook.md +797 -0
  619. package/skills/aria-cognition/ijtihad-novel/SKILL.md +42 -0
  620. package/skills/aria-cognition/ilham-intuition/SKILL.md +42 -0
  621. package/skills/aria-cognition/never-guess/SKILL.md +77 -0
  622. package/skills/aria-cognition/noor-recognition/SKILL.md +45 -0
  623. package/skills/aria-cognition/qiyas-analogy/SKILL.md +174 -14
  624. package/skills/aria-cognition/ruh-basis/SKILL.md +42 -0
  625. package/skills/aria-cognition/tadabbur/SKILL.md +506 -0
  626. package/skills/aria-cognition/tadabbur/references/tadabbur-cookbook.md +921 -0
  627. package/skills/aria-cognition/tadabbur-ops/SKILL.md +42 -0
  628. package/skills/aria-cognition/tafakkur/SKILL.md +104 -0
  629. package/skills/aria-cognition-autofire/SKILL.md +109 -0
  630. package/skills/aria-cognition-batch/SKILL.md +264 -0
  631. package/skills/aria-conversational-doctrine-discipline/SKILL.md +125 -0
  632. package/skills/aria-essence/SKILL.md +81 -0
  633. package/skills/aria-essence/references/domain-matrix.md +80 -0
  634. package/skills/aria-essence/references/evolution-loop.md +30 -0
  635. package/skills/aria-essence/references/readable-cognition.md +27 -0
  636. package/skills/aria-first-class-operating-contract/SKILL.md +104 -0
  637. package/skills/aria-forge-guardrails/SKILL.md +53 -0
  638. package/skills/aria-forge-guardrails/references/checklist.md +31 -0
  639. package/skills/aria-harness-deploy/SKILL.md +145 -0
  640. package/skills/aria-harness-no-stripping/SKILL.md +135 -0
  641. package/skills/aria-harness-onboarding/SKILL.md +130 -0
  642. package/skills/aria-harness-output-discipline/SKILL.md +120 -0
  643. package/skills/aria-harness-substrate-binding/SKILL.md +139 -0
  644. package/skills/aria-http-harness-client/SKILL.md +85 -0
  645. package/skills/aria-http-harness-client/scripts/smoke.mjs +47 -0
  646. package/skills/aria-k8s-deploy/SKILL.md +174 -0
  647. package/skills/aria-k8s-deploy/agents/openai.yaml +3 -0
  648. package/skills/aria-ladduniframe/SKILL.md +60 -0
  649. package/skills/aria-ledger-fleet-execution/SKILL.md +126 -0
  650. package/skills/aria-live-ops/SKILL.md +54 -0
  651. package/skills/aria-mac-ssh-ops/SKILL.md +100 -0
  652. package/skills/aria-memory-index/SKILL.md +42 -0
  653. package/skills/aria-noor-cognitives/SKILL.md +120 -0
  654. package/skills/aria-ops/SKILL.md +60 -0
  655. package/skills/aria-ops/references/live-endpoints.md +59 -0
  656. package/skills/aria-quality-audit/SKILL.md +133 -0
  657. package/skills/aria-reasoning/SKILL.md +67 -0
  658. package/skills/aria-reasoning/references/core-principles.md +42 -0
  659. package/skills/aria-repo-doctrine/SKILL.md +57 -0
  660. package/skills/aria-soul-principles/SKILL.md +42 -0
  661. package/skills/aria-task-codex-executor/SKILL.md +86 -0
  662. package/skills/aristotle-engine/SKILL.md +42 -0
  663. package/skills/ci-cd-pipeline/SKILL.md +116 -0
  664. package/skills/code-review/SKILL.md +131 -0
  665. package/skills/cross-domain-24/SKILL.md +42 -0
  666. package/skills/database-design/SKILL.md +124 -0
  667. package/skills/deepsoul-emotional/SKILL.md +42 -0
  668. package/skills/deno-kv-raft-pubsub/SKILL.md +561 -0
  669. package/skills/deno-kv-raft-pubsub/reference/maelstrom-integration.md +393 -0
  670. package/skills/deno-kv-raft-pubsub/reference/pubsub-api.md +376 -0
  671. package/skills/deno-kv-raft-pubsub/reference/raft-spec.md +402 -0
  672. package/skills/deno-kv-raft-pubsub/reference/state-machine.md +182 -0
  673. package/skills/error-handling/SKILL.md +159 -0
  674. package/skills/firecrawl/SKILL.md +165 -0
  675. package/skills/firecrawl/rules/install.md +82 -0
  676. package/skills/firecrawl/rules/security.md +26 -0
  677. package/skills/firecrawl-agent/SKILL.md +86 -0
  678. package/skills/firecrawl-build-interact/SKILL.md +96 -0
  679. package/skills/firecrawl-build-onboarding/SKILL.md +131 -0
  680. package/skills/firecrawl-build-onboarding/references/auth-flow.md +39 -0
  681. package/skills/firecrawl-build-onboarding/references/project-setup.md +20 -0
  682. package/skills/firecrawl-build-onboarding/references/sdk-installation.md +17 -0
  683. package/skills/firecrawl-build-scrape/SKILL.md +97 -0
  684. package/skills/firecrawl-build-search/SKILL.md +97 -0
  685. package/skills/firecrawl-clone/SKILL.md +419 -0
  686. package/skills/firecrawl-crawl/SKILL.md +87 -0
  687. package/skills/firecrawl-download/SKILL.md +98 -0
  688. package/skills/firecrawl-interact/SKILL.md +112 -0
  689. package/skills/firecrawl-map/SKILL.md +79 -0
  690. package/skills/firecrawl-scrape/SKILL.md +97 -0
  691. package/skills/firecrawl-search/SKILL.md +88 -0
  692. package/skills/fitrah-guard/SKILL.md +78 -0
  693. package/skills/forge-quality-rules/SKILL.md +61 -0
  694. package/skills/ghazali-8lens/SKILL.md +56 -0
  695. package/skills/ijtihad-novel/SKILL.md +42 -0
  696. package/skills/ilham-intuition/SKILL.md +42 -0
  697. package/skills/imagegen/LICENSE.txt +201 -0
  698. package/skills/imagegen/SKILL.md +374 -0
  699. package/skills/imagegen/agents/openai.yaml +6 -0
  700. package/skills/imagegen/assets/imagegen-small.svg +5 -0
  701. package/skills/imagegen/assets/imagegen.png +0 -0
  702. package/skills/imagegen/references/cli.md +242 -0
  703. package/skills/imagegen/references/codex-network.md +33 -0
  704. package/skills/imagegen/references/image-api.md +90 -0
  705. package/skills/imagegen/references/prompting.md +118 -0
  706. package/skills/imagegen/references/sample-prompts.md +433 -0
  707. package/skills/imagegen/scripts/image_gen.py +995 -0
  708. package/skills/imagegen/scripts/remove_chroma_key.py +440 -0
  709. package/skills/istiqra-induction/SKILL.md +44 -0
  710. package/skills/ladunni-22/SKILL.md +53 -0
  711. package/skills/mizan/SKILL.md +90 -0
  712. package/skills/nadia/SKILL.md +56 -0
  713. package/skills/nadia-psi/SKILL.md +56 -0
  714. package/skills/never-guess/SKILL.md +75 -0
  715. package/skills/noor-recognition/SKILL.md +45 -0
  716. package/skills/observability/SKILL.md +133 -0
  717. package/skills/openai-docs/LICENSE.txt +201 -0
  718. package/skills/openai-docs/SKILL.md +100 -0
  719. package/skills/openai-docs/agents/openai.yaml +14 -0
  720. package/skills/openai-docs/assets/openai-small.svg +3 -0
  721. package/skills/openai-docs/assets/openai.png +0 -0
  722. package/skills/openai-docs/references/latest-model.md +37 -0
  723. package/skills/openai-docs/references/prompting-guide.md +244 -0
  724. package/skills/openai-docs/references/upgrade-guide.md +181 -0
  725. package/skills/openai-docs/scripts/resolve-latest-model-info.js +147 -0
  726. package/skills/pdf/LICENSE.txt +201 -0
  727. package/skills/pdf/SKILL.md +85 -0
  728. package/skills/pdf/agents/openai.yaml +5 -0
  729. package/skills/pdf/assets/pdf.png +0 -0
  730. package/skills/playwright/LICENSE.txt +201 -0
  731. package/skills/playwright/NOTICE.txt +14 -0
  732. package/skills/playwright/SKILL.md +165 -0
  733. package/skills/playwright/agents/openai.yaml +6 -0
  734. package/skills/playwright/assets/playwright-small.svg +3 -0
  735. package/skills/playwright/assets/playwright.png +0 -0
  736. package/skills/playwright/references/cli.md +116 -0
  737. package/skills/playwright/references/workflows.md +95 -0
  738. package/skills/playwright/scripts/playwright_cli.sh +25 -0
  739. package/skills/plugin-creator/SKILL.md +178 -0
  740. package/skills/plugin-creator/agents/openai.yaml +6 -0
  741. package/skills/plugin-creator/assets/plugin-creator-small.svg +3 -0
  742. package/skills/plugin-creator/assets/plugin-creator.png +0 -0
  743. package/skills/plugin-creator/references/plugin-json-spec.md +170 -0
  744. package/skills/plugin-creator/scripts/create_basic_plugin.py +301 -0
  745. package/skills/predictor/SKILL.md +43 -0
  746. package/skills/qiyas-analogy/SKILL.md +204 -0
  747. package/skills/refactoring/SKILL.md +137 -0
  748. package/skills/ruh-basis/SKILL.md +42 -0
  749. package/skills/security-review/SKILL.md +129 -0
  750. package/skills/skill-creator/SKILL.md +434 -0
  751. package/skills/skill-creator/agents/openai.yaml +5 -0
  752. package/skills/skill-creator/assets/skill-creator-small.svg +3 -0
  753. package/skills/skill-creator/assets/skill-creator.png +0 -0
  754. package/skills/skill-creator/license.txt +202 -0
  755. package/skills/skill-creator/references/openai_yaml.md +49 -0
  756. package/skills/skill-creator/scripts/generate_openai_yaml.py +226 -0
  757. package/skills/skill-creator/scripts/init_skill.py +400 -0
  758. package/skills/skill-creator/scripts/quick_validate.py +101 -0
  759. package/skills/skill-installer/LICENSE.txt +202 -0
  760. package/skills/skill-installer/SKILL.md +76 -0
  761. package/skills/skill-installer/agents/openai.yaml +5 -0
  762. package/skills/skill-installer/assets/skill-installer-small.svg +3 -0
  763. package/skills/skill-installer/assets/skill-installer.png +0 -0
  764. package/skills/skill-installer/scripts/github_utils.py +21 -0
  765. package/skills/skill-installer/scripts/install-skill-from-github.py +308 -0
  766. package/skills/skill-installer/scripts/list-skills.py +107 -0
  767. package/skills/skills-and-hooks-reference/SKILL.md +196 -0
  768. package/skills/soul-domains/SKILL.md +43 -0
  769. package/skills/tadabbur/SKILL.md +232 -0
  770. package/skills/tadabbur-ops/SKILL.md +42 -0
  771. package/skills/tafakkur/SKILL.md +104 -0
  772. package/skills/testing-strategy/SKILL.md +122 -0
  773. package/src/action-ledger-core.ts +1054 -0
  774. package/src/chat.ts +5 -6
  775. package/src/codebase-scanner.ts +2 -0
  776. package/src/connectors/claude-code.ts +149 -12
  777. package/src/connectors/codebase-awareness.ts +325 -25
  778. package/src/connectors/codex.ts +1273 -40
  779. package/src/connectors/cursor.ts +8 -0
  780. package/src/connectors/governed-adapter.ts +174 -0
  781. package/src/connectors/opencode.ts +18 -2
  782. package/src/connectors/repo-guard.ts +24 -12
  783. package/src/connectors/runtime.ts +99 -2
  784. package/src/connectors/shell.ts +125 -7
  785. package/src/cross-cli-hive-binding.ts +290 -0
  786. package/src/garden-control-plane.ts +24 -1
  787. package/src/governed-surface-runner.ts +1227 -0
  788. package/src/index.ts +104 -1
  789. package/src/task-runner.ts +3794 -0
  790. package/dist/aria-connector/src/install-hooks.d.ts +0 -18
  791. package/dist/aria-connector/src/install-hooks.d.ts.map +0 -1
  792. package/dist/aria-connector/src/install-hooks.js +0 -224
  793. package/dist/aria-connector/src/install-hooks.js.map +0 -1
  794. package/dist/aria-connector/src/onboarding-wizard.d.ts +0 -5
  795. package/dist/aria-connector/src/onboarding-wizard.d.ts.map +0 -1
  796. package/dist/aria-connector/src/onboarding-wizard.js +0 -188
  797. package/dist/aria-connector/src/onboarding-wizard.js.map +0 -1
  798. package/dist/cli-0.2.38.tgz +0 -0
  799. package/dist/install.sh +0 -13
  800. package/src/__tests__/anthropic-oauth.test.ts +0 -186
  801. package/src/__tests__/auth-commands.test.ts +0 -132
  802. package/src/__tests__/owner-login.test.ts +0 -311
@@ -0,0 +1,166 @@
1
+ // doctrine-self-check-file: preferred over|optional|fallback layer naming-the-pattern subject-of-rung — the lib documents Claude Code's external Stop hook protocol shape (which has optional fields per Claude Code spec, NOT Aria doctrine). All "optional" mentions are quoting Claude Code's protocol specification verbatim, not asserting Aria policy preferences.
2
+
3
+ /**
4
+ * stop-hook-protocol.mjs — M9.DRIFT.10t Stop hook output validator + emitter.
5
+ *
6
+ * Closes Bug 3 the operator's local agent reported 2026-05-08:
7
+ * "Stop hook error: Hook JSON output validation failed —
8
+ * (root): Invalid input."
9
+ *
10
+ * Claude Code's runtime validates each hook's stdout JSON against a
11
+ * canonical schema and rejects at the root level when extra keys
12
+ * appear OR when hook-class-specific keys (e.g., hookSpecificOutput
13
+ * which is SessionStart-only) appear at the wrong hook event.
14
+ *
15
+ * STOP HOOK CANONICAL OUTPUT SHAPE (per Claude Code hook docs):
16
+ *
17
+ * stdout valid forms:
18
+ * 1. empty -> allow
19
+ * 2. JSON {
20
+ * decision?: "block" | "approve", // optional; absent = allow
21
+ * reason?: string, // required when decision === "block"
22
+ * continue?: boolean, // optional; controls whether processing continues
23
+ * stopReason?: string, // optional; companion to continue
24
+ * suppressOutput?: boolean // optional
25
+ * }
26
+ *
27
+ * exit codes:
28
+ * 0 with empty stdout -> allow
29
+ * 0 with valid JSON -> apply decision
30
+ * 2 with stderr -> block with stderr as reason (legacy)
31
+ *
32
+ * ANY other root key in stdout JSON -> "(root): Invalid input"
33
+ * hookSpecificOutput at root -> SessionStart-only; rejected for Stop
34
+ *
35
+ * Two-part fix in M9.DRIFT.10t:
36
+ * Part A: this lib — validateStopHookOutput + emitStopHookDecision
37
+ * Part B: update the two confirmed offenders in repo siblings to
38
+ * use this lib instead of raw console.log + JSON.stringify
39
+ */
40
+
41
+ const ALLOWED_ROOT_KEYS = Object.freeze([
42
+ 'decision',
43
+ 'reason',
44
+ 'continue',
45
+ 'stopReason',
46
+ 'suppressOutput',
47
+ ]);
48
+
49
+ const ALLOWED_DECISIONS = Object.freeze(['block', 'approve']);
50
+
51
+ /**
52
+ * Validate a candidate Stop hook stdout payload.
53
+ *
54
+ * @param {object} obj the payload that would be written to stdout
55
+ * @returns {{ ok: boolean, errors: string[] }}
56
+ */
57
+ export function validateStopHookOutput(obj) {
58
+ const errors = [];
59
+ if (obj === null || obj === undefined) {
60
+ return { ok: true, errors }; // empty stdout = allow
61
+ }
62
+ if (typeof obj !== 'object' || Array.isArray(obj)) {
63
+ errors.push(`stdout payload must be a non-array object or null; got ${Array.isArray(obj) ? 'array' : typeof obj}`);
64
+ return { ok: false, errors };
65
+ }
66
+ // Reject extra root keys.
67
+ for (const key of Object.keys(obj)) {
68
+ if (!ALLOWED_ROOT_KEYS.includes(key)) {
69
+ errors.push(
70
+ `extra root key "${key}" — Claude Code Stop hook protocol allows only: ${ALLOWED_ROOT_KEYS.join(', ')}. ` +
71
+ `Embed this data in the "reason" string OR write to disk via recovery-context.mjs.`,
72
+ );
73
+ }
74
+ }
75
+ // decision enum check.
76
+ if ('decision' in obj && !ALLOWED_DECISIONS.includes(obj.decision)) {
77
+ errors.push(
78
+ `decision="${obj.decision}" not in allowed enum: ${ALLOWED_DECISIONS.join(', ')}`,
79
+ );
80
+ }
81
+ // reason required when decision === 'block'.
82
+ if (obj.decision === 'block') {
83
+ if (typeof obj.reason !== 'string' || obj.reason.length === 0) {
84
+ errors.push('decision="block" requires a non-empty reason string');
85
+ }
86
+ }
87
+ // type checks on optional fields.
88
+ if ('continue' in obj && typeof obj.continue !== 'boolean') {
89
+ errors.push(`continue must be boolean; got ${typeof obj.continue}`);
90
+ }
91
+ if ('stopReason' in obj && typeof obj.stopReason !== 'string') {
92
+ errors.push(`stopReason must be string; got ${typeof obj.stopReason}`);
93
+ }
94
+ if ('suppressOutput' in obj && typeof obj.suppressOutput !== 'boolean') {
95
+ errors.push(`suppressOutput must be boolean; got ${typeof obj.suppressOutput}`);
96
+ }
97
+ return { ok: errors.length === 0, errors };
98
+ }
99
+
100
+ /**
101
+ * Emit a Stop hook decision to stdout, validated against the protocol.
102
+ *
103
+ * Default behavior (no opts): on valid -> writes JSON to process.stdout
104
+ * + exits 0; on invalid -> writes the violation list to process.stderr
105
+ * + exits 2 (legacy block path; safer than emitting invalid JSON which
106
+ * causes "(root): Invalid input" rejection).
107
+ *
108
+ * Test mode: pass opts.stdout / opts.stderr / opts.exit as injected
109
+ * functions to capture output without touching process.* globals.
110
+ *
111
+ * @param {object|null} obj Stop hook payload (or null for empty allow)
112
+ * @param {object} [opts]
113
+ * @param {(s: string) => void} [opts.stdout] injected stdout writer
114
+ * @param {(s: string) => void} [opts.stderr] injected stderr writer
115
+ * @param {(code: number) => void} [opts.exit] injected exit fn
116
+ * @returns {{ emitted: boolean, exitCode: number, errors: string[] }}
117
+ */
118
+ export function emitStopHookDecision(obj, opts = {}) {
119
+ const stdout = opts.stdout || ((s) => process.stdout.write(s));
120
+ const stderr = opts.stderr || ((s) => process.stderr.write(s));
121
+ const exit = opts.exit || ((code) => process.exit(code));
122
+
123
+ // Empty payload = allow.
124
+ if (obj === null || obj === undefined) {
125
+ exit(0);
126
+ return { emitted: false, exitCode: 0, errors: [] };
127
+ }
128
+
129
+ const { ok, errors } = validateStopHookOutput(obj);
130
+ if (!ok) {
131
+ stderr(
132
+ '[stop-hook-protocol] REFUSED to emit invalid Stop hook JSON. ' +
133
+ `${errors.length} violation(s):\n` +
134
+ errors.map((e) => ` - ${e}`).join('\n') +
135
+ '\n',
136
+ );
137
+ // Exit 2 as a legacy block (safer than emitting invalid JSON which
138
+ // Claude Code rejects with "(root): Invalid input"). The stderr
139
+ // payload reaches the model as the block reason.
140
+ exit(2);
141
+ return { emitted: false, exitCode: 2, errors };
142
+ }
143
+
144
+ stdout(JSON.stringify(obj) + '\n');
145
+ exit(0);
146
+ return { emitted: true, exitCode: 0, errors: [] };
147
+ }
148
+
149
+ /**
150
+ * Helpers for building canonical Stop hook payloads.
151
+ */
152
+ export function buildBlockDecision(reason) {
153
+ if (typeof reason !== 'string' || reason.length === 0) {
154
+ throw new Error('buildBlockDecision: reason must be a non-empty string');
155
+ }
156
+ return { decision: 'block', reason };
157
+ }
158
+
159
+ export function buildApproveDecision(reason) {
160
+ const out = { decision: 'approve' };
161
+ if (typeof reason === 'string' && reason.length > 0) out.reason = reason;
162
+ return out;
163
+ }
164
+
165
+ export const STOP_HOOK_PROTOCOL_ALLOWED_ROOT_KEYS = ALLOWED_ROOT_KEYS;
166
+ export const STOP_HOOK_PROTOCOL_ALLOWED_DECISIONS = ALLOWED_DECISIONS;
@@ -0,0 +1,94 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * surface-caught.mjs — shared stderr-surface helper for hook catch blocks.
4
+ *
5
+ * Phase 0 audit Cluster H finding M0.H.3 (CRITICAL): the hook stack had
6
+ * 86+ empty `} catch {}` blocks — code that ENFORCES the doctrine
7
+ * `feedback_no_graceful_degradation.md` (the FIRST entry in the
8
+ * doctrine_trigger_map) while violating it itself 86 times. The enforcer
9
+ * didn't live by its own law.
10
+ *
11
+ * This helper provides a single, consistent surface for caught errors.
12
+ * Each call site replaces an empty catch with a labeled stderr line so
13
+ * operators can grep `[hook:context] op failed:` to audit hook-internal
14
+ * failures without parsing every per-hook log file.
15
+ *
16
+ * Usage:
17
+ * } catch (err) { surfaceCaught('aria-stop-gate', 'mizan-receipt-load', err); }
18
+ *
19
+ * The third arg is the actual caught error — string or Error. If it's
20
+ * an Error instance, the message is used; otherwise String(err).
21
+ *
22
+ * Doctrine bind: feedback_no_graceful_degradation.md +
23
+ * axiom_runtime_rule.admit_ignorance — surface failures, do not silently
24
+ * swallow.
25
+ *
26
+ * Mirror: this file MUST be byte-identical between
27
+ * ops/claude-hooks/lib/surface-caught.mjs
28
+ * packages/aria-connector/hooks/lib/surface-caught.mjs
29
+ */
30
+
31
+ // M0.SELFREVIEW.5 — rate limit per (hookName, context) pair.
32
+ // Under cascading failure (e.g., DB unavailable, every probe fails)
33
+ // stderr volume could flood and cause container log backpressure.
34
+ // Cap each (hook, context) at RATE_LIMIT_PER_SECOND emissions per
35
+ // process; surplus drops with a counter. Next emit after the window
36
+ // resets includes a "...(suppressed N similar)" suffix so operator
37
+ // audit doesn't lose the count.
38
+ const RATE_LIMIT_PER_SECOND = parseInt(process.env.ARIA_SURFACE_CAUGHT_RATE_LIMIT || '', 10) || 20;
39
+ const _buckets = new Map(); // key="hook:context" -> { windowStart, count, suppressed }
40
+
41
+ function rateGate(key) {
42
+ const now = Date.now();
43
+ let b = _buckets.get(key);
44
+ if (!b) {
45
+ b = { windowStart: now, count: 0, suppressed: 0 };
46
+ _buckets.set(key, b);
47
+ }
48
+ if (now - b.windowStart >= 1000) {
49
+ // Window rolled — return previously-suppressed count so caller can append it.
50
+ const prevSuppressed = b.suppressed;
51
+ b.windowStart = now;
52
+ b.count = 0;
53
+ b.suppressed = 0;
54
+ b.count++;
55
+ return { allow: true, suppressedSinceLast: prevSuppressed };
56
+ }
57
+ b.count++;
58
+ if (b.count > RATE_LIMIT_PER_SECOND) {
59
+ b.suppressed++;
60
+ return { allow: false, suppressedSinceLast: 0 };
61
+ }
62
+ return { allow: true, suppressedSinceLast: 0 };
63
+ }
64
+
65
+ /**
66
+ * Write a labeled error surface line to stderr.
67
+ *
68
+ * @param {string} hookName - the hook file's short label (e.g. 'aria-stop-gate')
69
+ * @param {string} context - the operation that failed (e.g. 'mizan-receipt-load')
70
+ * @param {unknown} err - the caught value
71
+ */
72
+ export function surfaceCaught(hookName, context, err) {
73
+ const msg = err instanceof Error ? err.message : String(err);
74
+ const key = `${hookName}:${context}`;
75
+ const gate = rateGate(key);
76
+ if (!gate.allow) return; // suppressed; counter increments inside rateGate
77
+ const suppressedSuffix = gate.suppressedSinceLast > 0
78
+ ? ` (suppressed ${gate.suppressedSinceLast} similar in prior window)`
79
+ : '';
80
+ try {
81
+ process.stderr.write(`[${hookName}:${context}] caught: ${msg}${suppressedSuffix}\n`);
82
+ } catch (writeErr) {
83
+ // Stderr write itself failed — last-resort console fallback. If even
84
+ // that fails (truly broken process), there is nowhere left to surface
85
+ // and we cannot do better. This is the only documented silent-by-design
86
+ // case in the helper itself.
87
+ // silent-by-design: stderr unavailable means the surface itself broke; nothing more to do
88
+ try { console.error(`[${hookName}:${context}] caught:`, msg); } catch (consoleErr) {
89
+ // silent-by-design: console also unavailable; truly broken process
90
+ }
91
+ }
92
+ }
93
+
94
+ export default { surfaceCaught };
@@ -0,0 +1,67 @@
1
+ {{!-- force-reauthor.md — recovery contract template
2
+
3
+ Phase 0 audit Tier D Meta-X5 + cluster H M0.H.X11: extracted from
4
+ ops/claude-hooks/aria-stop-gate.mjs:buildForceReauthorReason() (was: 70-line
5
+ hardcoded teaching template baked in source). Operators can now edit the
6
+ teaching prose without code change + redeploy + npm publish.
7
+
8
+ Hot-reload: hook reads this file's mtime per call; if changed since last
9
+ read, re-read. Allows operator to update teaching with immediate effect.
10
+
11
+ Variables (substituted via simple {{var}} mustache-style replacement):
12
+ - {{source}} decision source (e.g., 'stop/lens-missing')
13
+ - {{reason}} one-line failure reason
14
+ - {{trigger_lines}} formatted bullet list of doctrine triggers fired
15
+ - {{violations_section}} formatted violations (or empty)
16
+ - {{rewritten_section}} mizan rewrite seed (or empty)
17
+ - {{recipe_addendum}} extra recipe text (or empty)
18
+ - {{required_lenses}} integer count (default 8)
19
+ - {{lens_count}} observed lens count
20
+ --}}
21
+ === ARIA FORCE_REAUTHOR ===
22
+ source: {{source}}
23
+ reason: {{reason}}
24
+
25
+ This is not a terminal error. It is a forced redo instruction for the next model draft.
26
+ Do not emit the blocked text. Re-author it so the model learns the mechanism it violated.
27
+
28
+ TEACHING:
29
+ - Gates must force cognition and quality, not merely throw, warn, or stop.
30
+ - The redo must change the answer shape: name the failed mechanism, cite real evidence, and remove the drift pattern.
31
+ - Do not bypass by disabling tools, shortening runtime, asking the user to resolve memory-backed ambiguity, or giving an apology loop.
32
+
33
+ {{trigger_lines}}{{violations_section}}{{rewritten_section}}{{recipe_addendum}}
34
+
35
+ Recovery contract:
36
+ 1. Do not retry the same blocked text unchanged.
37
+ 2. Apply the teaching above to the next draft before re-emitting.
38
+ 3. Re-test by submitting the revised output through this same gate.
39
+ 4. If the blocker is stale state, name the stale state and clear or repair it before retrying.
40
+
41
+ REQUIRED REDO SHAPE:
42
+ 1. One sentence: the failed mechanism, not an apology.
43
+ 2. Evidence checked: file/line, command output, endpoint response, or explicit "unverified".
44
+ 3. <cognition> with {{required_lenses}} substantive lenses. Observed: {{lens_count}}/{{required_lenses}}.
45
+ 4. <applied_cognition> with decision_delta, dominant_domain, binds_to, expected_predicate, and artifact_change.
46
+ 5. Corrected action/claim with no bypass, no downgraded path, and no fake proof.
47
+ 6. If work remains, state the exact next real action or tracked task. No verbal flag-and-move.
48
+
49
+ COGNITION TEMPLATE:
50
+ <cognition>
51
+ truth: <verified facts and exact substrate>
52
+ harm: <what goes wrong if this is false>
53
+ trust: <how this honors Hamza directives and saved memory>
54
+ power: <why this uses capability responsibly, not convenience>
55
+ reflection: <mechanism failure and correction>
56
+ context: <relevant repo/runtime state>
57
+ impact: <expected next effect>
58
+ beauty: <simplest durable form>
59
+ </cognition>
60
+ <applied_cognition>
61
+ decision_delta: <what changed because cognition ran; not none>
62
+ dominant_domain: <engineering_quality | trust | operations | security | product | ...>
63
+ binds_to: <the exact answer, tool call, file mutation, deploy, review, or decision>
64
+ expected_predicate: <observable numeric, boolean, state-string, command result, endpoint result, or explicit unverified boundary>
65
+ artifact_change: <semantic effect on the artifact/output, not a task restatement>
66
+ </applied_cognition>
67
+ === END FORCE_REAUTHOR ===
@@ -0,0 +1,25 @@
1
+ {{!-- handoff-recovery.md — post-compact continuation handoff template
2
+
3
+ Phase 0 audit Tier D Meta-X5 + cluster H M0.H.X11: extracted from
4
+ ops/claude-hooks/aria-stop-gate.mjs:formatHandoffRecovery() (was: hardcoded
5
+ in source). Operator can edit the recovery contract without redeploy.
6
+
7
+ Variables:
8
+ - {{missing_fields}} comma-separated list of missing handoff fields,
9
+ or '(none)' when all present (this template only
10
+ renders when at least one field is missing —
11
+ renderer handles the empty case via short-circuit)
12
+ --}}
13
+ === ARIA LOCAL OUTPUT BLOCK ===
14
+
15
+ post-compact continuation handoff malformed: missing fields: {{missing_fields}}
16
+
17
+ Recovery contract:
18
+ 1. Do not retry the same blocked text.
19
+ 2. Rewrite the output using this exact shape:
20
+ post_compact_continuation
21
+ current objective: <one sentence of the still-active task>
22
+ known blockers: <specific blockers, or "none verified" if truly none>
23
+ next executable step: <single command/edit/read/action the next agent should run first>
24
+ what not to touch: <unrelated dirty files, secrets, protected systems, or deploys to avoid>
25
+ verification already run: <commands/probes already run and exact result, or "not run">
@@ -0,0 +1,99 @@
1
+ #!/usr/bin/env node
2
+ // check-hard-risk-prefix — CI lint enforcing the 'hard-risk ' prefix convention.
3
+ //
4
+ // The hardFindings filter at runtime-client.mjs uses
5
+ // `finding.startsWith('hard-risk ')` to escalate findings to hard-risk
6
+ // status. Any push to riskFindings / hardFindings whose argument doesn't
7
+ // begin with 'hard-risk ' will be silently ignored by that filter — same
8
+ // false-classification bug class as the bare-word credential regex that
9
+ // was fixed 2026-05-17.
10
+ //
11
+ // Run from CI: `node ops/claude-hooks/scripts/check-hard-risk-prefix.mjs`
12
+ // Exit 0 if all push sites comply, exit 1 if any violations.
13
+
14
+ import { readdirSync, readFileSync, statSync } from 'node:fs';
15
+ import { join, resolve } from 'node:path';
16
+ import { homedir } from 'node:os';
17
+
18
+ const HOME = homedir();
19
+ const SCAN_ROOTS = [
20
+ resolve(HOME, 'rei-ai-brain', 'ops', 'claude-hooks'),
21
+ resolve(HOME, '.claude', 'hooks'),
22
+ resolve(HOME, '.codex', 'hooks'),
23
+ resolve(HOME, '.opencode', 'hooks'),
24
+ ];
25
+ const SKIP_DIRS = new Set(['node_modules', '.git', 'dist', 'build']);
26
+ // Match riskFindings.push(<arg>) and hardFindings.push(<arg>) — capture <arg>
27
+ // up to the first comma or closing paren at the same nesting level.
28
+ const PUSH_RX = /\b(?:risk|hard)Findings\.push\s*\(\s*([^;\n]+?)\)\s*;?/g;
29
+ // Accept any of: 'hard-risk ...', "hard-risk ...", `hard-risk ...` (template),
30
+ // `hard-risk ${...}...` (template with interpolation in middle).
31
+ const PREFIX_RX = /^[`'"]hard-risk /;
32
+
33
+ function walkDir(root, files = []) {
34
+ let entries;
35
+ try {
36
+ entries = readdirSync(root, { withFileTypes: true });
37
+ } catch {
38
+ return files;
39
+ }
40
+ for (const entry of entries) {
41
+ if (entry.isDirectory()) {
42
+ if (SKIP_DIRS.has(entry.name) || entry.name.startsWith('.')) continue;
43
+ walkDir(join(root, entry.name), files);
44
+ } else if (entry.isFile() && /\.mjs$/i.test(entry.name) && !entry.name.endsWith('.test.mjs')) {
45
+ files.push(join(root, entry.name));
46
+ }
47
+ }
48
+ return files;
49
+ }
50
+
51
+ function scanFile(path) {
52
+ let text;
53
+ try {
54
+ text = readFileSync(path, 'utf8');
55
+ } catch {
56
+ return [];
57
+ }
58
+ const violations = [];
59
+ let m;
60
+ PUSH_RX.lastIndex = 0;
61
+ while ((m = PUSH_RX.exec(text)) !== null) {
62
+ const arg = m[1].trim();
63
+ // Skip if the arg is itself a variable (not a literal) — variable
64
+ // pushes are caller-responsibility and can't be statically checked.
65
+ if (!/^[`'"]/.test(arg)) continue;
66
+ if (!PREFIX_RX.test(arg)) {
67
+ // Find line number
68
+ const lineNo = text.slice(0, m.index).split('\n').length;
69
+ violations.push({ path, line: lineNo, arg: arg.slice(0, 80) });
70
+ }
71
+ }
72
+ return violations;
73
+ }
74
+
75
+ const allFiles = [];
76
+ for (const root of SCAN_ROOTS) {
77
+ try {
78
+ if (statSync(root).isDirectory()) walkDir(root, allFiles);
79
+ } catch {
80
+ // Root doesn't exist — skip silently
81
+ }
82
+ }
83
+
84
+ const allViolations = [];
85
+ for (const f of allFiles) allViolations.push(...scanFile(f));
86
+
87
+ if (allViolations.length === 0) {
88
+ console.log(`PASS: scanned ${allFiles.length} hook file(s) across ${SCAN_ROOTS.length} root(s); all riskFindings.push / hardFindings.push call-sites use the 'hard-risk ' prefix convention.`);
89
+ process.exit(0);
90
+ }
91
+
92
+ console.error(`FAIL: ${allViolations.length} push-site(s) violate the 'hard-risk ' prefix convention`);
93
+ console.error('Background: runtime-client.mjs:2233 hardFindings filter is structural (startsWith) — any push that omits the prefix is silently dropped from hard-risk escalation.');
94
+ console.error('Fix: every literal-string riskFindings.push/hardFindings.push argument must begin with "hard-risk " (with trailing space).');
95
+ console.error('');
96
+ for (const v of allViolations) {
97
+ console.error(` ${v.path}:${v.line} → ${v.arg}`);
98
+ }
99
+ process.exit(1);
@@ -0,0 +1,101 @@
1
+ ---
2
+ name: aria-conversational-doctrine-discipline
3
+ description: Use whenever I am about to make a factual claim to the operator about what code does, what is deployed, what caused an issue, what I have verified, or what is done. Loads the pre-emission ritual that closes the conversational-doctrine-recurrence gap documented at codex/plans/conversational-doctrine-recurrence-pattern.md.
4
+ ---
5
+
6
+ # Aria Conversational Doctrine Discipline
7
+
8
+ This skill addresses the recurrence pattern operator (Hamza) named in
9
+ the 2026-05-07 session: the same agent gets caught violating the same
10
+ doctrine class in conversation, fixes the individual instance, then
11
+ introduces a new instance of the same class within 1–3 messages.
12
+
13
+ The doctrine scanner catches trip-vocab in files + commits but does
14
+ not catch claims I make in streaming conversation. This skill is the
15
+ pre-emission ritual that closes part of the gap. The other part lives
16
+ in `apps/arias-soul/scripts/scan-claim-evidence.mjs` (operator-invoked
17
+ validator).
18
+
19
+ ## The pre-emission ritual
20
+
21
+ Before any message I send to the operator that contains a factual
22
+ claim — meaning anything of the form:
23
+
24
+ - *"X is Y"* (state of code, deployed system, file content)
25
+ - *"X does Y"* (behavior of a function, hook, script)
26
+ - *"X caused Y"* (causal claim about an error or outcome)
27
+ - *"X is not my work"* / *"this is not from my code"* (provenance disclaim)
28
+ - *"X works"* / *"X passes"* / *"X is verified"* (status claim)
29
+ - *"X is auto-generated"* / *"X is X"* (origin / classification claim)
30
+ - *"X is done"* / *"complete"* / *"shipped"* (completion claim)
31
+
32
+ I run the following ritual:
33
+
34
+ ### Step 1 — name the claim explicitly
35
+
36
+ Write down (in my own working memory, before sending) the exact
37
+ factual assertion I am about to make.
38
+
39
+ ### Step 2 — locate evidence
40
+
41
+ For the claim, identify the verification source:
42
+
43
+ | Claim type | Evidence source |
44
+ |---|---|
45
+ | Code behavior | `Read` the file + cite `file:line` |
46
+ | Deployed system state | Run a probe (`Bash` + `kubectl`, `curl`, `git log`); cite the command output |
47
+ | Test pass/fail | Run the test; cite the assertion count + exit code |
48
+ | Provenance ("my work" or "not my work") | List the components I shipped that touch the relevant surface; cite SHAs |
49
+ | Completion ("done"/"shipped") | Cite the commit SHA + the verify_predicate exit code |
50
+ | Status of an external resource | Run the read-only probe; cite the response |
51
+
52
+ ### Step 3 — if evidence cannot be obtained
53
+
54
+ Replace the claim with one of:
55
+
56
+ - *"I do not know without access to <specific resource>"*
57
+ - *"I have not verified this — checking now..."* then run the verification before continuing
58
+ - *"My training suggests X but I have not verified against your codebase"* (acknowledging the substrate hierarchy: operator > codebase > training)
59
+
60
+ NEVER assert without one of:
61
+ 1. Evidence cited inline
62
+ 2. Explicit ignorance acknowledgment
63
+ 3. Verification in progress
64
+
65
+ ### Step 4 — emit with evidence inline
66
+
67
+ Structure the message so the evidence is adjacent to the claim, not
68
+ buried elsewhere. Examples:
69
+
70
+ - ✗ *"The validator passes its own spec."*
71
+ - ✓ *"The validator passes its own spec — `node apps/arias-soul/scripts/check-ledger-spec.mjs M9.DRIFT.1` exits 0 (verified just now)."*
72
+
73
+ - ✗ *"Not something my work caused."*
74
+ - ✓ *"I cannot prove my code caused or didn't cause the socket close — `aria-stop-gate.mjs` and `aria-harness-via-sdk.mjs` are plausible candidates per [investigation], but I have no access to your local logs to confirm."*
75
+
76
+ ## What this skill does NOT do
77
+
78
+ - It is **not** a runtime gate. The harness cannot intercept my
79
+ conversational tokens before they stream to the operator. If I drift
80
+ away from this ritual mid-session, nothing automatically catches me.
81
+ - It is **not** a replacement for the operator's review. The operator
82
+ can invoke `apps/arias-soul/scripts/scan-claim-evidence.mjs` against
83
+ my response text to spot recurrence, but the operator must still
84
+ read my output.
85
+ - It does **not** address the recurrence frequency at the model layer.
86
+ That is a training-signal problem outside the scope of any
87
+ individual rung.
88
+
89
+ ## Pattern documentation
90
+
91
+ When a recurrence happens, append to the catches table at
92
+ `codex/plans/conversational-doctrine-recurrence-pattern.md`. The
93
+ running list is the operator-readable record of how the pattern
94
+ behaves over time.
95
+
96
+ ## Self-bind
97
+
98
+ This skill itself contains claims about behavior of the doctrine
99
+ scanner, the harness lifecycle, and what the validator does. Each
100
+ cited at the file path operator can read. If any claim in this skill
101
+ becomes untrue (e.g., harness changes), the skill must be updated.
@@ -160,7 +160,7 @@ console.log('\nTest 2: transcript with all three context signals → allow');
160
160
  assert('no block decision in stdout (stdout is empty or non-block)', !parsed || parsed.decision !== 'block', parsed?.decision);
161
161
 
162
162
  // Cleanup
163
- try { unlinkSync(transcriptFile); } catch {}
163
+ try { unlinkSync(transcriptFile); } catch (_err) { void _err; /* silent-by-design (M0.H.X3): test cleanup */ }
164
164
  }
165
165
 
166
166
  // ── Test 3: deduplication — gate already fired within 60s → skip ───────
@@ -231,7 +231,7 @@ console.log('\nTest 6: only harness packet signal (missing direction + memory re
231
231
  parsed?.reason?.slice(0, 200),
232
232
  );
233
233
 
234
- try { unlinkSync(transcriptFile); } catch {}
234
+ try { unlinkSync(transcriptFile); } catch (_err) { void _err; /* silent-by-design (M0.H.X3): test cleanup */ }
235
235
  cleanTurnState(SESSION_ID);
236
236
  }
237
237
 
@@ -1,4 +1,10 @@
1
1
  #!/usr/bin/env node
2
+ // ── doctrine-self-check-file: cleanup batch (2026-05-06) ──
3
+ // File-level acks for trigger patterns appearing in pre-existing comments
4
+ // describing prior antipatterns being migrated. Each ack names a trigger
5
+ // the doctrine_trigger_map covers; per-file ack covers all matches.
6
+ // doctrine-self-check-file: tests.?(?:passed|pass|ed)|(?:smoke|unit|integration).?test.?(?:pass|ok|good) session-added-comments-describing-prior-state-or-migration
7
+ // doctrine-self-check-file: want me to|should i session-added-comments-describing-prior-state-or-migration
2
8
  // Smoke test: Phase 11 #59 — canonical lens labeling
3
9
  //
4
10
  // Verifies that aria-pre-tool-gate.mjs and aria-stop-gate.mjs:
@@ -62,7 +68,12 @@ function restorePacket() {
62
68
  } else if (existsSync(PACKET_PATH)) {
63
69
  unlinkSync(PACKET_PATH);
64
70
  }
65
- } catch {}
71
+ } catch (_err) {
72
+ // silent-by-design (M0.H.X3): test fixture restore — failure here
73
+ // doesn't affect production behavior; test harness will see the
74
+ // assertion failure if state was corrupted.
75
+ void _err;
76
+ }
66
77
  }
67
78
 
68
79
  function writeOwnerPacket() {
@@ -181,7 +192,7 @@ const tmpTranscriptStop = `/tmp/test-tier-stop-transcript-${Date.now()}.jsonl`;
181
192
 
182
193
  function cleanup() {
183
194
  [tmpTranscript, tmpTranscriptStop].forEach((p) => {
184
- try { if (existsSync(p)) unlinkSync(p); } catch {}
195
+ try { if (existsSync(p)) unlinkSync(p); } catch (_err) { void _err; /* silent-by-design (M0.H.X3): test cleanup */ }
185
196
  });
186
197
  restorePacket();
187
198
  }
@@ -328,7 +339,7 @@ console.log('\nTest 4: aria-stop-gate — CLIENT tier keeps canonical lens label
328
339
  console.log('\nTest 5: missing packet cache → defaults to canonical labels');
329
340
  {
330
341
  // Remove the packet cache
331
- try { unlinkSync(PACKET_PATH); } catch {}
342
+ try { unlinkSync(PACKET_PATH); } catch (_err) { void _err; /* silent-by-design (M0.H.X3): test cleanup */ }
332
343
  writeEmptyTranscript(tmpTranscript);
333
344
  const result = runPreToolGate(tmpTranscript);
334
345