@gobing-ai/spur 0.3.2 → 0.3.4
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 +8 -8
- package/schemas/section-matrix.schema.json +1 -1
- package/spur-cli/config/config.example.yaml +1 -1
- package/spur-cli/config/rules/boundary/sp-runtime-path.yaml +32 -0
- package/spur-cli/config/rules/quality/tsdoc-exports.yaml +1 -1
- package/spur-cli/config/workflows/task-pipeline.yaml +1 -1
- package/spur.js +821 -360
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gobing-ai/spur",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.4",
|
|
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,13 +49,13 @@
|
|
|
49
49
|
},
|
|
50
50
|
"devDependencies": {
|
|
51
51
|
"@commander-js/extra-typings": "^14.0.0",
|
|
52
|
-
"@gobing-ai/ts-ai-runner": "^0.4.
|
|
53
|
-
"@gobing-ai/ts-dual-workflow-engine": "^0.4.
|
|
54
|
-
"@gobing-ai/ts-infra": "^0.4.
|
|
55
|
-
"@gobing-ai/ts-llm-jsonl-importer": "^0.4.
|
|
56
|
-
"@gobing-ai/ts-rule-engine": "^0.4.
|
|
57
|
-
"@gobing-ai/ts-runtime": "^0.4.
|
|
58
|
-
"@gobing-ai/ts-utils": "^0.4.
|
|
52
|
+
"@gobing-ai/ts-ai-runner": "^0.4.4",
|
|
53
|
+
"@gobing-ai/ts-dual-workflow-engine": "^0.4.4",
|
|
54
|
+
"@gobing-ai/ts-infra": "^0.4.4",
|
|
55
|
+
"@gobing-ai/ts-llm-jsonl-importer": "^0.4.4",
|
|
56
|
+
"@gobing-ai/ts-rule-engine": "^0.4.4",
|
|
57
|
+
"@gobing-ai/ts-runtime": "^0.4.4",
|
|
58
|
+
"@gobing-ai/ts-utils": "^0.4.4",
|
|
59
59
|
"@types/bun": "1.3.14",
|
|
60
60
|
"@types/figlet": "^1.7.0",
|
|
61
61
|
"@types/node-notifier": "8.0.5",
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
3
|
"$id": "https://gobing.ai/spur/schemas/section-matrix.schema.json",
|
|
4
4
|
"title": "Section-Status-Matrix Schema",
|
|
5
|
-
"description": "Validates
|
|
5
|
+
"description": "Validates the shipped section-matrix.yaml — which sections are required/optional/forbidden per task status. Design §3.2. Authored for ts-runtime's loadStructuredConfig validator (supports properties/required/additionalProperties + $defs/$ref/enum; NOT patternProperties/uniqueItems).",
|
|
6
6
|
"type": "object",
|
|
7
7
|
"required": ["variants"],
|
|
8
8
|
"additionalProperties": false,
|
|
@@ -15,7 +15,7 @@ bootstrap:
|
|
|
15
15
|
console: false
|
|
16
16
|
json: false
|
|
17
17
|
file: true
|
|
18
|
-
filePath: .spur/spur.log # relative to project root
|
|
18
|
+
filePath: .spur/logs/spur.log # relative to project root
|
|
19
19
|
telemetry:
|
|
20
20
|
enabled: false # OFF by default for CLI (per-invocation latency)
|
|
21
21
|
serviceName: spur
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
$schema: "@gobing-ai/spur/schemas/rule-file.schema.json"
|
|
2
|
+
# Runtime-path boundary rule (task 0217, R6) — zero `config/(plugins|rules|tasks|templates|workflows)`
|
|
3
|
+
# references in agent-facing instructions and runtime source code. `config/` is the build-time
|
|
4
|
+
# bundled-asset source-of-truth (ADR-015); `.spur/` is the runtime configuration directory that
|
|
5
|
+
# agents and runtime code MUST reference. A `config/...` literal in scope teaches the wrong
|
|
6
|
+
# convention and propagates confusion into every project created via `/sp:spur-init`.
|
|
7
|
+
#
|
|
8
|
+
# Blanket scope (all file types across apps/packages/plugins/sp) chosen deliberately:
|
|
9
|
+
# even build-time JSDoc and test-fixture `config/` literals are caught, forcing rephrase rather
|
|
10
|
+
# than false-positive triage. See task 0217 Design "Standing enforcement (R6)" for rationale.
|
|
11
|
+
#
|
|
12
|
+
# This is a STANDING gate (not transitional like rg-migration.yaml) — it runs on every pre-check.
|
|
13
|
+
include:
|
|
14
|
+
- "apps/**"
|
|
15
|
+
- "packages/**"
|
|
16
|
+
- "plugins/sp/**"
|
|
17
|
+
exclude:
|
|
18
|
+
- "**/node_modules/**"
|
|
19
|
+
- "**/dist/**"
|
|
20
|
+
rules:
|
|
21
|
+
- id: sp-runtime-path
|
|
22
|
+
description: >
|
|
23
|
+
Use `.spur/` paths for runtime configuration references, not `config/`. `config/` is the
|
|
24
|
+
build-time bundled-asset source-of-truth (ADR-015); `.spur/` is the runtime directory.
|
|
25
|
+
Agent-facing instructions (`plugins/sp/`) and runtime code (`apps/`, `packages/`) MUST NOT
|
|
26
|
+
contain literal `config/plugins`, `config/rules`, `config/tasks`, `config/templates`, or
|
|
27
|
+
`config/workflows` path references.
|
|
28
|
+
severity: error
|
|
29
|
+
evaluator:
|
|
30
|
+
type: rg
|
|
31
|
+
config:
|
|
32
|
+
pattern: "config/(plugins|rules|tasks|templates|workflows)"
|
|
@@ -23,7 +23,7 @@ exclude:
|
|
|
23
23
|
rules:
|
|
24
24
|
- id: every-export-has-tsdoc
|
|
25
25
|
description: >
|
|
26
|
-
Exported declarations must have a preceding
|
|
26
|
+
Exported declarations must have a preceding doc comment (JSDoc `/** */` or line `//`).
|
|
27
27
|
severity: error
|
|
28
28
|
enabled: true
|
|
29
29
|
evaluator:
|
|
@@ -120,7 +120,7 @@ states:
|
|
|
120
120
|
command: "bun run lint"
|
|
121
121
|
|
|
122
122
|
- id: review
|
|
123
|
-
description:
|
|
123
|
+
description: Three-dimensional code review via /sp:dev-review (functional requirements traceability + SECUA framework (Security, Efficiency, Correctness, Usability, Architecture) + architecture depth), findings written to `## Review`.
|
|
124
124
|
onEnter:
|
|
125
125
|
- kind: agent.run
|
|
126
126
|
options:
|