codex-orchestrator 2.0.10 → 2.0.12

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 (279) hide show
  1. package/CHANGELOG.md +52 -0
  2. package/README.md +29 -30
  3. package/dist/src/index.d.ts +4 -9
  4. package/dist/src/index.d.ts.map +1 -1
  5. package/dist/src/index.js +2 -5
  6. package/dist/src/index.js.map +1 -1
  7. package/dist/src/v2/acceptance-proof.d.ts +53 -25
  8. package/dist/src/v2/acceptance-proof.d.ts.map +1 -1
  9. package/dist/src/v2/acceptance-proof.js +189 -197
  10. package/dist/src/v2/acceptance-proof.js.map +1 -1
  11. package/dist/src/v2/active-attempt.d.ts +94 -0
  12. package/dist/src/v2/active-attempt.d.ts.map +1 -0
  13. package/dist/src/v2/active-attempt.js +200 -0
  14. package/dist/src/v2/active-attempt.js.map +1 -0
  15. package/dist/src/v2/adapters/command.d.ts +7 -0
  16. package/dist/src/v2/adapters/command.d.ts.map +1 -1
  17. package/dist/src/v2/adapters/command.js +44 -3
  18. package/dist/src/v2/adapters/command.js.map +1 -1
  19. package/dist/src/v2/adapters/gh-pull-request-adapter.js +1 -0
  20. package/dist/src/v2/adapters/gh-pull-request-adapter.js.map +1 -1
  21. package/dist/src/v2/adapters/pull-requests.d.ts +1 -0
  22. package/dist/src/v2/adapters/pull-requests.d.ts.map +1 -1
  23. package/dist/src/v2/adapters/pull-requests.js +1 -0
  24. package/dist/src/v2/adapters/pull-requests.js.map +1 -1
  25. package/dist/src/v2/adapters/worktree.js +3 -3
  26. package/dist/src/v2/adapters/worktree.js.map +1 -1
  27. package/dist/src/v2/atomic-store.d.ts +15 -0
  28. package/dist/src/v2/atomic-store.d.ts.map +1 -1
  29. package/dist/src/v2/atomic-store.js +55 -8
  30. package/dist/src/v2/atomic-store.js.map +1 -1
  31. package/dist/src/v2/candidate.d.ts +136 -0
  32. package/dist/src/v2/candidate.d.ts.map +1 -0
  33. package/dist/src/v2/candidate.js +107 -0
  34. package/dist/src/v2/candidate.js.map +1 -0
  35. package/dist/src/v2/checked-change.d.ts +39 -7
  36. package/dist/src/v2/checked-change.d.ts.map +1 -1
  37. package/dist/src/v2/checked-change.js +73 -1
  38. package/dist/src/v2/checked-change.js.map +1 -1
  39. package/dist/src/v2/cli-contract.d.ts +1 -1
  40. package/dist/src/v2/cli-contract.d.ts.map +1 -1
  41. package/dist/src/v2/cli-contract.js +4 -6
  42. package/dist/src/v2/cli-contract.js.map +1 -1
  43. package/dist/src/v2/cli.d.ts +14 -0
  44. package/dist/src/v2/cli.d.ts.map +1 -1
  45. package/dist/src/v2/cli.js +70 -21
  46. package/dist/src/v2/cli.js.map +1 -1
  47. package/dist/src/v2/code-review-report.d.ts +10 -18
  48. package/dist/src/v2/code-review-report.d.ts.map +1 -1
  49. package/dist/src/v2/code-review-report.js +63 -60
  50. package/dist/src/v2/code-review-report.js.map +1 -1
  51. package/dist/src/v2/codex-process.d.ts +6 -1
  52. package/dist/src/v2/codex-process.d.ts.map +1 -1
  53. package/dist/src/v2/codex-process.js +36 -9
  54. package/dist/src/v2/codex-process.js.map +1 -1
  55. package/dist/src/v2/config.d.ts +0 -2
  56. package/dist/src/v2/config.d.ts.map +1 -1
  57. package/dist/src/v2/config.js +3 -6
  58. package/dist/src/v2/config.js.map +1 -1
  59. package/dist/src/v2/contained-report-operation.d.ts +17 -6
  60. package/dist/src/v2/contained-report-operation.d.ts.map +1 -1
  61. package/dist/src/v2/contained-report-operation.js +11 -24
  62. package/dist/src/v2/contained-report-operation.js.map +1 -1
  63. package/dist/src/v2/containment.d.ts +1 -0
  64. package/dist/src/v2/containment.d.ts.map +1 -1
  65. package/dist/src/v2/containment.js +12 -2
  66. package/dist/src/v2/containment.js.map +1 -1
  67. package/dist/src/v2/delivery-authority.d.ts +26 -0
  68. package/dist/src/v2/delivery-authority.d.ts.map +1 -0
  69. package/dist/src/v2/delivery-authority.js +44 -0
  70. package/dist/src/v2/delivery-authority.js.map +1 -0
  71. package/dist/src/v2/direct-delivery.d.ts +19 -57
  72. package/dist/src/v2/direct-delivery.d.ts.map +1 -1
  73. package/dist/src/v2/direct-delivery.js +154 -211
  74. package/dist/src/v2/direct-delivery.js.map +1 -1
  75. package/dist/src/v2/immutable-workflow-publisher.d.ts.map +1 -1
  76. package/dist/src/v2/immutable-workflow-publisher.js +3 -1
  77. package/dist/src/v2/immutable-workflow-publisher.js.map +1 -1
  78. package/dist/src/v2/implementation-report.d.ts +3 -1
  79. package/dist/src/v2/implementation-report.d.ts.map +1 -1
  80. package/dist/src/v2/implementation-report.js +17 -4
  81. package/dist/src/v2/implementation-report.js.map +1 -1
  82. package/dist/src/v2/implementation-reviewer.d.ts +22 -13
  83. package/dist/src/v2/implementation-reviewer.d.ts.map +1 -1
  84. package/dist/src/v2/implementation-reviewer.js +96 -30
  85. package/dist/src/v2/implementation-reviewer.js.map +1 -1
  86. package/dist/src/v2/owner-control-lock.d.ts +13 -1
  87. package/dist/src/v2/owner-control-lock.d.ts.map +1 -1
  88. package/dist/src/v2/owner-control-lock.js +66 -7
  89. package/dist/src/v2/owner-control-lock.js.map +1 -1
  90. package/dist/src/v2/pending-effect-settlement.d.ts +44 -0
  91. package/dist/src/v2/pending-effect-settlement.d.ts.map +1 -0
  92. package/dist/src/v2/pending-effect-settlement.js +69 -0
  93. package/dist/src/v2/pending-effect-settlement.js.map +1 -0
  94. package/dist/src/v2/process-identity.d.ts +45 -0
  95. package/dist/src/v2/process-identity.d.ts.map +1 -0
  96. package/dist/src/v2/process-identity.js +118 -0
  97. package/dist/src/v2/process-identity.js.map +1 -0
  98. package/dist/src/v2/proof-report.d.ts +4 -2
  99. package/dist/src/v2/proof-report.d.ts.map +1 -1
  100. package/dist/src/v2/proof-report.js +16 -44
  101. package/dist/src/v2/proof-report.js.map +1 -1
  102. package/dist/src/v2/review-feedback-coordinator.d.ts +8 -2
  103. package/dist/src/v2/review-feedback-coordinator.d.ts.map +1 -1
  104. package/dist/src/v2/review-feedback-coordinator.js +98 -71
  105. package/dist/src/v2/review-feedback-coordinator.js.map +1 -1
  106. package/dist/src/v2/review-feedback.d.ts +14 -38
  107. package/dist/src/v2/review-feedback.d.ts.map +1 -1
  108. package/dist/src/v2/review-feedback.js +48 -115
  109. package/dist/src/v2/review-feedback.js.map +1 -1
  110. package/dist/src/v2/run-issue.d.ts +139 -60
  111. package/dist/src/v2/run-issue.d.ts.map +1 -1
  112. package/dist/src/v2/run-issue.js +2236 -1974
  113. package/dist/src/v2/run-issue.js.map +1 -1
  114. package/dist/src/v2/run-state-projections.d.ts +84 -0
  115. package/dist/src/v2/run-state-projections.d.ts.map +1 -0
  116. package/dist/src/v2/run-state-projections.js +142 -0
  117. package/dist/src/v2/run-state-projections.js.map +1 -0
  118. package/dist/src/v2/run-store.d.ts +114 -82
  119. package/dist/src/v2/run-store.d.ts.map +1 -1
  120. package/dist/src/v2/run-store.js +308 -224
  121. package/dist/src/v2/run-store.js.map +1 -1
  122. package/dist/src/v2/runtime-assets.d.ts +3 -0
  123. package/dist/src/v2/runtime-assets.d.ts.map +1 -1
  124. package/dist/src/v2/runtime-assets.js +104 -0
  125. package/dist/src/v2/runtime-assets.js.map +1 -1
  126. package/dist/src/v2/runtime.d.ts +52 -15
  127. package/dist/src/v2/runtime.d.ts.map +1 -1
  128. package/dist/src/v2/runtime.js +818 -348
  129. package/dist/src/v2/runtime.js.map +1 -1
  130. package/dist/src/v2/setup.js +0 -2
  131. package/dist/src/v2/setup.js.map +1 -1
  132. package/dist/src/v2/validation-progression.d.ts +70 -0
  133. package/dist/src/v2/validation-progression.d.ts.map +1 -0
  134. package/dist/src/v2/validation-progression.js +247 -0
  135. package/dist/src/v2/validation-progression.js.map +1 -0
  136. package/dist/src/v2/workflow-assets.d.ts +9 -3
  137. package/dist/src/v2/workflow-assets.d.ts.map +1 -1
  138. package/dist/src/v2/workflow-assets.js +256 -43
  139. package/dist/src/v2/workflow-assets.js.map +1 -1
  140. package/docs/deep-dive.md +52 -14
  141. package/internal-workflow/docs/agents/bug-workflow-routing.md +9 -7
  142. package/internal-workflow/docs/agents/coding-skill-routing.md +170 -120
  143. package/internal-workflow/docs/agents/tool-usage.md +23 -12
  144. package/internal-workflow/manifest.json +1 -1
  145. package/internal-workflow/operations/code-review/SKILL.md +34 -15
  146. package/internal-workflow/operations/implementation/SKILL.md +21 -16
  147. package/internal-workflow/profiles/implementer.toml +9 -0
  148. package/internal-workflow/profiles/review_coordinator.toml +9 -0
  149. package/internal-workflow/profiles/spec_reviewer.toml +9 -0
  150. package/internal-workflow/profiles/standards_reviewer.toml +9 -0
  151. package/internal-workflow/schemas/code-review-v1.json +1 -1
  152. package/internal-workflow/schemas/implementation-report-v1.json +1 -1
  153. package/internal-workflow/schemas/proof-report-v1.json +1 -1
  154. package/internal-workflow/skills/bug-root-cause-explainer/SKILL.md +114 -0
  155. package/internal-workflow/skills/bug-root-cause-explainer/agents/openai.yaml +7 -0
  156. package/internal-workflow/skills/bug-root-cause-explainer/evals/evals.json +18 -0
  157. package/internal-workflow/skills/code-review/SKILL.md +84 -288
  158. package/internal-workflow/skills/code-review/agents/openai.yaml +5 -3
  159. package/internal-workflow/skills/code-review/evals/evals.json +83 -0
  160. package/internal-workflow/skills/code-review/references/standards-smells.md +41 -0
  161. package/internal-workflow/skills/diagnosing-bugs/SKILL.md +69 -32
  162. package/internal-workflow/skills/diagnosing-bugs/agents/openai.yaml +2 -2
  163. package/internal-workflow/skills/diagnosing-bugs/evals/evals.json +63 -0
  164. package/internal-workflow/skills/grilling/SKILL.md +51 -0
  165. package/internal-workflow/skills/grilling/agents/openai.yaml +6 -0
  166. package/internal-workflow/skills/grilling/evals/evals.json +47 -0
  167. package/internal-workflow/skills/implement/SKILL.md +135 -0
  168. package/internal-workflow/skills/implement/agents/openai.yaml +6 -0
  169. package/internal-workflow/skills/implement/evals/evals.json +150 -0
  170. package/internal-workflow/skills/plan/SKILL.md +59 -0
  171. package/internal-workflow/skills/plan/agents/openai.yaml +6 -0
  172. package/internal-workflow/skills/plan/evals/evals.json +36 -0
  173. package/internal-workflow/skills/prototype/LOGIC.md +130 -0
  174. package/internal-workflow/skills/prototype/SKILL.md +69 -0
  175. package/internal-workflow/skills/prototype/UI.md +157 -0
  176. package/internal-workflow/skills/prototype/agents/openai.yaml +6 -0
  177. package/internal-workflow/skills/prototype/evals/evals.json +67 -0
  178. package/internal-workflow/skills/research/SKILL.md +110 -0
  179. package/internal-workflow/skills/research/agents/openai.yaml +6 -0
  180. package/internal-workflow/skills/research/evals/evals.json +49 -0
  181. package/internal-workflow/skills/tdd/SKILL.md +72 -67
  182. package/internal-workflow/skills/tdd/agents/openai.yaml +2 -2
  183. package/internal-workflow/skills/tdd/evals/evals.json +12 -0
  184. package/internal-workflow/skills/tdd/mocking.md +48 -1
  185. package/internal-workflow/skills/tdd/refactoring.md +3 -3
  186. package/internal-workflow/skills/tickets-orchestrator/SKILL.md +199 -0
  187. package/internal-workflow/skills/tickets-orchestrator/agents/openai.yaml +6 -0
  188. package/internal-workflow/skills/tickets-orchestrator/evals/evals.json +126 -0
  189. package/internal-workflow/skills/tickets-orchestrator/references/delegate-integrate.md +83 -0
  190. package/internal-workflow/skills/tickets-orchestrator/references/finish-delivery.md +69 -0
  191. package/internal-workflow/skills/tickets-orchestrator/references/stop-completion.md +63 -0
  192. package/internal-workflow/skills/to-spec/SKILL.md +133 -0
  193. package/internal-workflow/skills/to-spec/agents/openai.yaml +6 -0
  194. package/internal-workflow/skills/to-spec/evals/evals.json +24 -0
  195. package/internal-workflow/skills/to-tickets/SKILL.md +189 -0
  196. package/internal-workflow/skills/to-tickets/agents/openai.yaml +6 -0
  197. package/internal-workflow/skills/to-tickets/evals/evals.json +79 -0
  198. package/internal-workflow/skills/to-tickets/references/publishing-details.md +117 -0
  199. package/package.json +1 -1
  200. package/dist/src/v2/proof-store.d.ts +0 -42
  201. package/dist/src/v2/proof-store.d.ts.map +0 -1
  202. package/dist/src/v2/proof-store.js +0 -180
  203. package/dist/src/v2/proof-store.js.map +0 -1
  204. package/dist/src/v2/route-continuations.d.ts +0 -32
  205. package/dist/src/v2/route-continuations.d.ts.map +0 -1
  206. package/dist/src/v2/route-continuations.js +0 -2
  207. package/dist/src/v2/route-continuations.js.map +0 -1
  208. package/dist/src/v2/route-coordinator.d.ts +0 -77
  209. package/dist/src/v2/route-coordinator.d.ts.map +0 -1
  210. package/dist/src/v2/route-coordinator.js +0 -370
  211. package/dist/src/v2/route-coordinator.js.map +0 -1
  212. package/dist/src/v2/route-decision.d.ts +0 -129
  213. package/dist/src/v2/route-decision.d.ts.map +0 -1
  214. package/dist/src/v2/route-decision.js +0 -400
  215. package/dist/src/v2/route-decision.js.map +0 -1
  216. package/dist/src/v2/spec-coordinator.d.ts +0 -85
  217. package/dist/src/v2/spec-coordinator.d.ts.map +0 -1
  218. package/dist/src/v2/spec-coordinator.js +0 -88
  219. package/dist/src/v2/spec-coordinator.js.map +0 -1
  220. package/dist/src/v2/spec-delivery.d.ts +0 -143
  221. package/dist/src/v2/spec-delivery.d.ts.map +0 -1
  222. package/dist/src/v2/spec-delivery.js +0 -401
  223. package/dist/src/v2/spec-delivery.js.map +0 -1
  224. package/dist/src/v2/triage-route.d.ts +0 -68
  225. package/dist/src/v2/triage-route.d.ts.map +0 -1
  226. package/dist/src/v2/triage-route.js +0 -223
  227. package/dist/src/v2/triage-route.js.map +0 -1
  228. package/dist/src/v2/waiting-human-coordinator.d.ts +0 -49
  229. package/dist/src/v2/waiting-human-coordinator.d.ts.map +0 -1
  230. package/dist/src/v2/waiting-human-coordinator.js +0 -509
  231. package/dist/src/v2/waiting-human-coordinator.js.map +0 -1
  232. package/dist/src/v2/waiting-human.d.ts +0 -143
  233. package/dist/src/v2/waiting-human.d.ts.map +0 -1
  234. package/dist/src/v2/waiting-human.js +0 -408
  235. package/dist/src/v2/waiting-human.js.map +0 -1
  236. package/internal-workflow/docs/agents/contract-test-ledger.md +0 -71
  237. package/internal-workflow/docs/agents/review-gates.md +0 -42
  238. package/internal-workflow/docs/agents/review-protocol.md +0 -98
  239. package/internal-workflow/evals/coding-skill-evals.json +0 -332
  240. package/internal-workflow/operations/ambiguity-review/SKILL.md +0 -5
  241. package/internal-workflow/operations/qualification-repair/SKILL.md +0 -17
  242. package/internal-workflow/operations/spec-author/SKILL.md +0 -12
  243. package/internal-workflow/operations/spec-review/SKILL.md +0 -12
  244. package/internal-workflow/operations/triage/SKILL.md +0 -12
  245. package/internal-workflow/profiles/analyst_deep.toml +0 -9
  246. package/internal-workflow/profiles/implementer_standard.toml +0 -9
  247. package/internal-workflow/profiles/proof_agent.toml +0 -8
  248. package/internal-workflow/profiles/reviewer_deep.toml +0 -9
  249. package/internal-workflow/profiles/reviewer_standard.toml +0 -9
  250. package/internal-workflow/schemas/ambiguity-review-v1.json +0 -1
  251. package/internal-workflow/schemas/spec-author-v1.json +0 -1
  252. package/internal-workflow/schemas/spec-review-v1.json +0 -30
  253. package/internal-workflow/schemas/triage-route-v1.json +0 -1
  254. package/internal-workflow/skills/agent-auto/SKILL.md +0 -19
  255. package/internal-workflow/skills/agent-auto/agents/openai.yaml +0 -6
  256. package/internal-workflow/skills/code-debugger/SKILL.md +0 -122
  257. package/internal-workflow/skills/code-debugger/agents/openai.yaml +0 -7
  258. package/internal-workflow/skills/code-review/references/bug-classes.md +0 -56
  259. package/internal-workflow/skills/code-review/references/cleanup-lens.md +0 -52
  260. package/internal-workflow/skills/code-review/references/framework-lenses.md +0 -34
  261. package/internal-workflow/skills/code-review/references/targeted-recipes.md +0 -49
  262. package/internal-workflow/skills/implementation-spec-maker/SKILL.md +0 -107
  263. package/internal-workflow/skills/implementation-spec-maker/agents/openai.yaml +0 -6
  264. package/internal-workflow/skills/implementation-spec-maker/references/source-modes.md +0 -32
  265. package/internal-workflow/skills/implementation-spec-maker/references/spec-template.md +0 -146
  266. package/internal-workflow/skills/implementation-spec-review/SKILL.md +0 -131
  267. package/internal-workflow/skills/implementation-spec-review/agents/openai.yaml +0 -6
  268. package/internal-workflow/skills/implementation-spec-review/evals/evals.json +0 -78
  269. package/internal-workflow/skills/implementation-spec-review/references/review-loop.md +0 -121
  270. package/internal-workflow/skills/small-task-implementer/SKILL.md +0 -112
  271. package/internal-workflow/skills/small-task-implementer/agents/openai.yaml +0 -6
  272. package/internal-workflow/skills/spec-implementer/SKILL.md +0 -126
  273. package/internal-workflow/skills/spec-implementer/agents/openai.yaml +0 -6
  274. package/internal-workflow/skills/spec-implementer/evals/evals.json +0 -30
  275. package/internal-workflow/skills/spec-implementer/references/review-loop.md +0 -100
  276. package/internal-workflow/skills/triage/AGENT-BRIEF.md +0 -192
  277. package/internal-workflow/skills/triage/OUT-OF-SCOPE.md +0 -101
  278. package/internal-workflow/skills/triage/SKILL.md +0 -134
  279. package/internal-workflow/skills/triage/agents/openai.yaml +0 -6
