@raishin/vanguard-frontier-agentic 3.15.0 → 3.17.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 (374) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/.claude-plugin/plugin.json +3 -1
  3. package/.cursor-plugin/plugin.json +3 -1
  4. package/.github/plugin/marketplace.json +1 -1
  5. package/README.md +11 -11
  6. package/agents/AGENTS.md +1 -1
  7. package/agents/README.md +1 -1
  8. package/agents/cross-functional/agentic-security-review-agent/AGENT.md +168 -0
  9. package/agents/cross-functional/agentic-security-review-agent/harnesses/claude-code.agent.md +158 -0
  10. package/agents/cross-functional/agentic-security-review-agent/harnesses/codex.toml +165 -0
  11. package/agents/cross-functional/agentic-security-review-agent/harnesses/copilot.agent.md +163 -0
  12. package/agents/cross-functional/agentic-security-review-agent/harnesses/cursor.agent.md +158 -0
  13. package/agents/cross-functional/agentic-security-review-agent/harnesses/gemini.agent.md +164 -0
  14. package/agents/cross-functional/agentic-security-review-agent/harnesses/kiro-cli.agent.json +5 -0
  15. package/agents/cross-functional/agentic-security-review-agent/harnesses/kiro-ide.agent.md +157 -0
  16. package/agents/cross-functional/agentic-security-review-agent/metadata.json +45 -0
  17. package/agents/cross-functional/agentic-system-architecture-review-agent/AGENT.md +157 -0
  18. package/agents/cross-functional/agentic-system-architecture-review-agent/harnesses/claude-code.agent.md +147 -0
  19. package/agents/cross-functional/agentic-system-architecture-review-agent/harnesses/codex.toml +154 -0
  20. package/agents/cross-functional/agentic-system-architecture-review-agent/harnesses/copilot.agent.md +152 -0
  21. package/agents/cross-functional/agentic-system-architecture-review-agent/harnesses/cursor.agent.md +147 -0
  22. package/agents/cross-functional/agentic-system-architecture-review-agent/harnesses/gemini.agent.md +153 -0
  23. package/agents/cross-functional/agentic-system-architecture-review-agent/harnesses/kiro-cli.agent.json +5 -0
  24. package/agents/cross-functional/agentic-system-architecture-review-agent/harnesses/kiro-ide.agent.md +146 -0
  25. package/agents/cross-functional/agentic-system-architecture-review-agent/metadata.json +46 -0
  26. package/agents/typescript/typescript-maestro-agent/AGENT.md +1 -1
  27. package/agents/typescript/typescript-maestro-agent/harnesses/claude-code.agent.md +1 -1
  28. package/agents/typescript/typescript-maestro-agent/harnesses/codex.toml +1 -1
  29. package/agents/typescript/typescript-maestro-agent/harnesses/copilot.agent.md +1 -1
  30. package/agents/typescript/typescript-maestro-agent/harnesses/cursor.agent.md +1 -1
  31. package/agents/typescript/typescript-maestro-agent/harnesses/gemini.agent.md +1 -1
  32. package/agents/typescript/typescript-maestro-agent/harnesses/kiro-cli.agent.json +1 -1
  33. package/agents/typescript/typescript-maestro-agent/harnesses/kiro-ide.agent.md +1 -1
  34. package/agents/typescript/typescript-mcp-tool-contract-agent/AGENT.md +1 -1
  35. package/agents/typescript/typescript-mcp-tool-contract-agent/harnesses/claude-code.agent.md +1 -1
  36. package/agents/typescript/typescript-mcp-tool-contract-agent/harnesses/copilot.agent.md +1 -1
  37. package/agents/typescript/typescript-mcp-tool-contract-agent/harnesses/cursor.agent.md +1 -1
  38. package/agents/typescript/typescript-mcp-tool-contract-agent/harnesses/gemini.agent.md +1 -1
  39. package/agents/typescript/typescript-mcp-tool-contract-agent/harnesses/kiro-cli.agent.json +1 -1
  40. package/agents/typescript/typescript-mcp-tool-contract-agent/harnesses/kiro-ide.agent.md +1 -1
  41. package/catalog/AGENTS.md +2 -1
  42. package/catalog/agents.json +71 -0
  43. package/catalog/asset-integrity.json +1639 -92
  44. package/catalog/index.json +3 -2
  45. package/catalog/install-roles.json +24 -3
  46. package/catalog/model-assignments.json +66 -0
  47. package/catalog/mods.json +131 -0
  48. package/catalog/skill-manifest.json +134 -8
  49. package/catalog/skills.json +89 -0
  50. package/mods/README.md +220 -0
  51. package/mods/audit-trail/README.md +70 -0
  52. package/mods/audit-trail/bin/hook.mjs +65 -0
  53. package/mods/audit-trail/claude-code/UNSUPPORTED.md +11 -0
  54. package/mods/audit-trail/claude-code/settings.hooks.json +14 -0
  55. package/mods/audit-trail/codex/hooks.json +14 -0
  56. package/mods/audit-trail/kiro/UNSUPPORTED.md +7 -0
  57. package/mods/audit-trail/kiro/audit-trail-post-tool-use-hook.json +14 -0
  58. package/mods/audit-trail/lib/common.mjs +213 -0
  59. package/mods/audit-trail/lib/core.mjs +50 -0
  60. package/mods/audit-trail/lib/runtime.mjs +140 -0
  61. package/mods/audit-trail/mod.toml +37 -0
  62. package/mods/blast-radius-guard/.claude-plugin/plugin.json +5 -0
  63. package/mods/blast-radius-guard/README.md +53 -0
  64. package/mods/blast-radius-guard/bin/hook.mjs +18 -0
  65. package/mods/blast-radius-guard/claude-code/settings.hooks.json +14 -0
  66. package/mods/blast-radius-guard/codex/UNSUPPORTED.md +7 -0
  67. package/mods/blast-radius-guard/codex/hooks.json +14 -0
  68. package/mods/blast-radius-guard/hooks/hooks.json +5 -0
  69. package/mods/blast-radius-guard/hooks/register.test.ts +97 -0
  70. package/mods/blast-radius-guard/hooks/register.ts +13 -0
  71. package/mods/blast-radius-guard/kiro/UNSUPPORTED.md +7 -0
  72. package/mods/blast-radius-guard/kiro/blast-radius-guard-pre-tool-use-hook.json +14 -0
  73. package/mods/blast-radius-guard/lib/common.mjs +213 -0
  74. package/mods/blast-radius-guard/lib/core.mjs +66 -0
  75. package/mods/blast-radius-guard/lib/patterns.mjs +102 -0
  76. package/mods/blast-radius-guard/lib/runtime.mjs +140 -0
  77. package/mods/blast-radius-guard/mod.toml +34 -0
  78. package/mods/blast-radius-guard/patterns.json +101 -0
  79. package/mods/context-burn/.claude-plugin/plugin.json +5 -0
  80. package/mods/context-burn/README.md +66 -0
  81. package/mods/context-burn/bin/hook.mjs +38 -0
  82. package/mods/context-burn/claude-code/UNSUPPORTED.md +7 -0
  83. package/mods/context-burn/claude-code/settings.hooks.json +24 -0
  84. package/mods/context-burn/codex/UNSUPPORTED.md +7 -0
  85. package/mods/context-burn/codex/hooks.json +24 -0
  86. package/mods/context-burn/hooks/hooks.json +5 -0
  87. package/mods/context-burn/hooks/register.test.ts +151 -0
  88. package/mods/context-burn/hooks/register.ts +35 -0
  89. package/mods/context-burn/kiro/UNSUPPORTED.md +7 -0
  90. package/mods/context-burn/kiro/context-burn-post-tool-use-hook.json +14 -0
  91. package/mods/context-burn/kiro/context-burn-session-start-hook.json +14 -0
  92. package/mods/context-burn/lib/common.mjs +213 -0
  93. package/mods/context-burn/lib/core.mjs +79 -0
  94. package/mods/context-burn/lib/runtime.mjs +140 -0
  95. package/mods/context-burn/mod.toml +37 -0
  96. package/mods/live-guard-gate/.claude-plugin/plugin.json +5 -0
  97. package/mods/live-guard-gate/README.md +43 -0
  98. package/mods/live-guard-gate/bin/hook.mjs +12 -0
  99. package/mods/live-guard-gate/claude-code/settings.hooks.json +14 -0
  100. package/mods/live-guard-gate/codex/UNSUPPORTED.md +7 -0
  101. package/mods/live-guard-gate/codex/hooks.json +14 -0
  102. package/mods/live-guard-gate/hooks/hooks.json +5 -0
  103. package/mods/live-guard-gate/hooks/register.test.ts +59 -0
  104. package/mods/live-guard-gate/hooks/register.ts +11 -0
  105. package/mods/live-guard-gate/kiro/UNSUPPORTED.md +7 -0
  106. package/mods/live-guard-gate/kiro/live-guard-gate-pre-tool-use-hook.json +14 -0
  107. package/mods/live-guard-gate/lib/common.mjs +213 -0
  108. package/mods/live-guard-gate/lib/core.mjs +24 -0
  109. package/mods/live-guard-gate/lib/live-agents.mjs +65 -0
  110. package/mods/live-guard-gate/lib/patterns.mjs +523 -0
  111. package/mods/live-guard-gate/lib/runtime.mjs +140 -0
  112. package/mods/live-guard-gate/mod.toml +34 -0
  113. package/mods/live-guard-gate/patterns.json +522 -0
  114. package/mods/secret-redactor/.claude-plugin/plugin.json +5 -0
  115. package/mods/secret-redactor/README.md +86 -0
  116. package/mods/secret-redactor/bin/hook.mjs +35 -0
  117. package/mods/secret-redactor/claude-code/UNSUPPORTED.md +7 -0
  118. package/mods/secret-redactor/claude-code/settings.hooks.json +24 -0
  119. package/mods/secret-redactor/codex/UNSUPPORTED.md +11 -0
  120. package/mods/secret-redactor/codex/hooks.json +14 -0
  121. package/mods/secret-redactor/hooks/hooks.json +5 -0
  122. package/mods/secret-redactor/hooks/register.test.ts +150 -0
  123. package/mods/secret-redactor/hooks/register.ts +19 -0
  124. package/mods/secret-redactor/kiro/UNSUPPORTED.md +11 -0
  125. package/mods/secret-redactor/kiro/secret-redactor-pre-tool-use-hook.json +14 -0
  126. package/mods/secret-redactor/lib/common.mjs +213 -0
  127. package/mods/secret-redactor/lib/core.mjs +61 -0
  128. package/mods/secret-redactor/lib/patterns.mjs +75 -0
  129. package/mods/secret-redactor/lib/runtime.mjs +140 -0
  130. package/mods/secret-redactor/mod.toml +43 -0
  131. package/mods/secret-redactor/patterns.json +74 -0
  132. package/package.json +9 -4
  133. package/plugins/vanguard-frontier-agentic/.codex-plugin/plugin.json +1 -1
  134. package/powers/vanguard-generic/POWER.md +6 -6
  135. package/powers/vanguard-kubernetes/POWER.md +1 -1
  136. package/powers/vanguard-multi-cloud/POWER.md +1 -1
  137. package/schemas/agentic-handoff.schema.json +443 -0
  138. package/scripts/generate-kiro-powers.mjs +17 -6
  139. package/scripts/generate-mods.mjs +784 -0
  140. package/scripts/mods/common.mjs +213 -0
  141. package/scripts/mods/runtime.mjs +140 -0
  142. package/scripts/typescript_data/agents/00-typescript-maestro-agent.json +2 -2
  143. package/scripts/typescript_data/agents/11-typescript-mcp-tool-contract-agent.json +4 -4
  144. package/skills/cross-functional/agentic-board-protocol/SKILL.md +85 -0
  145. package/skills/cross-functional/agentic-board-protocol/metadata.json +28 -0
  146. package/skills/cross-functional/agentic-board-protocol/references/decision-record.md +134 -0
  147. package/skills/cross-functional/agentic-board-protocol/references/handoff-envelope.md +208 -0
  148. package/skills/cross-functional/agentic-board-protocol/references/risk-tier-crosswalk.md +88 -0
  149. package/skills/cross-functional/agentic-board-protocol/references/stop-conditions.md +122 -0
  150. package/skills/cross-functional/agentic-board-protocol/references/value-case.md +159 -0
  151. package/skills/cross-functional/agentic-security-review/SKILL.md +78 -0
  152. package/skills/cross-functional/agentic-security-review/metadata.json +30 -0
  153. package/skills/cross-functional/agentic-security-review/references/identity-and-delegated-authorization.md +144 -0
  154. package/skills/cross-functional/agentic-security-review/references/supply-chain-and-provenance.md +111 -0
  155. package/skills/cross-functional/agentic-security-review/references/threat-model-owasp-asi.md +55 -0
  156. package/skills/cross-functional/agentic-security-review/references/tools-memory-and-data-reach.md +125 -0
  157. package/skills/cross-functional/agentic-security-review/references/workflow-and-output.md +210 -0
  158. package/skills/cross-functional/agentic-system-architecture-review/SKILL.md +74 -0
  159. package/skills/cross-functional/agentic-system-architecture-review/metadata.json +31 -0
  160. package/skills/cross-functional/agentic-system-architecture-review/references/delegation-and-handoff-review.md +107 -0
  161. package/skills/cross-functional/agentic-system-architecture-review/references/pattern-selection.md +81 -0
  162. package/skills/cross-functional/agentic-system-architecture-review/references/reliability-and-containment.md +86 -0
  163. package/skills/cross-functional/agentic-system-architecture-review/references/state-memory-and-durability.md +102 -0
  164. package/skills/cross-functional/agentic-system-architecture-review/references/workflow-and-output.md +135 -0
  165. package/skills/typescript/typescript-maestro/SKILL.md +1 -1
  166. package/skills/typescript/typescript-maestro/references/routing-taxonomy.md +1 -1
  167. package/skills/typescript/typescript-mcp-tool-contract/SKILL.md +1 -1
  168. package/tests/agentic-board-suite/_build_fixtures.py +1751 -0
  169. package/tests/agentic-board-suite/_build_harnesses.py +123 -0
  170. package/tests/agentic-board-suite/agentic_board_rules.py +857 -0
  171. package/tests/agentic-board-suite/fixtures/invalid/CH-PROPOSAL-LINK--challenge-names-a-later-envelope.json +244 -0
  172. package/tests/agentic-board-suite/fixtures/invalid/CH-PROPOSAL-LINK--dangling-challenge-beside-a-request.json +410 -0
  173. package/tests/agentic-board-suite/fixtures/invalid/CH-PROPOSAL-LINK--dangling-proposal.json +187 -0
  174. package/tests/agentic-board-suite/fixtures/invalid/CH-ROUND-COUNTED--round-two-declared-as-one.json +481 -0
  175. package/tests/agentic-board-suite/fixtures/invalid/CH-ROUND-COUNTED--self-declared-round.json +187 -0
  176. package/tests/agentic-board-suite/fixtures/invalid/DR-ALTERNATIVES--no-alternatives.json +340 -0
  177. package/tests/agentic-board-suite/fixtures/invalid/DR-CHALLENGE-COMPLETE--hard-gate-left-behind-by-proposer-swap.json +532 -0
  178. package/tests/agentic-board-suite/fixtures/invalid/DR-CHALLENGE-COMPLETE--hard-gate-left-unattached.json +480 -0
  179. package/tests/agentic-board-suite/fixtures/invalid/DR-CHALLENGE-COMPLETE--hard-gate-on-root-left-unattached.json +410 -0
  180. package/tests/agentic-board-suite/fixtures/invalid/DR-CHALLENGE-COMPLETE--late-challenge-before-record.json +410 -0
  181. package/tests/agentic-board-suite/fixtures/invalid/DR-CHALLENGE-COMPLETE--superseded-request-missed-earlier-challenge.json +565 -0
  182. package/tests/agentic-board-suite/fixtures/invalid/DR-CHALLENGE-PRECEDES--withdrawal-attached-before-it-was-sent.json +483 -0
  183. package/tests/agentic-board-suite/fixtures/invalid/DR-CHALLENGE-PRECEDES--withdrawal-descends-from-the-record.json +547 -0
  184. package/tests/agentic-board-suite/fixtures/invalid/DR-CHALLENGE-REQUIRED--r1-flag-without-challenge.json +349 -0
  185. package/tests/agentic-board-suite/fixtures/invalid/DR-CHALLENGE-REQUIRED--r2-without-challenge.json +339 -0
  186. package/tests/agentic-board-suite/fixtures/invalid/DR-CHALLENGE-REQUIRED--r3-no-flags-without-challenge.json +339 -0
  187. package/tests/agentic-board-suite/fixtures/invalid/DR-CHALLENGE-RESOLVES--dangling-challenge.json +347 -0
  188. package/tests/agentic-board-suite/fixtures/invalid/DR-CHALLENGE-TARGETS-PROPOSAL--challenge-of-requester-message.json +415 -0
  189. package/tests/agentic-board-suite/fixtures/invalid/DR-CLASS-FROM-ROOT--root-declares-no-class.json +345 -0
  190. package/tests/agentic-board-suite/fixtures/invalid/DR-CLASS-FROM-ROOT--root-declares-other-class.json +346 -0
  191. package/tests/agentic-board-suite/fixtures/invalid/DR-DESIGNATED-CHALLENGER--designated-challenger-only-on-the-framing.json +346 -0
  192. package/tests/agentic-board-suite/fixtures/invalid/DR-DESIGNATED-CHALLENGER--investment-without-finance.json +436 -0
  193. package/tests/agentic-board-suite/fixtures/invalid/DR-DESIGNATED-CHALLENGER--stopped-designated-challenge.json +348 -0
  194. package/tests/agentic-board-suite/fixtures/invalid/DR-HARD-GATE--conditional-over-hard-gate.json +357 -0
  195. package/tests/agentic-board-suite/fixtures/invalid/DR-HARD-GATE--unresolved-hard-gate.json +357 -0
  196. package/tests/agentic-board-suite/fixtures/invalid/DR-NO-APPROVE-OVER-DISSENT--approve-over-a-stopped-challenge.json +413 -0
  197. package/tests/agentic-board-suite/fixtures/invalid/DR-NO-APPROVE-OVER-DISSENT--approve-over-dissent.json +346 -0
  198. package/tests/agentic-board-suite/fixtures/invalid/DR-ONE-REQUEST--re-ask-without-supersedes.json +426 -0
  199. package/tests/agentic-board-suite/fixtures/invalid/DR-ONE-REQUEST--request-superseded-twice.json +581 -0
  200. package/tests/agentic-board-suite/fixtures/invalid/DR-ONE-REQUEST--supersedes-a-challenge.json +427 -0
  201. package/tests/agentic-board-suite/fixtures/invalid/DR-ONE-REQUEST--supersedes-a-dangling-id.json +427 -0
  202. package/tests/agentic-board-suite/fixtures/invalid/DR-ONE-REQUEST--supersedes-a-later-request.json +500 -0
  203. package/tests/agentic-board-suite/fixtures/invalid/DR-ONE-REQUEST--superseding-request-from-another-proposer.json +621 -0
  204. package/tests/agentic-board-suite/fixtures/invalid/DR-ONE-REQUEST--supersession-cycle.json +501 -0
  205. package/tests/agentic-board-suite/fixtures/invalid/DR-OWNER-FROM-ROOT--agent-opens-decision-path.json +480 -0
  206. package/tests/agentic-board-suite/fixtures/invalid/DR-OWNER-FROM-ROOT--owner-is-the-requester.json +273 -0
  207. package/tests/agentic-board-suite/fixtures/invalid/DR-OWNER-FROM-ROOT--request-to-later-sorting-non-owner.json +273 -0
  208. package/tests/agentic-board-suite/fixtures/invalid/DR-OWNER-FROM-ROOT--request-to-non-owner.json +273 -0
  209. package/tests/agentic-board-suite/fixtures/invalid/DR-OWNER-FROM-ROOT--root-names-no-owner.json +341 -0
  210. package/tests/agentic-board-suite/fixtures/invalid/DR-PROPOSER-IS-SENDER--challenger-assembles-request.json +337 -0
  211. package/tests/agentic-board-suite/fixtures/invalid/DR-PROPOSER-NOT-CHALLENGER--self-challenge.json +411 -0
  212. package/tests/agentic-board-suite/fixtures/invalid/DR-RISK-CARRIED--concurrent-higher-tier-envelope.json +403 -0
  213. package/tests/agentic-board-suite/fixtures/invalid/DR-RISK-CARRIED--r5-decided-through-lower-tier-request.json +433 -0
  214. package/tests/agentic-board-suite/fixtures/invalid/DR-RISK-CARRIED--request-drops-materiality-flags.json +479 -0
  215. package/tests/agentic-board-suite/fixtures/invalid/DR-RISK-CARRIED--risk-raised-after-request-before-decision.json +403 -0
  216. package/tests/agentic-board-suite/fixtures/invalid/DR-TO-PRINCIPAL--request-to-agent.json +272 -0
  217. package/tests/agentic-board-suite/fixtures/invalid/DR-UNRESOLVED-DISSENT--dissent-dropped.json +341 -0
  218. package/tests/agentic-board-suite/fixtures/invalid/DR-UNRESOLVED-DISSENT--stopped-challenge-recorded-withdrawn.json +408 -0
  219. package/tests/agentic-board-suite/fixtures/invalid/DR-UNRESOLVED-DISSENT--unresolved-without-dissent.json +341 -0
  220. package/tests/agentic-board-suite/fixtures/invalid/DR-VALUE-CASE-REQUIRED--investment-without-value-case.json +353 -0
  221. package/tests/agentic-board-suite/fixtures/invalid/DRC-AFTER-REQUEST--decided-before-request.json +408 -0
  222. package/tests/agentic-board-suite/fixtures/invalid/DRC-AFTER-REQUEST--request-descends-from-its-record.json +408 -0
  223. package/tests/agentic-board-suite/fixtures/invalid/DRC-APPROVAL-STATE--state-contradicts-outcome.json +346 -0
  224. package/tests/agentic-board-suite/fixtures/invalid/DRC-CO-SIGN-BINDING--co-sign-approves-a-redesign.json +433 -0
  225. package/tests/agentic-board-suite/fixtures/invalid/DRC-CO-SIGN-BINDING--co-sign-contradicts-outcome.json +433 -0
  226. package/tests/agentic-board-suite/fixtures/invalid/DRC-CO-SIGN-BINDING--co-sign-does-not-descend-from-its-record.json +499 -0
  227. package/tests/agentic-board-suite/fixtures/invalid/DRC-CO-SIGN-BINDING--co-sign-is-the-parent-of-its-record.json +500 -0
  228. package/tests/agentic-board-suite/fixtures/invalid/DRC-CO-SIGN-BINDING--co-sign-names-another-approver.json +438 -0
  229. package/tests/agentic-board-suite/fixtures/invalid/DRC-CO-SIGN-BINDING--co-sign-nobody-asked-for.json +421 -0
  230. package/tests/agentic-board-suite/fixtures/invalid/DRC-CO-SIGN-BINDING--co-sign-sent-before-the-record.json +499 -0
  231. package/tests/agentic-board-suite/fixtures/invalid/DRC-CO-SIGNED--decision-in-force-not-co-signed.json +591 -0
  232. package/tests/agentic-board-suite/fixtures/invalid/DRC-CO-SIGNED--later-sorting-second-approver-never-signs.json +359 -0
  233. package/tests/agentic-board-suite/fixtures/invalid/DRC-CO-SIGNED--named-second-approver-never-signs.json +359 -0
  234. package/tests/agentic-board-suite/fixtures/invalid/DRC-COMPLETED--record-left-dispatched.json +346 -0
  235. package/tests/agentic-board-suite/fixtures/invalid/DRC-DECIDER-IS-ADDRESSEE--decided-by-non-addressee.json +408 -0
  236. package/tests/agentic-board-suite/fixtures/invalid/DRC-DECIDER-IS-ADDRESSEE--earlier-sorting-non-addressee-decides.json +408 -0
  237. package/tests/agentic-board-suite/fixtures/invalid/DRC-DECIDER-IS-SENDER--relayed-decision.json +408 -0
  238. package/tests/agentic-board-suite/fixtures/invalid/DRC-HARD-GATE-ACCEPTANCE--override-without-acceptance.json +356 -0
  239. package/tests/agentic-board-suite/fixtures/invalid/DRC-HARD-GATE-ACCEPTANCE--same-round-withdrawal.json +423 -0
  240. package/tests/agentic-board-suite/fixtures/invalid/DRC-HARD-GATE-ACCEPTANCE--stopped-over-cap-withdrawal.json +623 -0
  241. package/tests/agentic-board-suite/fixtures/invalid/DRC-HARD-GATE-ACCEPTANCE--unrelated-withdrawal-does-not-clear-gate.json +482 -0
  242. package/tests/agentic-board-suite/fixtures/invalid/DRC-HARD-GATE-ACCEPTANCE--withdrawal-names-an-undelivered-envelope.json +482 -0
  243. package/tests/agentic-board-suite/fixtures/invalid/DRC-HARD-GATE-ACCEPTANCE--withdrawal-on-another-proposers-revision.json +600 -0
  244. package/tests/agentic-board-suite/fixtures/invalid/DRC-NOT-REQUESTER--second-approver-is-requester.json +433 -0
  245. package/tests/agentic-board-suite/fixtures/invalid/DRC-ONE-RECORD--contradicting-records.json +416 -0
  246. package/tests/agentic-board-suite/fixtures/invalid/DRC-ONE-RECORD--duplicate-co-signature.json +507 -0
  247. package/tests/agentic-board-suite/fixtures/invalid/DRC-PRINCIPAL-SOURCE--agent-writes-decision.json +345 -0
  248. package/tests/agentic-board-suite/fixtures/invalid/DRC-REQUEST-BINDING--points-at-challenge.json +346 -0
  249. package/tests/agentic-board-suite/fixtures/invalid/DRC-REQUEST-BINDING--record-names-a-missing-request.json +346 -0
  250. package/tests/agentic-board-suite/fixtures/invalid/DRC-REQUEST-BINDING--request-edited-after-decision.json +346 -0
  251. package/tests/agentic-board-suite/fixtures/invalid/DRC-SECOND-APPROVER--r5-request-decided-on-lower-tier-branch.json +418 -0
  252. package/tests/agentic-board-suite/fixtures/invalid/DRC-SECOND-APPROVER--r5-single-approver.json +354 -0
  253. package/tests/agentic-board-suite/fixtures/invalid/DRC-SECOND-APPROVER--second-approver-is-decider.json +359 -0
  254. package/tests/agentic-board-suite/fixtures/invalid/HO-AGENT-NO-APPROVAL--agent-claims-approval.json +132 -0
  255. package/tests/agentic-board-suite/fixtures/invalid/HO-APPROVAL-ONLY-ON-RECORD--principal-delegate-claims-approval.json +132 -0
  256. package/tests/agentic-board-suite/fixtures/invalid/HO-ATTEN-ACTIONS--child-widens-actions.json +345 -0
  257. package/tests/agentic-board-suite/fixtures/invalid/HO-ATTEN-BUDGET--child-raises-limit.json +132 -0
  258. package/tests/agentic-board-suite/fixtures/invalid/HO-ATTEN-BUDGET--currency-changed.json +132 -0
  259. package/tests/agentic-board-suite/fixtures/invalid/HO-BLOCK-AS-CHALLENGE--block-sent-as-return.json +184 -0
  260. package/tests/agentic-board-suite/fixtures/invalid/HO-CHAIN-CUSTODY--parent-sender-continues-unstopped.json +187 -0
  261. package/tests/agentic-board-suite/fixtures/invalid/HO-CHAIN-CUSTODY--reply-from-outside-chain.json +132 -0
  262. package/tests/agentic-board-suite/fixtures/invalid/HO-CHAIN-PARENT--hop-skips.json +132 -0
  263. package/tests/agentic-board-suite/fixtures/invalid/HO-CHAIN-TIME--sent-before-parent.json +132 -0
  264. package/tests/agentic-board-suite/fixtures/invalid/HO-DESTINATION-TIER--delegate-to-live-guard.json +132 -0
  265. package/tests/agentic-board-suite/fixtures/invalid/HO-DESTINATION-TIER--delegate-to-untiered-agent.json +132 -0
  266. package/tests/agentic-board-suite/fixtures/invalid/HO-ESCALATE-TO-PRINCIPAL--escalate-to-agent.json +131 -0
  267. package/tests/agentic-board-suite/fixtures/invalid/HO-ESCALATE-TO-PRINCIPAL--escalated-delegate-to-agent.json +132 -0
  268. package/tests/agentic-board-suite/fixtures/invalid/HO-MONO-CLASS--classification-lowered.json +346 -0
  269. package/tests/agentic-board-suite/fixtures/invalid/HO-MONO-DEADLINE--deadline-extended.json +132 -0
  270. package/tests/agentic-board-suite/fixtures/invalid/HO-MONO-MATERIALITY--flag-dropped.json +434 -0
  271. package/tests/agentic-board-suite/fixtures/invalid/HO-MONO-MAX-HOPS--max-hops-raised.json +132 -0
  272. package/tests/agentic-board-suite/fixtures/invalid/HO-MONO-PROHIBITIONS--prohibition-dropped.json +131 -0
  273. package/tests/agentic-board-suite/fixtures/invalid/HO-MONO-SPENT--one-counter-decreases.json +346 -0
  274. package/tests/agentic-board-suite/fixtures/invalid/HO-MONO-SPENT--spent-counter-reset.json +346 -0
  275. package/tests/agentic-board-suite/fixtures/invalid/HO-MONO-TIER--tier-lowered.json +346 -0
  276. package/tests/agentic-board-suite/fixtures/invalid/HO-NO-EXECUTION--deploy-authorized.json +133 -0
  277. package/tests/agentic-board-suite/fixtures/invalid/HO-NO-SELF-ADDRESS--challenge-to-self.json +187 -0
  278. package/tests/agentic-board-suite/fixtures/invalid/HO-ONE-CORRELATION--two-correlations.json +132 -0
  279. package/tests/agentic-board-suite/fixtures/invalid/HO-ONE-ROOT--second-root-beside-a-decision.json +410 -0
  280. package/tests/agentic-board-suite/fixtures/invalid/HO-ONE-ROOT--two-roots.json +190 -0
  281. package/tests/agentic-board-suite/fixtures/invalid/HO-PAYLOAD-CHALLENGE--challenge-without-payload.json +180 -0
  282. package/tests/agentic-board-suite/fixtures/invalid/HO-PAYLOAD-DECISION-RECORD--record-without-payload.json +331 -0
  283. package/tests/agentic-board-suite/fixtures/invalid/HO-PAYLOAD-DECISION-REQUEST--request-without-payload.json +324 -0
  284. package/tests/agentic-board-suite/fixtures/invalid/HO-PAYLOAD-ESCALATE--escalate-without-payload.json +128 -0
  285. package/tests/agentic-board-suite/fixtures/invalid/HO-PAYLOAD-EXCLUSIVE--return-with-escalation.json +136 -0
  286. package/tests/agentic-board-suite/fixtures/invalid/HO-PAYLOAD-RETURN--return-without-verdict.json +124 -0
  287. package/tests/agentic-board-suite/fixtures/invalid/HO-REASON-HAS-STATUS--reason-on-completed.json +134 -0
  288. package/tests/agentic-board-suite/fixtures/invalid/HO-RETURN-EVIDENCE--pass-on-inference-only.json +132 -0
  289. package/tests/agentic-board-suite/fixtures/invalid/HO-RETURN-EVIDENCE--pass-over-blocking-gap.json +137 -0
  290. package/tests/agentic-board-suite/fixtures/invalid/HO-RETURN-EVIDENCE--pass-with-no-evidence.json +127 -0
  291. package/tests/agentic-board-suite/fixtures/invalid/HO-RETURN-TO-SENDER--return-skips-the-delegator.json +185 -0
  292. package/tests/agentic-board-suite/fixtures/invalid/HO-ROOT-PARENT--root-with-parent.json +132 -0
  293. package/tests/agentic-board-suite/fixtures/invalid/HO-SCHEMA--unknown-credential-field.json +133 -0
  294. package/tests/agentic-board-suite/fixtures/invalid/HO-STOP-NOTE--conflict-without-note.json +133 -0
  295. package/tests/agentic-board-suite/fixtures/invalid/HO-STOPPED-HAS-REASON--stopped-without-reason.json +132 -0
  296. package/tests/agentic-board-suite/fixtures/invalid/HO-UNIQUE-TASK-ID--duplicate-task-id.json +198 -0
  297. package/tests/agentic-board-suite/fixtures/invalid/STOP-BUDGET--budget-undeclared.json +123 -0
  298. package/tests/agentic-board-suite/fixtures/invalid/STOP-BUDGET--return-overspent.json +132 -0
  299. package/tests/agentic-board-suite/fixtures/invalid/STOP-CHALLENGE-ROUNDS--revisions-carried-in-rebuttal-challenges.json +461 -0
  300. package/tests/agentic-board-suite/fixtures/invalid/STOP-CHALLENGE-ROUNDS--third-round.json +454 -0
  301. package/tests/agentic-board-suite/fixtures/invalid/STOP-CHALLENGE-ROUNDS--third-version-by-return-naming-the-original.json +461 -0
  302. package/tests/agentic-board-suite/fixtures/invalid/STOP-DEADLINE--sent-after-deadline.json +132 -0
  303. package/tests/agentic-board-suite/fixtures/invalid/STOP-DEPTH--depth-undeclared.json +182 -0
  304. package/tests/agentic-board-suite/fixtures/invalid/STOP-INSTRUCTION-BAIT--claimed-approval-dispatched.json +132 -0
  305. package/tests/agentic-board-suite/fixtures/invalid/STOP-LIVE-GUARD--mutation-dispatched.json +130 -0
  306. package/tests/agentic-board-suite/fixtures/invalid/STOP-MISSING-EVIDENCE--blocking-gap-dispatched.json +137 -0
  307. package/tests/agentic-board-suite/fixtures/invalid/STOP-MISSING-EVIDENCE--decision-request-blocking-gap.json +351 -0
  308. package/tests/agentic-board-suite/fixtures/invalid/STOP-ROUTING-LOOP--exchanges-on-the-original-envelope.json +381 -0
  309. package/tests/agentic-board-suite/fixtures/invalid/STOP-ROUTING-LOOP--loop-undeclared.json +182 -0
  310. package/tests/agentic-board-suite/fixtures/invalid/STOP-ROUTING-LOOP--revisit-to-challenger-of-another-party.json +256 -0
  311. package/tests/agentic-board-suite/fixtures/invalid/STOP-ROUTING-LOOP--second-revisit-to-challenger.json +540 -0
  312. package/tests/agentic-board-suite/fixtures/invalid/STOP-TERMINAL--challenge-answers-stopped-delegate.json +247 -0
  313. package/tests/agentic-board-suite/fixtures/invalid/STOP-TERMINAL--decision-on-escalated-request.json +353 -0
  314. package/tests/agentic-board-suite/fixtures/invalid/STOP-TERMINAL--decision-on-stopped-request.json +422 -0
  315. package/tests/agentic-board-suite/fixtures/invalid/STOP-TERMINAL--reply-to-stopped-delegate.json +244 -0
  316. package/tests/agentic-board-suite/fixtures/invalid/VC-BENEFIT-CEILING--benefit-above-baseline.json +436 -0
  317. package/tests/agentic-board-suite/fixtures/invalid/VC-COST-SIGN--negative-risk-loss.json +436 -0
  318. package/tests/agentic-board-suite/fixtures/invalid/VC-COST-SIGN--risk-loss-low-minus-one.json +436 -0
  319. package/tests/agentic-board-suite/fixtures/invalid/VC-COUNTERFACTUALS--single-agent-counterfactual-missing.json +427 -0
  320. package/tests/agentic-board-suite/fixtures/invalid/VC-COUNTERFACTUALS--workflow-counterfactual-missing.json +427 -0
  321. package/tests/agentic-board-suite/fixtures/invalid/VC-NAV-ARITHMETIC--nav-off-by-one.json +436 -0
  322. package/tests/agentic-board-suite/fixtures/invalid/VC-ORDER--inverted-range.json +436 -0
  323. package/tests/agentic-board-suite/fixtures/invalid/VC-OVERSIGHT--free-oversight.json +436 -0
  324. package/tests/agentic-board-suite/fixtures/invalid/VC-PROMOTION--measured-but-not-incremental.json +436 -0
  325. package/tests/agentic-board-suite/fixtures/invalid/VC-PROMOTION--promoted-on-estimate.json +436 -0
  326. package/tests/agentic-board-suite/fixtures/invalid/VC-RECOMMEND-INCREMENTAL--recommend-non-incremental.json +436 -0
  327. package/tests/agentic-board-suite/fixtures/invalid/VC-RUNS-BOUND--more-successes-than-runs.json +436 -0
  328. package/tests/agentic-board-suite/fixtures/invalid/VC-SYNTHETIC--synthetic-claims-measured.json +436 -0
  329. package/tests/agentic-board-suite/fixtures/invalid/VC-UNIT-COST--no-successes-nonzero-cost.json +436 -0
  330. package/tests/agentic-board-suite/fixtures/invalid/VC-UNIT-COST--unit-cost-mismatch.json +436 -0
  331. package/tests/agentic-board-suite/fixtures/valid/v01-r0-single-review.json +129 -0
  332. package/tests/agentic-board-suite/fixtures/valid/v01x-block-return-on-inference.json +125 -0
  333. package/tests/agentic-board-suite/fixtures/valid/v01x-block-return-to-principal.json +125 -0
  334. package/tests/agentic-board-suite/fixtures/valid/v01x-pass-return-documentation-evidence.json +129 -0
  335. package/tests/agentic-board-suite/fixtures/valid/v01x-pass-return-mixed-evidence.json +133 -0
  336. package/tests/agentic-board-suite/fixtures/valid/v01x-pass-return-nonblocking-gap.json +134 -0
  337. package/tests/agentic-board-suite/fixtures/valid/v02-r2-architecture-dissent.json +343 -0
  338. package/tests/agentic-board-suite/fixtures/valid/v02x-challenge-after-decision.json +407 -0
  339. package/tests/agentic-board-suite/fixtures/valid/v02x-challenge-after-record-same-second.json +464 -0
  340. package/tests/agentic-board-suite/fixtures/valid/v02x-redispatch-after-cured-stop.json +534 -0
  341. package/tests/agentic-board-suite/fixtures/valid/v02x-security-proposal-returned-to-its-delegator.json +407 -0
  342. package/tests/agentic-board-suite/fixtures/valid/v03-investment-loses-to-workflow.json +433 -0
  343. package/tests/agentic-board-suite/fixtures/valid/v04-r3-hard-gate-risk-acceptance.json +354 -0
  344. package/tests/agentic-board-suite/fixtures/valid/v04x-live-hard-gate-recommend-escalate.json +354 -0
  345. package/tests/agentic-board-suite/fixtures/valid/v04x-live-hard-gate-recommend-reject.json +354 -0
  346. package/tests/agentic-board-suite/fixtures/valid/v05-live-guard-escalation.json +129 -0
  347. package/tests/agentic-board-suite/fixtures/valid/v06-r5-dual-approval.json +430 -0
  348. package/tests/agentic-board-suite/fixtures/valid/v06x-co-sign-same-second.json +430 -0
  349. package/tests/agentic-board-suite/fixtures/valid/v06x-re-asked-r5-decision-co-signed-again.json +662 -0
  350. package/tests/agentic-board-suite/fixtures/valid/v06x-unsigned-approve-superseded-by-co-signed-reject.json +588 -0
  351. package/tests/agentic-board-suite/fixtures/valid/v07-depth-and-routing-loop.json +180 -0
  352. package/tests/agentic-board-suite/fixtures/valid/v08-budget-exhausted.json +186 -0
  353. package/tests/agentic-board-suite/fixtures/valid/v09-instruction-bait.json +131 -0
  354. package/tests/agentic-board-suite/fixtures/valid/v09x-requester-restates-after-bait.json +251 -0
  355. package/tests/agentic-board-suite/fixtures/valid/v10-r1-optional-challenge.json +184 -0
  356. package/tests/agentic-board-suite/fixtures/valid/v10x-report-up-after-challenge.json +246 -0
  357. package/tests/agentic-board-suite/fixtures/valid/v11-two-rounds-hard-gate-withdrawn.json +478 -0
  358. package/tests/agentic-board-suite/fixtures/valid/v11x-designated-challenge-first-answer-over-cap.json +598 -0
  359. package/tests/agentic-board-suite/fixtures/valid/v11x-interleaved-challenger-round-two.json +604 -0
  360. package/tests/agentic-board-suite/fixtures/valid/v11x-proposal-handed-to-the-challenger-capped.json +860 -0
  361. package/tests/agentic-board-suite/fixtures/valid/v11x-round-three-escalation-path.json +747 -0
  362. package/tests/agentic-board-suite/fixtures/valid/v11x-same-second-round-two.json +478 -0
  363. package/tests/agentic-board-suite/fixtures/valid/v11x-two-findings-one-round.json +549 -0
  364. package/tests/agentic-board-suite/fixtures/valid/v12-superseded-request.json +497 -0
  365. package/tests/agentic-board-suite/fixtures/valid/v12x-challenge-after-the-first-decision.json +566 -0
  366. package/tests/agentic-board-suite/fixtures/valid/v12x-late-challenge-cured-by-supersede.json +566 -0
  367. package/tests/agentic-board-suite/fixtures/valid/v12x-supersede-in-the-same-second.json +497 -0
  368. package/tests/agentic-board-suite/test_agentic_board.py +502 -0
  369. package/tests/fixtures/README.md +1 -1
  370. package/tests/fuzz-properties.test.mjs +254 -0
  371. package/tests/mods.test.mjs +768 -0
  372. package/tests/validate-agent-tool-tiers.py +7 -5
  373. package/tests/validate-asset-integrity.py +1 -0
  374. package/tests/validate-mods.py +821 -0
