codex-workflows 0.6.7 → 0.6.8
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.
- package/.agents/skills/integration-e2e-testing/SKILL.md +1 -1
- package/.agents/skills/recipe-build/SKILL.md +10 -3
- package/.agents/skills/recipe-front-build/SKILL.md +10 -3
- package/.agents/skills/recipe-fullstack-build/SKILL.md +10 -3
- package/.agents/skills/recipe-fullstack-implement/SKILL.md +1 -1
- package/.agents/skills/recipe-prepare-implementation/SKILL.md +1 -0
- package/.agents/skills/subagents-orchestration-guide/SKILL.md +9 -6
- package/.agents/skills/task-analyzer/references/skills-index.yaml +1 -1
- package/.codex/agents/acceptance-test-generator.toml +59 -52
- package/package.json +1 -1
|
@@ -156,7 +156,7 @@ The test runner or framework in the project determines the appropriate file exte
|
|
|
156
156
|
|
|
157
157
|
| Check | Failure Condition |
|
|
158
158
|
|-------|-------------------|
|
|
159
|
-
| Behavior Verification | No assertion for "observable result" in
|
|
159
|
+
| Behavior Verification | No assertion for "observable result" in the implemented test |
|
|
160
160
|
| Verification Item Coverage | Listed items not all covered by assertions |
|
|
161
161
|
| Mock Boundary | Real dependencies from `@real-dependency` are isolated away or internal components are mocked without rationale |
|
|
162
162
|
|
|
@@ -29,9 +29,9 @@ Work plan: $ARGUMENTS
|
|
|
29
29
|
|
|
30
30
|
## Pre-execution Prerequisites
|
|
31
31
|
|
|
32
|
-
### Implementation Readiness
|
|
32
|
+
### Implementation Readiness Resolution
|
|
33
33
|
|
|
34
|
-
Before task processing, locate the work plan
|
|
34
|
+
Before task processing, locate the work plan and resolve implementation readiness.
|
|
35
35
|
|
|
36
36
|
Resolution rule:
|
|
37
37
|
1. If `$ARGUMENTS` contains a work plan path, use that exact file and derive `{plan-name}` from its basename. This takes precedence over task-file mtimes.
|
|
@@ -40,7 +40,14 @@ Resolution rule:
|
|
|
40
40
|
4. If matching task files exist, infer `{plan-name}` from the most recent matching task file and use `docs/plans/{plan-name}.md`.
|
|
41
41
|
5. If no matching task files exist, use the most recent non-template work plan in `docs/plans/`.
|
|
42
42
|
|
|
43
|
-
Read the work plan header and apply
|
|
43
|
+
Read the work plan header and apply this readiness rule:
|
|
44
|
+
|
|
45
|
+
| Header state | Action |
|
|
46
|
+
|--------------|--------|
|
|
47
|
+
| `Implementation Readiness: ready` | Proceed to Consumed Task Set computation |
|
|
48
|
+
| `Implementation Readiness: pending` | Execute the Implementation Readiness Preflight Procedure from `subagents-orchestration-guide` for the resolved work plan. Re-read the resulting marker: proceed to Consumed Task Set only when it is `ready`; if it is `escalated`, follow the `escalated` row |
|
|
49
|
+
| `Implementation Readiness: escalated` | Present the persisted Readiness Report remaining gaps, then continue only on explicit user approval |
|
|
50
|
+
| marker absent | Execute the Implementation Readiness Preflight Procedure from `subagents-orchestration-guide` for the resolved work plan. Re-read the resulting marker: proceed to Consumed Task Set only when it is `ready`; if it is `escalated`, follow the `escalated` row |
|
|
44
51
|
|
|
45
52
|
### Consumed Task Set
|
|
46
53
|
|
|
@@ -29,9 +29,9 @@ Work plan: $ARGUMENTS
|
|
|
29
29
|
|
|
30
30
|
## Pre-execution Prerequisites
|
|
31
31
|
|
|
32
|
-
### Implementation Readiness
|
|
32
|
+
### Implementation Readiness Resolution
|
|
33
33
|
|
|
34
|
-
Before task processing, locate the work plan
|
|
34
|
+
Before task processing, locate the work plan and resolve implementation readiness.
|
|
35
35
|
|
|
36
36
|
Resolution rule:
|
|
37
37
|
1. If `$ARGUMENTS` contains a work plan path, use that exact file and derive `{plan-name}` from its basename. This takes precedence over task-file mtimes.
|
|
@@ -40,7 +40,14 @@ Resolution rule:
|
|
|
40
40
|
4. If matching task files exist, infer `{plan-name}` from the most recent matching task file and use `docs/plans/{plan-name}.md`.
|
|
41
41
|
5. If no matching task files exist, use the most recent non-template work plan in `docs/plans/`.
|
|
42
42
|
|
|
43
|
-
Read the work plan header and apply
|
|
43
|
+
Read the work plan header and apply this readiness rule:
|
|
44
|
+
|
|
45
|
+
| Header state | Action |
|
|
46
|
+
|--------------|--------|
|
|
47
|
+
| `Implementation Readiness: ready` | Proceed to Consumed Task Set computation |
|
|
48
|
+
| `Implementation Readiness: pending` | Execute the Implementation Readiness Preflight Procedure from `subagents-orchestration-guide` for the resolved work plan. Re-read the resulting marker: proceed to Consumed Task Set only when it is `ready`; if it is `escalated`, follow the `escalated` row |
|
|
49
|
+
| `Implementation Readiness: escalated` | Present the persisted Readiness Report remaining gaps, then continue only on explicit user approval |
|
|
50
|
+
| marker absent | Execute the Implementation Readiness Preflight Procedure from `subagents-orchestration-guide` for the resolved work plan. Re-read the resulting marker: proceed to Consumed Task Set only when it is `ready`; if it is `escalated`, follow the `escalated` row |
|
|
44
51
|
|
|
45
52
|
### Consumed Task Set
|
|
46
53
|
|
|
@@ -39,9 +39,9 @@ Work plan: $ARGUMENTS
|
|
|
39
39
|
|
|
40
40
|
## Pre-execution Prerequisites
|
|
41
41
|
|
|
42
|
-
### Implementation Readiness
|
|
42
|
+
### Implementation Readiness Resolution
|
|
43
43
|
|
|
44
|
-
Before task processing, locate the work plan
|
|
44
|
+
Before task processing, locate the work plan and resolve implementation readiness.
|
|
45
45
|
|
|
46
46
|
Resolution rule:
|
|
47
47
|
1. If `$ARGUMENTS` contains a work plan path, use that exact file and derive `{plan-name}` from its basename. This takes precedence over task-file mtimes.
|
|
@@ -50,7 +50,14 @@ Resolution rule:
|
|
|
50
50
|
4. If matching task files exist, infer `{plan-name}` from the most recent matching task file and use `docs/plans/{plan-name}.md`.
|
|
51
51
|
5. If no matching task files exist, use the most recent non-template work plan in `docs/plans/`.
|
|
52
52
|
|
|
53
|
-
Read the work plan header and apply
|
|
53
|
+
Read the work plan header and apply this readiness rule:
|
|
54
|
+
|
|
55
|
+
| Header state | Action |
|
|
56
|
+
|--------------|--------|
|
|
57
|
+
| `Implementation Readiness: ready` | Proceed to Consumed Task Set computation |
|
|
58
|
+
| `Implementation Readiness: pending` | Execute the Implementation Readiness Preflight Procedure from `subagents-orchestration-guide` for the resolved work plan. Re-read the resulting marker: proceed to Consumed Task Set only when it is `ready`; if it is `escalated`, follow the `escalated` row |
|
|
59
|
+
| `Implementation Readiness: escalated` | Present the persisted Readiness Report remaining gaps, then continue only on explicit user approval |
|
|
60
|
+
| marker absent | Execute the Implementation Readiness Preflight Procedure from `subagents-orchestration-guide` for the resolved work plan. Re-read the resulting marker: proceed to Consumed Task Set only when it is `ready`; if it is `escalated`, follow the `escalated` row |
|
|
54
61
|
|
|
55
62
|
### Consumed Task Set
|
|
56
63
|
|
|
@@ -104,7 +104,7 @@ When user responds to questions:
|
|
|
104
104
|
**Required Flow Compliance**:
|
|
105
105
|
- Run quality-fixer (layer-appropriate) before every commit
|
|
106
106
|
- Obtain user approval before Edit/Write outside autonomous mode
|
|
107
|
-
-
|
|
107
|
+
- Resolve implementation readiness for the approved work plan before autonomous implementation
|
|
108
108
|
|
|
109
109
|
ENFORCEMENT: Commits without quality-fixer approval are invalid and MUST be reverted.
|
|
110
110
|
|
|
@@ -80,6 +80,7 @@ When all applicable criteria are `pass`:
|
|
|
80
80
|
|
|
81
81
|
When one or more criteria fail:
|
|
82
82
|
1. Present the proposed prep tasks to the user and continue only after explicit approval.
|
|
83
|
+
- If the user declines prep execution, persist `Implementation Readiness: escalated` with the current Readiness Report and stop before creating prep task files.
|
|
83
84
|
2. Create task files in `docs/plans/tasks/` using the task template:
|
|
84
85
|
- Backend prep: `{plan-name}-backend-task-prep-{NN}.md`
|
|
85
86
|
- Frontend prep: `{plan-name}-frontend-task-prep-{NN}.md`
|
|
@@ -210,14 +210,14 @@ Work plans use the header line `Implementation Readiness: <status>`.
|
|
|
210
210
|
|
|
211
211
|
| Status | Meaning | Consumer Action |
|
|
212
212
|
|--------|---------|-----------------|
|
|
213
|
-
| `pending` | Initial state from work-planner; readiness has not been checked |
|
|
213
|
+
| `pending` | Initial state from work-planner; readiness has not been checked | Run the Implementation Readiness Preflight Procedure before task execution |
|
|
214
214
|
| `ready` | Readiness scan completed and no applicable failures remain | Proceed with task execution |
|
|
215
215
|
| `escalated` | Readiness scan completed, but one or more failures remain | Read the work plan's Implementation Readiness Report, present remaining gaps, and continue only on explicit user approval |
|
|
216
|
-
| absent | Older work plan without the marker |
|
|
216
|
+
| absent | Older work plan without the marker | Run the Implementation Readiness Preflight Procedure and persist the resulting marker |
|
|
217
217
|
|
|
218
218
|
## Implementation Readiness Preflight Procedure
|
|
219
219
|
|
|
220
|
-
Use this procedure after work-plan approval and before autonomous task execution when the flow needs to verify implementation readiness.
|
|
220
|
+
Use this procedure after work-plan approval and before autonomous task execution when the flow needs to verify implementation readiness. The procedure supplies the evidence needed for user decisions; prompts for approval only after concrete failing criteria and proposed prep tasks are known.
|
|
221
221
|
|
|
222
222
|
1. Load the approved work plan exact path and extract Verification Strategies, Quality Assurance Mechanisms, Design-to-Plan Traceability, ADR Bindings, UI Spec Component -> Task Mapping, Connection Map, test skeleton references, E2E absence reasons, phase structure, referenced Design Docs, ADRs, and UI Specs.
|
|
223
223
|
2. Evaluate these criteria with evidence:
|
|
@@ -227,9 +227,12 @@ Use this procedure after work-plan approval and before autonomous task execution
|
|
|
227
227
|
- R4 UI rendering surface exists when UI work is present
|
|
228
228
|
- R5 Local service stack or browser harness procedure exists when applicable
|
|
229
229
|
3. If every applicable criterion passes, persist `## Implementation Readiness Report` in the work plan and set `Implementation Readiness: ready`.
|
|
230
|
-
4. If any criterion fails,
|
|
231
|
-
5.
|
|
232
|
-
6.
|
|
230
|
+
4. If any criterion fails, present the failing criteria, evidence, and the smallest proposed prep tasks that close the gaps. Continue with prep execution only after explicit user approval for those tasks.
|
|
231
|
+
5. If the user declines prep execution, persist `Implementation Readiness: escalated` with the remaining gaps and stop before autonomous task execution.
|
|
232
|
+
6. If the user approves prep execution, create the approved prep task files under `docs/plans/tasks/` using the task template. Use `{plan-name}-task-prep-{NN}.md` for single-layer plans, `{plan-name}-backend-task-prep-{NN}.md` for backend prep, and `{plan-name}-frontend-task-prep-{NN}.md` for frontend prep.
|
|
233
|
+
7. Execute each exact prep task file through the standard executor -> quality-fixer -> commit cycle, then re-run the scan.
|
|
234
|
+
8. After re-scan, set `Implementation Readiness: ready` when all applicable criteria pass, otherwise `Implementation Readiness: escalated`, and persist remaining gaps in the Readiness Report.
|
|
235
|
+
9. Collapse completed prep task references into the Readiness Report and delete only the prep task files created for the current work plan.
|
|
233
236
|
|
|
234
237
|
## Handling Requirement Changes
|
|
235
238
|
|
|
@@ -155,7 +155,7 @@ skills:
|
|
|
155
155
|
|
|
156
156
|
subagents-orchestration-guide:
|
|
157
157
|
skill: "subagents-orchestration-guide"
|
|
158
|
-
tags: [orchestration, workflow, subagents, context-isolation, autonomous-execution, guided-autonomous-execution, planning, design-flow, implementation-flow, implementation-readiness, readiness-
|
|
158
|
+
tags: [orchestration, workflow, subagents, context-isolation, autonomous-execution, guided-autonomous-execution, planning, design-flow, implementation-flow, implementation-readiness, readiness-resolution]
|
|
159
159
|
typical-use: "Orchestrating subagents through implementation workflows, scale determination, stop points, guided autonomous execution mode"
|
|
160
160
|
size: large
|
|
161
161
|
key-references:
|
|
@@ -180,33 +180,40 @@ Value score and E2E selection rules are defined in **integration-e2e-testing ski
|
|
|
180
180
|
|
|
181
181
|
Adapt comment syntax to the project's language when generating annotations.
|
|
182
182
|
|
|
183
|
+
A skeleton is committed before its implementation exists, so its committed form contains only comments and omits executable imports, runner blocks, and runner globals such as `describe` or `it`. This keeps freshly committed skeletons green under typecheck, lint, and build gates. The implementing task adds executable imports, runner blocks, and assertions alongside the implementation.
|
|
184
|
+
|
|
183
185
|
```
|
|
184
186
|
// [Feature Name] Integration Test - Design Doc: [filename]
|
|
185
187
|
// Generated: [date] | Budget Used: 2/3 integration, 0/2 E2E
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
188
|
+
//
|
|
189
|
+
// Test case: AC1 successful payment creates persisted order
|
|
190
|
+
// AC: "After successful payment, order is created and persisted"
|
|
191
|
+
// Value Score: 95 | Business Value: 10 (business-critical) | Frequency: 9 (90% users)
|
|
192
|
+
// Behavior: User completes payment -> Order created in DB + Payment recorded
|
|
193
|
+
// @category: core-functionality
|
|
194
|
+
// @lane: integration
|
|
195
|
+
// @dependency: PaymentService, OrderRepository, Database
|
|
196
|
+
// @real-dependency: OrderRepository, Database
|
|
197
|
+
// @complexity: high
|
|
198
|
+
// Primary failure mode: payment succeeds but the order row is absent or unpersisted
|
|
199
|
+
// Proof obligation: assert order persistence after successful payment while keeping OrderRepository and Database real; only the external payment gateway may be mocked
|
|
200
|
+
// Verification items:
|
|
201
|
+
// - Persisted order exists with correct status
|
|
202
|
+
// - Payment record exists
|
|
203
|
+
//
|
|
204
|
+
// Test case: AC1 payment failure displays error without creating order
|
|
205
|
+
// AC: "Payment failure shows user-friendly error message"
|
|
206
|
+
// Value Score: 34 | Business Value: 8 (prevents support tickets) | Frequency: 2 (rare)
|
|
207
|
+
// Behavior: Payment fails -> User sees actionable error + Order not created
|
|
208
|
+
// @category: core-functionality
|
|
209
|
+
// @lane: integration
|
|
210
|
+
// @dependency: PaymentService, ErrorHandler
|
|
211
|
+
// @complexity: medium
|
|
212
|
+
// Primary failure mode: payment failure still creates an order or hides the user-facing error
|
|
213
|
+
// Proof obligation: assert the visible error and the unchanged order state after a failed payment; mock only the external payment gateway failure
|
|
214
|
+
// Verification items:
|
|
215
|
+
// - Visible actionable error appears
|
|
216
|
+
// - Order count or order state remains unchanged
|
|
210
217
|
```
|
|
211
218
|
|
|
212
219
|
### fixture-e2e Test File
|
|
@@ -216,20 +223,20 @@ Adapt comment syntax to the project's language when generating annotations.
|
|
|
216
223
|
// Generated: [date] | Budget Used: 1/3 fixture-e2e
|
|
217
224
|
// Test Type: Browser UI with mocked backend / fixture-driven state
|
|
218
225
|
// Implementation Timing: Alongside UI implementation
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
226
|
+
//
|
|
227
|
+
// User Journey: Dismiss card -> Undo banner appears -> Undo restores card
|
|
228
|
+
// Value Score: 60 | Business Value: 6 | Frequency: 7 | Defect Detection: 8
|
|
229
|
+
// Verification: Browser-visible state transitions with mocked backend state
|
|
230
|
+
// @category: fixture-e2e
|
|
231
|
+
// @lane: fixture-e2e
|
|
232
|
+
// @dependency: full-ui (mocked backend)
|
|
233
|
+
// @complexity: medium
|
|
234
|
+
// Primary failure mode: undo banner appears but the dismissed card is not restored
|
|
235
|
+
// Proof obligation: assert browser-visible state before dismissal, after dismissal, and after undo using fixture-controlled backend state
|
|
236
|
+
// Verification items:
|
|
237
|
+
// - Card is visible before dismissal
|
|
238
|
+
// - Undo banner is visible after dismissal
|
|
239
|
+
// - Card is restored after undo
|
|
233
240
|
```
|
|
234
241
|
|
|
235
242
|
### service-integration-e2e Test File
|
|
@@ -239,20 +246,20 @@ Adapt comment syntax to the project's language when generating annotations.
|
|
|
239
246
|
// Generated: [date] | Budget Used: 1/2 service-integration-e2e
|
|
240
247
|
// Test Type: End-to-end against running local stack
|
|
241
248
|
// Implementation Timing: Final phase only
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
249
|
+
//
|
|
250
|
+
// User Journey: Complete purchase flow (browse -> checkout -> payment -> confirmation persisted)
|
|
251
|
+
// Value Score: 120 | Business Value: 10 (business-critical) | Frequency: 10 (core flow) | Legal: true
|
|
252
|
+
// Verification: Order persists in DB and confirmation event is emitted
|
|
253
|
+
// @category: service-integration-e2e
|
|
254
|
+
// @lane: service-integration-e2e
|
|
255
|
+
// @dependency: full-system
|
|
256
|
+
// @complexity: high
|
|
257
|
+
// Primary failure mode: checkout appears successful but the persisted order or confirmation event is missing
|
|
258
|
+
// Proof obligation: exercise the full local service stack and assert persisted order state plus confirmation event after checkout
|
|
259
|
+
// Verification items:
|
|
260
|
+
// - Checkout completes
|
|
261
|
+
// - Order row persists
|
|
262
|
+
// - Confirmation event is emitted
|
|
256
263
|
```
|
|
257
264
|
|
|
258
265
|
### Generation Report
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codex-workflows",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.8",
|
|
4
4
|
"description": "Task-oriented agentic coding framework for OpenAI Codex CLI — skills, recipes, and subagents for structured development workflows",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Shinsuke Kagawa",
|