codex-orchestrator 2.0.13 → 2.0.14

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 (31) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/src/v2/acceptance-proof.js +1 -4
  3. package/dist/src/v2/acceptance-proof.js.map +1 -1
  4. package/dist/src/v2/containment.d.ts +1 -0
  5. package/dist/src/v2/containment.d.ts.map +1 -1
  6. package/dist/src/v2/containment.js +7 -1
  7. package/dist/src/v2/containment.js.map +1 -1
  8. package/dist/src/v2/pending-effect-settlement.d.ts +2 -2
  9. package/dist/src/v2/pending-effect-settlement.d.ts.map +1 -1
  10. package/dist/src/v2/pending-effect-settlement.js +2 -2
  11. package/dist/src/v2/pending-effect-settlement.js.map +1 -1
  12. package/dist/src/v2/run-issue.d.ts.map +1 -1
  13. package/dist/src/v2/run-issue.js +121 -68
  14. package/dist/src/v2/run-issue.js.map +1 -1
  15. package/dist/src/v2/run-state-projections.d.ts.map +1 -1
  16. package/dist/src/v2/run-state-projections.js +1 -1
  17. package/dist/src/v2/run-state-projections.js.map +1 -1
  18. package/dist/src/v2/run-store.d.ts +22 -7
  19. package/dist/src/v2/run-store.d.ts.map +1 -1
  20. package/dist/src/v2/run-store.js +27 -13
  21. package/dist/src/v2/run-store.js.map +1 -1
  22. package/dist/src/v2/runtime.d.ts.map +1 -1
  23. package/dist/src/v2/runtime.js +2 -4
  24. package/dist/src/v2/runtime.js.map +1 -1
  25. package/internal-workflow/manifest.json +1 -1
  26. package/internal-workflow/skills/tickets-orchestrator/SKILL.md +4 -0
  27. package/internal-workflow/skills/to-spec/SKILL.md +17 -8
  28. package/internal-workflow/skills/to-spec/evals/evals.json +6 -0
  29. package/internal-workflow/skills/to-tickets/SKILL.md +29 -2
  30. package/internal-workflow/skills/to-tickets/evals/evals.json +12 -0
  31. package/package.json +1 -1
@@ -22,6 +22,10 @@ Root must not implement a full child or merge ticket boundaries. A ticket that
22
22
  cannot execute from its body plus the Parent PRD is a ticket-packet defect and
23
23
  fails closed.
24
24
 
25
+ Every child must authorize a committed product delta. Treat a transient-evidence
26
+ or comment-only child as a ticket-packet defect: return it to `$to-tickets`
27
+ without requesting an exception or creating an empty checkpoint.
28
+
25
29
  ## Authority and ownership
26
30
 
27
31
  Before work, require:
@@ -41,18 +41,26 @@ count, file count, and risk do not size a later ticket packet; Plan and
41
41
  strengthens `Risk / Proof Notes`; it does not make the PRD or solution broader.
42
42
  Omit that section when no material risk exists.
43
43
 
44
+ Treat only user-stated requirements, repository facts, and explicitly confirmed
45
+ technical decisions as confirmed authority. Keep agent recommendations,
46
+ illustrative values, and possible refactors as proposals. A request to save or
47
+ publish the plan does not confirm those proposals. Put any proposed new runtime
48
+ owner, abstraction, or prerequisite refactor in `Decisions For Approval` for
49
+ explicit confirmation.
50
+
44
51
  ## Process
45
52
 
46
53
  1. Explore the repo if needed. Use project domain language, respect relevant
47
54
  ADRs, and reuse cited `$research` artifacts. Keep unsupported external facts
48
55
  open instead of converting them into product scope.
49
56
 