@@ -0,0 +1,247 @@
1
+ import { canonicalJson, sha256 } from './containment.js';
2
+ import { acceptApprovedDirectReview, acceptNeedsWorkDirectReview, beginDirectReviewRepair, createInitialDirectReview, prepareDirectReview, } from './direct-delivery.js';
3
+ import { activateReviewFeedback, markReviewFeedbackVerified, reserveNextReviewFeedbackRound, } from './review-feedback.js';
4
+ export function nextValidationTransition(run, authority) {
5
+ if (!run.deliveryAuthority || canonicalJson(run.deliveryAuthority) !== canonicalJson(authority)) {
6
+ throw new Error('validation progression authority mismatch');
7
+ }
8
+ if (run.pendingEffect)
9
+ throw new Error('validation progression cannot dispatch with a pending effect');
10
+ let phase;
11
+ if (run.lifecycle === 'implementing') {
12
+ if (run.directReview?.status === 'terminal' || run.directReview?.status === 'clear') {
13
+ throw new Error('implementing validation progression has an invalid review projection');
14
+ }
15
+ phase = 'implementation';
16
+ }
17
+ else if (run.lifecycle === 'checking') {
18
+ phase = 'checks';
19
+ }
20
+ else if (run.lifecycle === 'proving') {
21
+ phase = 'acceptance-proof';
22
+ }
23
+ else if (run.lifecycle === 'reviewing') {
24
+ if (!run.proofReceipt || run.directReview?.stage !== 'review') {
25
+ throw new Error('review validation progression requires candidate proof and an active review');
26
+ }
27
+ phase = 'review';
28
+ }
29
+ else if (run.lifecycle === 'publishing') {
30
+ if (!run.proofReceipt)
31
+ throw new Error('publication validation progression requires a proof receipt');
32
+ phase = 'publication';
33
+ }
34
+ else {
35
+ throw new Error(`run lifecycle ${run.lifecycle} is outside validation progression`);
36
+ }
37
+ const batch = run.reviewFeedback?.activeBatch;
38
+ const repairRound = run.reviewFeedback?.repairRound;
39
+ if (batch && (!Number.isSafeInteger(repairRound) || repairRound < 1)) {
40
+ throw new Error('post-PR validation progression repair round is invalid');
41
+ }
42
+ return {
43
+ kind: 'dispatch',
44
+ phase,
45
+ expected: transitionExpected(run, authority),
46
+ feedback: batch ? { batchId: batch.batchId, repairRound: repairRound } : null,
47
+ };
48
+ }
49
+ export function projectValidationRepair(run, findings, sources) {
50
+ const authority = run.deliveryAuthority;
51
+ if (!authority)
52
+ throw new Error('validation repair requires delivery authority');
53
+ if (findings.length === 0)
54
+ throw new Error('validation repair requires findings');
55
+ const directReview = run.directReview && (run.directReview.status === 'clear'
56
+ || (run.directReview.status === 'active' && run.directReview.stage === 'review-repair'))
57
+ ? beginDirectReviewRepair(run.directReview, (sources ?? findings.map((summary) => {
58
+ const provenance = run.lifecycle === 'proving' ? 'proof' : 'check';
59
+ return {
60
+ provenance,
61
+ sourceId: `${provenance}:recovery:${sha256(summary)}`,
62
+ summary,
63
+ affectedContracts: [provenance === 'proof' ? 'acceptance-proof' : 'configured-checks'],
64
+ };
65
+ })).map((source) => ({
66
+ id: source.sourceId,
67
+ provenance: source.provenance,
68
+ sourceId: source.sourceId,
69
+ targetRevision: run.directReview.targetRevision,
70
+ summary: source.summary,
71
+ affectedContracts: [...source.affectedContracts],
72
+ status: 'open',
73
+ })), run.candidateBinding?.candidateTreeSha)
74
+ : run.directReview;
75
+ return casTransition(run, 'semantic-repair', {
76
+ lifecycle: 'implementing',
77
+ changeBindingVersion: undefined,
78
+ candidateBinding: undefined,
79
+ cycle: run.reviewFeedback?.activeBatch ? run.cycle : run.cycle + 1,
80
+ ...(run.reviewFeedback?.activeBatch ? { reviewFeedback: reserveNextReviewFeedbackRound(run.reviewFeedback) } : {}),
81
+ reworkFindings: [...findings],
82
+ ...(directReview ? { directReview } : {}),
83
+ checks: [],
84
+ checkedChangeSha256: undefined,
85
+ proofId: undefined,
86
+ proofReceipt: undefined,
87
+ });
88
+ }
89
+ export function projectValidationReviewStart(run, input) {
90
+ const directReview = run.directReview?.stage === 'review-repair'
91
+ ? prepareDirectReview(run.directReview, input.targetFingerprint, input.reviewerSessionId)
92
+ : createInitialDirectReview({
93
+ targetFingerprint: input.targetFingerprint,
94
+ codeReviewerSessionId: input.reviewerSessionId,
95
+ });
96
+ return casTransition(run, 'review-start', { lifecycle: 'reviewing', directReview });
97
+ }
98
+ export function projectValidationReviewNeedsWork(run, report, artifactSha256) {
99
+ if (!run.directReview)
100
+ throw new Error('validation review result is orphaned');
101
+ if (!run.candidateBinding)
102
+ throw new Error('validation review result requires candidate identity');
103
+ const repaired = acceptNeedsWorkDirectReview(run.directReview, report, artifactSha256, run.candidateBinding.candidateTreeSha);
104
+ const findings = [
105
+ ...report.defects
106
+ .filter((defect) => defect.status === 'open' || defect.status === 'reopened')
107
+ .map((defect) => `${defect.id}: ${defect.failure}\nRepair: ${defect.repair}`),
108
+ ...repaired.repairFindings
109
+ .filter((finding) => finding.status === 'reopened')
110
+ .map((finding) => `${finding.id}: ${finding.summary}`),
111
+ ];
112
+ return casTransition(run, 'review-needs-work', {
113
+ lifecycle: 'implementing',
114
+ cycle: run.reviewFeedback?.activeBatch ? run.cycle : run.cycle + 1,
115
+ ...(run.reviewFeedback?.activeBatch ? { reviewFeedback: reserveNextReviewFeedbackRound(run.reviewFeedback) } : {}),
116
+ directReview: repaired,
117
+ reworkFindings: findings,
118
+ checks: [],
119
+ checkedChangeSha256: undefined,
120
+ proofId: undefined,
121
+ proofReceipt: undefined,
122
+ });
123
+ }
124
+ export function projectValidationReviewApproved(run, report, artifactSha256, mode) {
125
+ if (!run.directReview)
126
+ throw new Error('validation review result is orphaned');
127
+ if (!run.candidateBinding)
128
+ throw new Error('validation review result requires candidate identity');
129
+ return casTransition(run, 'review-approved', {
130
+ lifecycle: 'publishing',
131
+ directReview: acceptApprovedDirectReview(run.directReview, report, artifactSha256, run.candidateBinding.candidateTreeSha, mode),
132
+ });
133
+ }
134
+ export function projectValidationReviewReportRepair(run) {
135
+ const current = run.directReview;
136
+ if (!current)
137
+ throw new Error('validation review result is orphaned');
138
+ return casTransition(run, 'review-report-repair', {
139
+ directReview: {
140
+ ...structuredClone(current),
141
+ review: {
142
+ ...current.review,
143
+ reportRepairs: current.review.reportRepairs + 1,
144
+ },
145
+ },
146
+ });
147
+ }
148
+ export function projectValidationReviewTransportRetry(run) {
149
+ const current = run.directReview;
150
+ if (!current)
151
+ throw new Error('validation review result is orphaned');
152
+ return casTransition(run, 'review-transport-retry', {
153
+ directReview: {
154
+ ...structuredClone(current),
155
+ review: { ...current.review, transportRetries: current.review.transportRetries + 1 },
156
+ },
157
+ });
158
+ }
159
+ export function projectValidationProofStart(run, input) {
160
+ return casTransition(run, 'proof-start', {
161
+ lifecycle: 'proving',
162
+ checkedChangeSha256: input.checkedChangeSha256,
163
+ proofId: input.proofId,
164
+ proofExecution: structuredClone(input.proofExecution),
165
+ });
166
+ }
167
+ export function projectValidationProofPassed(run, input) {
168
+ const directReview = run.directReview?.stage === 'review-repair'
169
+ ? prepareDirectReview(run.directReview, input.targetFingerprint, input.reviewerSessionId)
170
+ : run.directReview?.stage === 'review'
171
+ ? {
172
+ ...structuredClone(run.directReview),
173
+ review: { ...structuredClone(run.directReview.review), reviewerSessionId: input.reviewerSessionId },
174
+ }
175
+ : createInitialDirectReview({
176
+ targetFingerprint: input.targetFingerprint,
177
+ codeReviewerSessionId: input.reviewerSessionId,
178
+ });
179
+ if (directReview.targetFingerprint !== input.targetFingerprint
180
+ || directReview.review.reviewerSessionId !== input.reviewerSessionId) {
181
+ throw new Error('proof-passed review target correlation mismatch');
182
+ }
183
+ return casTransition(run, 'proof-passed', {
184
+ lifecycle: 'reviewing',
185
+ proofReceipt: structuredClone(input.proofReceipt),
186
+ directReview,
187
+ reworkFindings: [],
188
+ ...(run.reviewFeedback?.activeBatch ? {
189
+ reviewFeedback: markReviewFeedbackVerified(run.reviewFeedback, {
190
+ checkedChangeSha256: input.checkedChangeSha256,
191
+ proofId: input.proofId,
192
+ verifiedAt: input.verifiedAt,
193
+ }),
194
+ } : {}),
195
+ });
196
+ }
197
+ export function projectValidationFeedbackActivation(run, input) {
198
+ if (!run.reviewFeedback || run.directReview?.status !== 'clear') {
199
+ throw new Error('validation feedback activation requires a clear reviewed Run');
200
+ }
201
+ const repairReview = beginDirectReviewRepair(run.directReview, input.repairFindings, input.candidateTreeSha);
202
+ return casTransition(run, 'feedback-activation', {
203
+ lifecycle: 'implementing',
204
+ reviewFeedback: activateReviewFeedback(run.reviewFeedback, input.batch),
205
+ directReview: {
206
+ ...repairReview,
207
+ review: { ...repairReview.review, reportRepairs: 0, transportRetries: 0 },
208
+ },
209
+ reworkFindings: input.repairFindings.map((finding) => finding.summary),
210
+ reportRepairs: 0,
211
+ transportRetries: 0,
212
+ checks: [],
213
+ checkedChangeSha256: undefined,
214
+ proofId: undefined,
215
+ proofReceipt: undefined,
216
+ terminalOutcome: undefined,
217
+ outcomeEvidenceId: undefined,
218
+ pendingEffect: structuredClone(input.pendingEffect),
219
+ });
220
+ }
221
+ export function consumeValidationTransition(run, transition) {
222
+ const authority = run.deliveryAuthority;
223
+ if (!authority || canonicalJson(transition.expected) !== canonicalJson(transitionExpected(run, authority))) {
224
+ throw new Error('validation transition expected state mismatch');
225
+ }
226
+ return structuredClone(transition.changes);
227
+ }
228
+ export function applyValidationTransition(run, transition, write) {
229
+ return write(consumeValidationTransition(run, transition));
230
+ }
231
+ function transitionExpected(run, authority) {
232
+ return {
233
+ runId: run.runId,
234
+ lifecycle: run.lifecycle,
235
+ cycle: run.cycle,
236
+ authoritySha256: authority.authoritySha256,
237
+ activeAttemptId: run.activeAttempt?.attemptId ?? null,
238
+ pendingEffectId: run.pendingEffect?.effectId ?? null,
239
+ };
240
+ }
241
+ function casTransition(run, reason, changes) {
242
+ const authority = run.deliveryAuthority;
243
+ if (!authority)
244
+ throw new Error('validation transition requires delivery authority');
245
+ return { kind: 'cas', reason, expected: transitionExpected(run, authority), changes };
246
+ }
247
+ //# sourceMappingURL=validation-progression.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation-progression.js","sourceRoot":"","sources":["../../../src/v2/validation-progression.ts"],"names":[],"mappings":"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"}
@@ -7,10 +7,10 @@ export interface WorkflowFileRecord {
7
7
  }
