valent-pipeline 0.2.20 → 0.2.21
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/README.md +438 -0
- package/package.json +1 -1
- package/pipeline/agents-manifest.yaml +61 -1
- package/pipeline/docs/agent-reference.md +82 -23
- package/pipeline/docs/design/refactor-checklist.md +111 -0
- package/pipeline/docs/index.md +60 -0
- package/pipeline/docs/pipeline-overview.md +4 -0
- package/pipeline/prompts/bend.md +5 -11
- package/pipeline/prompts/critic.md +9 -0
- package/pipeline/prompts/data.md +59 -0
- package/pipeline/prompts/docgen.md +61 -0
- package/pipeline/prompts/fend.md +3 -10
- package/pipeline/prompts/iac.md +70 -0
- package/pipeline/prompts/lead.md +81 -3
- package/pipeline/prompts/libdev.md +61 -0
- package/pipeline/prompts/mcp-dev.md +59 -0
- package/pipeline/prompts/mobile.md +92 -0
- package/pipeline/prompts/qa-a.md +1 -1
- package/pipeline/prompts/qa-b.md +1 -1
- package/pipeline/prompts/reqs.md +5 -1
- package/pipeline/scripts/db-bootstrap.ts +1 -1
- package/pipeline/scripts/embed-sqlite.ts +5 -0
- package/pipeline/steps/common/quality-standards.md +19 -0
- package/pipeline/steps/critic/data-pipeline.md +28 -0
- package/pipeline/steps/critic/document-generation.md +21 -0
- package/pipeline/steps/critic/iac.md +29 -0
- package/pipeline/steps/critic/library.md +24 -0
- package/pipeline/steps/critic/mcp-server.md +24 -0
- package/pipeline/steps/critic/mobile-app.md +29 -0
- package/pipeline/steps/data/estimate.md +51 -0
- package/pipeline/steps/data/handoff.md +9 -0
- package/pipeline/steps/data/implement.md +16 -0
- package/pipeline/steps/data/read-inputs.md +13 -0
- package/pipeline/steps/data/write-tests.md +13 -0
- package/pipeline/steps/docgen/estimate.md +49 -0
- package/pipeline/steps/docgen/handoff.md +9 -0
- package/pipeline/steps/docgen/implement.md +19 -0
- package/pipeline/steps/docgen/read-inputs.md +13 -0
- package/pipeline/steps/docgen/write-tests.md +15 -0
- package/pipeline/steps/iac/estimate.md +50 -0
- package/pipeline/steps/iac/handoff.md +9 -0
- package/pipeline/steps/iac/implement.md +19 -0
- package/pipeline/steps/iac/read-inputs.md +13 -0
- package/pipeline/steps/iac/write-tests.md +20 -0
- package/pipeline/steps/judge/ship-decision.md +14 -1
- package/pipeline/steps/libdev/estimate.md +49 -0
- package/pipeline/steps/libdev/handoff.md +9 -0
- package/pipeline/steps/libdev/implement.md +19 -0
- package/pipeline/steps/libdev/read-inputs.md +13 -0
- package/pipeline/steps/libdev/write-tests.md +16 -0
- package/pipeline/steps/mcp-dev/estimate.md +49 -0
- package/pipeline/steps/mcp-dev/handoff.md +9 -0
- package/pipeline/steps/mcp-dev/implement.md +29 -0
- package/pipeline/steps/mcp-dev/read-inputs.md +13 -0
- package/pipeline/steps/mcp-dev/write-tests.md +19 -0
- package/pipeline/steps/mobile/emulator-lifecycle.md +67 -0
- package/pipeline/steps/mobile/estimate.md +51 -0
- package/pipeline/steps/mobile/flutter.md +30 -0
- package/pipeline/steps/mobile/handoff.md +18 -0
- package/pipeline/steps/mobile/implement.md +20 -0
- package/pipeline/steps/mobile/react-native.md +32 -0
- package/pipeline/steps/mobile/read-inputs.md +10 -0
- package/pipeline/steps/mobile/write-tests.md +59 -0
- package/pipeline/steps/orchestration/adopt-lead-and-create-team.md +1 -1
- package/pipeline/steps/orchestration/sprint-groom.md +4 -0
- package/pipeline/steps/orchestration/sprint-size.md +19 -12
- package/pipeline/steps/orchestration/validate-story-inputs.md +9 -0
- package/pipeline/steps/qa-a/data-pipeline.md +32 -0
- package/pipeline/steps/qa-a/document-generation.md +52 -0
- package/pipeline/steps/qa-a/iac.md +30 -0
- package/pipeline/steps/qa-a/library.md +42 -0
- package/pipeline/steps/qa-a/mcp-server.md +31 -0
- package/pipeline/steps/qa-a/mobile-app.md +59 -0
- package/pipeline/steps/qa-b/data-pipeline.md +48 -0
- package/pipeline/steps/qa-b/document-generation.md +47 -0
- package/pipeline/steps/qa-b/iac.md +44 -0
- package/pipeline/steps/qa-b/library.md +61 -0
- package/pipeline/steps/qa-b/mcp-server.md +40 -0
- package/pipeline/steps/qa-b/mobile-app.md +71 -0
- package/pipeline/steps/readiness/standalone-review.md +7 -2
- package/pipeline/steps/reqs/data-pipeline.md +56 -0
- package/pipeline/steps/reqs/document-generation.md +55 -0
- package/pipeline/steps/reqs/draft-brief.md +10 -0
- package/pipeline/steps/reqs/iac.md +63 -0
- package/pipeline/steps/reqs/library.md +56 -0
- package/pipeline/steps/reqs/mcp-server.md +48 -0
- package/pipeline/steps/reqs/mobile-app.md +54 -0
- package/pipeline/steps/reqs/self-review.md +5 -3
- package/pipeline/task-graphs/backend-api.yaml +19 -2
- package/pipeline/task-graphs/data-pipeline.yaml +29 -12
- package/pipeline/task-graphs/document-generation.yaml +29 -12
- package/pipeline/task-graphs/frontend-only.yaml +19 -2
- package/pipeline/task-graphs/fullstack-web.yaml +19 -2
- package/pipeline/task-graphs/library.yaml +29 -12
- package/pipeline/task-graphs/mcp-server.yaml +29 -12
- package/pipeline/task-graphs/mobile-app.yaml +171 -0
- package/pipeline/templates/bugs.template.md +1 -1
- package/pipeline/templates/critic-review.template.md +1 -1
- package/pipeline/templates/data-handoff.template.md +96 -0
- package/pipeline/templates/docgen-handoff.template.md +83 -0
- package/pipeline/templates/iac-handoff.template.md +83 -0
- package/pipeline/templates/judge-decision.template.md +11 -1
- package/pipeline/templates/libdev-handoff.template.md +82 -0
- package/pipeline/templates/mcp-dev-handoff.template.md +87 -0
- package/pipeline/templates/mobile-handoff.template.md +122 -0
- package/pipeline/templates/reqs-brief.template.md +60 -4
- package/skills/valent-run-deferred-tests/SKILL.md +109 -0
- package/src/commands/db-rebuild.js +5 -0
- package/src/lib/config-schema.js +1 -1
- package/src/lib/db.js +1 -1
|
@@ -30,19 +30,27 @@ tasks:
|
|
|
30
30
|
activeForm: "READINESS reviewing pre-dev artifacts"
|
|
31
31
|
blockedBy: [qa_a]
|
|
32
32
|
|
|
33
|
-
- ref:
|
|
34
|
-
agent:
|
|
35
|
-
subject: "
|
|
36
|
-
description: "Read reqs-brief.md and qa-test-spec.md, implement data pipeline, produce
|
|
37
|
-
activeForm: "
|
|
33
|
+
- ref: data
|
|
34
|
+
agent: DATA
|
|
35
|
+
subject: "DATA: Implement data pipeline production code and tests"
|
|
36
|
+
description: "Read reqs-brief.md and qa-test-spec.md, implement data pipeline, produce data-handoff.md."
|
|
37
|
+
activeForm: "DATA implementing data pipeline"
|
|
38
38
|
blockedBy: [readiness]
|
|
39
39
|
|
|
40
|
+
- ref: iac
|
|
41
|
+
agent: IAC
|
|
42
|
+
subject: "IAC: Implement infrastructure definitions and tests"
|
|
43
|
+
description: "Read reqs-brief.md and qa-test-spec.md, implement infrastructure code, produce iac-handoff.md."
|
|
44
|
+
activeForm: "IAC implementing infrastructure"
|
|
45
|
+
blockedBy: [readiness]
|
|
46
|
+
conditional: "testing_profiles includes iac"
|
|
47
|
+
|
|
40
48
|
- ref: critic
|
|
41
49
|
agent: CRITIC
|
|
42
50
|
subject: "CRITIC: Adversarial code review"
|
|
43
51
|
description: "Read git-diff, reqs-brief.md, qa-test-spec.md. Run blind-hunt, edge-case-hunt, acceptance-audit, triage passes. Produce critic-review.md."
|
|
44
52
|
activeForm: "CRITIC reviewing code"
|
|
45
|
-
blockedBy: [
|
|
53
|
+
blockedBy: [data, iac]
|
|
46
54
|
|
|
47
55
|
- ref: qa_b
|
|
48
56
|
agent: QA-B
|
|
@@ -89,25 +97,34 @@ agents:
|
|
|
89
97
|
wave: 1
|
|
90
98
|
prompt: .valent-pipeline/prompts/readiness.md
|
|
91
99
|
trigger: "Wait for [HANDOFF] from QA-A. Begin when task is unblocked."
|
|
92
|
-
completion: "Send [READINESS-APPROVAL] to
|
|
100
|
+
completion: "Send [READINESS-APPROVAL] to DATA, or [READINESS-REJECTION] to responsible agent. Mark task completed on approval."
|
|
93
101
|
cd_targets: [readiness]
|
|
94
102
|
|
|
95
103
|
# Wave 2: Spawn when QA-A completes (spin up while READINESS reviews)
|
|
96
|
-
- name:
|
|
97
|
-
ref:
|
|
104
|
+
- name: DATA
|
|
105
|
+
ref: data
|
|
106
|
+
wave: 2
|
|
107
|
+
spawn_trigger: "qa_a completed"
|
|
108
|
+
prompt: .valent-pipeline/prompts/data.md
|
|
109
|
+
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for READINESS approval before starting implementation."
|
|
110
|
+
completion: "Send [HANDOFF] to Lead and CRITIC. Mark task completed."
|
|
111
|
+
cd_targets: [data]
|
|
112
|
+
|
|
113
|
+
- name: IAC
|
|
114
|
+
ref: iac
|
|
98
115
|
wave: 2
|
|
99
116
|
spawn_trigger: "qa_a completed"
|
|
100
|
-
prompt: .valent-pipeline/prompts/
|
|
117
|
+
prompt: .valent-pipeline/prompts/iac.md
|
|
101
118
|
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for READINESS approval before starting implementation."
|
|
102
119
|
completion: "Send [HANDOFF] to Lead and CRITIC. Mark task completed."
|
|
103
|
-
cd_targets: [
|
|
120
|
+
cd_targets: [iac]
|
|
104
121
|
|
|
105
122
|
- name: CRITIC
|
|
106
123
|
ref: critic
|
|
107
124
|
wave: 2
|
|
108
125
|
spawn_trigger: "qa_a completed"
|
|
109
126
|
prompt: .valent-pipeline/prompts/critic.md
|
|
110
|
-
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for [HANDOFF] from
|
|
127
|
+
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for [HANDOFF] from all active dev agents before starting review."
|
|
111
128
|
completion: "Send [HANDOFF] to Lead and QA-B. Mark task completed."
|
|
112
129
|
cd_targets: [critic]
|
|
113
130
|
|
|
@@ -30,19 +30,27 @@ tasks:
|
|
|
30
30
|
activeForm: "READINESS reviewing pre-dev artifacts"
|
|
31
31
|
blockedBy: [qa_a]
|
|
32
32
|
|
|
33
|
-
- ref:
|
|
34
|
-
agent:
|
|
35
|
-
subject: "
|
|
36
|
-
description: "Read reqs-brief.md and qa-test-spec.md, implement document generation templates and content pipeline, produce
|
|
37
|
-
activeForm: "
|
|
33
|
+
- ref: docgen
|
|
34
|
+
agent: DOCGEN
|
|
35
|
+
subject: "DOCGEN: Implement template and content pipeline production code and tests"
|
|
36
|
+
description: "Read reqs-brief.md and qa-test-spec.md, implement document generation templates and content pipeline, produce docgen-handoff.md."
|
|
37
|
+
activeForm: "DOCGEN implementing document generation"
|
|
38
38
|
blockedBy: [readiness]
|
|
39
39
|
|
|
40
|
+
- ref: iac
|
|
41
|
+
agent: IAC
|
|
42
|
+
subject: "IAC: Implement infrastructure definitions and tests"
|
|
43
|
+
description: "Read reqs-brief.md and qa-test-spec.md, implement infrastructure code, produce iac-handoff.md."
|
|
44
|
+
activeForm: "IAC implementing infrastructure"
|
|
45
|
+
blockedBy: [readiness]
|
|
46
|
+
conditional: "testing_profiles includes iac"
|
|
47
|
+
|
|
40
48
|
- ref: critic
|
|
41
49
|
agent: CRITIC
|
|
42
50
|
subject: "CRITIC: Adversarial code review"
|
|
43
51
|
description: "Read git-diff, reqs-brief.md, qa-test-spec.md. Run blind-hunt, edge-case-hunt, acceptance-audit, triage passes. Produce critic-review.md."
|
|
44
52
|
activeForm: "CRITIC reviewing code"
|
|
45
|
-
blockedBy: [
|
|
53
|
+
blockedBy: [docgen, iac]
|
|
46
54
|
|
|
47
55
|
- ref: qa_b
|
|
48
56
|
agent: QA-B
|
|
@@ -89,25 +97,34 @@ agents:
|
|
|
89
97
|
wave: 1
|
|
90
98
|
prompt: .valent-pipeline/prompts/readiness.md
|
|
91
99
|
trigger: "Wait for [HANDOFF] from QA-A. Begin when task is unblocked."
|
|
92
|
-
completion: "Send [READINESS-APPROVAL] to
|
|
100
|
+
completion: "Send [READINESS-APPROVAL] to DOCGEN, or [READINESS-REJECTION] to responsible agent. Mark task completed on approval."
|
|
93
101
|
cd_targets: [readiness]
|
|
94
102
|
|
|
95
103
|
# Wave 2: Spawn when QA-A completes (spin up while READINESS reviews)
|
|
96
|
-
- name:
|
|
97
|
-
ref:
|
|
104
|
+
- name: DOCGEN
|
|
105
|
+
ref: docgen
|
|
106
|
+
wave: 2
|
|
107
|
+
spawn_trigger: "qa_a completed"
|
|
108
|
+
prompt: .valent-pipeline/prompts/docgen.md
|
|
109
|
+
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for READINESS approval before starting implementation."
|
|
110
|
+
completion: "Send [HANDOFF] to Lead and CRITIC. Mark task completed."
|
|
111
|
+
cd_targets: [docgen]
|
|
112
|
+
|
|
113
|
+
- name: IAC
|
|
114
|
+
ref: iac
|
|
98
115
|
wave: 2
|
|
99
116
|
spawn_trigger: "qa_a completed"
|
|
100
|
-
prompt: .valent-pipeline/prompts/
|
|
117
|
+
prompt: .valent-pipeline/prompts/iac.md
|
|
101
118
|
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for READINESS approval before starting implementation."
|
|
102
119
|
completion: "Send [HANDOFF] to Lead and CRITIC. Mark task completed."
|
|
103
|
-
cd_targets: [
|
|
120
|
+
cd_targets: [iac]
|
|
104
121
|
|
|
105
122
|
- name: CRITIC
|
|
106
123
|
ref: critic
|
|
107
124
|
wave: 2
|
|
108
125
|
spawn_trigger: "qa_a completed"
|
|
109
126
|
prompt: .valent-pipeline/prompts/critic.md
|
|
110
|
-
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for [HANDOFF] from
|
|
127
|
+
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for [HANDOFF] from all active dev agents before starting review."
|
|
111
128
|
completion: "Send [HANDOFF] to Lead and QA-B. Mark task completed."
|
|
112
129
|
cd_targets: [critic]
|
|
113
130
|
|
|
@@ -51,12 +51,20 @@ tasks:
|
|
|
51
51
|
activeForm: "FEND implementing frontend"
|
|
52
52
|
blockedBy: [readiness]
|
|
53
53
|
|
|
54
|
+
- ref: iac
|
|
55
|
+
agent: IAC
|
|
56
|
+
subject: "IAC: Implement infrastructure definitions and tests"
|
|
57
|
+
description: "Read reqs-brief.md and qa-test-spec.md, implement infrastructure code, produce iac-handoff.md."
|
|
58
|
+
activeForm: "IAC implementing infrastructure"
|
|
59
|
+
blockedBy: [readiness]
|
|
60
|
+
conditional: "testing_profiles includes iac"
|
|
61
|
+
|
|
54
62
|
- ref: critic
|
|
55
63
|
agent: CRITIC
|
|
56
64
|
subject: "CRITIC: Adversarial code review"
|
|
57
65
|
description: "Read git-diff, reqs-brief.md, qa-test-spec.md. Run blind-hunt, edge-case-hunt, acceptance-audit, triage passes. Produce critic-review.md."
|
|
58
66
|
activeForm: "CRITIC reviewing code"
|
|
59
|
-
blockedBy: [fend]
|
|
67
|
+
blockedBy: [fend, iac]
|
|
60
68
|
|
|
61
69
|
- ref: qa_b
|
|
62
70
|
agent: QA-B
|
|
@@ -132,12 +140,21 @@ agents:
|
|
|
132
140
|
completion: "Send [HANDOFF] to Lead and CRITIC. Mark task completed."
|
|
133
141
|
cd_targets: [fend]
|
|
134
142
|
|
|
143
|
+
- name: IAC
|
|
144
|
+
ref: iac
|
|
145
|
+
wave: 2
|
|
146
|
+
spawn_trigger: "qa_a completed"
|
|
147
|
+
prompt: .valent-pipeline/prompts/iac.md
|
|
148
|
+
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for READINESS approval before starting implementation."
|
|
149
|
+
completion: "Send [HANDOFF] to Lead and CRITIC. Mark task completed."
|
|
150
|
+
cd_targets: [iac]
|
|
151
|
+
|
|
135
152
|
- name: CRITIC
|
|
136
153
|
ref: critic
|
|
137
154
|
wave: 2
|
|
138
155
|
spawn_trigger: "qa_a completed"
|
|
139
156
|
prompt: .valent-pipeline/prompts/critic.md
|
|
140
|
-
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for [HANDOFF] from
|
|
157
|
+
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for [HANDOFF] from all active dev agents before starting review."
|
|
141
158
|
completion: "Send [HANDOFF] to Lead and QA-B. Mark task completed."
|
|
142
159
|
cd_targets: [critic]
|
|
143
160
|
|
|
@@ -59,12 +59,20 @@ tasks:
|
|
|
59
59
|
blockedBy: [readiness]
|
|
60
60
|
skip_when: "testing_profiles excludes ui"
|
|
61
61
|
|
|
62
|
+
- ref: iac
|
|
63
|
+
agent: IAC
|
|
64
|
+
subject: "IAC: Implement infrastructure definitions and tests"
|
|
65
|
+
description: "Read reqs-brief.md and qa-test-spec.md, implement infrastructure code, produce iac-handoff.md."
|
|
66
|
+
activeForm: "IAC implementing infrastructure"
|
|
67
|
+
blockedBy: [readiness]
|
|
68
|
+
conditional: "testing_profiles includes iac"
|
|
69
|
+
|
|
62
70
|
- ref: critic
|
|
63
71
|
agent: CRITIC
|
|
64
72
|
subject: "CRITIC: Adversarial code review"
|
|
65
73
|
description: "Read git-diff, reqs-brief.md, qa-test-spec.md. Run blind-hunt, edge-case-hunt, acceptance-audit, triage passes. Produce critic-review.md."
|
|
66
74
|
activeForm: "CRITIC reviewing code"
|
|
67
|
-
blockedBy: [bend, fend]
|
|
75
|
+
blockedBy: [bend, fend, iac]
|
|
68
76
|
|
|
69
77
|
- ref: qa_b
|
|
70
78
|
agent: QA-B
|
|
@@ -149,12 +157,21 @@ agents:
|
|
|
149
157
|
completion: "Send [HANDOFF] to Lead and CRITIC. Mark task completed."
|
|
150
158
|
cd_targets: [fend]
|
|
151
159
|
|
|
160
|
+
- name: IAC
|
|
161
|
+
ref: iac
|
|
162
|
+
wave: 2
|
|
163
|
+
spawn_trigger: "qa_a completed"
|
|
164
|
+
prompt: .valent-pipeline/prompts/iac.md
|
|
165
|
+
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for READINESS approval before starting implementation."
|
|
166
|
+
completion: "Send [HANDOFF] to Lead and CRITIC. Mark task completed."
|
|
167
|
+
cd_targets: [iac]
|
|
168
|
+
|
|
152
169
|
- name: CRITIC
|
|
153
170
|
ref: critic
|
|
154
171
|
wave: 2
|
|
155
172
|
spawn_trigger: "qa_a completed"
|
|
156
173
|
prompt: .valent-pipeline/prompts/critic.md
|
|
157
|
-
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for [HANDOFF] from
|
|
174
|
+
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for [HANDOFF] from all active dev agents before starting review."
|
|
158
175
|
completion: "Send [HANDOFF] to Lead and QA-B. Mark task completed."
|
|
159
176
|
cd_targets: [critic]
|
|
160
177
|
|
|
@@ -30,19 +30,27 @@ tasks:
|
|
|
30
30
|
activeForm: "READINESS reviewing pre-dev artifacts"
|
|
31
31
|
blockedBy: [qa_a]
|
|
32
32
|
|
|
33
|
-
- ref:
|
|
34
|
-
agent:
|
|
35
|
-
subject: "
|
|
36
|
-
description: "Read reqs-brief.md and qa-test-spec.md, implement library public API and module, produce
|
|
37
|
-
activeForm: "
|
|
33
|
+
- ref: libdev
|
|
34
|
+
agent: LIBDEV
|
|
35
|
+
subject: "LIBDEV: Implement public API and module production code and tests"
|
|
36
|
+
description: "Read reqs-brief.md and qa-test-spec.md, implement library public API and module, produce libdev-handoff.md."
|
|
37
|
+
activeForm: "LIBDEV implementing library"
|
|
38
38
|
blockedBy: [readiness]
|
|
39
39
|
|
|
40
|
+
- ref: iac
|
|
41
|
+
agent: IAC
|
|
42
|
+
subject: "IAC: Implement infrastructure definitions and tests"
|
|
43
|
+
description: "Read reqs-brief.md and qa-test-spec.md, implement infrastructure code, produce iac-handoff.md."
|
|
44
|
+
activeForm: "IAC implementing infrastructure"
|
|
45
|
+
blockedBy: [readiness]
|
|
46
|
+
conditional: "testing_profiles includes iac"
|
|
47
|
+
|
|
40
48
|
- ref: critic
|
|
41
49
|
agent: CRITIC
|
|
42
50
|
subject: "CRITIC: Adversarial code review"
|
|
43
51
|
description: "Read git-diff, reqs-brief.md, qa-test-spec.md. Run blind-hunt, edge-case-hunt, acceptance-audit, triage passes. Produce critic-review.md."
|
|
44
52
|
activeForm: "CRITIC reviewing code"
|
|
45
|
-
blockedBy: [
|
|
53
|
+
blockedBy: [libdev, iac]
|
|
46
54
|
|
|
47
55
|
- ref: qa_b
|
|
48
56
|
agent: QA-B
|
|
@@ -89,25 +97,34 @@ agents:
|
|
|
89
97
|
wave: 1
|
|
90
98
|
prompt: .valent-pipeline/prompts/readiness.md
|
|
91
99
|
trigger: "Wait for [HANDOFF] from QA-A. Begin when task is unblocked."
|
|
92
|
-
completion: "Send [READINESS-APPROVAL] to
|
|
100
|
+
completion: "Send [READINESS-APPROVAL] to LIBDEV, or [READINESS-REJECTION] to responsible agent. Mark task completed on approval."
|
|
93
101
|
cd_targets: [readiness]
|
|
94
102
|
|
|
95
103
|
# Wave 2: Spawn when QA-A completes (spin up while READINESS reviews)
|
|
96
|
-
- name:
|
|
97
|
-
ref:
|
|
104
|
+
- name: LIBDEV
|
|
105
|
+
ref: libdev
|
|
106
|
+
wave: 2
|
|
107
|
+
spawn_trigger: "qa_a completed"
|
|
108
|
+
prompt: .valent-pipeline/prompts/libdev.md
|
|
109
|
+
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for READINESS approval before starting implementation."
|
|
110
|
+
completion: "Send [HANDOFF] to Lead and CRITIC. Mark task completed."
|
|
111
|
+
cd_targets: [libdev]
|
|
112
|
+
|
|
113
|
+
- name: IAC
|
|
114
|
+
ref: iac
|
|
98
115
|
wave: 2
|
|
99
116
|
spawn_trigger: "qa_a completed"
|
|
100
|
-
prompt: .valent-pipeline/prompts/
|
|
117
|
+
prompt: .valent-pipeline/prompts/iac.md
|
|
101
118
|
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for READINESS approval before starting implementation."
|
|
102
119
|
completion: "Send [HANDOFF] to Lead and CRITIC. Mark task completed."
|
|
103
|
-
cd_targets: [
|
|
120
|
+
cd_targets: [iac]
|
|
104
121
|
|
|
105
122
|
- name: CRITIC
|
|
106
123
|
ref: critic
|
|
107
124
|
wave: 2
|
|
108
125
|
spawn_trigger: "qa_a completed"
|
|
109
126
|
prompt: .valent-pipeline/prompts/critic.md
|
|
110
|
-
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for [HANDOFF] from
|
|
127
|
+
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for [HANDOFF] from all active dev agents before starting review."
|
|
111
128
|
completion: "Send [HANDOFF] to Lead and QA-B. Mark task completed."
|
|
112
129
|
cd_targets: [critic]
|
|
113
130
|
|
|
@@ -30,19 +30,27 @@ tasks:
|
|
|
30
30
|
activeForm: "READINESS reviewing pre-dev artifacts"
|
|
31
31
|
blockedBy: [qa_a]
|
|
32
32
|
|
|
33
|
-
- ref:
|
|
34
|
-
agent:
|
|
35
|
-
subject: "
|
|
36
|
-
description: "Read reqs-brief.md and qa-test-spec.md, implement MCP server tools and handlers, produce
|
|
37
|
-
activeForm: "
|
|
33
|
+
- ref: mcp_dev
|
|
34
|
+
agent: MCP-DEV
|
|
35
|
+
subject: "MCP-DEV: Implement MCP tool production code and tests"
|
|
36
|
+
description: "Read reqs-brief.md and qa-test-spec.md, implement MCP server tools and handlers, produce mcp-dev-handoff.md."
|
|
37
|
+
activeForm: "MCP-DEV implementing MCP server"
|
|
38
38
|
blockedBy: [readiness]
|
|
39
39
|
|
|
40
|
+
- ref: iac
|
|
41
|
+
agent: IAC
|
|
42
|
+
subject: "IAC: Implement infrastructure definitions and tests"
|
|
43
|
+
description: "Read reqs-brief.md and qa-test-spec.md, implement infrastructure code, produce iac-handoff.md."
|
|
44
|
+
activeForm: "IAC implementing infrastructure"
|
|
45
|
+
blockedBy: [readiness]
|
|
46
|
+
conditional: "testing_profiles includes iac"
|
|
47
|
+
|
|
40
48
|
- ref: critic
|
|
41
49
|
agent: CRITIC
|
|
42
50
|
subject: "CRITIC: Adversarial code review"
|
|
43
51
|
description: "Read git-diff, reqs-brief.md, qa-test-spec.md. Run blind-hunt, edge-case-hunt, acceptance-audit, triage passes. Produce critic-review.md."
|
|
44
52
|
activeForm: "CRITIC reviewing code"
|
|
45
|
-
blockedBy: [
|
|
53
|
+
blockedBy: [mcp_dev, iac]
|
|
46
54
|
|
|
47
55
|
- ref: qa_b
|
|
48
56
|
agent: QA-B
|
|
@@ -89,25 +97,34 @@ agents:
|
|
|
89
97
|
wave: 1
|
|
90
98
|
prompt: .valent-pipeline/prompts/readiness.md
|
|
91
99
|
trigger: "Wait for [HANDOFF] from QA-A. Begin when task is unblocked."
|
|
92
|
-
completion: "Send [READINESS-APPROVAL] to
|
|
100
|
+
completion: "Send [READINESS-APPROVAL] to MCP-DEV, or [READINESS-REJECTION] to responsible agent. Mark task completed on approval."
|
|
93
101
|
cd_targets: [readiness]
|
|
94
102
|
|
|
95
103
|
# Wave 2: Spawn when QA-A completes (spin up while READINESS reviews)
|
|
96
|
-
- name:
|
|
97
|
-
ref:
|
|
104
|
+
- name: MCP-DEV
|
|
105
|
+
ref: mcp_dev
|
|
106
|
+
wave: 2
|
|
107
|
+
spawn_trigger: "qa_a completed"
|
|
108
|
+
prompt: .valent-pipeline/prompts/mcp-dev.md
|
|
109
|
+
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for READINESS approval before starting implementation."
|
|
110
|
+
completion: "Send [HANDOFF] to Lead and CRITIC. Mark task completed."
|
|
111
|
+
cd_targets: [mcp-dev]
|
|
112
|
+
|
|
113
|
+
- name: IAC
|
|
114
|
+
ref: iac
|
|
98
115
|
wave: 2
|
|
99
116
|
spawn_trigger: "qa_a completed"
|
|
100
|
-
prompt: .valent-pipeline/prompts/
|
|
117
|
+
prompt: .valent-pipeline/prompts/iac.md
|
|
101
118
|
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for READINESS approval before starting implementation."
|
|
102
119
|
completion: "Send [HANDOFF] to Lead and CRITIC. Mark task completed."
|
|
103
|
-
cd_targets: [
|
|
120
|
+
cd_targets: [iac]
|
|
104
121
|
|
|
105
122
|
- name: CRITIC
|
|
106
123
|
ref: critic
|
|
107
124
|
wave: 2
|
|
108
125
|
spawn_trigger: "qa_a completed"
|
|
109
126
|
prompt: .valent-pipeline/prompts/critic.md
|
|
110
|
-
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for [HANDOFF] from
|
|
127
|
+
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for [HANDOFF] from all active dev agents before starting review."
|
|
111
128
|
completion: "Send [HANDOFF] to Lead and QA-B. Mark task completed."
|
|
112
129
|
cd_targets: [critic]
|
|
113
130
|
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
# Task graph template for mobile-app projects
|
|
2
|
+
# Read by the Lead at kick-off to create tasks and wire dependencies.
|
|
3
|
+
#
|
|
4
|
+
# Variables resolved at runtime:
|
|
5
|
+
# {{story_id}} — current story identifier
|
|
6
|
+
# {{story_output_dir}} — resolved story output directory
|
|
7
|
+
# {{degraded_note}} — note about degraded inputs (UXA only)
|
|
8
|
+
#
|
|
9
|
+
# Conditional tasks:
|
|
10
|
+
# Tasks with `conditional` are only created when the condition is met.
|
|
11
|
+
# Tasks with `skip_when` are removed when the condition IS met.
|
|
12
|
+
# When a conditional/skipped task is removed, the Lead removes its ref from
|
|
13
|
+
# other tasks' blockedBy lists.
|
|
14
|
+
|
|
15
|
+
project_type: "mobile-app"
|
|
16
|
+
|
|
17
|
+
tasks:
|
|
18
|
+
- ref: reqs
|
|
19
|
+
agent: REQS
|
|
20
|
+
subject: "REQS: Analyze story and produce implementation brief"
|
|
21
|
+
description: "Read {{story_id}} story inputs, translate ACs into structured implementation brief (reqs-brief.md)."
|
|
22
|
+
activeForm: "REQS analyzing requirements"
|
|
23
|
+
blockedBy: []
|
|
24
|
+
|
|
25
|
+
- ref: uxa
|
|
26
|
+
agent: UXA
|
|
27
|
+
subject: "UXA: Translate requirements into screen/component specs"
|
|
28
|
+
description: "Read reqs-brief.md, produce uxa-spec.md with mobile screen and component specifications. {{degraded_note}}"
|
|
29
|
+
activeForm: "UXA writing component specs"
|
|
30
|
+
blockedBy: [reqs]
|
|
31
|
+
skip_when: "testing_profiles excludes ui"
|
|
32
|
+
|
|
33
|
+
- ref: qa_a
|
|
34
|
+
agent: QA-A
|
|
35
|
+
subject: "QA-A: Produce behavioral test specifications and Maestro flow specs"
|
|
36
|
+
description: "Read reqs-brief.md and uxa-spec.md, produce qa-test-spec.md with Maestro flow specifications."
|
|
37
|
+
activeForm: "QA-A writing test specifications"
|
|
38
|
+
blockedBy: [uxa]
|
|
39
|
+
|
|
40
|
+
- ref: readiness
|
|
41
|
+
agent: READINESS
|
|
42
|
+
subject: "READINESS: Validate specs are implementation-ready"
|
|
43
|
+
description: "Review reqs-brief.md, uxa-spec.md, qa-test-spec.md sequentially. Reject first failure or approve all. Route rejections to responsible agent."
|
|
44
|
+
activeForm: "READINESS reviewing pre-dev artifacts"
|
|
45
|
+
blockedBy: [qa_a]
|
|
46
|
+
|
|
47
|
+
- ref: bend
|
|
48
|
+
agent: BEND
|
|
49
|
+
subject: "BEND: Implement backend production code and tests"
|
|
50
|
+
description: "Read reqs-brief.md and qa-test-spec.md, implement backend, produce bend-handoff.md."
|
|
51
|
+
activeForm: "BEND implementing backend"
|
|
52
|
+
blockedBy: [readiness]
|
|
53
|
+
conditional: "testing_profiles includes api"
|
|
54
|
+
|
|
55
|
+
- ref: mobile
|
|
56
|
+
agent: MOBILE
|
|
57
|
+
subject: "MOBILE: Implement mobile screens, components, and Maestro flows"
|
|
58
|
+
description: "Read reqs-brief.md, uxa-spec.md, qa-test-spec.md, implement mobile app, run Maestro flows, produce mobile-handoff.md."
|
|
59
|
+
activeForm: "MOBILE implementing mobile app"
|
|
60
|
+
blockedBy: [readiness]
|
|
61
|
+
|
|
62
|
+
- ref: critic
|
|
63
|
+
agent: CRITIC
|
|
64
|
+
subject: "CRITIC: Adversarial code review"
|
|
65
|
+
description: "Read git-diff, reqs-brief.md, qa-test-spec.md. Run blind-hunt, edge-case-hunt, acceptance-audit, triage passes. Produce critic-review.md."
|
|
66
|
+
activeForm: "CRITIC reviewing code"
|
|
67
|
+
blockedBy: [bend, mobile]
|
|
68
|
+
|
|
69
|
+
- ref: qa_b
|
|
70
|
+
agent: QA-B
|
|
71
|
+
subject: "QA-B: Execute tests and file bugs"
|
|
72
|
+
description: "Read qa-test-spec.md, critic-review.md, reqs-brief.md. Run tests, produce execution-report.md, bugs.md, traceability-matrix.md."
|
|
73
|
+
activeForm: "QA-B executing tests"
|
|
74
|
+
blockedBy: [critic]
|
|
75
|
+
|
|
76
|
+
- ref: judge
|
|
77
|
+
agent: JUDGE
|
|
78
|
+
subject: "JUDGE: Bug review and ship decision"
|
|
79
|
+
description: "Review bugs.md for priority accuracy, then review execution-report.md, traceability-matrix.md, qa-test-spec.md. Approve (SHIP/SHIP-PARTIAL) or reject (REJECT)."
|
|
80
|
+
activeForm: "JUDGE reviewing evidence and making ship decision"
|
|
81
|
+
blockedBy: [qa_b]
|
|
82
|
+
|
|
83
|
+
agents:
|
|
84
|
+
- name: Knowledge
|
|
85
|
+
ref: knowledge
|
|
86
|
+
wave: 1
|
|
87
|
+
prompt: .valent-pipeline/prompts/knowledge.md
|
|
88
|
+
trigger: "Begin startup immediately. No upstream dependency."
|
|
89
|
+
completion: "Send ready message to Lead. Then wait for [KNOWLEDGE-QUERY] messages."
|
|
90
|
+
cd_targets: []
|
|
91
|
+
|
|
92
|
+
# Wave 1: Spawn at kick-off (spec agents + first gate)
|
|
93
|
+
- name: REQS
|
|
94
|
+
ref: reqs
|
|
95
|
+
wave: 1
|
|
96
|
+
prompt: .valent-pipeline/prompts/reqs.md
|
|
97
|
+
trigger: "Begin immediately — no upstream dependency."
|
|
98
|
+
completion: "Send [HANDOFF] to Lead and UXA. Mark task completed."
|
|
99
|
+
cd_targets: [reqs]
|
|
100
|
+
|
|
101
|
+
- name: UXA
|
|
102
|
+
ref: uxa
|
|
103
|
+
wave: 1
|
|
104
|
+
prompt: .valent-pipeline/prompts/uxa.md
|
|
105
|
+
trigger: "Wait for [HANDOFF] from REQS. Begin when task is unblocked."
|
|
106
|
+
completion: "Send [HANDOFF] to Lead and QA-A. Mark task completed."
|
|
107
|
+
cd_targets: [uxa]
|
|
108
|
+
|
|
109
|
+
- name: QA-A
|
|
110
|
+
ref: qa_a
|
|
111
|
+
wave: 1
|
|
112
|
+
prompt: .valent-pipeline/prompts/qa-a.md
|
|
113
|
+
trigger: "Wait for [HANDOFF] from UXA. Begin when task is unblocked."
|
|
114
|
+
completion: "Send [HANDOFF] to Lead and READINESS. Mark task completed."
|
|
115
|
+
cd_targets: [qa-a]
|
|
116
|
+
|
|
117
|
+
- name: READINESS
|
|
118
|
+
ref: readiness
|
|
119
|
+
wave: 1
|
|
120
|
+
prompt: .valent-pipeline/prompts/readiness.md
|
|
121
|
+
trigger: "Wait for [HANDOFF] from QA-A. Begin when task is unblocked."
|
|
122
|
+
completion: "Send [READINESS-APPROVAL] to BEND and MOBILE, or [READINESS-REJECTION] to responsible agent. Mark task completed on approval."
|
|
123
|
+
cd_targets: [readiness]
|
|
124
|
+
|
|
125
|
+
# Wave 2: Spawn when QA-A completes (spin up while READINESS reviews)
|
|
126
|
+
- name: BEND
|
|
127
|
+
ref: bend
|
|
128
|
+
wave: 2
|
|
129
|
+
spawn_trigger: "qa_a completed"
|
|
130
|
+
prompt: .valent-pipeline/prompts/bend.md
|
|
131
|
+
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for READINESS approval before starting implementation."
|
|
132
|
+
completion: "Send [HANDOFF] to Lead and CRITIC. Mark task completed."
|
|
133
|
+
cd_targets: [bend]
|
|
134
|
+
|
|
135
|
+
- name: MOBILE
|
|
136
|
+
ref: mobile
|
|
137
|
+
wave: 2
|
|
138
|
+
spawn_trigger: "qa_a completed"
|
|
139
|
+
prompt: .valent-pipeline/prompts/mobile.md
|
|
140
|
+
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for READINESS approval before starting implementation. Coordinate with BEND on shared files if BEND is active."
|
|
141
|
+
completion: "Send [HANDOFF] to Lead and CRITIC. Mark task completed."
|
|
142
|
+
cd_targets: [mobile]
|
|
143
|
+
|
|
144
|
+
- name: CRITIC
|
|
145
|
+
ref: critic
|
|
146
|
+
wave: 2
|
|
147
|
+
spawn_trigger: "qa_a completed"
|
|
148
|
+
prompt: .valent-pipeline/prompts/critic.md
|
|
149
|
+
trigger: "Begin immediately — you were spawned because QA-A completed. Wait for [HANDOFF] from all active dev agents before starting review."
|
|
150
|
+
completion: "Send [HANDOFF] to Lead and QA-B. Mark task completed."
|
|
151
|
+
cd_targets: [critic]
|
|
152
|
+
|
|
153
|
+
# Wave 3: Spawn when CRITIC starts (spin up while CRITIC reviews)
|
|
154
|
+
- name: QA-B
|
|
155
|
+
ref: qa_b
|
|
156
|
+
wave: 3
|
|
157
|
+
spawn_trigger: "critic in_progress"
|
|
158
|
+
prompt: .valent-pipeline/prompts/qa-b.md
|
|
159
|
+
trigger: "Begin immediately — you were spawned because CRITIC started reviewing. Wait for CRITIC to complete before executing tests."
|
|
160
|
+
completion: "Send [HANDOFF] to Lead and JUDGE. Mark task completed."
|
|
161
|
+
cd_targets: [qa-b, judge]
|
|
162
|
+
|
|
163
|
+
# Wave 3: Also spawn JUDGE when CRITIC starts (alongside QA-B)
|
|
164
|
+
- name: JUDGE
|
|
165
|
+
ref: judge
|
|
166
|
+
wave: 3
|
|
167
|
+
spawn_trigger: "critic in_progress"
|
|
168
|
+
prompt: .valent-pipeline/prompts/judge.md
|
|
169
|
+
trigger: "Begin immediately — you were spawned because CRITIC started reviewing. Wait for QA-B to complete before starting bug review."
|
|
170
|
+
completion: "Send [JUDGE-SHIP], [JUDGE-SHIP-PARTIAL], or [JUDGE-REJECT] to Lead. Mark task completed."
|
|
171
|
+
cd_targets: [judge]
|