50
- 2. Sketch the seams at which the outcome will be proved. Existing seams should
51
- be preferred to new ones. Use the highest seam possible. If new seams are
52
- needed, propose them at the highest point you can. The fewer seams across the
53
- codebase, the better; the ideal number is one. Record only seams that
54
- materially define behavior, proof, or ownership, and ask the user only when
55
- a seam choice changes scope, risk, or ownership.
57
+ 2. Sketch the seams at which the outcome will be proved. Prefer existing
58
+ task-relevant seams and use the highest applicable seam. Add a new seam only
59
+ when repository evidence shows that the existing owner cannot cleanly
60
+ implement or prove the requested behavior. Do not centralize distinct owners
61
+ merely to reduce seam count. Record only seams that materially define
62
+ behavior, proof, or ownership, and ask the user only when a seam choice
63
+ changes scope, risk, or ownership.
56
64
 
57
65
  3. Write the template below, then follow the requested mode. A standalone
58
66
  planning-context issue is marked `Artifact: planning-context`; it is not an
@@ -72,8 +80,9 @@ The solution to the problem, from the user's perspective.
72
80
 
73
81
  The product, behavior, scope, ownership, rollout, and risky trade-off decisions
74
82
  the user is being asked to approve. Separate confirmed decisions from open
75
- decisions. If implementation discovery later changes one of these decisions,
76
- the delivery workflow must return a decision delta instead of guessing.
83
+ decisions under the authority rule above. If implementation discovery later
84
+ changes one of these decisions, the delivery workflow must return a decision
85
+ delta instead of guessing.
77
86
 
78
87
  ## Non-Obvious Consequences
79
88
 
@@ -19,6 +19,12 @@
19
19
  "prompt": "Write a proportional PRD for this risky cross-module outcome without deciding its implementation breakdown.",
20
20
  "expected": ["preserve Decisions For Approval and Non-Obvious Consequences", "include Risk / Proof Notes because risk is material", "leave ticket count and slicing to Plan and to-tickets"],
21
21
  "forbidden": ["make user stories extremely extensive", "determine ticket count from modules, files, or risk"]
22
+ },
23
+ {
24
+ "id": "proposal-save-does-not-confirm-architecture",
25
+ "prompt": "The agent proposed a facade and prerequisite refactor, then the user said to save the plan without explicitly approving either proposal.",
26
+ "expected": ["keep the facade and refactor as proposals", "place any proposed runtime owner, abstraction, or prerequisite refactor in Decisions For Approval"],
27
+ "forbidden": ["promote the facade or refactor to a confirmed decision", "treat save or publication as architectural approval"]
22
28
  }
23
29
  ]
24
30
  }
@@ -46,9 +46,14 @@ outcome and blocking relationship. Risk strengthens proof and review focus; it
46
46
  does not create tickets. Merge steps that share one owner, release, and
47
47
  validation path.
48
48
 
49
+ Do not publish a child whose outcome is only transient evidence or a tracker
50
+ comment. Resolve that discovery before compiling the executable graph, or make
51
+ the required durable result a committed artifact.
52
+
49
53
  Where repository evidence proves a small prefactor is required, "Make the
50
54
  change easy, then make the easy change." Keep it inside the same vertical
51
55
  outcome unless it is independently verifiable and genuinely blocks later work.
56
+ File size or general cleanliness alone does not justify prefactoring.
52
57
 
53
58
  ## Process
54
59
 
@@ -69,6 +74,16 @@ that discovery resolves it.
69
74
 
70
75
  ### 2. Draft executable vertical tickets
71
76
 
77
+ Apply this **Minimum solution check** before drafting:
78
+
79
+ - state the direct solution through existing owners and seams;
80
+ - add no new service, adapter, middleware, wrapper, compatibility path, or
81
+ custom verifier by default;
82
+ - add a new mechanism only for a confirmed obligation or proven failure path
83
+ that the direct solution cannot satisfy;
84
+ - perform a deletion challenge: remove any proposed mechanism that can be
85
+ deleted without losing required behavior, an invariant, or credible proof.
86
+
72
87
  Each ticket must:
