@gtrabanco/pi-agentic-workflow 0.24.4 → 0.26.0

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gtrabanco/pi-agentic-workflow",
3
- "version": "0.24.4",
3
+ "version": "0.26.0",
4
4
  "description": "Pi package: canonical agentic-workflow skills, friendly slash commands, and per-command model routing.",
5
5
  "keywords": [
6
6
  "pi-package",
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: execute-phase
3
3
  user-invocable: true
4
- version: 6.0.0
4
+ version: 6.1.0
5
5
  argument-hint: <NN-slug> [P<k>|step] [--max-attempts N] [--force]
6
6
  allowed-tools: [Bash, Read, Edit, Write, MultiEdit]
7
7
  author: "Gabriel Trabanco <1969593+gtrabanco@users.noreply.github.com>"
@@ -15,7 +15,12 @@ when every step below ran — fixing the code and stopping is the classic way
15
15
  findings end up "solved" locally but absent from the merged PR:
16
16
 
17
17
  ```
18
- ✓ Fixes implemented (scope: only the routed findings — nothing extra)
18
+ ✓ Fixes implemented — the batch is the routed findings **plus everything that
19
+ depends on them**: callers of what changes, consumers of what it delivers, and
20
+ every mention that stops being true (a comment, a prose claim, a declared
21
+ validator, a manifest narration). Nothing beyond that
22
+ ✓ `bun scripts/promise-coherence.mjs` RUN → `verdict PASS` (the repaired claims
23
+ reproduce at the head; a skipped line is read, never assumed)
19
24
  ✓ Gate RUN and green (exit codes pasted)
20
25
  ✓ Never edit an existing test's expectation to match behaviour — a setup
21
26
  repair keeps assertions at least as strong and never touches expectations
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: init-workspace
3
3
  user-invocable: true
4
- version: 4.0.2
4
+ version: 4.0.3
5
5
  argument-hint: <target-dir>
6
6
  author: "Gabriel Trabanco <1969593+gtrabanco@users.noreply.github.com>"
7
7
  license: MIT
@@ -152,9 +152,9 @@ loads exactly upgrade and skips bootstrap plus portability.
152
152
 
153
153
  The adaptive lane (feature 61) replaces the fixed pipeline with a single-unit-
154
154
  document model. Every NEW unit produces one `SPEC.md` under
155
- `docs/features/<NN>-<slug>/` with 14 sections: Objective, Why, User outcome, Impact,
156
- Acceptance criteria, Non-goals, Future cost, Applicable tests, Known pre-existing
157
- issues, Tasks, Evidence, Progress log, Next, References.
155
+ `docs/features/<NN>-<slug>/` with 14 sections: Objective, Why, User outcome, Acceptance criteria, Impact,
156
+ Non-goals, Future cost, Applicable tests, Known pre-existing issues, Tasks,
157
+ Evidence, Progress log, Next, References.
158
158
 
159
159
  Conventions written into the project's AGENTS.md:
160
160
 
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: orchestration-envelope
3
3
  user-invocable: false
4
- version: 2.3.0
4
+ version: 2.4.0
5
5
  author: "Gabriel Trabanco <1969593+gtrabanco@users.noreply.github.com>"
6
6
  license: MIT
7
7
  description: >
@@ -16,6 +16,14 @@
16
16
  ✓ 11. No reconstruction from memory — missing reference → STOP.
17
17
  ```
18
18
 
19
+ **A box that runs a command discloses what the command needs.** When a box
20
+ invokes a script with a placeholder (`node scripts/x.mjs <unit-dir>`), the same
21
+ skill's text must name the artifact that placeholder requires — the script
22
+ declares it (`PREREQUISITES` in `scripts/needs-input.mjs`) and
23
+ `scripts/promise-coherence.mjs` checks the disclosure. A box that instructs a
24
+ run the skill never equips reproduces the failure it was written to prevent
25
+ (fix #258 F45/F53: `missing-unit-doc`).
26
+
19
27
  **Single owner:** orchestration-envelope/references/TURN_CONTRACT.md. All skills load this + skill-specific additions only. Duplication forbidden. Missing reference = STOP.
20
28
 
21
29
  **Push policy supplement:** Box 4 covers the end-of-unit push. Some consumers (e.g. `execute-phase/references/PREFLIGHT.md`) define additional push rules for mid-phase commits when a PR is already open — those per-consumer supplements extend this contract and must be loaded alongside it by the consumer skill.
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: pre-execution-review
3
3
  user-invocable: false
4
- version: 2.7.1
4
+ version: 2.8.0
5
5
  author: "Gabriel Trabanco <1969593+gtrabanco@users.noreply.github.com>"
6
6
  license: MIT
7
7
  description: >
@@ -55,7 +55,7 @@ task | implementation-owner | validator | required-evidence | status
55
55
  | `authority-source` | the SPEC/acceptance/criterion or ledger row that *requires* it — never the implementation |
56
56
  | `phase` / `task` | exactly one phase and one task; a row needing two phases means the phase cut is wrong |
57
57
  | `implementation-owner` | the skill/role that performs it (usually `execute-phase`) |
58
- | `validator` | the command or check that proves it, copied from the acceptance artifact (`ACCEPTANCE.md` for legacy (pre-feature 61) units; `sed -n '/^## Acceptance criteria/,/^## /p' <unit>/SPEC.md \| git hash-object --stdin` for post-feature 61) or the phase's done-when |
58
+ | `validator` | the command or check that proves it, copied from the acceptance artifact (`ACCEPTANCE.md` for legacy (pre-feature 61) units; `sed -n '/^## Acceptance criteria/,/^## /p' <unit>/SPEC.md \| git hash-object --stdin` for post-feature 61) or the phase's done-when. When it is a backticked reader command, state the outcome it must produce — `` … matches <N> `` or `` … exits <N> `` — because `scripts/promise-coherence.mjs` re-runs it at the head and `verified` is only truthful while it reproduces. A validator with no stated outcome is a claim nobody can check |
59
59
  | `required-evidence` | what must be recorded where (test name, receipt line, ledger row) |
60
60
  | `status` | `planned \| in-progress \| verified \| n/a \| deferred` |
61
61
 
@@ -66,7 +66,9 @@ Status lifecycle and its hard edges:
66
66
  follow-up issue.
67
67
  - `verified` requires the named validator to have run and its evidence to be
68
68
  recorded where `required-evidence` says. An assertion of intent is not a
69
- status change.
69
+ status change. A count or exit code in the validator cell is re-run by
70
+ `scripts/promise-coherence.mjs`; when the command stops producing it, the row
71
+ is stale even while it still reads `verified`.
70
72
  - `n/a` needs evidence in the row (a `path:line`, ledger row, or cited contract)
71
73
  and may never contradict the SPEC's scope section. `n/a` without evidence is
72
74
  an open obligation.
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: unit-lane
3
3
  user-invocable: true
4
- version: 2.2.0
4
+ version: 2.3.0
5
5
  argument-hint: <NN-slug | "<idea>"> [--retriage] | --fix <issue-number> | --from-issue <issue-number>
6
6
  description: >
7
7
  One-shot lane conductor for a delivery unit: triage, implement, evidence, and
@@ -43,6 +43,12 @@ its work landed in the unit doc before continuing:
43
43
  - [ ] Each executor turn recorded its Evidence row and dated Progress entry
44
44
  - [ ] Diff guard run at the lane's resume (see step 4 in SKILL.md)
45
45
  - [ ] `git status --porcelain` is empty when the lane resumes
46
+ - [ ] Each phase swept the change **plus everything that depends on it** —
47
+ callers of what changed, consumers of what it delivers, and every mention
48
+ that stops being true; a surviving mention is part of the same phase, not
49
+ a finding for the next review
50
+ - [ ] `bun scripts/promise-coherence.mjs` RUN at the lane's resume → `verdict
51
+ PASS` (the unit doc's declared validators reproduce at the head)
46
52
 
47
53
  ## Allowed
48
54
 
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: verification-contract
3
3
  user-invocable: false
4
- version: 1.4.2
4
+ version: 1.4.3
5
5
  author: "Gabriel Trabanco <1969593+gtrabanco@users.noreply.github.com>"
6
6
  license: MIT
7
7
  description: >
@@ -17,6 +17,16 @@ description: >
17
17
  Single owner of the delivery finish line. Planning freezes it; executors may
18
18
  strengthen coverage but cannot move it; review checks the same bytes.
19
19
 
20
+ ## Executable claims
21
+
22
+ An acceptance criterion or Evidence row that states a count, an exit code or a
23
+ length is a promise, not a description: `scripts/promise-coherence.mjs` re-runs
24
+ it. Write the outcome a command must produce (`` `cmd` matches <N> ``,
25
+ `` `cmd` exits <N> ``) or, for a shape promise, name the file and the
26
+ `## Section` the count is about (`` … a 3–5 line `## Inputs` in
27
+ `skills/<name>/SKILL.md` ``) — a length with no named surface cannot be recounted
28
+ and fails closed.
29
+
20
30
  ## Artifact
21
31
 
22
32
  Legacy (pre-feature 61) units (ACCEPTANCE.md present — binding if present):