task-pipeline-skill 0.12.0 → 0.17.1

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 (26) hide show
  1. package/CHANGELOG.md +316 -0
  2. package/LICENSE +47 -0
  3. package/README.md +155 -83
  4. package/cursor/rules/task-pipeline.mdc +88 -15
  5. package/package.json +3 -3
  6. package/plugins/task-pipeline/.claude-plugin/plugin.json +15 -4
  7. package/plugins/task-pipeline/commands/task-pipeline.md +8 -6
  8. package/plugins/task-pipeline/skills/task-pipeline/SKILL.md +80 -33
  9. package/plugins/task-pipeline/skills/task-pipeline/pipeline.example.json +30 -15
  10. package/plugins/task-pipeline/skills/task-pipeline/references/acceptance.md +118 -0
  11. package/plugins/task-pipeline/skills/task-pipeline/references/artifacts.md +29 -7
  12. package/plugins/task-pipeline/skills/task-pipeline/references/brainstorm.md +106 -0
  13. package/plugins/task-pipeline/skills/task-pipeline/references/build.md +364 -0
  14. package/plugins/task-pipeline/skills/task-pipeline/references/companion-skills.md +61 -29
  15. package/plugins/task-pipeline/skills/task-pipeline/references/conventions.md +11 -1
  16. package/plugins/task-pipeline/skills/task-pipeline/references/decomposition.md +139 -0
  17. package/plugins/task-pipeline/skills/task-pipeline/references/grill.md +44 -6
  18. package/plugins/task-pipeline/skills/task-pipeline/references/loop-guard.md +100 -0
  19. package/plugins/task-pipeline/skills/task-pipeline/references/planning.md +193 -0
  20. package/plugins/task-pipeline/skills/task-pipeline/references/review.md +173 -0
  21. package/plugins/task-pipeline/skills/task-pipeline/references/spec.md +144 -0
  22. package/plugins/task-pipeline/skills/task-pipeline/references/stages.md +151 -26
  23. package/plugins/task-pipeline/skills/task-pipeline/references/tdd.md +110 -0
  24. package/plugins/task-pipeline/skills/task-pipeline/templates/README.md +5 -3
  25. package/plugins/task-pipeline/skills/task-pipeline/templates/brief.md +26 -1
  26. package/plugins/task-pipeline/skills/task-pipeline/templates/carryover.md +36 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,321 @@
1
1
  # Changelog
2
2
 
