@gobing-ai/spur 0.3.8 → 0.3.10

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 (123) hide show
  1. package/README.md +18 -2
  2. package/{spur-cli/config → config}/rules/boundary/sp-runtime-path.yaml +9 -0
  3. package/package.json +4 -3
  4. package/spur.js +580 -98
  5. package/web/_astro/BoardApp.C6AZyK1W.js +179 -0
  6. package/web/_astro/BoardApp.EXjc9f_0.js +1 -0
  7. package/web/_astro/BoardApp.t7x-dYDo.css +1 -0
  8. package/web/_astro/TaskDetail.qCmrwQkG.js +1 -0
  9. package/web/_astro/arc.CbRppOdF.js +1 -0
  10. package/web/_astro/architectureDiagram-3BPJPVTR.9PfIcrsr.js +36 -0
  11. package/web/_astro/blockDiagram-GPEHLZMM.D8X1aH9F.js +132 -0
  12. package/web/_astro/c4Diagram-AAUBKEIU.BnAemEBs.js +10 -0
  13. package/web/_astro/channel.DDlSVLNA.js +1 -0
  14. package/web/_astro/chunk-2J33WTMH.DzOqcSmH.js +1 -0
  15. package/web/_astro/chunk-4BX2VUAB.AqtW-DKu.js +1 -0
  16. package/web/_astro/chunk-55IACEB6.BIRjE6jR.js +1 -0
  17. package/web/_astro/chunk-727SXJPM.CgDzPlSk.js +206 -0
  18. package/web/_astro/chunk-AQP2D5EJ.DjOW-ScW.js +231 -0
  19. package/web/_astro/chunk-FMBD7UC4.wdJmHym6.js +15 -0
  20. package/web/_astro/chunk-ND2GUHAM.C-Ho8u3p.js +1 -0
  21. package/web/_astro/chunk-QZHKN3VN.BF1HouUh.js +1 -0
  22. package/web/_astro/classDiagram-4FO5ZUOK.DAyOMMHn.js +1 -0
  23. package/web/_astro/classDiagram-v2-Q7XG4LA2.DAyOMMHn.js +1 -0
  24. package/web/_astro/client.CdFpTatq.js +9 -0
  25. package/web/_astro/cose-bilkent-S5V4N54A.CNoutjqT.js +1 -0
  26. package/web/_astro/cytoscape.esm.D3_iZ_3b.js +321 -0
  27. package/web/_astro/dagre-BM42HDAG.yQbaJnir.js +4 -0
  28. package/web/_astro/defaultLocale.CrowFXzY.js +1 -0
  29. package/web/_astro/diagram-2AECGRRQ.Y-0ZX0wP.js +43 -0
  30. package/web/_astro/diagram-5GNKFQAL.Co7hW1JF.js +10 -0
  31. package/web/_astro/diagram-KO2AKTUF.BW6g9zEB.js +3 -0
  32. package/web/_astro/diagram-LMA3HP47.5laYcnBs.js +24 -0
  33. package/web/_astro/diagram-OG6HWLK6.DOXfn0B3.js +24 -0
  34. package/web/_astro/erDiagram-TEJ5UH35.B65zPLW1.js +85 -0
  35. package/web/_astro/flowDiagram-I6XJVG4X.EyV3nzyc.js +162 -0
  36. package/web/_astro/ganttDiagram-6RSMTGT7.Dbg3JgqV.js +292 -0
  37. package/web/_astro/gitGraphDiagram-PVQCEYII.C_h4o8Bn.js +106 -0
  38. package/web/_astro/graph.D2o_JWn5.js +1 -0
  39. package/web/_astro/index.A0eX93qW.js +1 -0
  40. package/web/_astro/index.BSoQ0ZL0.css +1 -0
  41. package/web/_astro/infoDiagram-5YYISTIA.DmMa9Qku.js +2 -0
  42. package/web/_astro/init.Gi6I4Gst.js +1 -0
  43. package/web/_astro/ishikawaDiagram-YF4QCWOH.GWMrgoLC.js +70 -0
  44. package/web/_astro/journeyDiagram-JHISSGLW.BWABlU6N.js +139 -0
  45. package/web/_astro/kanban-definition-UN3LZRKU.MbfHFA2-.js +89 -0
  46. package/web/_astro/katex.HP8lGamR.js +257 -0
  47. package/web/_astro/layout.DNLMvjEt.js +1 -0
  48. package/web/_astro/linear.BmIHCCO9.js +1 -0
  49. package/web/_astro/mermaid.core.CpHEEQAK.js +301 -0
  50. package/web/_astro/mindmap-definition-RKZ34NQL.DYK94Ave.js +96 -0
  51. package/web/_astro/ordinal.BYWQX77i.js +1 -0
  52. package/web/_astro/pieDiagram-4H26LBE5.CnEGAkqK.js +30 -0
  53. package/web/_astro/quadrantDiagram-W4KKPZXB.CsByTJjg.js +7 -0
  54. package/web/_astro/requirementDiagram-4Y6WPE33.AL6ZRSrQ.js +84 -0
  55. package/web/_astro/sankeyDiagram-5OEKKPKP.BLAeuWlE.js +40 -0
  56. package/web/_astro/sequenceDiagram-3UESZ5HK.BGpsvxUR.js +162 -0
  57. package/web/_astro/stateDiagram-AJRCARHV.BBk0gd25.js +1 -0
  58. package/web/_astro/stateDiagram-v2-BHNVJYJU.BrqvmSUS.js +1 -0
  59. package/web/_astro/timeline-definition-PNZ67QCA.DkZf5CQT.js +120 -0
  60. package/web/_astro/vennDiagram-CIIHVFJN.BZvWwMZF.js +34 -0
  61. package/web/_astro/wardley-L42UT6IY.HfB08mt3.js +161 -0
  62. package/web/_astro/wardleyDiagram-YWT4CUSO.DgpZzmgA.js +78 -0
  63. package/web/_astro/xychartDiagram-2RQKCTM6.BlgrPsbQ.js +7 -0
  64. package/web/favicon.svg +4 -0
  65. package/web/index.html +2 -0
  66. /package/{spur-cli/config → config}/config.example.yaml +0 -0
  67. /package/{spur-cli/config → config}/plugins/.gitkeep +0 -0
  68. /package/{spur-cli/config → config}/rules/README.md +0 -0
  69. /package/{spur-cli/config → config}/rules/boundary/config-loading-ownership.yaml +0 -0
  70. /package/{spur-cli/config → config}/rules/boundary/dao-boundary.yaml +0 -0
  71. /package/{spur-cli/config → config}/rules/boundary/planning-folder-hardcode.yaml +0 -0
  72. /package/{spur-cli/config → config}/rules/boundary/sp-no-vendor-refs.yaml +0 -0
  73. /package/{spur-cli/config → config}/rules/migration/rg-dialect.yaml +0 -0
  74. /package/{spur-cli/config → config}/rules/quality/coverage-gate.yaml +0 -0
  75. /package/{spur-cli/config → config}/rules/quality/tsdoc-exports.yaml +0 -0
  76. /package/{spur-cli/config → config}/rules/recommended-post-check.yaml +0 -0
  77. /package/{spur-cli/config → config}/rules/recommended-pre-check.yaml +0 -0
  78. /package/{spur-cli/config → config}/rules/rg-migration.yaml +0 -0
  79. /package/{spur-cli/config → config}/rules/strict/http-boundaries.yaml +0 -0
  80. /package/{spur-cli/config → config}/rules/strict/rule-files-structural.yaml +0 -0
  81. /package/{spur-cli/config → config}/rules/strict/runtime-boundaries.yaml +0 -0
  82. /package/{spur-cli/config → config}/rules/strict-check.yaml +0 -0
  83. /package/{spur-cli/config → config}/rules/structure/protected-files.yaml +0 -0
  84. /package/{spur-cli/config → config}/rules/structure/test-focus-skip.yaml +0 -0
  85. /package/{spur-cli/config → config}/rules/structure/test-location.yaml +0 -0
  86. /package/{spur-cli/config → config}/rules/surface/check-cli-surface.yaml +0 -0
  87. /package/{spur-cli/config → config}/rules/typescript/bun-tooling.yaml +0 -0
  88. /package/{spur-cli/config → config}/rules/typescript/guarded-happy-dom-register.yaml +0 -0
  89. /package/{spur-cli/config → config}/rules/typescript/happy-dom-teardown.yaml +0 -0
  90. /package/{spur-cli/config → config}/rules/typescript/no-biome-suppressions.yaml +0 -0
  91. /package/{spur-cli/config → config}/rules/typescript/no-debugger.yaml +0 -0
  92. /package/{spur-cli/config → config}/rules/typescript/no-leaky-module-mocks.yaml +0 -0
  93. /package/{spur-cli/config → config}/rules/typescript/no-module-scope-import-calls.yaml +0 -0
  94. /package/{spur-cli/config → config}/rules/typescript/no-unmocked-module-eval-side-effects.yaml +0 -0
  95. /package/{spur-cli/config → config}/rules/typescript/output-boundaries.yaml +0 -0
  96. /package/{spur-cli/config → config}/rules/ui/ui-import-boundary.yaml +0 -0
  97. /package/{spur-cli/config → config}/tasks/section-matrix.yaml +0 -0
  98. /package/{spur-cli/config → config}/templates/AGENTS.md +0 -0
  99. /package/{spur-cli/config → config}/templates/bdd/checklist.md +0 -0
  100. /package/{spur-cli/config → config}/templates/bdd/gherkin.md +0 -0
  101. /package/{spur-cli/config → config}/templates/docs/00_ADR.md +0 -0
  102. /package/{spur-cli/config → config}/templates/docs/01_PRD.md +0 -0
  103. /package/{spur-cli/config → config}/templates/docs/02_ROADMAP.md +0 -0
  104. /package/{spur-cli/config → config}/templates/docs/03_ARCHITECTURE.md +0 -0
  105. /package/{spur-cli/config → config}/templates/docs/04_DESIGN.md +0 -0
  106. /package/{spur-cli/config → config}/templates/docs/05_FEATURES.md +0 -0
  107. /package/{spur-cli/config → config}/templates/docs/99_PROJECT_CONSTITUTION.md +0 -0
  108. /package/{spur-cli/config → config}/templates/feature/default.md +0 -0
  109. /package/{spur-cli/config → config}/templates/task/brainstorm.md +0 -0
  110. /package/{spur-cli/config → config}/templates/task/feature-impl.md +0 -0
  111. /package/{spur-cli/config → config}/templates/task/issue.md +0 -0
  112. /package/{spur-cli/config → config}/templates/task/meta.md +0 -0
  113. /package/{spur-cli/config → config}/templates/task/review.md +0 -0
  114. /package/{spur-cli/config → config}/templates/task/standard.md +0 -0
  115. /package/{spur-cli/config → config}/workflows/basic.yaml +0 -0
  116. /package/{spur-cli/config → config}/workflows/docs-pipeline.yaml +0 -0
  117. /package/{spur-cli/config → config}/workflows/feature-dev.yaml +0 -0
  118. /package/{spur-cli/config → config}/workflows/feature-lifecycle.yaml +0 -0
  119. /package/{spur-cli/config → config}/workflows/idea-pipeline.yaml +0 -0
  120. /package/{spur-cli/config → config}/workflows/planning-pipeline.yaml +0 -0
  121. /package/{spur-cli/config → config}/workflows/task-lifecycle.yaml +0 -0
  122. /package/{spur-cli/config → config}/workflows/task-pipeline.yaml +0 -0
  123. /package/{spur-cli/config → config}/workflows/wrapup-pipeline.yaml +0 -0