73
88
 
74
89
  - deliver one observable end-to-end outcome;
@@ -80,6 +95,11 @@ Each ticket must:
80
95
  - explain why the proof cannot pass while the approved claim is false;
81
96
  - declare real blockers and dependency edges.
82
97
 
98
+ Illustrative tuning values remain illustrative unless product authority makes
99
+ them exact. Acceptance criteria describe observable outcomes. Freeze an
100
+ internal mechanism only when a public contract, ownership boundary, safety
101
+ requirement, or inter-ticket dependency depends on it.
102
+
83
103
  Keep unresolved product decisions with the user and unresolved external or
84
104
  technical discovery in a blocking AFK/HITL ticket. If the generated ticket
85
105
  would need a later planning artifact, it is not ready to publish.
@@ -115,8 +135,9 @@ workflow owner. Do not publish any intermediate PRD.
115
135
  For the settled packet, launch exactly one fresh `standards_reviewer` without a
116
136
  history fork (`fork_context=false` on V1; `fork_turns="none"` on V2). Begin its
117
137
  brief with `Assigned role: standards_reviewer`, provide the full source authority
118
- and complete publish-ready packet, and require both internal lenses in the same
119
- review activation: source fidelity and ticket executability.
138
+ and complete publish-ready packet, and require all three internal lenses in the
139
+ same review activation: source fidelity, ticket executability, and minimum
140
+ solution and scope conservation.
120
141
 
121
142
  - **Source fidelity:** every product claim, decision, scope boundary,
122
143
  consequence, and blocker is grounded in the source; no behavior or ownership
@@ -125,6 +146,12 @@ review activation: source fidelity and ticket executability.
125
146
  fresh implementation context can execute and prove from its body plus the
126
147
  Parent PRD; dependencies are real, proof observes the claim, and no later
127
148
  planning artifact is required.
149
+ - **Minimum solution and scope conservation:** reject Speculative Generality,
150
+ Middle Man indirection, unsupported new or duplicate owners, proof-only
151
+ runtime machinery, acceptance criteria without Parent/user/repository
152
+ authority, and prefactors that can stay inside the real vertical outcome.
153
+ Prefer deletion or narrowing before adding machinery. The reviewer may not
154
+ introduce a new runtime mechanism merely to make proof more exhaustive.
128
155
 
129
156
  The reviewer is read-only and returns `APPROVE` or `NEEDS_WORK` with exact
130
157
  source/artifact evidence. Capture a non-empty fresh child identity and wait for
@@ -74,6 +74,18 @@
74
74
  "publish red migration batches as graph children",
75
75
  "create a shared red integration branch"
76
76
  ]
77
+ },
78
+ {
79
+ "id": "existing-owner-before-new-machinery",
80
+ "prompt": "Compile tickets for an outcome that the repository's existing validator and recorder can implement and prove directly.",
81
+ "expected": ["use the existing validator and recorder owners", "apply the deletion challenge before drafting"],
82
+ "forbidden": ["add a wrapper", "split a builder as preliminary cleanup", "add a custom verifier without a confirmed obligation or proven failure path"]
83
+ },
84
+ {
85
+ "id": "proof-gap-does-not-create-machinery",
86
+ "prompt": "Semantic packet review finds that one acceptance claim is stronger than the available proof seam.",
87
+ "expected": ["narrow the unsupported claim or use an existing proof seam", "prefer deletion or narrowing before adding machinery"],
88
+ "forbidden": ["automatically add middleware", "introduce a framework or runtime mechanism merely for exhaustive proof", "invent custom tooling"]
77
89
  }
78
90
  ]
79
91
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codex-orchestrator",
3
- "version": "2.0.13",
3
+ "version": "2.0.14",
4
4
  "description": "Reusable GitHub Issues runner for Codex.",
5
5
  "type": "module",
6
6
  "license": "MIT",