3
+ ## v0.17.1 — 2026-07-28
4
+
5
+ A full-repo consistency audit. v0.16.0 added a third review verdict and a tenth
6
+ stage; several surfaces never heard about either. An agent reads one surface, not
7
+ all of them, so a stage that is `three verdicts` in the config and `both verdicts`
8
+ in the prompt that actually runs simply produces two.
9
+
10
+ ### Fixed
11
+ - **The third review verdict now exists where reviews are actually dispatched.**
12
+ `references/review.md`'s task-review prompt asked for *"two verdicts"* — so the
13
+ REQ-satisfaction verdict the stage-5 gate requires was never returned. It now asks
14
+ for three (spec compliance → **REQ satisfied** → code quality), with the REQ one
15
+ judged against the requirement's quoted statement rather than the task's
16
+ instructions. Same correction in `build.md` (§4.4 and its gate), `planning.md`'s
17
+ plan header, `stages.md` and the Cursor rule.
18
+ - **Stage-5's gate now names the ledger harvest.** `build.md`'s gate omitted
19
+ "every parked finding and implementer concern harvested into the carry-over
20
+ ledger" — the one thing that must happen before the scratch workspace is deleted.
21
+ - **Three gates in the doctrine files were weaker than the same gates in
22
+ `stages.md`:** `planning.md` didn't state the REQ **set-equality** check (the
23
+ brief→plan seam), `spec.md` didn't require `covers: REQ-…` per section, and
24
+ `brainstorm.md` didn't require every REQ answered by the design or the module map
25
+ approved for a platform. All three now match.
26
+ - **Descriptions listed the flow wrong.** npm, the marketplace entry, the plugin
27
+ manifest: `…post-deploy, acceptance, docs/wiki` — eleven items for ten stages,
28
+ with the final stage listed second-to-last. The `/task-pipeline` command's
29
+ description and `SKILL.md`'s frontmatter stopped at docs/wiki and never named
30
+ acceptance at all.
31
+ - **Built-in doctrine tables were missing rows** for stage 10 acceptance
32
+ (`SKILL.md`, `README.md`, `companion-skills.md`), stage-2 decomposition and the
33
+ loop guard (`README.md`, `companion-skills.md`) — files that ship, are reachable,
34
+ and were absent from the very tables that say what ships.
35
+ - Smaller drift: the Cursor rule's stage 9 dropped the wiki sync; four gate checks
36
+ in `pipeline.example.json` had v0.16.0 sentences concatenated without punctuation;
37
+ `stages.md` wrote `implements:` where the plan format writes `Implements:`;
38
+ `artifacts.md` had the acceptance artifact listed before the spec and the ledger
39
+ attributed to stages `0→9`; the v0.1.0 design snapshot's disclaimer still
40
+ described the live shape as nine stages.
41
+
42
+ ### Added
43
+ - **Three validator guards, each with a CI negative self-test**, so this class of
44
+ drift fails instead of shipping:
45
+ 1. every human-facing description (npm, marketplace, plugin, `SKILL.md`, the
46
+ command, the Cursor rule, `README.md`) must name the flow's **final stage**,
47
+ and must not list it before the stage it runs after — derived from
48
+ `pipeline.example.json`, not hardcoded;
49
+ 2. no shipped surface may say *two/both verdicts* while the dev gate declares
50
+ three;
51
+ 3. each stage doctrine file's own `GATE (auto|manual)` must match that stage's
52
+ gate type in the config.
53
+
54
+ ## v0.17.0 — 2026-07-28
55
+
56
+ Two mechanisms stop being files nobody walks and become operational doctrine: a
57
+ platform is cut into bricks before it is specced, and a loop that starts undoing
58
+ itself is broken instead of endured.
59
+
60
+ ### Added
61
+ - **Decomposition is stage 2's second half**, wired end to end —
62
+ `references/decomposition.md` now reached from `SKILL.md`'s doctrine table, the
63
+ stage-2 gate in `stages.md`, the example config, the Cursor rule, the command and
64
+ the README. A brief that describes a *platform* — several independent
65
+ capabilities, several separately shippable surfaces, REQs no single deliverable
66
+ satisfies — is cut into **modules** before any spec exists: by capability, never
67
+ by layer, and a candidate is a brick only when it is independently specifiable,
68
+ buildable and testable, owns its entities, talks through declared contracts only,
69
+ and can land while leaving the system working. The module map carries build order
70
+ — **walking skeleton first**, then topological, no cycles — with every REQ mapped
71
+ to exactly one module. Single-module work records `single module: <name>`: a
72
+ skipped decomposition is a decision, never an omission.
73
+ - **The module dossier** (`spec.md`): for a decomposed platform the spec has nine
74
+ required sections — purpose and boundary, architecture, entities and ownership,
75
+ contracts in and out **with their behavior when the other side is down**,
76
+ business rules in the domain's language, edge and failure cases, UI/Figma chain,
77
+ non-functional limits, and open questions with a decide-by moment. A skipped
78
+ section says why in one line; silence is not a skip.
79
+ - **The loop guard binds every repeating loop** — `references/loop-guard.md` is now
80
+ referenced from `SKILL.md`'s cross-cutting rules, a `stages.md` section, the
81
+ stage-5 fix loop, the Cursor rule and the command. Every repeating pass logs one
82
+ line per touched file with the reason that forced it ("cleanup" is not a reason).
83
+ It trips on revert-oscillation, a file edited twice for the same reason, a
84
+ resurrected finding, a third entry into one stage, or two loops editing one file,
85
+ plus hard caps (5 fix rounds per task, 2 re-entries per stage, 3 passes per
86
+ module). On a trip: stop editing, name shape A and shape B with their evidence,
87
+ escalate to the layer that owns the conflict, re-plan the check as an ordered
88
+ checklist with one verification command per item, then go through it one at a
89
+ time. **A higher-layer conflict is never settled inside a lower loop.**
90
+ - **Two autonomy-sweep rows** (grill + brief template): platform-or-single-module
91
+ with the deploy cadence it implies, and who signs off acceptance plus where
92
+ deferred REQs are tracked.
93
+ - **`conventions.md` gains the issue tracker** stage 10 needs — read the host's
94
+ convention, never invent a tracker, never close a run on "we'll remember it".
95
+ - `artifacts.md` gains the module map and the run-level ledger
96
+ (`.task-pipeline/run.md`) the loop guard writes to.
97
+
98
+ ### Tests
99
+ - **The stage list is cross-checked across all three surfaces it is published on** —
100
+ `SKILL.md`'s table, `references/stages.md` and `pipeline.example.json`: identical
101
+ ids in identical order, matching names, matching gate types, and every stage in
102
+ `stages.md` carrying a `**GATE (auto|manual)**` line. Drift between surfaces is
103
+ invisible in review and lethal at runtime — a stage manual on one surface and auto
104
+ on another.
105
+ - `decomposition.md` and `loop-guard.md` join the stub-rejected doctrine set.
106
+ - Three negative self-tests against a mutated copy: a flipped gate type, a removed
107
+ GATE line and a deleted doctrine file each fail the validator.
108
+
109
+ ## v0.16.1 — 2026-07-28
110
+
111
+ ### Fixed
112
+ - **v0.16.0 added a tenth stage and left "1→9" in fifteen places** — the skill
113
+ description, the command, the Cursor rule, `stages.md`, `grill.md`, the brief
114
+ template, the example config and the README all still promised nine. The
115
+ package, marketplace and plugin descriptions said "9 gated stages" too, which
116
+ is what npm and the marketplace show. All re-synced to ten, and the plan
117
+ filename now uses the same slug as the brief and the spec.
118
+
119
+ ## v0.16.0 — 2026-07-28
120
+
121
+ Scope stops leaking. The request becomes an addressable list of requirements, the
122
+ ids are traced through every stage, and a new final stage accounts for all of them.
123
+
124
+ The failure this fixes: every gate up to now asked *"is this artifact good?"* and
125
+ none asked *"does this still contain everything that was asked for?"* Scope doesn't
126
+ leak inside a stage — it leaks on the **seams**, because brief → spec → plan → task
127
+ briefs is four rewrites by a model and nothing compared the lists.
128
+
129
+ ### Added
130
+ - **The REQ spine.** The grill's second hard output is a requirement table in the
131
+ brief — one row per *independently verifiable* deliverable, each naming **how it
132
+ is verified** (test name, `file:line`, command + expected output, scenario id). A
133
+ requirement you can't say how to verify is a badly-stated requirement, and gets
134
+ split during the grill rather than discovered at the end. One REQ = one
135
+ deliverable, not one per sentence: an inflated table is ignored, and an ignored
136
+ table protects nothing.
137
+ - **Traceability through the run.** Spec sections carry `covers: REQ-…`; plan tasks
138
+ carry `Implements: REQ-…`; the implementer's task brief quotes the requirement
139
+ statement **verbatim**, so it optimises the requirement and not just the
140
+ instruction; the review rubric gains a verdict beside spec-compliance and
141
+ code-quality — **does this satisfy its REQ?**
142
+ - **Stage 10 — Acceptance** (`references/acceptance.md`, manual gate). Closes the
143
+ circle: every REQ gets `verified` / `partial` / `deferred` / `dropped`, written to
144
+ `specs/<topic>-acceptance.md`. `verified` **requires evidence** — a passing test
145
+ name, a `file:line`, a command and its output. "Done" without evidence is
146
+ downgraded to `partial`, never upgraded. Then the operator is asked the closing
147
+ question out loud, list in hand: *here's what you asked for, here's what shipped,
148
+ here's what's deferred and where it lives — what's missing?* Asked even when the
149
+ table is green. Manual by design: an automated check can prove the table is
150
+ well-formed; only the person who asked can confirm it is what they asked for.
151
+ - **The carry-over ledger** (`templates/carryover.md`) — append-only, seeded at
152
+ stage 0, written by every stage, read in full at stage 10. Implementer concerns
153
+ and parked review findings are harvested into it before the scratch workspace is
154
+ deleted. The rule: **deferred out loud is forgotten** — a row with no home
155
+ (issue, backlog, or an agreed `dropped`) blocks the acceptance gate.
156
+
157
+ ### Changed
158
+ - **The brief→plan seam is now mechanical.** Stage 4's gate is **set equality**
159
+ between the brief's REQ ids and the union of `Implements:` across plan tasks. A
160
+ non-empty difference fails the gate and is reported as the explicit list of
161
+ dropped requirements — a comparison, not a judgement call.
162
+ - **No silent narrowing.** The REQ list is frozen once confirmed: adding mid-run is
163
+ free, **removing or narrowing needs the operator's explicit agreement**, recorded
164
+ in the ledger. Quietly restating the task smaller is the subtlest loss, because
165
+ every later gate then passes honestly on a task that shrank without anyone
166
+ deciding it should.
167
+ - **Gates tightened** — stage 0 requires the REQ table and a seeded ledger; stage 2
168
+ requires the design to answer every REQ (or an operator-agreed drop); stage 3
169
+ requires `covers:` on every section; stage 5 harvests concerns into the ledger;
170
+ **stage 7 refuses to deploy while any REQ is still `open`** (a `partial` ships only
171
+ with explicit acceptance — a gap is cheapest to close before it ships).
172
+
173
+ ### Fixed
174
+ - **`decomposition.md` and `loop-guard.md` shipped unreachable.** Both linked only
175
+ to each other; nothing in `SKILL.md` pointed at either, so under progressive
176
+ disclosure an agent would never load them — two contracts that existed, passed
177
+ every check, and were dead context. Wired into the doctrine table (stage 2 for
178
+ decomposition, cross-cutting for the loop guard), and the validator now walks the
179
+ link graph from `SKILL.md` and fails on any reference nothing reaches.
180
+
181
+ ### Tests
182
+ - `references/acceptance.md` joins the built-in doctrine set (stub-rejected);
183
+ `templates/carryover.md` required; the brief template must carry
184
+ `## Requirements`, a `REQ-NNN` row and the verification column; the shipped flow's
185
+ last stage must be `acceptance` with a **manual** gate whose check demands
186
+ evidence; the plan gate must state the set comparison.
187
+ - Nine new invariants, each verified to fail on a broken copy; four added to CI as
188
+ negative self-tests.
189
+
190
+ ## v0.15.0 — 2026-07-28
191
+
192
+ Coherence pass over the v0.13.0 port: three contradictions resolved, three gaps
193
+ closed, and the config's gate text re-synced with the doctrine.
194
+
195
+ ### Fixed
196
+ - **Model policy contradicted itself.** `build.md` and `review.md` told the final
197
+ whole-branch review to run "on the most capable model available" while
198
+ `model-tiering.md` promises **one** model per run. Both now default to the run's
199
+ confirmed model; when the run sits below the top tier, escalation for that single
200
+ review (and for fix-loop rounds 4–5) is **offered out loud**, never switched
201
+ silently, and only the operator's recorded override map authorizes a cheaper tier.
202
+ - **Parallel groups were planned and then forbidden.** `planning.md` mandates
203
+ dependency-ordered parallel groups with exclusive file ownership; `build.md` said
204
+ "never dispatch implementers in parallel". New §4.2 states the real rule: default
205
+ sequential, fan out only when the tasks share a group, own disjoint files **and**
206
+ each implementer gets its own worktree; integrate the worktrees one at a time; any
207
+ merge conflict means the plan's ownership was wrong — fall back to sequential and
208
+ record it. The fix loop never fans out.
209
+ - **Scratch dirs could land in a task's diff.** The isolation snippet now ignores
210
+ **and commits** both `.worktrees/` and `.task-pipeline/` before anything is
211
+ created.
212
+
213
+ ### Added
214
+ - **Stage 5 now ends with integration.** Sync with the base branch, re-run the full
215
+ suite on the merged result (green-in-isolation is not green), land it the
216
+ project's way — merge, or a PR, which is outward and needs a go — never
217
+ force-push a shared branch, never land on `main` when the brief forbids it, then
218
+ remove the worktree. Stages 7–9 lint, deploy and document the integrated result,
219
+ so "leave it unmerged" is allowed but must be recorded. The stage-5 gate, the
220
+ stage table, the Cursor rule and the example config carry the new condition.
221
+ - **Inline execution mode.** A harness without subagents (or a plan too small to be
222
+ worth dispatching) runs the same loop inline: same isolation, ledger, TDD and
223
+ review rubric applied to your own diff — declared out loud, since a self-review is
224
+ weaker evidence than a fresh reviewer's. Replaces the capability that
225
+ `superpowers:executing-plans` used to cover.
226
+ - **Grill + brief sweep row for integration** — how the branch lands (merge / PR +
227
+ approver / "leave it") and whether parallel fan-out is wanted, so stage 5 never
228
+ stops to ask.
229
+
230
+ ### Changed
231
+ - The implementer contract spells the TDD loop out inline instead of pointing a
232
+ zero-context subagent at a file it can't resolve, and the plan header no longer
233
+ cites a skill-internal path.
234
+ - `pipeline.example.json` gate text for stages 4, 5 and 6 re-synced with
235
+ `references/stages.md`; stage 4's gate now also names type/name consistency and
236
+ the per-task DoD.
237
+ - `review.md` defines `$WORKSPACE` where it first uses it; `build.md` §4 subsections
238
+ renumbered after the insert.
239
+
240
+ ## v0.14.0 — 2026-07-28
241
+
242
+ ### Fixed
243
+ - Skill front-matter was **1039 characters**, over the 1024 canon limit, and the
244
+ validator did not check it. Description tightened to 996 and the limit is now
245
+ enforced.
246
+
247
+ ### Changed
248
+ - Triggers restructured English-first — `'run this through the pipeline' /
249
+ 'прогони по конвейеру'` — in both the skill and the Cursor rule.
250
+ - README is English-only, with a plain statement of what the pipeline gives you
251
+ and an author/links block.
252
+
253
+ ### Added
254
+ - Validator enforces the description canon: `Use when` opening, Russian trigger
255
+ aliases present, front-matter under 1024 characters.
256
+
257
+ ## v0.13.0 — 2026-07-28
258
+
259
+ The last external dependency is gone. Every stage now runs on doctrine that ships
260
+ inside the skill — the pipeline installs and runs with nothing else present.
261
+
262
+ - **superpowers is no longer a prerequisite.** The preflight no longer resolves
263
+ `superpowers:*`, the "install this or stop" branch is deleted, and no stage can
264
+ fail because a companion plugin is missing. `Prerequisites` in SKILL.md and the
265
+ README now read "none required".
266
+ - **Six new built-in references carry stages 2→6:**
267
+ - `references/brainstorm.md` — stage 2: read the brief first, explore, scope-check
268
+ for decomposition, one question at a time, 2–3 approaches with a recommendation,
269
+ YAGNI, design approved section by section. The **hard gate** (no code, no
270
+ scaffolding before approval, including on "obviously simple" tasks) is explicit.
271
+ - `references/spec.md` — stage 3: UX-track order, what the spec must lock (types,
272
+ schemas, signatures, file layout) plus the **Global Constraints** block stages
273
+ 4–5 consume verbatim, the self-review pass, the operator-review gate.
274
+ - `references/planning.md` — stage 4: zero-context task format, dependency graph,
275
+ parallel groups with exclusive file ownership, required plan header and task
276
+ structure, the no-placeholders list, the self-review checklist.
277
+ - `references/build.md` — stage 5: worktree detection (submodule guard, native
278
+ tool first, ignored-directory check, baseline tests), a git-ignored ledger at
279
+ `.task-pipeline/build/<plan>/progress.md` that survives compaction, the
280
+ file-based dispatch contract, the four implementer statuses, the five-round fix
281
+ loop with its breaker and adjudication rules, and the single final fix wave.
282
+ - `references/review.md` — the review rubric (spec compliance, correctness,
283
+ constraints, test honesty, degradation, boundaries, security, docs-same-change),
284
+ severity ladder, controller rules ("never pre-judge a reviewer"), and the three
285
+ reviewer prompts. External helper scripts are replaced by plain git commands, so
286
+ the doctrine works on any agent.
287
+ - `references/tdd.md` — stages 5–6: the iron law, red/green/refactor with both
288
+ mandatory verifications, honest-test rules, the stage-6 full-suite gate, and the
289
+ rationalization table.
290
+ - **Ported, not depended on.** Stages 2–6 are adapted from `brainstorming`,
291
+ `writing-plans`, `using-git-worktrees`, `subagent-driven-development`,
292
+ `test-driven-development` and `requesting-code-review` in
293
+ [obra/superpowers](https://github.com/obra/superpowers) (MIT) and rewritten for
294
+ this pipeline's stages, gates, artifacts and single-model policy. `LICENSE` gains
295
+ a second *Third-party* section with Jesse Vincent's copyright notice covering the
296
+ six files.
297
+ - **Optional bridge, not a dependency.** An operator who already runs an equivalent
298
+ skill set can substitute it on stages 2/4/5/6 via `pipeline.json` → `skills[]`.
299
+ Nothing detects, recommends or waits for it; the gates still govern; providers are
300
+ never mixed inside one stage.
301
+ - **Config:** `pipeline.example.json` stages now name `task-pipeline:brainstorm`,
302
+ `task-pipeline:spec`, `task-pipeline:plan`, `task-pipeline:build` +
303
+ `task-pipeline:review`, and `host:test-runner` + `task-pipeline:tdd`.
304
+ - **Every channel updated** — SKILL.md (built-in doctrine table, stage table,
305
+ references list), `references/stages.md`, `references/companion-skills.md` (matrix
306
+ split into built-in vs optional, superpowers moved to a struck-through
307
+ "not a dependency" row), `references/artifacts.md` (new files in the repo map, the
308
+ `.task-pipeline/` scratch workspace, and a note that `docs/superpowers/` is a
309
+ retained directory *name*, not a dependency), the `/task-pipeline` command, the
310
+ Cursor rule (now carrying the design gate, plan format, build loop and TDD rules
311
+ inline) and the README in both languages.
312
+ - **Validator:** requires all six doctrine files and rejects stubs (<1.5 KB), and
313
+ fails the build if the shipped default flow names an external provider
314
+ (`superpowers:*`, `grill-me`, `grilling`) in any stage's `skills[]`.
315
+ - **Artifact paths unchanged** — briefs, specs and plans still live under
316
+ `docs/superpowers/{specs,plans}` so existing projects need no migration; the name
317
+ is now documented as historical convention only.
318
+
3
319
  ## v0.12.0 — 2026-07-27
4
320
 
5
321
  The grill stops being someone else's skill. It is ported in, in full, and gains
package/LICENSE CHANGED
@@ -25,6 +25,9 @@ SOFTWARE.
25
25
  Third-party
26
26
  ================================================================================
27
27
 
28
+ 1) Intake grill (stage 0)
29
+ -------------------------
30
+
28
31
  The built-in intake grill (stage 0) is adapted from the `grilling` /
