pi-dev 0.2.1 → 0.2.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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/skills/do/SKILL.md +25 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pi-dev",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "description": "An autonomous engineering skill framework for the pi runtime — built on Matt Pocock's skills.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -28,6 +28,30 @@ The point: **one request → one finished outcome**, with as few user interrupti
28
28
  5. **No handoff files.** State of work lives in three places only: **code (git), issue tracker, merged preferences**. Do not create `.scratch/flow/`, `docs/handoff/`, or any session-log file. Phase outputs are remembered in-context; persistent decisions are committed to code or filed as issues.
29
29
  6. **Side-effect gates respect prefs literally.** `auto-create-issues`, `auto-apply-labels`, `auto-commit-per-slice`, `auto-pr` follow merged prefs without reinterpretation.
30
30
  7. **Status line per phase.** `[flow N/M] <phase-name> — <one-sentence what>`.
31
+ 8. **Issue-write rule (no exceptions).** Every issue body written from a `/do` flow — whether you invoke `/to-issues`, `/triage`, or call `gh issue create` / `gh issue edit` directly from a bash tool — MUST start with this disclaimer as the first non-blank line:
32
+
33
+ ```
34
+ > *This was generated by AI during triage.*
35
+ ```
36
+
37
+ This rule is global and binding regardless of which skill you think you are in. Before publishing any issue body:
38
+
39
+ - Build the body with `--body-file <path>` or a heredoc, never with inline `--body "..."` (heredocs make the disclaimer visible in the diff and the file is auditable).
40
+ - The first non-blank line of the body file must be the disclaimer literal above.
41
+ - Immediately after `gh issue create` / `gh issue edit` returns, run one self-check on the resulting body and halt the flow if it fails:
42
+
43
+ ```bash
44
+ gh issue view <num> --json body --jq '.body' | awk 'NF{print; exit}' | grep -q 'generated by AI' \
45
+ || { echo "AI disclaimer missing on issue #<num>"; exit 1; }
46
+ ```
47
+
48
+ **Anti-patterns** (delete and redo if you catch any in your own draft):
49
+
50
+ - `gh issue create --title "…" --body "..."` (inline body, no disclaimer check)
51
+ - First line of issue body being `## Goal`, `## Scope`, `## Problem Statement`, `**Parent epic:**`, or any heading other than the disclaimer.
52
+ - Skipping the post-create `gh issue view ... | grep generated by AI` self-check because "I included the disclaimer in the heredoc".
53
+
54
+ Skills `/to-issues` and `/triage` repeat this rule for the case where you do enter them. This Hard rule is the binding statement for the case where you do not.
31
55
 
32
56
  ## Process
33
57
 
@@ -192,7 +216,7 @@ If you emitted anything that looks like a wrap-up ("All set!", "Done.", "Let me
192
216
  | `grill-with-docs` / `grill-lite` | every open question answered, deferred with rationale, or escalated; relevant CONTEXT/ADR updates committed |
193
217
  | `to-prd` | PRD published to issue tracker with `needs-triage` (per `auto-create-issues`) |
194
218
  | `to-issues` | all slices created on tracker; each is independently grabbable; labels applied per `auto-apply-labels` |
195
- | `triage` | issue carries exactly one state label; AI disclaimer present |
219
+ | `triage` | issue carries exactly one state label; AI disclaimer present (verified via the Hard rule #8 self-check, not just inserted into the heredoc) |
196
220
  | `diagnose` | reproducible pass/fail loop exists AND root cause identified AND regression test exists |
197
221
  | `tdd` | new test red→green; project's check command clean; commit per `auto-commit-per-slice` |
198
222
  | `improve-codebase-architecture` | proposed deepening either applied or recorded as a follow-up issue |