@trac3er/oh-my-god 2.2.4 → 2.2.5

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 (560) hide show
  1. package/.claude-plugin/marketplace.json +3 -3
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/.claude-plugin/scripts/install.sh +1 -1
  4. package/.gemini/settings.json +2 -2
  5. package/.kimi/mcp.json +2 -2
  6. package/CHANGELOG.md +1 -1
  7. package/CLI-ADAPTER-MAP.md +3 -3
  8. package/INSTALL-VERIFICATION-INDEX.md +19 -324
  9. package/OMG-setup.sh +29 -31
  10. package/OMG_COMPAT_CONTRACT.md +19 -1
  11. package/QUICK-REFERENCE.md +27 -211
  12. package/commands/OMG:validate.md +1 -1
  13. package/dist/enterprise/attestations/bundle/.agents/skills/omg/AGENTS.fragment.md.minisig +3 -3
  14. package/dist/enterprise/attestations/bundle/.agents/skills/omg/AGENTS.fragment.md.statement.json +5 -5
  15. package/dist/enterprise/attestations/bundle/.agents/skills/omg/algorithms/SKILL.md.minisig +3 -3
  16. package/dist/enterprise/attestations/bundle/.agents/skills/omg/algorithms/SKILL.md.statement.json +5 -5
  17. package/dist/enterprise/attestations/bundle/.agents/skills/omg/algorithms/openai.yaml.minisig +3 -3
  18. package/dist/enterprise/attestations/bundle/.agents/skills/omg/algorithms/openai.yaml.statement.json +5 -5
  19. package/dist/enterprise/attestations/bundle/.agents/skills/omg/api-twin/SKILL.md.minisig +3 -3
  20. package/dist/enterprise/attestations/bundle/.agents/skills/omg/api-twin/SKILL.md.statement.json +5 -5
  21. package/dist/enterprise/attestations/bundle/.agents/skills/omg/api-twin/openai.yaml.minisig +3 -3
  22. package/dist/enterprise/attestations/bundle/.agents/skills/omg/api-twin/openai.yaml.statement.json +5 -5
  23. package/dist/enterprise/attestations/bundle/.agents/skills/omg/ast-pack/SKILL.md.minisig +3 -3
  24. package/dist/enterprise/attestations/bundle/.agents/skills/omg/ast-pack/SKILL.md.statement.json +5 -5
  25. package/dist/enterprise/attestations/bundle/.agents/skills/omg/ast-pack/openai.yaml.minisig +3 -3
  26. package/dist/enterprise/attestations/bundle/.agents/skills/omg/ast-pack/openai.yaml.statement.json +5 -5
  27. package/dist/enterprise/attestations/bundle/.agents/skills/omg/claim-judge/SKILL.md.minisig +3 -3
  28. package/dist/enterprise/attestations/bundle/.agents/skills/omg/claim-judge/SKILL.md.statement.json +5 -5
  29. package/dist/enterprise/attestations/bundle/.agents/skills/omg/claim-judge/openai.yaml.minisig +3 -3
  30. package/dist/enterprise/attestations/bundle/.agents/skills/omg/claim-judge/openai.yaml.statement.json +5 -5
  31. package/dist/enterprise/attestations/bundle/.agents/skills/omg/codex-mcp.toml.minisig +3 -3
  32. package/dist/enterprise/attestations/bundle/.agents/skills/omg/codex-mcp.toml.statement.json +5 -5
  33. package/dist/enterprise/attestations/bundle/.agents/skills/omg/codex-rules.md.minisig +3 -3
  34. package/dist/enterprise/attestations/bundle/.agents/skills/omg/codex-rules.md.statement.json +5 -5
  35. package/dist/enterprise/attestations/bundle/.agents/skills/omg/control-plane/SKILL.md.minisig +3 -3
  36. package/dist/enterprise/attestations/bundle/.agents/skills/omg/control-plane/SKILL.md.statement.json +5 -5
  37. package/dist/enterprise/attestations/bundle/.agents/skills/omg/control-plane/openai.yaml.minisig +3 -3
  38. package/dist/enterprise/attestations/bundle/.agents/skills/omg/control-plane/openai.yaml.statement.json +5 -5
  39. package/dist/enterprise/attestations/bundle/.agents/skills/omg/data-lineage/SKILL.md.minisig +3 -3
  40. package/dist/enterprise/attestations/bundle/.agents/skills/omg/data-lineage/SKILL.md.statement.json +5 -5
  41. package/dist/enterprise/attestations/bundle/.agents/skills/omg/data-lineage/openai.yaml.minisig +3 -3
  42. package/dist/enterprise/attestations/bundle/.agents/skills/omg/data-lineage/openai.yaml.statement.json +5 -5
  43. package/dist/enterprise/attestations/bundle/.agents/skills/omg/delta-classifier/SKILL.md.minisig +3 -3
  44. package/dist/enterprise/attestations/bundle/.agents/skills/omg/delta-classifier/SKILL.md.statement.json +5 -5
  45. package/dist/enterprise/attestations/bundle/.agents/skills/omg/delta-classifier/openai.yaml.minisig +3 -3
  46. package/dist/enterprise/attestations/bundle/.agents/skills/omg/delta-classifier/openai.yaml.statement.json +5 -5
  47. package/dist/enterprise/attestations/bundle/.agents/skills/omg/eval-gate/SKILL.md.minisig +3 -3
  48. package/dist/enterprise/attestations/bundle/.agents/skills/omg/eval-gate/SKILL.md.statement.json +5 -5
  49. package/dist/enterprise/attestations/bundle/.agents/skills/omg/eval-gate/openai.yaml.minisig +3 -3
  50. package/dist/enterprise/attestations/bundle/.agents/skills/omg/eval-gate/openai.yaml.statement.json +5 -5
  51. package/dist/enterprise/attestations/bundle/.agents/skills/omg/hash-edit/SKILL.md.minisig +3 -3
  52. package/dist/enterprise/attestations/bundle/.agents/skills/omg/hash-edit/SKILL.md.statement.json +5 -5
  53. package/dist/enterprise/attestations/bundle/.agents/skills/omg/hash-edit/openai.yaml.minisig +3 -3
  54. package/dist/enterprise/attestations/bundle/.agents/skills/omg/hash-edit/openai.yaml.statement.json +5 -5
  55. package/dist/enterprise/attestations/bundle/.agents/skills/omg/health/SKILL.md.minisig +3 -3
  56. package/dist/enterprise/attestations/bundle/.agents/skills/omg/health/SKILL.md.statement.json +5 -5
  57. package/dist/enterprise/attestations/bundle/.agents/skills/omg/health/openai.yaml.minisig +3 -3
  58. package/dist/enterprise/attestations/bundle/.agents/skills/omg/health/openai.yaml.statement.json +5 -5
  59. package/dist/enterprise/attestations/bundle/.agents/skills/omg/hook-governor/SKILL.md.minisig +3 -3
  60. package/dist/enterprise/attestations/bundle/.agents/skills/omg/hook-governor/SKILL.md.statement.json +5 -5
  61. package/dist/enterprise/attestations/bundle/.agents/skills/omg/hook-governor/openai.yaml.minisig +3 -3
  62. package/dist/enterprise/attestations/bundle/.agents/skills/omg/hook-governor/openai.yaml.statement.json +5 -5
  63. package/dist/enterprise/attestations/bundle/.agents/skills/omg/incident-replay/SKILL.md.minisig +3 -3
  64. package/dist/enterprise/attestations/bundle/.agents/skills/omg/incident-replay/SKILL.md.statement.json +5 -5
  65. package/dist/enterprise/attestations/bundle/.agents/skills/omg/incident-replay/openai.yaml.minisig +3 -3
  66. package/dist/enterprise/attestations/bundle/.agents/skills/omg/incident-replay/openai.yaml.statement.json +5 -5
  67. package/dist/enterprise/attestations/bundle/.agents/skills/omg/lsp-pack/SKILL.md.minisig +3 -3
  68. package/dist/enterprise/attestations/bundle/.agents/skills/omg/lsp-pack/SKILL.md.statement.json +5 -5
  69. package/dist/enterprise/attestations/bundle/.agents/skills/omg/lsp-pack/openai.yaml.minisig +3 -3
  70. package/dist/enterprise/attestations/bundle/.agents/skills/omg/lsp-pack/openai.yaml.statement.json +5 -5
  71. package/dist/enterprise/attestations/bundle/.agents/skills/omg/mcp-fabric/SKILL.md.minisig +3 -3
  72. package/dist/enterprise/attestations/bundle/.agents/skills/omg/mcp-fabric/SKILL.md.statement.json +5 -5
  73. package/dist/enterprise/attestations/bundle/.agents/skills/omg/mcp-fabric/openai.yaml.minisig +3 -3
  74. package/dist/enterprise/attestations/bundle/.agents/skills/omg/mcp-fabric/openai.yaml.statement.json +5 -5
  75. package/dist/enterprise/attestations/bundle/.agents/skills/omg/plan-council/SKILL.md.minisig +3 -3
  76. package/dist/enterprise/attestations/bundle/.agents/skills/omg/plan-council/SKILL.md.statement.json +5 -5
  77. package/dist/enterprise/attestations/bundle/.agents/skills/omg/plan-council/openai.yaml.minisig +3 -3
  78. package/dist/enterprise/attestations/bundle/.agents/skills/omg/plan-council/openai.yaml.statement.json +5 -5
  79. package/dist/enterprise/attestations/bundle/.agents/skills/omg/preflight/SKILL.md.minisig +3 -3
  80. package/dist/enterprise/attestations/bundle/.agents/skills/omg/preflight/SKILL.md.statement.json +5 -5
  81. package/dist/enterprise/attestations/bundle/.agents/skills/omg/preflight/openai.yaml.minisig +3 -3
  82. package/dist/enterprise/attestations/bundle/.agents/skills/omg/preflight/openai.yaml.statement.json +5 -5
  83. package/dist/enterprise/attestations/bundle/.agents/skills/omg/proof-gate/SKILL.md.minisig +3 -3
  84. package/dist/enterprise/attestations/bundle/.agents/skills/omg/proof-gate/SKILL.md.statement.json +5 -5
  85. package/dist/enterprise/attestations/bundle/.agents/skills/omg/proof-gate/openai.yaml.minisig +3 -3
  86. package/dist/enterprise/attestations/bundle/.agents/skills/omg/proof-gate/openai.yaml.statement.json +5 -5
  87. package/dist/enterprise/attestations/bundle/.agents/skills/omg/remote-supervisor/SKILL.md.minisig +3 -3
  88. package/dist/enterprise/attestations/bundle/.agents/skills/omg/remote-supervisor/SKILL.md.statement.json +5 -5
  89. package/dist/enterprise/attestations/bundle/.agents/skills/omg/remote-supervisor/openai.yaml.minisig +3 -3
  90. package/dist/enterprise/attestations/bundle/.agents/skills/omg/remote-supervisor/openai.yaml.statement.json +5 -5
  91. package/dist/enterprise/attestations/bundle/.agents/skills/omg/robotics/SKILL.md.minisig +3 -3
  92. package/dist/enterprise/attestations/bundle/.agents/skills/omg/robotics/SKILL.md.statement.json +5 -5
  93. package/dist/enterprise/attestations/bundle/.agents/skills/omg/robotics/openai.yaml.minisig +3 -3
  94. package/dist/enterprise/attestations/bundle/.agents/skills/omg/robotics/openai.yaml.statement.json +5 -5
  95. package/dist/enterprise/attestations/bundle/.agents/skills/omg/secure-worktree-pipeline/SKILL.md.minisig +3 -3
  96. package/dist/enterprise/attestations/bundle/.agents/skills/omg/secure-worktree-pipeline/SKILL.md.statement.json +5 -5
  97. package/dist/enterprise/attestations/bundle/.agents/skills/omg/secure-worktree-pipeline/openai.yaml.minisig +3 -3
  98. package/dist/enterprise/attestations/bundle/.agents/skills/omg/secure-worktree-pipeline/openai.yaml.statement.json +5 -5
  99. package/dist/enterprise/attestations/bundle/.agents/skills/omg/security-check/SKILL.md.minisig +3 -3
  100. package/dist/enterprise/attestations/bundle/.agents/skills/omg/security-check/SKILL.md.statement.json +5 -5
  101. package/dist/enterprise/attestations/bundle/.agents/skills/omg/security-check/openai.yaml.minisig +3 -3
  102. package/dist/enterprise/attestations/bundle/.agents/skills/omg/security-check/openai.yaml.statement.json +5 -5
  103. package/dist/enterprise/attestations/bundle/.agents/skills/omg/terminal-lane/SKILL.md.minisig +3 -3
  104. package/dist/enterprise/attestations/bundle/.agents/skills/omg/terminal-lane/SKILL.md.statement.json +5 -5
  105. package/dist/enterprise/attestations/bundle/.agents/skills/omg/terminal-lane/openai.yaml.minisig +3 -3
  106. package/dist/enterprise/attestations/bundle/.agents/skills/omg/terminal-lane/openai.yaml.statement.json +5 -5
  107. package/dist/enterprise/attestations/bundle/.agents/skills/omg/test-intent-lock/SKILL.md.minisig +3 -3
  108. package/dist/enterprise/attestations/bundle/.agents/skills/omg/test-intent-lock/SKILL.md.statement.json +5 -5
  109. package/dist/enterprise/attestations/bundle/.agents/skills/omg/test-intent-lock/openai.yaml.minisig +3 -3
  110. package/dist/enterprise/attestations/bundle/.agents/skills/omg/test-intent-lock/openai.yaml.statement.json +5 -5
  111. package/dist/enterprise/attestations/bundle/.agents/skills/omg/tracebank/SKILL.md.minisig +3 -3
  112. package/dist/enterprise/attestations/bundle/.agents/skills/omg/tracebank/SKILL.md.statement.json +5 -5
  113. package/dist/enterprise/attestations/bundle/.agents/skills/omg/tracebank/openai.yaml.minisig +3 -3
  114. package/dist/enterprise/attestations/bundle/.agents/skills/omg/tracebank/openai.yaml.statement.json +5 -5
  115. package/dist/enterprise/attestations/bundle/.agents/skills/omg/vision/SKILL.md.minisig +3 -3
  116. package/dist/enterprise/attestations/bundle/.agents/skills/omg/vision/SKILL.md.statement.json +5 -5
  117. package/dist/enterprise/attestations/bundle/.agents/skills/omg/vision/openai.yaml.minisig +3 -3
  118. package/dist/enterprise/attestations/bundle/.agents/skills/omg/vision/openai.yaml.statement.json +5 -5
  119. package/dist/enterprise/attestations/bundle/.claude-plugin/marketplace.json.minisig +3 -3
  120. package/dist/enterprise/attestations/bundle/.claude-plugin/marketplace.json.statement.json +6 -6
  121. package/dist/enterprise/attestations/bundle/.claude-plugin/mcp.json.minisig +3 -3
  122. package/dist/enterprise/attestations/bundle/.claude-plugin/mcp.json.statement.json +5 -5
  123. package/dist/enterprise/attestations/bundle/.claude-plugin/plugin.json.minisig +3 -3
  124. package/dist/enterprise/attestations/bundle/.claude-plugin/plugin.json.statement.json +6 -6
  125. package/dist/enterprise/attestations/bundle/.gemini/settings.json.minisig +3 -3
  126. package/dist/enterprise/attestations/bundle/.gemini/settings.json.statement.json +6 -6
  127. package/dist/enterprise/attestations/bundle/.kimi/mcp.json.minisig +3 -3
  128. package/dist/enterprise/attestations/bundle/.kimi/mcp.json.statement.json +6 -6
  129. package/dist/enterprise/attestations/bundle/.mcp.json.minisig +3 -3
  130. package/dist/enterprise/attestations/bundle/.mcp.json.statement.json +5 -5
  131. package/dist/enterprise/attestations/bundle/OMG_COMPAT_CONTRACT.md.minisig +3 -3
  132. package/dist/enterprise/attestations/bundle/OMG_COMPAT_CONTRACT.md.statement.json +6 -6
  133. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-code-review.md.minisig +4 -0
  134. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-code-review.md.statement.json +35 -0
  135. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-deep-plan.md.minisig +4 -0
  136. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-deep-plan.md.statement.json +35 -0
  137. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-handoff.md.minisig +4 -0
  138. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-handoff.md.statement.json +35 -0
  139. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-learn.md.minisig +4 -0
  140. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-learn.md.statement.json +35 -0
  141. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-maintainer.md.minisig +4 -0
  142. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-maintainer.md.statement.json +35 -0
  143. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-ralph-start.md.minisig +4 -0
  144. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-ralph-start.md.statement.json +35 -0
  145. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-ralph-stop.md.minisig +4 -0
  146. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-ralph-stop.md.statement.json +35 -0
  147. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-security-review.md.minisig +4 -0
  148. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-security-review.md.statement.json +35 -0
  149. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-sequential-thinking.md.minisig +4 -0
  150. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-sequential-thinking.md.statement.json +35 -0
  151. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-ship.md.minisig +4 -0
  152. package/dist/enterprise/attestations/bundle/plugins/advanced/commands/OMG-ship.md.statement.json +35 -0
  153. package/dist/enterprise/attestations/bundle/plugins/advanced/plugin.json.minisig +3 -3
  154. package/dist/enterprise/attestations/bundle/plugins/advanced/plugin.json.statement.json +6 -6
  155. package/dist/enterprise/attestations/bundle/registry/bundles/algorithms.yaml.minisig +3 -3
  156. package/dist/enterprise/attestations/bundle/registry/bundles/algorithms.yaml.statement.json +6 -6
  157. package/dist/enterprise/attestations/bundle/registry/bundles/api-twin.yaml.minisig +3 -3
  158. package/dist/enterprise/attestations/bundle/registry/bundles/api-twin.yaml.statement.json +6 -6
  159. package/dist/enterprise/attestations/bundle/registry/bundles/ast-pack.yaml.minisig +3 -3
  160. package/dist/enterprise/attestations/bundle/registry/bundles/ast-pack.yaml.statement.json +6 -6
  161. package/dist/enterprise/attestations/bundle/registry/bundles/claim-judge.yaml.minisig +3 -3
  162. package/dist/enterprise/attestations/bundle/registry/bundles/claim-judge.yaml.statement.json +6 -6
  163. package/dist/enterprise/attestations/bundle/registry/bundles/control-plane.yaml.minisig +3 -3
  164. package/dist/enterprise/attestations/bundle/registry/bundles/control-plane.yaml.statement.json +6 -6
  165. package/dist/enterprise/attestations/bundle/registry/bundles/data-lineage.yaml.minisig +3 -3
  166. package/dist/enterprise/attestations/bundle/registry/bundles/data-lineage.yaml.statement.json +6 -6
  167. package/dist/enterprise/attestations/bundle/registry/bundles/delta-classifier.yaml.minisig +3 -3
  168. package/dist/enterprise/attestations/bundle/registry/bundles/delta-classifier.yaml.statement.json +6 -6
  169. package/dist/enterprise/attestations/bundle/registry/bundles/eval-gate.yaml.minisig +3 -3
  170. package/dist/enterprise/attestations/bundle/registry/bundles/eval-gate.yaml.statement.json +6 -6
  171. package/dist/enterprise/attestations/bundle/registry/bundles/hash-edit.yaml.minisig +3 -3
  172. package/dist/enterprise/attestations/bundle/registry/bundles/hash-edit.yaml.statement.json +6 -6
  173. package/dist/enterprise/attestations/bundle/registry/bundles/health.yaml.minisig +3 -3
  174. package/dist/enterprise/attestations/bundle/registry/bundles/health.yaml.statement.json +6 -6
  175. package/dist/enterprise/attestations/bundle/registry/bundles/hook-governor.yaml.minisig +3 -3
  176. package/dist/enterprise/attestations/bundle/registry/bundles/hook-governor.yaml.statement.json +6 -6
  177. package/dist/enterprise/attestations/bundle/registry/bundles/incident-replay.yaml.minisig +3 -3
  178. package/dist/enterprise/attestations/bundle/registry/bundles/incident-replay.yaml.statement.json +6 -6
  179. package/dist/enterprise/attestations/bundle/registry/bundles/lsp-pack.yaml.minisig +3 -3
  180. package/dist/enterprise/attestations/bundle/registry/bundles/lsp-pack.yaml.statement.json +6 -6
  181. package/dist/enterprise/attestations/bundle/registry/bundles/mcp-fabric.yaml.minisig +3 -3
  182. package/dist/enterprise/attestations/bundle/registry/bundles/mcp-fabric.yaml.statement.json +6 -6
  183. package/dist/enterprise/attestations/bundle/registry/bundles/plan-council.yaml.minisig +3 -3
  184. package/dist/enterprise/attestations/bundle/registry/bundles/plan-council.yaml.statement.json +6 -6
  185. package/dist/enterprise/attestations/bundle/registry/bundles/preflight.yaml.minisig +3 -3
  186. package/dist/enterprise/attestations/bundle/registry/bundles/preflight.yaml.statement.json +6 -6
  187. package/dist/enterprise/attestations/bundle/registry/bundles/proof-gate.yaml.minisig +3 -3
  188. package/dist/enterprise/attestations/bundle/registry/bundles/proof-gate.yaml.statement.json +6 -6
  189. package/dist/enterprise/attestations/bundle/registry/bundles/remote-supervisor.yaml.minisig +3 -3
  190. package/dist/enterprise/attestations/bundle/registry/bundles/remote-supervisor.yaml.statement.json +6 -6
  191. package/dist/enterprise/attestations/bundle/registry/bundles/robotics.yaml.minisig +3 -3
  192. package/dist/enterprise/attestations/bundle/registry/bundles/robotics.yaml.statement.json +6 -6
  193. package/dist/enterprise/attestations/bundle/registry/bundles/secure-worktree-pipeline.yaml.minisig +3 -3
  194. package/dist/enterprise/attestations/bundle/registry/bundles/secure-worktree-pipeline.yaml.statement.json +6 -6
  195. package/dist/enterprise/attestations/bundle/registry/bundles/security-check.yaml.minisig +3 -3
  196. package/dist/enterprise/attestations/bundle/registry/bundles/security-check.yaml.statement.json +6 -6
  197. package/dist/enterprise/attestations/bundle/registry/bundles/terminal-lane.yaml.minisig +3 -3
  198. package/dist/enterprise/attestations/bundle/registry/bundles/terminal-lane.yaml.statement.json +6 -6
  199. package/dist/enterprise/attestations/bundle/registry/bundles/test-intent-lock.yaml.minisig +3 -3
  200. package/dist/enterprise/attestations/bundle/registry/bundles/test-intent-lock.yaml.statement.json +6 -6
  201. package/dist/enterprise/attestations/bundle/registry/bundles/tracebank.yaml.minisig +3 -3
  202. package/dist/enterprise/attestations/bundle/registry/bundles/tracebank.yaml.statement.json +6 -6
  203. package/dist/enterprise/attestations/bundle/registry/bundles/vision.yaml.minisig +3 -3
  204. package/dist/enterprise/attestations/bundle/registry/bundles/vision.yaml.statement.json +6 -6
  205. package/dist/enterprise/attestations/bundle/registry/omg-capability.schema.json.minisig +3 -3
  206. package/dist/enterprise/attestations/bundle/registry/omg-capability.schema.json.statement.json +6 -6
  207. package/dist/enterprise/attestations/bundle/settings.json.minisig +3 -3
  208. package/dist/enterprise/attestations/bundle/settings.json.statement.json +6 -6
  209. package/dist/enterprise/bundle/.claude-plugin/marketplace.json +3 -3
  210. package/dist/enterprise/bundle/.claude-plugin/plugin.json +1 -1
  211. package/dist/enterprise/bundle/.gemini/settings.json +2 -2
  212. package/dist/enterprise/bundle/.kimi/mcp.json +2 -2
  213. package/dist/enterprise/bundle/OMG_COMPAT_CONTRACT.md +19 -1
  214. package/dist/enterprise/bundle/plugins/advanced/plugin.json +1 -1
  215. package/dist/enterprise/bundle/registry/bundles/algorithms.yaml +1 -1
  216. package/dist/enterprise/bundle/registry/bundles/api-twin.yaml +1 -1
  217. package/dist/enterprise/bundle/registry/bundles/ast-pack.yaml +1 -1
  218. package/dist/enterprise/bundle/registry/bundles/claim-judge.yaml +1 -1
  219. package/dist/enterprise/bundle/registry/bundles/control-plane.yaml +1 -1
  220. package/dist/enterprise/bundle/registry/bundles/data-lineage.yaml +1 -1
  221. package/dist/enterprise/bundle/registry/bundles/delta-classifier.yaml +1 -1
  222. package/dist/enterprise/bundle/registry/bundles/eval-gate.yaml +1 -1
  223. package/dist/enterprise/bundle/registry/bundles/hash-edit.yaml +1 -1
  224. package/dist/enterprise/bundle/registry/bundles/health.yaml +1 -1
  225. package/dist/enterprise/bundle/registry/bundles/hook-governor.yaml +1 -1
  226. package/dist/enterprise/bundle/registry/bundles/incident-replay.yaml +1 -1
  227. package/dist/enterprise/bundle/registry/bundles/lsp-pack.yaml +1 -1
  228. package/dist/enterprise/bundle/registry/bundles/mcp-fabric.yaml +1 -1
  229. package/dist/enterprise/bundle/registry/bundles/plan-council.yaml +1 -1
  230. package/dist/enterprise/bundle/registry/bundles/preflight.yaml +1 -1
  231. package/dist/enterprise/bundle/registry/bundles/proof-gate.yaml +1 -1
  232. package/dist/enterprise/bundle/registry/bundles/remote-supervisor.yaml +1 -1
  233. package/dist/enterprise/bundle/registry/bundles/robotics.yaml +1 -1
  234. package/dist/enterprise/bundle/registry/bundles/secure-worktree-pipeline.yaml +1 -1
  235. package/dist/enterprise/bundle/registry/bundles/security-check.yaml +1 -1
  236. package/dist/enterprise/bundle/registry/bundles/terminal-lane.yaml +1 -1
  237. package/dist/enterprise/bundle/registry/bundles/test-intent-lock.yaml +1 -1
  238. package/dist/enterprise/bundle/registry/bundles/tracebank.yaml +1 -1
  239. package/dist/enterprise/bundle/registry/bundles/vision.yaml +1 -1
  240. package/dist/enterprise/bundle/registry/omg-capability.schema.json +1 -1
  241. package/dist/enterprise/bundle/settings.json +65 -8
  242. package/dist/enterprise/manifest.json +173 -173
  243. package/dist/oh_my_god-2.2.5-py3-none-any.whl +0 -0
  244. package/dist/public/attestations/bundle/.agents/skills/omg/AGENTS.fragment.md.minisig +3 -3
  245. package/dist/public/attestations/bundle/.agents/skills/omg/AGENTS.fragment.md.statement.json +5 -5
  246. package/dist/public/attestations/bundle/.agents/skills/omg/algorithms/SKILL.md.minisig +3 -3
  247. package/dist/public/attestations/bundle/.agents/skills/omg/algorithms/SKILL.md.statement.json +5 -5
  248. package/dist/public/attestations/bundle/.agents/skills/omg/algorithms/openai.yaml.minisig +3 -3
  249. package/dist/public/attestations/bundle/.agents/skills/omg/algorithms/openai.yaml.statement.json +5 -5
  250. package/dist/public/attestations/bundle/.agents/skills/omg/api-twin/SKILL.md.minisig +3 -3
  251. package/dist/public/attestations/bundle/.agents/skills/omg/api-twin/SKILL.md.statement.json +5 -5
  252. package/dist/public/attestations/bundle/.agents/skills/omg/api-twin/openai.yaml.minisig +3 -3
  253. package/dist/public/attestations/bundle/.agents/skills/omg/api-twin/openai.yaml.statement.json +5 -5
  254. package/dist/public/attestations/bundle/.agents/skills/omg/ast-pack/SKILL.md.minisig +3 -3
  255. package/dist/public/attestations/bundle/.agents/skills/omg/ast-pack/SKILL.md.statement.json +5 -5
  256. package/dist/public/attestations/bundle/.agents/skills/omg/ast-pack/openai.yaml.minisig +3 -3
  257. package/dist/public/attestations/bundle/.agents/skills/omg/ast-pack/openai.yaml.statement.json +5 -5
  258. package/dist/public/attestations/bundle/.agents/skills/omg/claim-judge/SKILL.md.minisig +3 -3
  259. package/dist/public/attestations/bundle/.agents/skills/omg/claim-judge/SKILL.md.statement.json +5 -5
  260. package/dist/public/attestations/bundle/.agents/skills/omg/claim-judge/openai.yaml.minisig +3 -3
  261. package/dist/public/attestations/bundle/.agents/skills/omg/claim-judge/openai.yaml.statement.json +5 -5
  262. package/dist/public/attestations/bundle/.agents/skills/omg/codex-mcp.toml.minisig +3 -3
  263. package/dist/public/attestations/bundle/.agents/skills/omg/codex-mcp.toml.statement.json +5 -5
  264. package/dist/public/attestations/bundle/.agents/skills/omg/codex-rules.md.minisig +3 -3
  265. package/dist/public/attestations/bundle/.agents/skills/omg/codex-rules.md.statement.json +5 -5
  266. package/dist/public/attestations/bundle/.agents/skills/omg/control-plane/SKILL.md.minisig +3 -3
  267. package/dist/public/attestations/bundle/.agents/skills/omg/control-plane/SKILL.md.statement.json +5 -5
  268. package/dist/public/attestations/bundle/.agents/skills/omg/control-plane/openai.yaml.minisig +3 -3
  269. package/dist/public/attestations/bundle/.agents/skills/omg/control-plane/openai.yaml.statement.json +5 -5
  270. package/dist/public/attestations/bundle/.agents/skills/omg/data-lineage/SKILL.md.minisig +3 -3
  271. package/dist/public/attestations/bundle/.agents/skills/omg/data-lineage/SKILL.md.statement.json +5 -5
  272. package/dist/public/attestations/bundle/.agents/skills/omg/data-lineage/openai.yaml.minisig +3 -3
  273. package/dist/public/attestations/bundle/.agents/skills/omg/data-lineage/openai.yaml.statement.json +5 -5
  274. package/dist/public/attestations/bundle/.agents/skills/omg/delta-classifier/SKILL.md.minisig +3 -3
  275. package/dist/public/attestations/bundle/.agents/skills/omg/delta-classifier/SKILL.md.statement.json +5 -5
  276. package/dist/public/attestations/bundle/.agents/skills/omg/delta-classifier/openai.yaml.minisig +3 -3
  277. package/dist/public/attestations/bundle/.agents/skills/omg/delta-classifier/openai.yaml.statement.json +5 -5
  278. package/dist/public/attestations/bundle/.agents/skills/omg/eval-gate/SKILL.md.minisig +3 -3
  279. package/dist/public/attestations/bundle/.agents/skills/omg/eval-gate/SKILL.md.statement.json +5 -5
  280. package/dist/public/attestations/bundle/.agents/skills/omg/eval-gate/openai.yaml.minisig +3 -3
  281. package/dist/public/attestations/bundle/.agents/skills/omg/eval-gate/openai.yaml.statement.json +5 -5
  282. package/dist/public/attestations/bundle/.agents/skills/omg/hash-edit/SKILL.md.minisig +3 -3
  283. package/dist/public/attestations/bundle/.agents/skills/omg/hash-edit/SKILL.md.statement.json +5 -5
  284. package/dist/public/attestations/bundle/.agents/skills/omg/hash-edit/openai.yaml.minisig +3 -3
  285. package/dist/public/attestations/bundle/.agents/skills/omg/hash-edit/openai.yaml.statement.json +5 -5
  286. package/dist/public/attestations/bundle/.agents/skills/omg/health/SKILL.md.minisig +3 -3
  287. package/dist/public/attestations/bundle/.agents/skills/omg/health/SKILL.md.statement.json +5 -5
  288. package/dist/public/attestations/bundle/.agents/skills/omg/health/openai.yaml.minisig +3 -3
  289. package/dist/public/attestations/bundle/.agents/skills/omg/health/openai.yaml.statement.json +5 -5
  290. package/dist/public/attestations/bundle/.agents/skills/omg/hook-governor/SKILL.md.minisig +3 -3
  291. package/dist/public/attestations/bundle/.agents/skills/omg/hook-governor/SKILL.md.statement.json +5 -5
  292. package/dist/public/attestations/bundle/.agents/skills/omg/hook-governor/openai.yaml.minisig +3 -3
  293. package/dist/public/attestations/bundle/.agents/skills/omg/hook-governor/openai.yaml.statement.json +5 -5
  294. package/dist/public/attestations/bundle/.agents/skills/omg/incident-replay/SKILL.md.minisig +3 -3
  295. package/dist/public/attestations/bundle/.agents/skills/omg/incident-replay/SKILL.md.statement.json +5 -5
  296. package/dist/public/attestations/bundle/.agents/skills/omg/incident-replay/openai.yaml.minisig +3 -3
  297. package/dist/public/attestations/bundle/.agents/skills/omg/incident-replay/openai.yaml.statement.json +5 -5
  298. package/dist/public/attestations/bundle/.agents/skills/omg/lsp-pack/SKILL.md.minisig +3 -3
  299. package/dist/public/attestations/bundle/.agents/skills/omg/lsp-pack/SKILL.md.statement.json +5 -5
  300. package/dist/public/attestations/bundle/.agents/skills/omg/lsp-pack/openai.yaml.minisig +3 -3
  301. package/dist/public/attestations/bundle/.agents/skills/omg/lsp-pack/openai.yaml.statement.json +5 -5
  302. package/dist/public/attestations/bundle/.agents/skills/omg/mcp-fabric/SKILL.md.minisig +3 -3
  303. package/dist/public/attestations/bundle/.agents/skills/omg/mcp-fabric/SKILL.md.statement.json +5 -5
  304. package/dist/public/attestations/bundle/.agents/skills/omg/mcp-fabric/openai.yaml.minisig +3 -3
  305. package/dist/public/attestations/bundle/.agents/skills/omg/mcp-fabric/openai.yaml.statement.json +5 -5
  306. package/dist/public/attestations/bundle/.agents/skills/omg/plan-council/SKILL.md.minisig +3 -3
  307. package/dist/public/attestations/bundle/.agents/skills/omg/plan-council/SKILL.md.statement.json +5 -5
  308. package/dist/public/attestations/bundle/.agents/skills/omg/plan-council/openai.yaml.minisig +3 -3
  309. package/dist/public/attestations/bundle/.agents/skills/omg/plan-council/openai.yaml.statement.json +5 -5
  310. package/dist/public/attestations/bundle/.agents/skills/omg/preflight/SKILL.md.minisig +3 -3
  311. package/dist/public/attestations/bundle/.agents/skills/omg/preflight/SKILL.md.statement.json +5 -5
  312. package/dist/public/attestations/bundle/.agents/skills/omg/preflight/openai.yaml.minisig +3 -3
  313. package/dist/public/attestations/bundle/.agents/skills/omg/preflight/openai.yaml.statement.json +5 -5
  314. package/dist/public/attestations/bundle/.agents/skills/omg/proof-gate/SKILL.md.minisig +3 -3
  315. package/dist/public/attestations/bundle/.agents/skills/omg/proof-gate/SKILL.md.statement.json +5 -5
  316. package/dist/public/attestations/bundle/.agents/skills/omg/proof-gate/openai.yaml.minisig +3 -3
  317. package/dist/public/attestations/bundle/.agents/skills/omg/proof-gate/openai.yaml.statement.json +5 -5
  318. package/dist/public/attestations/bundle/.agents/skills/omg/remote-supervisor/SKILL.md.minisig +3 -3
  319. package/dist/public/attestations/bundle/.agents/skills/omg/remote-supervisor/SKILL.md.statement.json +5 -5
  320. package/dist/public/attestations/bundle/.agents/skills/omg/remote-supervisor/openai.yaml.minisig +3 -3
  321. package/dist/public/attestations/bundle/.agents/skills/omg/remote-supervisor/openai.yaml.statement.json +5 -5
  322. package/dist/public/attestations/bundle/.agents/skills/omg/robotics/SKILL.md.minisig +3 -3
  323. package/dist/public/attestations/bundle/.agents/skills/omg/robotics/SKILL.md.statement.json +5 -5
  324. package/dist/public/attestations/bundle/.agents/skills/omg/robotics/openai.yaml.minisig +3 -3
  325. package/dist/public/attestations/bundle/.agents/skills/omg/robotics/openai.yaml.statement.json +5 -5
  326. package/dist/public/attestations/bundle/.agents/skills/omg/secure-worktree-pipeline/SKILL.md.minisig +3 -3
  327. package/dist/public/attestations/bundle/.agents/skills/omg/secure-worktree-pipeline/SKILL.md.statement.json +5 -5
  328. package/dist/public/attestations/bundle/.agents/skills/omg/secure-worktree-pipeline/openai.yaml.minisig +3 -3
  329. package/dist/public/attestations/bundle/.agents/skills/omg/secure-worktree-pipeline/openai.yaml.statement.json +5 -5
  330. package/dist/public/attestations/bundle/.agents/skills/omg/security-check/SKILL.md.minisig +3 -3
  331. package/dist/public/attestations/bundle/.agents/skills/omg/security-check/SKILL.md.statement.json +5 -5
  332. package/dist/public/attestations/bundle/.agents/skills/omg/security-check/openai.yaml.minisig +3 -3
  333. package/dist/public/attestations/bundle/.agents/skills/omg/security-check/openai.yaml.statement.json +5 -5
  334. package/dist/public/attestations/bundle/.agents/skills/omg/terminal-lane/SKILL.md.minisig +3 -3
  335. package/dist/public/attestations/bundle/.agents/skills/omg/terminal-lane/SKILL.md.statement.json +5 -5
  336. package/dist/public/attestations/bundle/.agents/skills/omg/terminal-lane/openai.yaml.minisig +3 -3
  337. package/dist/public/attestations/bundle/.agents/skills/omg/terminal-lane/openai.yaml.statement.json +5 -5
  338. package/dist/public/attestations/bundle/.agents/skills/omg/test-intent-lock/SKILL.md.minisig +3 -3
  339. package/dist/public/attestations/bundle/.agents/skills/omg/test-intent-lock/SKILL.md.statement.json +5 -5
  340. package/dist/public/attestations/bundle/.agents/skills/omg/test-intent-lock/openai.yaml.minisig +3 -3
  341. package/dist/public/attestations/bundle/.agents/skills/omg/test-intent-lock/openai.yaml.statement.json +5 -5
  342. package/dist/public/attestations/bundle/.agents/skills/omg/tracebank/SKILL.md.minisig +3 -3
  343. package/dist/public/attestations/bundle/.agents/skills/omg/tracebank/SKILL.md.statement.json +5 -5
  344. package/dist/public/attestations/bundle/.agents/skills/omg/tracebank/openai.yaml.minisig +3 -3
  345. package/dist/public/attestations/bundle/.agents/skills/omg/tracebank/openai.yaml.statement.json +5 -5
  346. package/dist/public/attestations/bundle/.agents/skills/omg/vision/SKILL.md.minisig +3 -3
  347. package/dist/public/attestations/bundle/.agents/skills/omg/vision/SKILL.md.statement.json +5 -5
  348. package/dist/public/attestations/bundle/.agents/skills/omg/vision/openai.yaml.minisig +3 -3
  349. package/dist/public/attestations/bundle/.agents/skills/omg/vision/openai.yaml.statement.json +5 -5
  350. package/dist/public/attestations/bundle/.claude-plugin/marketplace.json.minisig +3 -3
  351. package/dist/public/attestations/bundle/.claude-plugin/marketplace.json.statement.json +6 -6
  352. package/dist/public/attestations/bundle/.claude-plugin/mcp.json.minisig +3 -3
  353. package/dist/public/attestations/bundle/.claude-plugin/mcp.json.statement.json +5 -5
  354. package/dist/public/attestations/bundle/.claude-plugin/plugin.json.minisig +3 -3
  355. package/dist/public/attestations/bundle/.claude-plugin/plugin.json.statement.json +6 -6
  356. package/dist/public/attestations/bundle/.gemini/settings.json.minisig +3 -3
  357. package/dist/public/attestations/bundle/.gemini/settings.json.statement.json +6 -6
  358. package/dist/public/attestations/bundle/.kimi/mcp.json.minisig +3 -3
  359. package/dist/public/attestations/bundle/.kimi/mcp.json.statement.json +6 -6
  360. package/dist/public/attestations/bundle/.mcp.json.minisig +3 -3
  361. package/dist/public/attestations/bundle/.mcp.json.statement.json +5 -5
  362. package/dist/public/attestations/bundle/OMG_COMPAT_CONTRACT.md.minisig +3 -3
  363. package/dist/public/attestations/bundle/OMG_COMPAT_CONTRACT.md.statement.json +6 -6
  364. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-code-review.md.minisig +4 -0
  365. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-code-review.md.statement.json +35 -0
  366. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-deep-plan.md.minisig +4 -0
  367. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-deep-plan.md.statement.json +35 -0
  368. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-handoff.md.minisig +4 -0
  369. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-handoff.md.statement.json +35 -0
  370. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-learn.md.minisig +4 -0
  371. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-learn.md.statement.json +35 -0
  372. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-maintainer.md.minisig +4 -0
  373. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-maintainer.md.statement.json +35 -0
  374. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-ralph-start.md.minisig +4 -0
  375. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-ralph-start.md.statement.json +35 -0
  376. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-ralph-stop.md.minisig +4 -0
  377. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-ralph-stop.md.statement.json +35 -0
  378. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-security-review.md.minisig +4 -0
  379. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-security-review.md.statement.json +35 -0
  380. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-sequential-thinking.md.minisig +4 -0
  381. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-sequential-thinking.md.statement.json +35 -0
  382. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-ship.md.minisig +4 -0
  383. package/dist/public/attestations/bundle/plugins/advanced/commands/OMG-ship.md.statement.json +35 -0
  384. package/dist/public/attestations/bundle/plugins/advanced/plugin.json.minisig +3 -3
  385. package/dist/public/attestations/bundle/plugins/advanced/plugin.json.statement.json +6 -6
  386. package/dist/public/attestations/bundle/registry/bundles/algorithms.yaml.minisig +3 -3
  387. package/dist/public/attestations/bundle/registry/bundles/algorithms.yaml.statement.json +6 -6
  388. package/dist/public/attestations/bundle/registry/bundles/api-twin.yaml.minisig +3 -3
  389. package/dist/public/attestations/bundle/registry/bundles/api-twin.yaml.statement.json +6 -6
  390. package/dist/public/attestations/bundle/registry/bundles/ast-pack.yaml.minisig +3 -3
  391. package/dist/public/attestations/bundle/registry/bundles/ast-pack.yaml.statement.json +6 -6
  392. package/dist/public/attestations/bundle/registry/bundles/claim-judge.yaml.minisig +3 -3
  393. package/dist/public/attestations/bundle/registry/bundles/claim-judge.yaml.statement.json +6 -6
  394. package/dist/public/attestations/bundle/registry/bundles/control-plane.yaml.minisig +3 -3
  395. package/dist/public/attestations/bundle/registry/bundles/control-plane.yaml.statement.json +6 -6
  396. package/dist/public/attestations/bundle/registry/bundles/data-lineage.yaml.minisig +3 -3
  397. package/dist/public/attestations/bundle/registry/bundles/data-lineage.yaml.statement.json +6 -6
  398. package/dist/public/attestations/bundle/registry/bundles/delta-classifier.yaml.minisig +3 -3
  399. package/dist/public/attestations/bundle/registry/bundles/delta-classifier.yaml.statement.json +6 -6
  400. package/dist/public/attestations/bundle/registry/bundles/eval-gate.yaml.minisig +3 -3
  401. package/dist/public/attestations/bundle/registry/bundles/eval-gate.yaml.statement.json +6 -6
  402. package/dist/public/attestations/bundle/registry/bundles/hash-edit.yaml.minisig +3 -3
  403. package/dist/public/attestations/bundle/registry/bundles/hash-edit.yaml.statement.json +6 -6
  404. package/dist/public/attestations/bundle/registry/bundles/health.yaml.minisig +3 -3
  405. package/dist/public/attestations/bundle/registry/bundles/health.yaml.statement.json +6 -6
  406. package/dist/public/attestations/bundle/registry/bundles/hook-governor.yaml.minisig +3 -3
  407. package/dist/public/attestations/bundle/registry/bundles/hook-governor.yaml.statement.json +6 -6
  408. package/dist/public/attestations/bundle/registry/bundles/incident-replay.yaml.minisig +3 -3
  409. package/dist/public/attestations/bundle/registry/bundles/incident-replay.yaml.statement.json +6 -6
  410. package/dist/public/attestations/bundle/registry/bundles/lsp-pack.yaml.minisig +3 -3
  411. package/dist/public/attestations/bundle/registry/bundles/lsp-pack.yaml.statement.json +6 -6
  412. package/dist/public/attestations/bundle/registry/bundles/mcp-fabric.yaml.minisig +3 -3
  413. package/dist/public/attestations/bundle/registry/bundles/mcp-fabric.yaml.statement.json +6 -6
  414. package/dist/public/attestations/bundle/registry/bundles/plan-council.yaml.minisig +3 -3
  415. package/dist/public/attestations/bundle/registry/bundles/plan-council.yaml.statement.json +6 -6
  416. package/dist/public/attestations/bundle/registry/bundles/preflight.yaml.minisig +3 -3
  417. package/dist/public/attestations/bundle/registry/bundles/preflight.yaml.statement.json +6 -6
  418. package/dist/public/attestations/bundle/registry/bundles/proof-gate.yaml.minisig +3 -3
  419. package/dist/public/attestations/bundle/registry/bundles/proof-gate.yaml.statement.json +6 -6
  420. package/dist/public/attestations/bundle/registry/bundles/remote-supervisor.yaml.minisig +3 -3
  421. package/dist/public/attestations/bundle/registry/bundles/remote-supervisor.yaml.statement.json +6 -6
  422. package/dist/public/attestations/bundle/registry/bundles/robotics.yaml.minisig +3 -3
  423. package/dist/public/attestations/bundle/registry/bundles/robotics.yaml.statement.json +6 -6
  424. package/dist/public/attestations/bundle/registry/bundles/secure-worktree-pipeline.yaml.minisig +3 -3
  425. package/dist/public/attestations/bundle/registry/bundles/secure-worktree-pipeline.yaml.statement.json +6 -6
  426. package/dist/public/attestations/bundle/registry/bundles/security-check.yaml.minisig +3 -3
  427. package/dist/public/attestations/bundle/registry/bundles/security-check.yaml.statement.json +6 -6
  428. package/dist/public/attestations/bundle/registry/bundles/terminal-lane.yaml.minisig +3 -3
  429. package/dist/public/attestations/bundle/registry/bundles/terminal-lane.yaml.statement.json +6 -6
  430. package/dist/public/attestations/bundle/registry/bundles/test-intent-lock.yaml.minisig +3 -3
  431. package/dist/public/attestations/bundle/registry/bundles/test-intent-lock.yaml.statement.json +6 -6
  432. package/dist/public/attestations/bundle/registry/bundles/tracebank.yaml.minisig +3 -3
  433. package/dist/public/attestations/bundle/registry/bundles/tracebank.yaml.statement.json +6 -6
  434. package/dist/public/attestations/bundle/registry/bundles/vision.yaml.minisig +3 -3
  435. package/dist/public/attestations/bundle/registry/bundles/vision.yaml.statement.json +6 -6
  436. package/dist/public/attestations/bundle/registry/omg-capability.schema.json.minisig +3 -3
  437. package/dist/public/attestations/bundle/registry/omg-capability.schema.json.statement.json +6 -6
  438. package/dist/public/attestations/bundle/settings.json.minisig +3 -3
  439. package/dist/public/attestations/bundle/settings.json.statement.json +6 -6
  440. package/dist/public/bundle/.claude-plugin/marketplace.json +3 -3
  441. package/dist/public/bundle/.claude-plugin/plugin.json +1 -1
  442. package/dist/public/bundle/.gemini/settings.json +2 -2
  443. package/dist/public/bundle/.kimi/mcp.json +2 -2
  444. package/dist/public/bundle/OMG_COMPAT_CONTRACT.md +19 -1
  445. package/dist/public/bundle/plugins/advanced/plugin.json +1 -1
  446. package/dist/public/bundle/registry/bundles/algorithms.yaml +1 -1
  447. package/dist/public/bundle/registry/bundles/api-twin.yaml +1 -1
  448. package/dist/public/bundle/registry/bundles/ast-pack.yaml +1 -1
  449. package/dist/public/bundle/registry/bundles/claim-judge.yaml +1 -1
  450. package/dist/public/bundle/registry/bundles/control-plane.yaml +1 -1
  451. package/dist/public/bundle/registry/bundles/data-lineage.yaml +1 -1
  452. package/dist/public/bundle/registry/bundles/delta-classifier.yaml +1 -1
  453. package/dist/public/bundle/registry/bundles/eval-gate.yaml +1 -1
  454. package/dist/public/bundle/registry/bundles/hash-edit.yaml +1 -1
  455. package/dist/public/bundle/registry/bundles/health.yaml +1 -1
  456. package/dist/public/bundle/registry/bundles/hook-governor.yaml +1 -1
  457. package/dist/public/bundle/registry/bundles/incident-replay.yaml +1 -1
  458. package/dist/public/bundle/registry/bundles/lsp-pack.yaml +1 -1
  459. package/dist/public/bundle/registry/bundles/mcp-fabric.yaml +1 -1
  460. package/dist/public/bundle/registry/bundles/plan-council.yaml +1 -1
  461. package/dist/public/bundle/registry/bundles/preflight.yaml +1 -1
  462. package/dist/public/bundle/registry/bundles/proof-gate.yaml +1 -1
  463. package/dist/public/bundle/registry/bundles/remote-supervisor.yaml +1 -1
  464. package/dist/public/bundle/registry/bundles/robotics.yaml +1 -1
  465. package/dist/public/bundle/registry/bundles/secure-worktree-pipeline.yaml +1 -1
  466. package/dist/public/bundle/registry/bundles/security-check.yaml +1 -1
  467. package/dist/public/bundle/registry/bundles/terminal-lane.yaml +1 -1
  468. package/dist/public/bundle/registry/bundles/test-intent-lock.yaml +1 -1
  469. package/dist/public/bundle/registry/bundles/tracebank.yaml +1 -1
  470. package/dist/public/bundle/registry/bundles/vision.yaml +1 -1
  471. package/dist/public/bundle/registry/omg-capability.schema.json +1 -1
  472. package/dist/public/bundle/settings.json +65 -8
  473. package/dist/public/manifest.json +173 -173
  474. package/docs/install/github-app-required-checks.md +103 -0
  475. package/hooks/_common.py +40 -17
  476. package/hooks/budget_governor.py +77 -8
  477. package/hooks/setup_wizard.py +26 -98
  478. package/hud/omg-hud.mjs +1 -1
  479. package/package.json +1 -1
  480. package/plugins/advanced/commands/OMG-code-review.md +114 -0
  481. package/plugins/advanced/commands/OMG-deep-plan.md +266 -0
  482. package/plugins/advanced/commands/OMG-handoff.md +115 -0
  483. package/plugins/advanced/commands/OMG-learn.md +110 -0
  484. package/plugins/advanced/commands/OMG-maintainer.md +31 -0
  485. package/plugins/advanced/commands/OMG-ralph-start.md +43 -0
  486. package/plugins/advanced/commands/OMG-ralph-stop.md +23 -0
  487. package/plugins/advanced/commands/OMG-security-review.md +16 -0
  488. package/plugins/advanced/commands/OMG-sequential-thinking.md +20 -0
  489. package/plugins/advanced/commands/OMG-ship.md +46 -0
  490. package/plugins/advanced/plugin.json +1 -1
  491. package/plugins/core/plugin.json +1 -1
  492. package/pyproject.toml +1 -1
  493. package/registry/bundles/algorithms.yaml +1 -1
  494. package/registry/bundles/api-twin.yaml +1 -1
  495. package/registry/bundles/ast-pack.yaml +1 -1
  496. package/registry/bundles/claim-judge.yaml +1 -1
  497. package/registry/bundles/control-plane.yaml +1 -1
  498. package/registry/bundles/data-lineage.yaml +1 -1
  499. package/registry/bundles/delta-classifier.yaml +1 -1
  500. package/registry/bundles/eval-gate.yaml +1 -1
  501. package/registry/bundles/hash-edit.yaml +1 -1
  502. package/registry/bundles/health.yaml +1 -1
  503. package/registry/bundles/hook-governor.yaml +1 -1
  504. package/registry/bundles/incident-replay.yaml +1 -1
  505. package/registry/bundles/lsp-pack.yaml +1 -1
  506. package/registry/bundles/mcp-fabric.yaml +1 -1
  507. package/registry/bundles/plan-council.yaml +1 -1
  508. package/registry/bundles/preflight.yaml +1 -1
  509. package/registry/bundles/proof-gate.yaml +1 -1
  510. package/registry/bundles/remote-supervisor.yaml +1 -1
  511. package/registry/bundles/robotics.yaml +1 -1
  512. package/registry/bundles/secure-worktree-pipeline.yaml +1 -1
  513. package/registry/bundles/security-check.yaml +1 -1
  514. package/registry/bundles/terminal-lane.yaml +1 -1
  515. package/registry/bundles/test-intent-lock.yaml +1 -1
  516. package/registry/bundles/tracebank.yaml +1 -1
  517. package/registry/bundles/vision.yaml +1 -1
  518. package/registry/omg-capability.schema.json +1 -1
  519. package/registry/policy-packs/airgapped.yaml +16 -0
  520. package/registry/policy-packs/fintech.yaml +15 -0
  521. package/registry/policy-packs/locked-prod.yaml +18 -0
  522. package/runtime/adoption.py +6 -3
  523. package/runtime/canonical_taxonomy.py +27 -0
  524. package/runtime/compat.py +215 -1
  525. package/runtime/config_transaction.py +304 -0
  526. package/runtime/contract_compiler.py +3 -1
  527. package/runtime/doc_generator.py +273 -0
  528. package/runtime/evidence_narrator.py +42 -0
  529. package/runtime/github_review_bot.py +88 -4
  530. package/runtime/github_review_formatter.py +24 -6
  531. package/runtime/install_planner.py +497 -0
  532. package/runtime/mcp_config_writers.py +198 -47
  533. package/runtime/omg_compat_contract_snapshot.json +1 -1
  534. package/runtime/omg_mcp_server.py +3 -1
  535. package/runtime/policy_pack_loader.py +143 -0
  536. package/runtime/subscription_tiers.py +258 -0
  537. package/runtime/verdict_schema.py +198 -0
  538. package/scripts/omg.py +230 -0
  539. package/scripts/settings-merge.py +16 -10
  540. package/settings.json +65 -18
  541. /package/dist/enterprise/bundle/plugins/advanced/commands/{OMG:code-review.md → OMG-code-review.md} +0 -0
  542. /package/dist/enterprise/bundle/plugins/advanced/commands/{OMG:deep-plan.md → OMG-deep-plan.md} +0 -0
  543. /package/dist/enterprise/bundle/plugins/advanced/commands/{OMG:handoff.md → OMG-handoff.md} +0 -0
  544. /package/dist/enterprise/bundle/plugins/advanced/commands/{OMG:learn.md → OMG-learn.md} +0 -0
  545. /package/dist/enterprise/bundle/plugins/advanced/commands/{OMG:maintainer.md → OMG-maintainer.md} +0 -0
  546. /package/dist/enterprise/bundle/plugins/advanced/commands/{OMG:ralph-start.md → OMG-ralph-start.md} +0 -0
  547. /package/dist/enterprise/bundle/plugins/advanced/commands/{OMG:ralph-stop.md → OMG-ralph-stop.md} +0 -0
  548. /package/dist/enterprise/bundle/plugins/advanced/commands/{OMG:security-review.md → OMG-security-review.md} +0 -0
  549. /package/dist/enterprise/bundle/plugins/advanced/commands/{OMG:sequential-thinking.md → OMG-sequential-thinking.md} +0 -0
  550. /package/dist/enterprise/bundle/plugins/advanced/commands/{OMG:ship.md → OMG-ship.md} +0 -0
  551. /package/dist/public/bundle/plugins/advanced/commands/{OMG:code-review.md → OMG-code-review.md} +0 -0
  552. /package/dist/public/bundle/plugins/advanced/commands/{OMG:deep-plan.md → OMG-deep-plan.md} +0 -0
  553. /package/dist/public/bundle/plugins/advanced/commands/{OMG:handoff.md → OMG-handoff.md} +0 -0
  554. /package/dist/public/bundle/plugins/advanced/commands/{OMG:learn.md → OMG-learn.md} +0 -0
  555. /package/dist/public/bundle/plugins/advanced/commands/{OMG:maintainer.md → OMG-maintainer.md} +0 -0
  556. /package/dist/public/bundle/plugins/advanced/commands/{OMG:ralph-start.md → OMG-ralph-start.md} +0 -0
  557. /package/dist/public/bundle/plugins/advanced/commands/{OMG:ralph-stop.md → OMG-ralph-stop.md} +0 -0
  558. /package/dist/public/bundle/plugins/advanced/commands/{OMG:security-review.md → OMG-security-review.md} +0 -0
  559. /package/dist/public/bundle/plugins/advanced/commands/{OMG:sequential-thinking.md → OMG-sequential-thinking.md} +0 -0
  560. /package/dist/public/bundle/plugins/advanced/commands/{OMG:ship.md → OMG-ship.md} +0 -0
