runcastle 1.2.12 → 1.3.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.
- package/bin/runcastle.js +825 -355
- package/drizzle/0034_funny_doctor_octopus.sql +2 -0
- package/drizzle/0034_hard_killraven.sql +1 -0
- package/drizzle/0034_review_evidence_stamps.sql +5 -0
- package/drizzle/meta/0034_snapshot.json +1085 -0
- package/drizzle/meta/0035_snapshot.json +1099 -0
- package/drizzle/meta/_journal.json +14 -0
- package/index.js +825 -355
- package/package.json +1 -1
- package/skills/burner/review-ticket.md +1 -1
- package/skills/burner/verify-fixes.md +39 -0
- package/web/assets/index-DcOfTvdV.js +145 -0
- package/web/assets/index-J07ijZNl.css +1 -0
- package/web/index.html +2 -2
- package/web/assets/index-CcFZnrux.js +0 -143
- package/web/assets/index-jOHWTE5S.css +0 -1
package/package.json
CHANGED
|
@@ -156,7 +156,7 @@ Findings from **either** mode go through it — a cited Standards or Spec findin
|
|
|
156
156
|
|
|
157
157
|
**Severity is `high` when an acceptance criterion is unmet or data/flow is broken**, `medium` for a real defect that is not that, `low` for the rest. It orders and labels; it never gates.
|
|
158
158
|
|
|
159
|
-
**Report defects highest severity first.** Each defect mints a fix ticket that burns in this same run, and only the first
|
|
159
|
+
**Report defects highest severity first.** Each defect mints a fix ticket that burns in this same run, and only the first {{AUTO_FIX_CAP}} do — everything after the cap is stored for the human to decide on, so the order you report in decides what gets fixed.
|
|
160
160
|
|
|
161
161
|
Report as you find things, never in a batch at the end: a finding you have sent survives an iteration that ends early, and one you were saving up does not. There is no closing wrap-up call — the digest (step 5) is the summary, and your observations render beneath it.
|
|
162
162
|
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Verification pass — tour and verify
|
|
2
|
+
|
|
3
|
+
You are running a bounded verification pass on `{{FEATURE_BRANCH}}` against `{{BASE_BRANCH}}`. The pass you verify is {{VERIFIES_PASS}}. The mode is inherited and never chosen:
|
|
4
|
+
|
|
5
|
+
{{DRIVE_AVAILABILITY}}
|
|
6
|
+
|
|
7
|
+
## What landed
|
|
8
|
+
|
|
9
|
+
{{LANDED_FIXES}}
|
|
10
|
+
|
|
11
|
+
## Context
|
|
12
|
+
|
|
13
|
+
Ticket:
|
|
14
|
+
|
|
15
|
+
{{TICKET_JSON}}
|
|
16
|
+
|
|
17
|
+
Feature:
|
|
18
|
+
|
|
19
|
+
{{FEATURE_BRIEF}}
|
|
20
|
+
|
|
21
|
+
Project docs digest:
|
|
22
|
+
|
|
23
|
+
{{DOCS_DIGEST}}
|
|
24
|
+
|
|
25
|
+
Run digests:
|
|
26
|
+
|
|
27
|
+
{{LAP_DIGESTS}}
|
|
28
|
+
|
|
29
|
+
## Tour and verify
|
|
30
|
+
|
|
31
|
+
In **Drive mode**, call `mcp__runcastle__review_drive({ action: "start" })`, start the recorder at `{{WALKTHROUGH_PATH}}`, and walk every acceptance criterion's user-facing surface once at pace. Keep the recorder running for the whole tour. Scrutinise only the landed fixes: check whether each listed repro step still reproduces and inspect the surfaces those fixes touched. Report anything plainly broken during the tour, but do not hunt for unrelated defects. Stop the recorder and drive when finished.
|
|
32
|
+
|
|
33
|
+
In **Gates mode**, read each fix diff against its finding and run the configured gates exactly once. Do not perform a second two-axis review of the whole branch.
|
|
34
|
+
|
|
35
|
+
{{GATE_NOTES}}
|
|
36
|
+
|
|
37
|
+
Report findings through `mcp__runcastle__report_finding` as usual. Verification findings remain open for the human and never mint fix tickets. The ordinary review auto-fix cap is {{AUTO_FIX_CAP}}.
|
|
38
|
+
|
|
39
|
+
Write `{{DIGEST_PATH}}`. Its first line must name the inherited mode and say "verification pass" (for example, `Drive verification pass`). Summarise which fixes held, which did not, and anything plainly broken on the tour. If the pass cannot run at all, write `{{BLOCKED_PATH}}` with the precise reason instead. End with `<promise>COMPLETE</promise>`.
|