task-pipeline-skill 1.10.1 → 1.10.2
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/CHANGELOG.md +27 -0
- package/CONTRIBUTING.md +34 -0
- package/SKILL-CARD.md +3 -3
- package/evals/RESULTS.md +2 -2
- package/package.json +1 -1
- package/plugins/task-pipeline/.claude-plugin/plugin.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,32 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## v1.10.2 — 2026-08-03
|
|
4
|
+
|
|
5
|
+
### Fixed — the list of invariants was eight guards behind, and now checks itself
|
|
6
|
+
|
|
7
|
+
A fifth audit pass, on two axes never used before: **the consumer's view** (unpack the
|
|
8
|
+
published package and run its installer in an isolated HOME — clean install works, the
|
|
9
|
+
refuse-on-plugin path fires, all 58 files present) and **one class swept end to end**:
|
|
10
|
+
every claim of enforcement against the guard that supposedly makes it true.
|
|
11
|
+
|
|
12
|
+
The doc map's six *Checked by* cells all resolved. `CONTRIBUTING.md` did not.
|
|
13
|
+
It states plainly that its invariants are *"what the validator enforces"*, and it had
|
|
14
|
+
sixteen while the validator enforced eight more concepts it had never heard of —
|
|
15
|
+
adoption, the exclusion clause, the opt-out, the input map, portability, the routing
|
|
16
|
+
template, the README-reach rule and the seeded-template Contents rule.
|
|
17
|
+
|
|
18
|
+
**The previous round fixed this class in one instance and not as a class.** The reach
|
|
19
|
+
guard shipped last release covers *references → README and manifest*; nothing covered
|
|
20
|
+
*guard → CONTRIBUTING*. `references/learned.md` rule 6 — sweep the class, not the
|
|
21
|
+
finding — applied to the sweep itself.
|
|
22
|
+
|
|
23
|
+
So the list is now **self-verifying**: invariants 17–24 name the new guards, and every
|
|
24
|
+
invariant that cites a guard cites a **literal this validator actually prints**. A
|
|
25
|
+
claim of enforcement is checked like any other claim. One discovered constraint is
|
|
26
|
+
stated with it: a cited literal must lie inside a *single* string in `test/validate.py`,
|
|
27
|
+
because the check reads that file as text — a quote straddling a line-continuation is
|
|
28
|
+
a citation nothing can find, which is how the first three citations failed.
|
|
29
|
+
|
|
3
30
|
## v1.10.1 — 2026-08-03
|
|
4
31
|
|
|
5
32
|
### Fixed — four surfaces that never heard about the last two releases
|
package/CONTRIBUTING.md
CHANGED
|
@@ -142,6 +142,40 @@ omitted row reads as "does not apply".
|
|
|
142
142
|
**16. The evaluation suite covers all five dimensions** and `evals/run.py` accepts
|
|
143
143
|
it. Running it is a human step; the suite existing is not.
|
|
144
144
|
|
|
145
|
+
**17. Both adoption walkthroughs ship, with the ratchet-baseline step.** Greenfield
|
|
146
|
+
is the easy half and the one that gets written; brownfield is where a repository
|
|
147
|
+
actually is. *(guard: `adoption without it is a tutorial for the repository nobody has`)*
|
|
148
|
+
|
|
149
|
+
**18. The description states its exclusions, and the opt-out is exercised by an eval.**
|
|
150
|
+
Default-on without a release valve is a trap, and an escape hatch nobody tests is not
|
|
151
|
+
one. *(guard: `no eval exercises the opt-out phrase`)*
|
|
152
|
+
|
|
153
|
+
**19. The stage/artifact relation is mapped in both directions.** What each stage
|
|
154
|
+
writes, and what it reads and from where. *(guard: `must be mapped in BOTH directions`)*
|
|
155
|
+
|
|
156
|
+
**20. Every workflow decision has a home inside the bundle.** The manifest in
|
|
157
|
+
`references/portability.md` names it, and no row may point outside.
|
|
158
|
+
*(guard: `manifest names`)*
|
|
159
|
+
|
|
160
|
+
**21. The routing default ships as a file.** It is a workflow decision, so it travels
|
|
161
|
+
with the bundle instead of being hand-installed into an operator's config.
|
|
162
|
+
*(guard: `must ship as a file rather than be hand-installed`)*
|
|
163
|
+
|
|
164
|
+
**22. Every reference reaches the README map and the manifest.** Reachability from
|
|
165
|
+
`SKILL.md` proves an agent can *find* a file, not that a reader was *told* about it.
|
|
166
|
+
*(guard: `is named nowhere in README.md`)*
|
|
167
|
+
|
|
168
|
+
**23. A seeded template over 100 lines carries its own Contents.** A host project
|
|
169
|
+
reads those files, and a partial read shows whichever sections come first.
|
|
170
|
+
*(guard: `needs the same partial-read protection references get`)*
|
|
171
|
+
|
|
172
|
+
**24. Every invariant above names the guard that enforces it, and that guard exists.**
|
|
173
|
+
This list claims to be *what the validator enforces*; it was eight guards behind when
|
|
174
|
+
an audit measured it. A claim of enforcement is now checked like any other claim.
|
|
175
|
+
*(guard: `whose message does not appear in`)* — and a cited literal must lie inside
|
|
176
|
+
a **single** string in `test/validate.py`: the check reads that file as text, so a
|
|
177
|
+
quote straddling a line-continuation is a citation nothing can find.
|
|
178
|
+
|
|
145
179
|
## Adding or changing doctrine
|
|
146
180
|
|
|
147
181
|
- **Change one idea per PR.** These files are read by agents under load; a PR that
|
package/SKILL-CARD.md
CHANGED
|
@@ -12,7 +12,7 @@ harmless.
|
|
|
12
12
|
|---|---|
|
|
13
13
|
| **Purpose** | Runs a substantial task through ten gated delivery stages — intake grill, docs study, brainstorm, spec, plan, subagent build, tests, lint/deploy, post-deploy, docs+registers, acceptance — refusing to advance until each gate passes |
|
|
14
14
|
| **Owner** | ssheleg ([github.com/ssheleg/task-pipeline](https://github.com/ssheleg/task-pipeline)) |
|
|
15
|
-
| **Version** | 1.10.
|
|
15
|
+
| **Version** | 1.10.2 |
|
|
16
16
|
| **Surface** | Claude Code (filesystem skill + plugin) and the vercel `skills` CLI. **Not** uploaded to the Skills API; custom Skills do not sync across surfaces |
|
|
17
17
|
| **Dependencies** | None required. Optional: `context7` (MCP), `figma` (MCP), super-ux, agent-sync, graphify, obsidian-wiki. Every stage's doctrine ships in-repo; the one conditional requirement is super-ux for the stage-3 UX track on a user-facing task |
|
|
18
18
|
| **Evaluation status** | Suite authored (15 evals, 5 categories). **Never executed** — see [`evals/RESULTS.md`](evals/RESULTS.md) |
|
|
@@ -38,7 +38,7 @@ apply.
|
|
|
38
38
|
instruction surface, and every one is linked directly from `SKILL.md`.
|
|
39
39
|
2. Read `templates/docgate.sh` before seeding it; it is the only shipped script a
|
|
40
40
|
host project will run on its own repository.
|
|
41
|
-
3. Run `npm run test:all` —
|
|
41
|
+
3. Run `npm run test:all` — 62 guards, each with a negative self-test that plants a
|
|
42
42
|
defect and requires rejection.
|
|
43
43
|
4. Run `python3 evals/run.py` for the behavioural protocol, and read
|
|
44
44
|
`evals/RESULTS.md` for what has actually been observed.
|
|
@@ -54,7 +54,7 @@ apply.
|
|
|
54
54
|
- **Versions are pinned by git tag** and mirrored into `sshlg-skills`'s catalogue.
|
|
55
55
|
Rollback is `git checkout v<previous>` or pinning the previous plugin version;
|
|
56
56
|
the previous version is never deleted.
|
|
57
|
-
- **Behavioural evidence is missing, not merely thin.**
|
|
57
|
+
- **Behavioural evidence is missing, not merely thin.** 62 structural guards prove
|
|
58
58
|
the skill is well-formed. Until `evals/RESULTS.md` carries a dated run, nothing in
|
|
59
59
|
this repository proves it *behaves* — triggers correctly, stays quiet on a
|
|
60
60
|
question, or performs the steps it documents.
|
package/evals/RESULTS.md
CHANGED
|
@@ -37,9 +37,9 @@ or it belongs in a check.
|
|
|
37
37
|
| Dated runs recorded | **0** | 2026-08-03 |
|
|
38
38
|
|
|
39
39
|
The bottom two numbers are the honest state of this skill's behavioural evidence.
|
|
40
|
-
Everything else in this repository is proven by
|
|
40
|
+
Everything else in this repository is proven by 62 structural guards that check the
|
|
41
41
|
*form*; these are the only checks that would speak to the *behaviour*, and they have
|
|
42
|
-
not been run yet. Printed here so "
|
|
42
|
+
not been run yet. Printed here so "62 of 62 green" is never read as "the skill is
|
|
43
43
|
known to work".
|
|
44
44
|
|
|
45
45
|
## Runs
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "task-pipeline-skill",
|
|
3
|
-
"version": "1.10.
|
|
3
|
+
"version": "1.10.2",
|
|
4
4
|
"description": "Full-cycle delivery pipeline for coding agents: a mandatory built-in intake grill, then 10 gated stages (docs, brainstorm+decompose, spec, plan, build, tests, lint/deploy, post-deploy, docs/wiki, acceptance). Every stage's doctrine ships inside the skill — no companion plugin required. This package is the installer CLI.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"task-pipeline": "bin/task-pipeline.js"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "task-pipeline",
|
|
3
3
|
"displayName": "Task Pipeline",
|
|
4
4
|
"description": "Runs a substantial task through a mandatory built-in intake grill, then 10 gated stages (docs, brainstorm+decompose, spec, plan, subagent build, tests, lint/deploy, post-deploy, docs/wiki, acceptance). Every stage's doctrine is built into the skill — no companion plugin required — with typed auto/manual gates, a frozen requirement spine that must close with evidence, a loop guard that breaks churn, one provider-agnostic model confirmed up front, and an optional super-ux UX track for user-facing work.",
|
|
5
|
-
"version": "1.10.
|
|
5
|
+
"version": "1.10.2",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "ssheleg",
|
|
8
8
|
"url": "https://x.com/sshlg93"
|