package/README.md CHANGED
@@ -45,10 +45,25 @@ If `~/.local/bin` isn't already on your `PATH`, add it (e.g. `export PATH="$HOME
45
45
  in your shell profile). Supported targets: `darwin-arm64`, `darwin-x64`, `linux-arm64`, `linux-x64`.
46
46
  Windows: use the Bun path under WSL.
47
47
 
48
+ ### Package layout (what ships)
49
+
50
+ The published tarball is a self-contained Bun bundle plus static assets:
51
+
52
+ | Path | Purpose |
53
+ |------|---------|
54
+ | `spur.js` | CLI entry (`bin.spur`) |
55
+ | `config/` | Default rules, workflows, tasks, templates, plugins (ADR-015 SSOT) |
56
+ | `web/` | Spur Board SPA served by `spur serve` |
57
+ | `schemas/` | JSON Schema for editor/CI validation |
58
+
59
+ `spur init` copies the full `config/` tree into the project `.spur/` directory (and seeds
60
+ `~/.config/spur/` globally on first run). `spur serve` resolves board assets from package `web/`.
61
+
48
62
  ### First run
49
63
 
50
64
  ```bash
51
- spur init # seeds ~/.config/spur/ (config.yaml, rules/, workflows/) — idempotent, never clobbers
65
+ spur init # scaffold .spur/ from bundled config/ + seed ~/.config/spur/ — idempotent, never clobbers
66
+ spur serve # local board at http://localhost:3000/board (uses package web/)
52
67
  ```