@@ -0,0 +1,258 @@
1
+ from __future__ import annotations
2
+
3
+ import json
4
+ import os
5
+ import time
6
+ from dataclasses import dataclass
7
+ from pathlib import Path
8
+ from typing import NotRequired, TypedDict, cast
9
+
10
+ from runtime.canonical_taxonomy import SUBSCRIPTION_TIERS
11
+
12
+
13
+ @dataclass(frozen=True)
14
+ class TierSpec:
15
+ budget_usd_per_session: float
16
+ max_parallel_agents: int
17
+ features: tuple[str, ...]
18
+
19
+
20
+ class TierDetectionResult(TypedDict):
21
+ tier: str
22
+ provenance: str
23
+ confidence: float
24
+ budget_usd_per_session: float
25
+ max_parallel_agents: int
26
+ reason: NotRequired[str]
27
+
28
+
29
+ TIER_REGISTRY: dict[str, TierSpec] = {
30
+ "free": TierSpec(
31
+ budget_usd_per_session=5.0,
32
+ max_parallel_agents=1,
33
+ features=("baseline",),
34
+ ),
35
+ "pro": TierSpec(
36
+ budget_usd_per_session=20.0,
37
+ max_parallel_agents=3,
38
+ features=("baseline", "higher_budget"),
39
+ ),
40
+ "team": TierSpec(
41
+ budget_usd_per_session=50.0,
42
+ max_parallel_agents=8,
43
+ features=("baseline", "collaboration", "higher_budget"),
44
+ ),
45
+ "enterprise_tier": TierSpec(
46
+ budget_usd_per_session=200.0,
47
+ max_parallel_agents=20,
48
+ features=("baseline", "collaboration", "governance_plus"),
49
+ ),
50
+ }
51
+
52
+ _CACHE_MAX_AGE_SECONDS = 24 * 60 * 60
53
+ _PLAN_ENV_BY_PROVIDER: dict[str, tuple[str, ...]] = {
54
+ "claude": ("ANTHROPIC_PLAN",),
55
+ "codex": ("CODEX_PLAN", "OPENAI_PLAN"),
56
+ "openai": ("OPENAI_PLAN",),
57
+ "gemini": ("GEMINI_PLAN",),
58
+ "kimi": ("KIMI_PLAN",),
59
+ }
60
+
61
+
62
+ def detect_tier(provider: str, *, project_dir: str | None = None) -> TierDetectionResult:
63
+ reasons: list[str] = []
64
+ normalized_provider = (provider or "").strip().lower() or "unknown"
65
+
66
+ try:
67
+ provider_tier = _detect_provider_tier(normalized_provider)
68
+ except Exception as exc:
69
+ provider_tier = None
70
+ reasons.append(str(exc) or "provider_api_failed")
71
+
72
+ if provider_tier:
73
+ result = _build_result(provider_tier, "provider_api", 0.95, reasons)
74
+ _write_tier_cache(normalized_provider, provider_tier)
75
+ return result
76
+
77
+ local_tier = _detect_local_tier(normalized_provider, project_dir)
78
+ if local_tier:
79
+ result = _build_result(local_tier, "local_config", 0.80, reasons)
80
+ _write_tier_cache(normalized_provider, local_tier)
81
+ return result
82
+
83
+ cached_tier = _read_cached_tier(normalized_provider)
84
+ if cached_tier:
85
+ return _build_result(cached_tier, "cache", 0.65, reasons)
86
+
87
+ return _build_result("free", "default", 0.40, reasons)
88
+
89
+
90
+ def _build_result(tier: str, provenance: str, confidence: float, reasons: list[str]) -> TierDetectionResult:
91
+ normalized_tier = _normalize_tier_value(tier) or "free"
92
+ spec = TIER_REGISTRY[normalized_tier]
93
+ result: TierDetectionResult = {
94
+ "tier": normalized_tier,
95
+ "provenance": provenance,
96
+ "confidence": max(0.0, min(1.0, float(confidence))),
97
+ "budget_usd_per_session": spec.budget_usd_per_session,
98
+ "max_parallel_agents": spec.max_parallel_agents,
99
+ }
100
+ if reasons:
101
+ result["reason"] = "; ".join(reason for reason in reasons if reason)
102
+ return result
103
+
104
+
105
+ def _detect_provider_tier(provider: str) -> str | None:
106
+ keys = _PLAN_ENV_BY_PROVIDER.get(provider, ())
107
+ if not keys:
108
+ keys = ("ANTHROPIC_PLAN", "CODEX_PLAN", "OPENAI_PLAN", "GEMINI_PLAN", "KIMI_PLAN")
109
+
110
+ for key in keys:
111
+ error_key = f"{key}_ERROR"
112
+ error_value = os.environ.get(error_key, "").strip()
113
+ if error_value:
114
+ raise RuntimeError(f"provider_api: {error_value}")
115
+
116
+ value = os.environ.get(key, "").strip()
117
+ if value:
118
+ normalized = _normalize_tier_value(value)
119
+ if normalized:
120
+ return normalized
121
+
122
+ return None
123
+
124
+
125
+ def _detect_local_tier(provider: str, project_dir: str | None) -> str | None:
126
+ from_env = _normalize_tier_value(os.environ.get("OMG_SUBSCRIPTION_TIER", ""))
127
+ if from_env:
128
+ return from_env
129
+
130
+ root = Path(project_dir) if project_dir else Path.cwd()
131
+ settings_tier = _read_settings_tier(root)
132
+ if settings_tier:
133
+ return settings_tier
134
+
135
+ cli_tier = _read_cli_config_tier(root, provider)
136
+ if cli_tier:
137
+ return cli_tier
138
+
139
+ return None
140
+
141
+
142
+ def _read_settings_tier(project_root: Path) -> str | None:
143
+ settings_path = project_root / "settings.json"
144
+ if not settings_path.exists():
145
+ return None
146
+ try:
147
+ raw_obj = json.loads(settings_path.read_text(encoding="utf-8"))
148
+ except Exception:
149
+ return None
150
+
151
+ if not isinstance(raw_obj, dict):
152
+ return None
153
+ raw = cast(dict[str, object], raw_obj)
154
+
155
+ omg_cfg = raw.get("_omg")
156
+ if not isinstance(omg_cfg, dict):
157
+ return None
158
+ maybe = omg_cfg.get("subscription_tier")
159
+ return _normalize_tier_value(maybe)
160
+
161
+
162
+ def _read_cli_config_tier(project_root: Path, provider: str) -> str | None:
163
+ config_path = project_root / ".omg" / "state" / "cli-config.yaml"
164
+ if not config_path.exists():
165
+ return None
166
+
167
+ try:
168
+ lines = config_path.read_text(encoding="utf-8").splitlines()
169
+ except Exception:
170
+ return None
171
+
172
+ in_provider_block = False
173
+ provider_indent = ""
174
+ for line in lines:
175
+ stripped = line.strip()
176
+ if not stripped or stripped.startswith("#"):
177
+ continue
178
+
179
+ if stripped.endswith(":") and stripped[:-1].strip() == provider:
180
+ in_provider_block = True
181
+ provider_indent = line[: len(line) - len(line.lstrip())]
182
+ continue
183
+
184
+ if in_provider_block:
185
+ if stripped.endswith(":") and not line.startswith(provider_indent + " "):
186
+ in_provider_block = False
187
+ continue
188
+ if stripped.startswith("subscription:"):
189
+ _, _, value = stripped.partition(":")
190
+ return _normalize_tier_value(value.strip())
191
+
192
+ return None
193
+
194
+
195
+ def _tier_cache_path() -> Path:
196
+ return Path.home() / ".omg" / "state" / "tier-cache.json"
197
+
198
+
199
+ def _read_cached_tier(provider: str) -> str | None:
200
+ path = _tier_cache_path()
201
+ if not path.exists():
202
+ return None
203
+
204
+ try:
205
+ payload_obj = json.loads(path.read_text(encoding="utf-8"))
206
+ except Exception:
207
+ return None
208
+
209
+ if not isinstance(payload_obj, dict):
210
+ return None
211
+ payload = cast(dict[str, object], payload_obj)
212
+
213
+ cache_ts = payload.get("timestamp")
214
+ if not isinstance(cache_ts, (int, float)):
215
+ return None
216
+
217
+ age = time.time() - float(cache_ts)
218
+ if age > _CACHE_MAX_AGE_SECONDS:
219
+ return None
220
+
221
+ cache_provider_raw = payload.get("provider", "")
222
+ cache_provider = str(cache_provider_raw).strip().lower()
223
+ if cache_provider and cache_provider != provider:
224
+ return None
225
+
226
+ return _normalize_tier_value(payload.get("tier"))
227
+
228
+
229
+ def _write_tier_cache(provider: str, tier: str) -> None:
230
+ path = _tier_cache_path()
231
+ path.parent.mkdir(parents=True, exist_ok=True)
232
+ payload = {
233
+ "provider": provider,
234
+ "tier": tier,
235
+ "timestamp": time.time(),
236
+ }
237
+ try:
238
+ _ = path.write_text(json.dumps(payload, separators=(",", ":")), encoding="utf-8")
239
+ except Exception:
240
+ return
241
+
242
+
243
+ def _normalize_tier_value(raw: object) -> str | None:
244
+ value = str(raw or "").strip().lower()
245
+ if not value:
246
+ return None
247
+ aliases = {
248
+ "enterprise": "enterprise_tier",
249
+ "enterprise-tier": "enterprise_tier",
250
+ }
251
+ value = aliases.get(value, value)
252
+ if value in TIER_REGISTRY:
253
+ return value
254
+ return None
255
+
256
+
257
+ if set(TIER_REGISTRY.keys()) != set(SUBSCRIPTION_TIERS):
258
+ raise ValueError("TIER_REGISTRY must exactly match SUBSCRIPTION_TIERS")
@@ -0,0 +1,198 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import Any, Literal, TypedDict
4
+
5
+ VerdictStatus = Literal["pass", "fail", "action_required", "pending"]
6
+
7
+
8
+ class VerdictReceipt(TypedDict):
9
+ status: VerdictStatus
10
+ verdict: VerdictStatus
11
+ blockers: list[str]
12
+ planned_actions: list[Any]
13
+ executed_actions: list[Any]
14
+ provenance: str | None
15
+ evidence_paths: dict[str, str]
16
+ next_steps: list[str]
17
+ executed: bool
18
+ metadata: dict[str, Any]
19
+
20
+
21
+ _STATUS_ALIASES: dict[str, VerdictStatus] = {
22
+ "pass": "pass",
23
+ "passed": "pass",
24
+ "ok": "pass",
25
+ "success": "pass",
26
+ "approved": "pass",
27
+ "fail": "fail",
28
+ "failed": "fail",
29
+ "error": "fail",
30
+ "reject": "fail",
31
+ "rejected": "fail",
32
+ "block": "fail",
33
+ "blocked": "fail",
34
+ "action_required": "action_required",
35
+ "action-required": "action_required",
36
+ "needs_action": "action_required",
37
+ "needs-action": "action_required",
38
+ "required": "action_required",
39
+ "warn": "action_required",
40
+ "warning": "action_required",
41
+ "pending": "pending",
42
+ "unknown": "pending",
43
+ "inconclusive": "pending",
44
+ }
45
+
46
+
47
+ def _as_status(value: Any) -> VerdictStatus:
48
+ text = str(value).strip().lower()
49
+ return _STATUS_ALIASES.get(text, "pending")
50
+
51
+
52
+ def _as_str_list(value: Any) -> list[str]:
53
+ if not isinstance(value, list):
54
+ return []
55
+ items: list[str] = []
56
+ for item in value:
57
+ text = str(item).strip()
58
+ if text:
59
+ items.append(text)
60
+ return items
61
+
62
+
63
+ def _as_list(value: Any) -> list[Any]:
64
+ if isinstance(value, list):
65
+ return list(value)
66
+ return []
67
+
68
+
69
+ def _as_dict_of_str(value: Any) -> dict[str, str]:
70
+ if not isinstance(value, dict):
71
+ return {}
72
+ normalized: dict[str, str] = {}
73
+ for key, item in value.items():
74
+ name = str(key).strip()
75
+ text = str(item).strip()
76
+ if name and text:
77
+ normalized[name] = text
78
+ return normalized
79
+
80
+
81
+ def normalize_verdict(raw: dict[str, Any]) -> VerdictReceipt:
82
+ payload = raw if isinstance(raw, dict) else {}
83
+ status = _as_status(payload.get("status", payload.get("verdict", "pending")))
84
+ blockers = _as_str_list(payload.get("blockers"))
85
+ if not blockers:
86
+ blockers = _as_str_list(payload.get("unresolved_risks"))
87
+ if not blockers:
88
+ blockers = _as_str_list(payload.get("evidence_gaps"))
89
+
90
+ planned_actions = _as_list(payload.get("planned_actions"))
91
+ if not planned_actions:
92
+ planned_actions = _as_list(payload.get("actions"))
93
+
94
+ executed_actions = _as_list(payload.get("executed_actions"))
95
+ if not executed_actions:
96
+ executed_actions = _as_list(payload.get("fix_receipts"))
97
+
98
+ next_steps = _as_str_list(payload.get("next_steps"))
99
+ if not next_steps:
100
+ next_steps = _as_str_list(payload.get("actions"))
101
+
102
+ provenance_value = payload.get("provenance", payload.get("source"))
103
+ provenance = str(provenance_value).strip() if provenance_value is not None else None
104
+ if provenance == "":
105
+ provenance = None
106
+
107
+ evidence_paths = _as_dict_of_str(payload.get("evidence_paths"))
108
+ metadata = dict(payload.get("metadata", {})) if isinstance(payload.get("metadata"), dict) else {}
109
+
110
+ known_fields = {
111
+ "status",
112
+ "verdict",
113
+ "blockers",
114
+ "planned_actions",
115
+ "executed_actions",
116
+ "provenance",
117
+ "source",
118
+ "evidence_paths",
119
+ "next_steps",
120
+ "executed",
121
+ "metadata",
122
+ "unresolved_risks",
123
+ "evidence_gaps",
124
+ "actions",
125
+ "fix_receipts",
126
+ }
127
+ for key, value in payload.items():
128
+ if key not in known_fields and key not in metadata:
129
+ metadata[key] = value
130
+
131
+ executed = bool(payload.get("executed", False))
132
+ return {
133
+ "status": status,
134
+ "verdict": status,
135
+ "blockers": blockers,
136
+ "planned_actions": planned_actions,
137
+ "executed_actions": executed_actions,
138
+ "provenance": provenance,
139
+ "evidence_paths": evidence_paths,
140
+ "next_steps": next_steps,
141
+ "executed": executed,
142
+ "metadata": metadata,
143
+ }
144
+
145
+
146
+ def action_required_verdict(blockers: list[str], *, next_steps: list[str] | None = None) -> VerdictReceipt:
147
+ return {
148
+ "status": "action_required",
149
+ "verdict": "action_required",
150
+ "blockers": _as_str_list(blockers),
151
+ "planned_actions": [],
152
+ "executed_actions": [],
153
+ "provenance": None,
154
+ "evidence_paths": {},
155
+ "next_steps": _as_str_list(next_steps or []),
156
+ "executed": False,
157
+ "metadata": {},
158
+ }
159
+
160
+
161
+ def pass_verdict(*, evidence_paths: dict[str, str] | None = None) -> VerdictReceipt:
162
+ return {
163
+ "status": "pass",
164
+ "verdict": "pass",
165
+ "blockers": [],
166
+ "planned_actions": [],
167
+ "executed_actions": [],
168
+ "provenance": None,
169
+ "evidence_paths": _as_dict_of_str(evidence_paths),
170
+ "next_steps": [],
171
+ "executed": True,
172
+ "metadata": {},
173
+ }
174
+
175
+
176
+ def fail_verdict(blockers: list[str], *, evidence_paths: dict[str, str] | None = None) -> VerdictReceipt:
177
+ return {
178
+ "status": "fail",
179
+ "verdict": "fail",
180
+ "blockers": _as_str_list(blockers),
181
+ "planned_actions": [],
182
+ "executed_actions": [],
183
+ "provenance": None,
184
+ "evidence_paths": _as_dict_of_str(evidence_paths),
185
+ "next_steps": [],
186
+ "executed": False,
187
+ "metadata": {},
188
+ }
189
+
190
+
191
+ __all__ = [
192
+ "VerdictReceipt",
193
+ "VerdictStatus",
194
+ "action_required_verdict",
195
+ "fail_verdict",
196
+ "normalize_verdict",
197
+ "pass_verdict",
198
+ ]