@@ -0,0 +1,547 @@
1
+ {
2
+ "messages": [
3
+ {
4
+ "schema_version": "1.0.0",
5
+ "message_type": "delegate",
6
+ "task_id": "v04-m1",
7
+ "correlation_id": "v04-corr",
8
+ "parent_task_id": null,
9
+ "hop_count": 0,
10
+ "max_hops": 8,
11
+ "sent_at": "2026-10-01T09:01:00Z",
12
+ "source": {
13
+ "kind": "principal",
14
+ "subject": "subject:corp-idp:7c1e9a40b2d35f68",
15
+ "role": "platform-owner"
16
+ },
17
+ "destination": {
18
+ "kind": "agent",
19
+ "id": "agentic-system-architecture-review-agent"
20
+ },
21
+ "objective": "Assess whether the supplier-onboarding multi-agent design is fit for a production pilot.",
22
+ "input_schema_version": "1.0.0",
23
+ "subject_risk_tier": "R3",
24
+ "data_classification": "internal",
25
+ "materiality_flags": [
26
+ "security-critical"
27
+ ],
28
+ "authorized_actions": [
29
+ "read",
30
+ "analyze",
31
+ "recommend",
32
+ "challenge",
33
+ "escalate"
34
+ ],
35
+ "do_not_do_list": [
36
+ "Do not execute, deploy, or mutate any system",
37
+ "Do not request, store, or echo credentials, tokens, or secrets",
38
+ "Do not record an approval on behalf of a human"
39
+ ],
40
+ "evidence_refs": [
41
+ {
42
+ "ref": "repo:docs/design/v04.md#section-1",
43
+ "label": "repo-evidence"
44
+ }
45
+ ],
46
+ "missing_evidence": [],
47
+ "budget": {
48
+ "currency": "USD",
49
+ "limit_tool_calls": 40,
50
+ "spent_tool_calls": 0,
51
+ "limit_tokens": 400000,
52
+ "spent_tokens": 0,
53
+ "limit_cost_minor": 2000,
54
+ "spent_cost_minor": 0
55
+ },
56
+ "deadline": "2026-10-08T17:00:00Z",
57
+ "approval_state": "not-required",
58
+ "expected_output_schema": "agentic-review-verdict/1.0.0",
59
+ "status": "dispatched",
60
+ "stop_reasons": [],
61
+ "synthetic": true,
62
+ "decision_class": "architecture",
63
+ "decision_owner": {
64
+ "kind": "principal",
65
+ "subject": "subject:corp-idp:a94f03d2c8e1b756",
66
+ "role": "ai-risk-owner"
67
+ }
68
+ },
69
+ {
70
+ "schema_version": "1.0.0",
71
+ "message_type": "delegate",
72
+ "task_id": "v04-m2",
73
+ "correlation_id": "v04-corr",
74
+ "parent_task_id": "v04-m1",
75
+ "hop_count": 1,
76
+ "max_hops": 8,
77
+ "sent_at": "2026-10-01T09:02:00Z",
78
+ "source": {
79
+ "kind": "agent",
80
+ "id": "agentic-system-architecture-review-agent"
81
+ },
82
+ "destination": {
83
+ "kind": "agent",
84
+ "id": "agentic-security-review-agent"
85
+ },
86
+ "objective": "Challenge the proposal for v04: attack its strongest failure paths and cite evidence.",
87
+ "input_schema_version": "1.0.0",
88
+ "subject_risk_tier": "R3",
89
+ "data_classification": "internal",
90
+ "materiality_flags": [
91
+ "security-critical"
92
+ ],
93
+ "authorized_actions": [
94
+ "read",
95
+ "analyze",
96
+ "recommend",
97
+ "challenge",
98
+ "escalate"
99
+ ],
100
+ "do_not_do_list": [
101
+ "Do not execute, deploy, or mutate any system",
102
+ "Do not request, store, or echo credentials, tokens, or secrets",
103
+ "Do not record an approval on behalf of a human"
104
+ ],
105
+ "evidence_refs": [
106
+ {
107
+ "ref": "repo:docs/design/v04.md#section-1",
108
+ "label": "repo-evidence"
109
+ }
110
+ ],
111
+ "missing_evidence": [],
112
+ "budget": {
113
+ "currency": "USD",
114
+ "limit_tool_calls": 40,
115
+ "spent_tool_calls": 8,
116
+ "limit_tokens": 400000,
117
+ "spent_tokens": 40000,
118
+ "limit_cost_minor": 2000,
119
+ "spent_cost_minor": 160
120
+ },
121
+ "deadline": "2026-10-08T17:00:00Z",
122
+ "approval_state": "not-required",
123
+ "expected_output_schema": "agentic-review-verdict/1.0.0",
124
+ "status": "dispatched",
125
+ "stop_reasons": [],
126
+ "synthetic": true
127
+ },
128
+ {
129
+ "schema_version": "1.0.0",
130
+ "message_type": "challenge",
131
+ "task_id": "v04-m3",
132
+ "correlation_id": "v04-corr",
133
+ "parent_task_id": "v04-m2",
134
+ "hop_count": 2,
135
+ "max_hops": 8,
136
+ "sent_at": "2026-10-01T09:03:00Z",
137
+ "source": {
138
+ "kind": "agent",
139
+ "id": "agentic-security-review-agent"
140
+ },
141
+ "destination": {
142
+ "kind": "agent",
143
+ "id": "agentic-system-architecture-review-agent"
144
+ },
145
+ "objective": "Challenge findings for the v04 proposal.",
146
+ "input_schema_version": "1.0.0",
147
+ "subject_risk_tier": "R3",
148
+ "data_classification": "internal",
149
+ "materiality_flags": [
150
+ "security-critical"
151
+ ],
152
+ "authorized_actions": [
153
+ "read",
154
+ "analyze",
155
+ "recommend",
156
+ "challenge",
157
+ "escalate"
158
+ ],
159
+ "do_not_do_list": [
160
+ "Do not execute, deploy, or mutate any system",
161
+ "Do not request, store, or echo credentials, tokens, or secrets",
162
+ "Do not record an approval on behalf of a human"
163
+ ],
164
+ "evidence_refs": [
165
+ {
166
+ "ref": "repo:docs/design/v04.md#section-1",
167
+ "label": "repo-evidence"
168
+ }
169
+ ],
170
+ "missing_evidence": [],
171
+ "budget": {
172
+ "currency": "USD",
173
+ "limit_tool_calls": 40,
174
+ "spent_tool_calls": 14,
175
+ "limit_tokens": 400000,
176
+ "spent_tokens": 70000,
177
+ "limit_cost_minor": 2000,
178
+ "spent_cost_minor": 280
179
+ },
180
+ "deadline": "2026-10-08T17:00:00Z",
181
+ "approval_state": "not-required",
182
+ "expected_output_schema": "agentic-review-verdict/1.0.0",
183
+ "status": "completed",
184
+ "stop_reasons": [],
185
+ "synthetic": true,
186
+ "challenge": {
187
+ "proposal_task_id": "v04-m2",
188
+ "round": 1,
189
+ "hard_gate": true,
190
+ "outcome": "sustained",
191
+ "finding": "The orchestrator forwards the user's access token to the ERP MCP server (token passthrough); the server cannot validate audience."
192
+ }
193
+ },
194
+ {
195
+ "schema_version": "1.0.0",
196
+ "message_type": "decision-request",
197
+ "task_id": "v04-m4",
198
+ "correlation_id": "v04-corr",
199
+ "parent_task_id": "v04-m3",
200
+ "hop_count": 3,
201
+ "max_hops": 8,
202
+ "sent_at": "2026-10-01T09:04:00Z",
203
+ "source": {
204
+ "kind": "agent",
205
+ "id": "agentic-system-architecture-review-agent"
206
+ },
207
+ "destination": {
208
+ "kind": "principal",
209
+ "subject": "subject:corp-idp:a94f03d2c8e1b756",
210
+ "role": "ai-risk-owner"
211
+ },
212
+ "objective": "Request a human decision on the v04 proposal with challenges and dissent attached.",
213
+ "input_schema_version": "1.0.0",
214
+ "subject_risk_tier": "R3",
215
+ "data_classification": "internal",
216
+ "materiality_flags": [
217
+ "security-critical"
218
+ ],
219
+ "authorized_actions": [
220
+ "read",
221
+ "analyze",
222
+ "recommend",
223
+ "challenge",
224
+ "escalate"
225
+ ],
226
+ "do_not_do_list": [
227
+ "Do not execute, deploy, or mutate any system",
228
+ "Do not request, store, or echo credentials, tokens, or secrets",
229
+ "Do not record an approval on behalf of a human"
230
+ ],
231
+ "evidence_refs": [
232
+ {
233
+ "ref": "repo:docs/design/v04.md#section-1",
234
+ "label": "repo-evidence"
235
+ }
236
+ ],
237
+ "missing_evidence": [],
238
+ "budget": {
239
+ "currency": "USD",
240
+ "limit_tool_calls": 40,
241
+ "spent_tool_calls": 18,
242
+ "limit_tokens": 400000,
243
+ "spent_tokens": 90000,
244
+ "limit_cost_minor": 2000,
245
+ "spent_cost_minor": 360
246
+ },
247
+ "deadline": "2026-10-08T17:00:00Z",
248
+ "approval_state": "pending-human-review",
249
+ "expected_output_schema": "agentic-review-verdict/1.0.0",
250
+ "status": "dispatched",
251
+ "stop_reasons": [],
252
+ "synthetic": true,
253
+ "decision_request": {
254
+ "decision_class": "architecture",
255
+ "proposer_agent": "agentic-system-architecture-review-agent",
256
+ "proposal_summary": "Proposal assembled by agentic-system-architecture-review-agent for v04; see evidence_refs for the design under review.",
257
+ "alternatives": [
258
+ {
259
+ "kind": "single-agent",
260
+ "summary": "One agent calling the ERP through its own audience-bound credential.",
261
+ "rejected_because": "Requires an ERP connector change outside the pilot window."
262
+ }
263
+ ],
264
+ "challenge_task_ids": [
265
+ "v04-m3",
266
+ "v04-m8"
267
+ ],
268
+ "dissent": [
269
+ {
270
+ "challenge_task_id": "v04-m3",
271
+ "position": "The challenger's finding stands unresolved by evidence and is carried to the decision owner."
272
+ }
273
+ ],
274
+ "recommended_outcome": "redesign"
275
+ }
276
+ },
277
+ {
278
+ "schema_version": "1.0.0",
279
+ "message_type": "decision-record",
280
+ "task_id": "v04-m5",
281
+ "correlation_id": "v04-corr",
282
+ "parent_task_id": "v04-m7",
283
+ "hop_count": 4,
284
+ "max_hops": 8,
285
+ "sent_at": "2026-10-01T09:04:00Z",
286
+ "source": {
287
+ "kind": "principal",
288
+ "subject": "subject:corp-idp:a94f03d2c8e1b756",
289
+ "role": "ai-risk-owner"
290
+ },
291
+ "destination": {
292
+ "kind": "agent",
293
+ "id": "agentic-security-review-agent"
294
+ },
295
+ "objective": "Record the decision owner's decision on the v04 proposal.",
296
+ "input_schema_version": "1.0.0",
297
+ "subject_risk_tier": "R3",
298
+ "data_classification": "internal",
299
+ "materiality_flags": [
300
+ "security-critical"
301
+ ],
302
+ "authorized_actions": [
303
+ "read",
304
+ "analyze",
305
+ "recommend",
306
+ "challenge",
307
+ "escalate"
308
+ ],
309
+ "do_not_do_list": [
310
+ "Do not execute, deploy, or mutate any system",
311
+ "Do not request, store, or echo credentials, tokens, or secrets",
312
+ "Do not record an approval on behalf of a human"
313
+ ],
314
+ "evidence_refs": [
315
+ {
316
+ "ref": "repo:docs/design/v04.md#section-1",
317
+ "label": "repo-evidence"
318
+ }
319
+ ],
320
+ "missing_evidence": [],
321
+ "budget": {
322
+ "currency": "USD",
323
+ "limit_tool_calls": 40,
324
+ "spent_tool_calls": 18,
325
+ "limit_tokens": 400000,
326
+ "spent_tokens": 90000,
327
+ "limit_cost_minor": 2000,
328
+ "spent_cost_minor": 360
329
+ },
330
+ "deadline": "2026-10-08T17:00:00Z",
331
+ "approval_state": "approved",
332
+ "expected_output_schema": "agentic-review-verdict/1.0.0",
333
+ "status": "completed",
334
+ "stop_reasons": [],
335
+ "synthetic": true,
336
+ "decision_record": {
337
+ "request_task_id": "v04-m4",
338
+ "request_digest": "sha256:409485a0f5a809d641005b79bdc82c8a25651eadd103cd723a2f5b34e5f4be4a",
339
+ "outcome": "conditional-approve",
340
+ "decided_by": {
341
+ "kind": "principal",
342
+ "subject": "subject:corp-idp:a94f03d2c8e1b756",
343
+ "role": "ai-risk-owner"
344
+ },
345
+ "rationale": "Decision taken on the attached proposal, alternatives, challenges and dissent.",
346
+ "dissent_acknowledged": true,
347
+ "risk_acceptance_ref": "risk-acceptance:RA-2026-0042",
348
+ "conditions": [
349
+ "Replace token passthrough with an audience-bound token exchange before go-live"
350
+ ]
351
+ }
352
+ },
353
+ {
354
+ "schema_version": "1.0.0",
355
+ "message_type": "delegate",
356
+ "task_id": "v04-m6",
357
+ "correlation_id": "v04-corr",
358
+ "parent_task_id": "v04-m3",
359
+ "hop_count": 3,
360
+ "max_hops": 8,
361
+ "sent_at": "2026-10-01T09:03:20Z",
362
+ "source": {
363
+ "kind": "agent",
364
+ "id": "agentic-system-architecture-review-agent"
365
+ },
366
+ "destination": {
367
+ "kind": "agent",
368
+ "id": "agentic-security-review-agent"
369
+ },
370
+ "objective": "Challenge the revised v04 proposal after the round-1 finding.",
371
+ "input_schema_version": "1.0.0",
372
+ "subject_risk_tier": "R3",
373
+ "data_classification": "internal",
374
+ "materiality_flags": [
375
+ "security-critical"
376
+ ],
377
+ "authorized_actions": [
378
+ "read",
379
+ "analyze",
380
+ "recommend",
381
+ "challenge",
382
+ "escalate"
383
+ ],
384
+ "do_not_do_list": [
385
+ "Do not execute, deploy, or mutate any system",
386
+ "Do not request, store, or echo credentials, tokens, or secrets",
387
+ "Do not record an approval on behalf of a human"
388
+ ],
389
+ "evidence_refs": [
390
+ {
391
+ "ref": "repo:docs/design/v04.md#section-1",
392
+ "label": "repo-evidence"
393
+ }
394
+ ],
395
+ "missing_evidence": [],
396
+ "budget": {
397
+ "currency": "USD",
398
+ "limit_tool_calls": 40,
399
+ "spent_tool_calls": 14,
400
+ "limit_tokens": 400000,
401
+ "spent_tokens": 70000,
402
+ "limit_cost_minor": 2000,
403
+ "spent_cost_minor": 280
404
+ },
405
+ "deadline": "2026-10-08T17:00:00Z",
406
+ "approval_state": "not-required",
407
+ "expected_output_schema": "agentic-review-verdict/1.0.0",
408
+ "status": "dispatched",
409
+ "stop_reasons": [],
410
+ "synthetic": true
411
+ },
412
+ {
413
+ "schema_version": "1.0.0",
414
+ "message_type": "escalate",
415
+ "task_id": "v04-m7",
416
+ "correlation_id": "v04-corr",
417
+ "parent_task_id": "v04-m3",
418
+ "hop_count": 3,
419
+ "max_hops": 8,
420
+ "sent_at": "2026-10-01T09:04:00Z",
421
+ "source": {
422
+ "kind": "agent",
423
+ "id": "agentic-system-architecture-review-agent"
424
+ },
425
+ "destination": {
426
+ "kind": "principal",
427
+ "subject": "subject:corp-idp:a94f03d2c8e1b756",
428
+ "role": "ai-risk-owner"
429
+ },
430
+ "objective": "Escalate the v04 decision to its owner.",
431
+ "input_schema_version": "1.0.0",
432
+ "subject_risk_tier": "R3",
433
+ "data_classification": "internal",
434
+ "materiality_flags": [
435
+ "security-critical"
436
+ ],
437
+ "authorized_actions": [
438
+ "read",
439
+ "analyze",
440
+ "recommend",
441
+ "challenge",
442
+ "escalate"
443
+ ],
444
+ "do_not_do_list": [
445
+ "Do not execute, deploy, or mutate any system",
446
+ "Do not request, store, or echo credentials, tokens, or secrets",
447
+ "Do not record an approval on behalf of a human"
448
+ ],
449
+ "evidence_refs": [
450
+ {
451
+ "ref": "repo:docs/design/v04.md#section-1",
452
+ "label": "repo-evidence"
453
+ }
454
+ ],
455
+ "missing_evidence": [],
456
+ "budget": {
457
+ "currency": "USD",
458
+ "limit_tool_calls": 40,
459
+ "spent_tool_calls": 14,
460
+ "limit_tokens": 400000,
461
+ "spent_tokens": 70000,
462
+ "limit_cost_minor": 2000,
463
+ "spent_cost_minor": 280
464
+ },
465
+ "deadline": "2026-10-08T17:00:00Z",
466
+ "approval_state": "not-required",
467
+ "expected_output_schema": "agentic-review-verdict/1.0.0",
468
+ "status": "escalated",
469
+ "stop_reasons": [],
470
+ "synthetic": true,
471
+ "escalation": {
472
+ "reason": "The decision owner records the decision against the attached request.",
473
+ "route_hint": "Decision owner records the decision against the attached request."
474
+ }
475
+ },
476
+ {
477
+ "schema_version": "1.0.0",
478
+ "message_type": "challenge",
479
+ "task_id": "v04-m8",
480
+ "correlation_id": "v04-corr",
481
+ "parent_task_id": "v04-m5",
482
+ "hop_count": 5,
483
+ "max_hops": 8,
484
+ "sent_at": "2026-10-01T09:04:00Z",
485
+ "source": {
486
+ "kind": "agent",
487
+ "id": "agentic-security-review-agent"
488
+ },
489
+ "destination": {
490
+ "kind": "agent",
491
+ "id": "agentic-system-architecture-review-agent"
492
+ },
493
+ "objective": "Challenge findings for the v04 proposal.",
494
+ "input_schema_version": "1.0.0",
495
+ "subject_risk_tier": "R3",
496
+ "data_classification": "internal",
497
+ "materiality_flags": [
498
+ "security-critical"
499
+ ],
500
+ "authorized_actions": [
501
+ "read",
502
+ "analyze",
503
+ "recommend",
504
+ "challenge",
505
+ "escalate"
506
+ ],
507
+ "do_not_do_list": [
508
+ "Do not execute, deploy, or mutate any system",
509
+ "Do not request, store, or echo credentials, tokens, or secrets",
510
+ "Do not record an approval on behalf of a human"
511
+ ],
512
+ "evidence_refs": [
513
+ {
514
+ "ref": "repo:docs/design/v04.md#section-1",
515
+ "label": "repo-evidence"
516
+ }
517
+ ],
518
+ "missing_evidence": [],
519
+ "budget": {
520
+ "currency": "USD",
521
+ "limit_tool_calls": 40,
522
+ "spent_tool_calls": 18,
523
+ "limit_tokens": 400000,
524
+ "spent_tokens": 90000,
525
+ "limit_cost_minor": 2000,
526
+ "spent_cost_minor": 360
527
+ },
528
+ "deadline": "2026-10-08T17:00:00Z",
529
+ "approval_state": "not-required",
530
+ "expected_output_schema": "agentic-review-verdict/1.0.0",
531
+ "status": "completed",
532
+ "stop_reasons": [],
533
+ "synthetic": true,
534
+ "challenge": {
535
+ "proposal_task_id": "v04-m6",
536
+ "round": 2,
537
+ "hard_gate": true,
538
+ "outcome": "withdrawn",
539
+ "finding": "Withdrawn after the decision: the revision exchanges tokens per hop."
540
+ }
541
+ }
542
+ ],
543
+ "description": "Sole violation of DR-CHALLENGE-PRECEDES: withdrawal descends from the record (derived from v04).",
544
+ "expected_violations": [
545
+ "DR-CHALLENGE-PRECEDES"
546
+ ]
547
+ }