8
8
  export interface WorkflowOperationPolicy {
9
9
  sandboxMode: 'read-only' | 'workspace-write';
10
- cwdClass: 'worktree' | 'target-state';
10
+ cwdClass: 'worktree';
11
11
  worktreeAccess: 'read-only' | 'write';
12
- writableRootClasses: Array<'worktree' | 'target-state'>;
13
- runnerPostcondition: 'report-only' | 'change-set' | 'proof-only' | 'spec-only';
12
+ writableRootClasses: Array<'worktree'>;
13
+ runnerPostcondition: 'report-only' | 'change-set' | 'proof-only';
14
14
  network: 'deny';
15
15
  networkHosts: string[];
16
16
  mcpTools: string[];
@@ -23,6 +23,7 @@ interface WorkflowOperation {
23
23
  sourceSkill: string | null;
24
24
  outputSchema: string;
25
25
  profile: string;
26
+ reviewers: string[];
26
27
  policy: WorkflowOperationPolicy;
27
28
  files: string[];
28
29
  dependencySkills: string[];
@@ -36,6 +37,7 @@ export interface WorkflowManifest {
36
37
  skills: Record<string, {
37
38
  entry: string;
38
39
  metadata: string;
40
+ dependencySkills: string[];
39
41
  files: string[];
40
42
  }>;
41
43
  profiles: Record<string, string>;
@@ -79,7 +81,10 @@ export interface ResolvedWorkflowOperation {
79
81
  entryPath: string;
80
82
  schemaPath: string;
81
83
  profilePath: string;
84
+ reviewerProfiles: Record<string, string>;
82
85
  sourceSkillPath?: string;
86
+ skillPaths: string[];
87
+ referencedDocumentPaths: string[];
83
88
  policy: WorkflowOperationPolicy;
84
89
  files: WorkflowFileRecord[];
85
90
  }
@@ -94,5 +99,6 @@ export declare function materializeWorkflowGeneration(input: {
94
99
  onStep?: (step: WorkflowGenerationPublishStep) => Promise<void> | void;
95
100
  }): Promise<WorkflowGenerationReceipt>;
96
101
  export declare function verifyWorkflowGeneration(receipt: WorkflowGenerationReceipt): Promise<void>;
102
+ export declare function extractContainedWorkflowReferences(source: string, text: string): string[];
97
103
  export {};
98
104
  //# sourceMappingURL=workflow-assets.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-assets.d.ts","sourceRoot":"","sources":["../../../src/v2/workflow-assets.ts"],"names":[],"mappings":"AAeA,OAAO,EAA4B,KAAK,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AA0BhH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,uBAAuB;IACtC,WAAW,EAAE,WAAW,GAAG,iBAAiB,CAAC;IAC7C,QAAQ,EAAE,UAAU,GAAG,cAAc,CAAC;IACtC,cAAc,EAAE,WAAW,GAAG,OAAO,CAAC;IACtC,mBAAmB,EAAE,KAAK,CAAC,UAAU,GAAG,cAAc,CAAC,CAAC;IACxD,mBAAmB,EAAE,aAAa,GAAG,YAAY,GAAG,YAAY,GAAG,WAAW,CAAC;IAC/E,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,KAAK,CAAC;CACtB;AAED,UAAU,iBAAiB;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,CAAC,CAAC;IACX,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IAC7E,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAC9C,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/D;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,yBAAyB;IACxC,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,6BAA6B,GAAG,4BAA4B,CAAC;AAEzE,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,OAAO,CAAC;IACvE,WAAW,EAAE,WAAW,GAAG,iBAAiB,CAAC;IAC7C,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AAED,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,uBAAuB,GAAG,wBAAwB,CAoBrH;AAED,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,KAAK,GAAG,KAAK,CAIpE;AAED,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,GAC/E,MAAM,CAER;AAED,MAAM,WAAW,yBAAyB;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,kBAAkB,EAAE,CAAC;CAC7B;AAED,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,yBAAyB,EAClC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,yBAAyB,CAAC,CAuBpC;AAED,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAQ7G;AAoBD,wBAAsB,mBAAmB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAuBlG;AAED,wBAAsB,6BAA6B,CAAC,KAAK,EAAE;IACzD,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,6BAA6B,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CACxE,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAyCrC;AAED,wBAAsB,wBAAwB,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoChG"}
1
+ {"version":3,"file":"workflow-assets.d.ts","sourceRoot":"","sources":["../../../src/v2/workflow-assets.ts"],"names":[],"mappings":"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"}