29
32
  `grill-with-docs` skills in https://github.com/mattpocock/skills — specifically
30
33
  its interview loop and its domain-awareness discipline (glossary challenges,
@@ -57,3 +60,47 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
57
60
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
58
61
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
59
62
  SOFTWARE.
63
+
64
+
65
+ 2) Stage doctrine (stages 2-6)
66
+ ------------------------------
67
+
68
+ The built-in doctrine for stages 2-6 is adapted from the `brainstorming`,
69
+ `writing-plans`, `using-git-worktrees`, `subagent-driven-development`,
70
+ `test-driven-development` and `requesting-code-review` skills in
71
+ https://github.com/obra/superpowers — specifically the design-dialogue and
72
+ design-approval discipline, the zero-context plan format, the worktree isolation
73
+ procedure, the subagent task/review/fix loop with its ledger and breaker, the
74
+ reviewer contracts, and the red-green-refactor rules. Rewritten for this
75
+ pipeline's stages, gates, artifacts and single-model policy. Affected files:
76
+
77
+ plugins/task-pipeline/skills/task-pipeline/references/brainstorm.md
78
+ plugins/task-pipeline/skills/task-pipeline/references/spec.md
79
+ plugins/task-pipeline/skills/task-pipeline/references/planning.md
80
+ plugins/task-pipeline/skills/task-pipeline/references/build.md
81
+ plugins/task-pipeline/skills/task-pipeline/references/review.md
82
+ plugins/task-pipeline/skills/task-pipeline/references/tdd.md
83
+
84
+ Those portions are used under the following license:
85
+
86
+ MIT License
87
+
88
+ Copyright (c) 2025 Jesse Vincent
89
+
90
+ Permission is hereby granted, free of charge, to any person obtaining a copy
91
+ of this software and associated documentation files (the "Software"), to deal
92
+ in the Software without restriction, including without limitation the rights
93
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
94
+ copies of the Software, and to permit persons to whom the Software is
95
+ furnished to do so, subject to the following conditions:
96
+
97
+ The above copyright notice and this permission notice shall be included in all
98
+ copies or substantial portions of the Software.
99
+
100
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
101
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
102
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
103
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
104
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
105
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
106
+ SOFTWARE.