53
68
 
54
69
  The standalone installer runs `spur init` for you; the Bun install does it on your first `spur init`.
@@ -57,7 +72,8 @@ The standalone installer runs `spur init` for you; the Bun install does it on yo
57
72
 
58
73
  ```bash
59
74
  spur init # scaffold .spur/ + seed global rules
60
- spur rule run --preset recommended # evaluate constraint rules
75
+ spur serve --port 5678 # start API + Spur Board
76
+ spur rule run --preset recommended-pre-check # evaluate constraint rules
61
77
  spur workflow run <workflow.yaml> # run an FSM workflow
62
78
  spur agent run "<prompt>" --agent auto # execute a prompt via a coding agent
63
79
  spur agent doctor # check agent readiness
@@ -17,6 +17,15 @@ include:
17
17
  exclude:
18
18
  - "**/node_modules/**"
19
19
  - "**/dist/**"
20
+ # `.pi-lens/cache/` holds autogenerated project snapshots (absolute paths that
21
+ # legitimately contain `config/...` substrings). Not source — exclude to avoid
22
+ # triaging snapshot noise every pre-check.
23
+ - "**/.pi-lens/**"
24
+ # Package build artifacts: `build:bundle` copies repo-root config/ → apps/cli/config/
25
+ # (and legacy spur-cli/config/). Those trees are the ADR-015 SSOT payload itself and
26
+ # legitimately contain `config/...` documentation / self-references — not runtime paths.
27
+ - "apps/cli/config/**"
28
+ - "apps/cli/spur-cli/**"
20
29
  rules:
21
30
  - id: sp-runtime-path
22
31
  description: >
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gobing-ai/spur",
3
- "version": "0.3.8",
3
+ "version": "0.3.10",
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",
@@ -28,8 +28,9 @@
28
28
  },
29
29
  "files": [
30
30
  "spur.js",
31
- "spur-cli",
31
+ "config",
32
32
  "schemas",
33
+ "web",
33
34
  "README.md"
34
35
  ],
35
36
  "engines": {
@@ -42,7 +43,7 @@
42
43
  "dev": "bun run src/index.ts",
43
44
  "build": "bun run ../../scripts/spur-dev.ts build-cli",
44
45
  "build:binaries": "bun run ../../scripts/spur-dev.ts build-binaries",
45
- "build:bundle": "bun build src/index.ts --target=bun --outfile spur.js && bun run ../../scripts/spur-dev.ts bundle-config spur-cli/config",
46
+ "build:bundle": "bun run ../../scripts/spur-dev.ts bundle-web && bun build src/index.ts --target=bun --outfile spur.js && bun run ../../scripts/spur-dev.ts bundle-config config",
46
47
  "test": "bun test tests --coverage --coverage-dir=../../.coverage --pass-with-no-tests",
47
48
  "typecheck": "tsc --noEmit",
48
49
  "prepublishOnly": "bun run build:bundle"