@gobing-ai/spur 0.3.96 → 0.3.97
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/.claude-plugin/marketplace.json +1 -1
- package/config/rules/strict/runtime-boundaries.yaml +1 -0
- package/config/templates/AGENTS.md +3 -3
- package/config/workflows/wrapup-pipeline.yaml +2 -1
- package/package.json +2 -2
- package/plugins/sp/README.md +6 -0
- package/plugins/sp/commands/dev-job-dump.md +29 -0
- package/plugins/sp/commands/dev-job-resume.md +29 -0
- package/plugins/sp/lib/inline-run.generated.mjs +25 -16
- package/plugins/sp/lib/quality-gate.generated.mjs +12 -5
- package/plugins/sp/lib/residual-scan.generated.d.mts +1 -0
- package/plugins/sp/lib/residual-scan.generated.mjs +16 -0
- package/plugins/sp/plugin.json +1 -1
- package/plugins/sp/references/roles.md +2 -2
- package/plugins/sp/scripts/feature-verification-steps.mjs +14 -1
- package/plugins/sp/scripts/feature-verification-steps.ts +14 -1
- package/plugins/sp/scripts/quality-gate.mjs +13 -6
- package/plugins/sp/scripts/quality-gate.ts +1 -1
- package/plugins/sp/scripts/residual-scan.mjs +64 -38
- package/plugins/sp/scripts/residual-scan.ts +39 -34
- package/plugins/sp/scripts/wrapup-steps.mjs +64 -3
- package/plugins/sp/scripts/wrapup-steps.ts +122 -3
- package/plugins/sp/skills/source-driven-development/SKILL.md +11 -0
- package/plugins/sp/skills/spur-cli/references/tasks/section-editing.md +9 -5
- package/plugins/sp/skills/spur-cli/references/workflows.md +17 -14
- package/plugins/sp/skills/spur-dev/SKILL.md +2 -0
- package/plugins/sp/skills/spur-dev/references/cross-cutting.md +3 -1
- package/plugins/sp/skills/spur-dev/references/dev-operations.md +79 -5
- package/plugins/sp/skills/spur-dev/references/done-housekeeping.md +4 -2
- package/plugins/sp/skills/spur-dev/references/execution-batch.md +8 -6
- package/plugins/sp/skills/spur-dev/references/execution-workflow.md +3 -3
- package/plugins/sp/skills/spur-dev/references/flag-glossary.md +9 -0
- package/plugins/sp/skills/spur-dev/references/inline-pipeline-driver.md +43 -12
- package/spur.js +4246 -2996
- package/web/_astro/{BoardApp.BIjMatT1.js → BoardApp.Bmv5WkJ9.js} +1 -1
- package/web/_astro/BoardApp.vveLOdDq.js +322 -0
- package/web/_astro/{TaskDetail.BZM3EAFx.js → TaskDetail.IKc3uDYV.js} +1 -1
- package/web/_astro/{arc.HkRiZnoI.js → arc.C63Ufg35.js} +1 -1
- package/web/_astro/{architectureDiagram-3BPJPVTR.BDdK-tgZ.js → architectureDiagram-3BPJPVTR.CP8Hyldk.js} +1 -1
- package/web/_astro/{blockDiagram-GPEHLZMM.CZ9kOBxx.js → blockDiagram-GPEHLZMM.Bo_48MRA.js} +1 -1
- package/web/_astro/{c4Diagram-AAUBKEIU.DXK9qeRD.js → c4Diagram-AAUBKEIU.Ch61sw-O.js} +1 -1
- package/web/_astro/channel.BKCmJpWM.js +1 -0
- package/web/_astro/{chunk-2J33WTMH.BTD2WeX5.js → chunk-2J33WTMH.CHpzS7xf.js} +1 -1
- package/web/_astro/{chunk-4BX2VUAB.Ci6Qbcvk.js → chunk-4BX2VUAB.DzMNNWIw.js} +1 -1
- package/web/_astro/{chunk-55IACEB6.yl3zsj7p.js → chunk-55IACEB6.BqPrDw_Q.js} +1 -1
- package/web/_astro/{chunk-727SXJPM.ClXZsfyR.js → chunk-727SXJPM.ZzBHhNw-.js} +1 -1
- package/web/_astro/{chunk-AQP2D5EJ.BmKWZBcP.js → chunk-AQP2D5EJ.1_O_LLkx.js} +1 -1
- package/web/_astro/{chunk-FMBD7UC4.By30fcb7.js → chunk-FMBD7UC4.GS4UHg7_.js} +1 -1
- package/web/_astro/{chunk-ND2GUHAM.24NmrD-k.js → chunk-ND2GUHAM.BnqotN4g.js} +1 -1
- package/web/_astro/{chunk-QZHKN3VN.BN4sKdcS.js → chunk-QZHKN3VN.Ghuh8zoJ.js} +1 -1
- package/web/_astro/{classDiagram-4FO5ZUOK.CJpoMPb5.js → classDiagram-4FO5ZUOK.BW9vC3zg.js} +1 -1
- package/web/_astro/{classDiagram-v2-Q7XG4LA2.CJpoMPb5.js → classDiagram-v2-Q7XG4LA2.BW9vC3zg.js} +1 -1
- package/web/_astro/{cose-bilkent-S5V4N54A.BraxQ2Nt.js → cose-bilkent-S5V4N54A.D6jNC0ti.js} +1 -1
- package/web/_astro/{cynefin-OW5HDTMX.gzoU73oL.js → cynefin-OW5HDTMX.BOGoCs4L.js} +1 -1
- package/web/_astro/{dagre-BM42HDAG.wyDfWySU.js → dagre-BM42HDAG.8iU5VcWi.js} +1 -1
- package/web/_astro/{diagram-2AECGRRQ.h2_EbMxV.js → diagram-2AECGRRQ.CVt88HwH.js} +1 -1
- package/web/_astro/{diagram-5GNKFQAL.Db6dcs89.js → diagram-5GNKFQAL.C9HxUUMl.js} +1 -1
- package/web/_astro/{diagram-KO2AKTUF.NVwzxu_U.js → diagram-KO2AKTUF.4ywkQN3t.js} +1 -1
- package/web/_astro/{diagram-LMA3HP47.B-eNgDQk.js → diagram-LMA3HP47.C48A6gpz.js} +1 -1
- package/web/_astro/{diagram-OG6HWLK6.Bsa8ZRbJ.js → diagram-OG6HWLK6.DxFieQW4.js} +1 -1
- package/web/_astro/{erDiagram-TEJ5UH35.BospRE5Q.js → erDiagram-TEJ5UH35.CtjtQqYs.js} +1 -1
- package/web/_astro/{flowDiagram-I6XJVG4X.DMzvHwAA.js → flowDiagram-I6XJVG4X.C5zAiahU.js} +1 -1
- package/web/_astro/{ganttDiagram-6RSMTGT7.Dmdxgd-M.js → ganttDiagram-6RSMTGT7.D_L6zsny.js} +1 -1
- package/web/_astro/{gitGraphDiagram-PVQCEYII.CaqdO0rL.js → gitGraphDiagram-PVQCEYII.Ignnrk3V.js} +1 -1
- package/web/_astro/index.CbNz17Sx.css +1 -0
- package/web/_astro/{infoDiagram-5YYISTIA.DDVD9Wn7.js → infoDiagram-5YYISTIA.DLv8-P5u.js} +1 -1
- package/web/_astro/{ishikawaDiagram-YF4QCWOH.EKyCUFsL.js → ishikawaDiagram-YF4QCWOH.p0OTpwFO.js} +1 -1
- package/web/_astro/{journeyDiagram-JHISSGLW.By2-RkYB.js → journeyDiagram-JHISSGLW.CIaBt-DD.js} +1 -1
- package/web/_astro/{kanban-definition-UN3LZRKU.ar-WmlyR.js → kanban-definition-UN3LZRKU.DGySIntq.js} +1 -1
- package/web/_astro/{linear.BnzMBgo_.js → linear.BATV4RXu.js} +1 -1
- package/web/_astro/{mermaid.core.DSqeFu2Y.js → mermaid.core.DzkwM3VX.js} +4 -4
- package/web/_astro/{mindmap-definition-RKZ34NQL.1XcF8Wh2.js → mindmap-definition-RKZ34NQL.3piBRRzA.js} +1 -1
- package/web/_astro/{pieDiagram-4H26LBE5.DnItHOdK.js → pieDiagram-4H26LBE5.DUNueLub.js} +1 -1
- package/web/_astro/{quadrantDiagram-W4KKPZXB.BQQyrnBt.js → quadrantDiagram-W4KKPZXB.9bihVbrt.js} +1 -1
- package/web/_astro/{requirementDiagram-4Y6WPE33.Dmzxun82.js → requirementDiagram-4Y6WPE33.CkjsC-YT.js} +1 -1
- package/web/_astro/{sankeyDiagram-5OEKKPKP.BBIeRKYB.js → sankeyDiagram-5OEKKPKP.Dbq4vaoQ.js} +1 -1
- package/web/_astro/{sequenceDiagram-3UESZ5HK.CUNVdBBf.js → sequenceDiagram-3UESZ5HK.BivrH99P.js} +1 -1
- package/web/_astro/{stateDiagram-AJRCARHV.DlFf2sJm.js → stateDiagram-AJRCARHV.CqLQ1Vzz.js} +1 -1
- package/web/_astro/{stateDiagram-v2-BHNVJYJU.DXR7I1H5.js → stateDiagram-v2-BHNVJYJU.DvvoLD3b.js} +1 -1
- package/web/_astro/{timeline-definition-PNZ67QCA.BcO-GyX2.js → timeline-definition-PNZ67QCA.B-KR78gv.js} +1 -1
- package/web/_astro/{vennDiagram-CIIHVFJN.ChCECmmW.js → vennDiagram-CIIHVFJN.Ck0Eieb5.js} +1 -1
- package/web/_astro/{wardleyDiagram-YWT4CUSO.CRaT12mD.js → wardleyDiagram-YWT4CUSO.CRfdd_do.js} +1 -1
- package/web/_astro/{xychartDiagram-2RQKCTM6.B3lsHVpj.js → xychartDiagram-2RQKCTM6.Ck_Jxk9C.js} +1 -1
- package/web/index.html +2 -2
- package/web/_astro/BoardApp.GvjIe9Z6.js +0 -191
- package/web/_astro/channel.DlhX2MEt.js +0 -1
- package/web/_astro/index.EoZlzLK-.css +0 -1
|
@@ -68,6 +68,7 @@ rules:
|
|
|
68
68
|
- "apps/cli/src/commands/workflow.ts" # FD byte-window tail of the mid-run run log for `workflow trace --follow` streaming (task 0428 / feature D2); readSync at offset over the observability sink's FDs
|
|
69
69
|
- "apps/web/src/modules/discover.ts" # Vite/Astro module scanner fallback under bun test
|
|
70
70
|
- "packages/app/src/services/quality-gate.ts" # gate artifacts (log/findings/receipt) written directly; merged-fd gate log and fsync-free atomic writes must stay byte-stable; bundled standalone for the bare-node plugin twin (task 1006 R1; mirrors history-anatomy.ts)
|
|
71
|
+
- "packages/app/src/services/run-storage.ts" # durable-evidence migration core (task 1025 R4): atomic tmp+rename byte copies with digest reread and atomic manifest publish must stay byte-stable (mirrors agent-usage-producer.ts / project-registry.ts exemptions)
|
|
71
72
|
|
|
72
73
|
# Synchronous bootstrap & path resolution:
|
|
73
74
|
- "packages/config/src/bundled-config.ts" # sync bundledConfigRoot() directory walk
|
|
@@ -163,9 +163,9 @@ spur <noun> --help
|
|
|
163
163
|
**Long-tail:** Additional `/sp:dev-*` commands (handover, gitmsg, fixall, findconflict, dogfood, reverse, arch,
|
|
164
164
|
…) are indexed in the project plugin README (`plugins/sp/README.md` when present).
|
|
165
165
|
|
|
166
|
-
**Outside spur-cli:**
|
|
167
|
-
`
|
|
168
|
-
`
|
|
166
|
+
**Outside spur-cli:** For nouns without a reference file, use only `spur <noun> --help` and
|
|
167
|
+
`docs/04_DESIGN.md`; never guess flags. Agent/message/self/projects references live under
|
|
168
|
+
`plugins/sp/skills/spur-cli/references/`.
|
|
169
169
|
|
|
170
170
|
---
|
|
171
171
|
|
|
@@ -139,7 +139,8 @@ states:
|
|
|
139
139
|
- id: task-resolve
|
|
140
140
|
description: >
|
|
141
141
|
Validate the task list ONCE and evaluate closed proportional routing (0758
|
|
142
|
-
R1-R4).
|
|
142
|
+
R1-R4). When vars.feature is set, resolve also runs the feature pre-flight
|
|
143
|
+
(1033 R2). Validation (0770 + 0783): vars.tasks must be a JSON array of
|
|
143
144
|
canonical four-digit WBS strings — non-arrays, non-strings, whitespace or
|
|
144
145
|
other shapes are rejected, not trimmed — deduplicated in first-seen
|
|
145
146
|
order, with __runId present, and every member must resolve via `spur task
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gobing-ai/spur",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.97",
|
|
4
4
|
"description": "Spur CLI — local-first harness for mainstream coding agents: constraint checking, workflow orchestration, agent health, and history analytics. Bun-native; exposes the `spur` command.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"spur",
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
"dev": "bun run src/index.ts",
|
|
50
50
|
"build": "bun run ../../scripts/spur-dev.ts build-cli",
|
|
51
51
|
"build:binaries": "bun run ../../scripts/spur-dev.ts build-binaries",
|
|
52
|
-
"build:bundle": "bun run ../../scripts/spur-dev.ts bundle-web && bun run ../../scripts/spur-dev.ts emit-board-types && bun build src/index.ts --target=bun --outfile spur.js && bun run ../../scripts/spur-dev.ts bundle-config config && bun run ../../scripts/spur-dev.ts bundle-plugins",
|
|
52
|
+
"build:bundle": "bun run ../../scripts/commands/bundle-plugin-lib.ts && bun run ../../scripts/spur-dev.ts bundle-web && bun run ../../scripts/spur-dev.ts emit-board-types && bun build src/index.ts --target=bun --outfile spur.js && bun run ../../scripts/spur-dev.ts bundle-config config && bun run ../../scripts/spur-dev.ts bundle-plugins",
|
|
53
53
|
"test": "bun test tests --coverage --coverage-dir=../../.coverage --pass-with-no-tests",
|
|
54
54
|
"typecheck": "tsc --noEmit",
|
|
55
55
|
"prepack": "bun run build:bundle",
|
package/plugins/sp/README.md
CHANGED
|
@@ -68,6 +68,10 @@ single-task wrap-up closes out a whole set of completed tasks in one pass.
|
|
|
68
68
|
|
|
69
69
|
### Crossing a session boundary
|
|
70
70
|
|
|
71
|
+
For any unfinished job, use `/sp:dev-job-dump --file <path>` to save a Markdown snapshot and
|
|
72
|
+
`/sp:dev-job-resume --file <path>` in the next session to reconcile state and continue the remaining
|
|
73
|
+
work. Include the referenced checkout and evidence files when transferring to another machine.
|
|
74
|
+
|
|
71
75
|
Two different problems, two different tools:
|
|
72
76
|
|
|
73
77
|
- **The harness compacts your context mid-task.** That's normal. Keep the _planning_ half in one
|
|
@@ -125,6 +129,8 @@ list this README is checked against.
|
|
|
125
129
|
| Command | What it does |
|
|
126
130
|
| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
127
131
|
| `dev-handover` | Generate a structured handover document when blocked — captures goal, progress, blocker, rejected approaches, and next steps |
|
|
132
|
+
| `dev-job-dump` | Save the current job, verified environment and ordered remaining work to a specified Markdown handoff file |
|
|
133
|
+
| `dev-job-resume` | Reconcile a Markdown handoff with current state and continue the remaining job through its existing owner |
|
|
128
134
|
| `dev-debug` | Systematic debugging protocol — reproduce, isolate, diagnose root cause, apply minimal fix, and verify with regression tests |
|
|
129
135
|
| `dev-daily` | Generate a daily summary report from agent usage data, git history, and notes |
|
|
130
136
|
| `dev-dogfood` | Dogfood an agent skill/command/CLI — drive it end-to-end with bounded auto-fix, self-monitor, and emit a comprehensive report |
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Dump remaining work to a Markdown handoff file
|
|
3
|
+
role: scribe
|
|
4
|
+
argument-hint: "--file <path>"
|
|
5
|
+
allowed-tools: ["Bash", "Read", "Write", "Skill"]
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Dev Job Dump
|
|
9
|
+
|
|
10
|
+
Wraps the **sp:spur-dev** skill.
|
|
11
|
+
|
|
12
|
+
## Argument Flags
|
|
13
|
+
|
|
14
|
+
| Flag | Description | Default |
|
|
15
|
+
| --- | --- | --- |
|
|
16
|
+
| `--file <path>` | Markdown file to write or refresh with the current job handoff. | required |
|
|
17
|
+
|
|
18
|
+
For shared semantics, see the [flag glossary](../skills/spur-dev/references/flag-glossary.md).
|
|
19
|
+
|
|
20
|
+
## Usage
|
|
21
|
+
|
|
22
|
+
/sp:dev-job-dump --file <path>
|
|
23
|
+
|
|
24
|
+
## Implementation
|
|
25
|
+
|
|
26
|
+
Follow [job-dump](../skills/spur-dev/references/dev-operations.md#11a-job-dump), using the shared
|
|
27
|
+
handoff template to capture the current job and its remaining work.
|
|
28
|
+
|
|
29
|
+
Skill(skill="sp:spur-dev", args="job-dump $ARGUMENTS")
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Resume remaining work from a Markdown handoff file
|
|
3
|
+
role: planner
|
|
4
|
+
argument-hint: "--file <path>"
|
|
5
|
+
allowed-tools: ["Bash", "Read", "Write", "Edit", "Skill"]
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Dev Job Resume
|
|
9
|
+
|
|
10
|
+
Wraps the **sp:spur-dev** skill.
|
|
11
|
+
|
|
12
|
+
## Argument Flags
|
|
13
|
+
|
|
14
|
+
| Flag | Description | Default |
|
|
15
|
+
| --- | --- | --- |
|
|
16
|
+
| `--file <path>` | Markdown handoff file to read before continuing the remaining work. | required |
|
|
17
|
+
|
|
18
|
+
For shared semantics, see the [flag glossary](../skills/spur-dev/references/flag-glossary.md).
|
|
19
|
+
|
|
20
|
+
## Usage
|
|
21
|
+
|
|
22
|
+
/sp:dev-job-resume --file <path>
|
|
23
|
+
|
|
24
|
+
## Implementation
|
|
25
|
+
|
|
26
|
+
Follow [job-resume](../skills/spur-dev/references/dev-operations.md#11b-job-resume): validate the
|
|
27
|
+
handoff against current state, then continue through the existing owner of the recorded operation.
|
|
28
|
+
|
|
29
|
+
Skill(skill="sp:spur-dev", args="job-resume $ARGUMENTS")
|