@cluesmith/codev 3.1.4 → 3.1.7

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 (86) hide show
  1. package/dashboard-dist/assets/{index-DSENHqFj.js → index-CaJH8x6Z.js} +24 -24
  2. package/dashboard-dist/assets/index-CaJH8x6Z.js.map +1 -0
  3. package/dashboard-dist/assets/{index-Cl5tt1AP.css → index-DB1KBSNE.css} +1 -1
  4. package/dashboard-dist/index.html +2 -2
  5. package/dist/agent-farm/commands/spawn-worktree.d.ts +8 -2
  6. package/dist/agent-farm/commands/spawn-worktree.d.ts.map +1 -1
  7. package/dist/agent-farm/commands/spawn-worktree.js +53 -9
  8. package/dist/agent-farm/commands/spawn-worktree.js.map +1 -1
  9. package/dist/agent-farm/lib/tunnel-client.d.ts +4 -0
  10. package/dist/agent-farm/lib/tunnel-client.d.ts.map +1 -1
  11. package/dist/agent-farm/lib/tunnel-client.js +12 -5
  12. package/dist/agent-farm/lib/tunnel-client.js.map +1 -1
  13. package/dist/agent-farm/servers/overview.d.ts +23 -131
  14. package/dist/agent-farm/servers/overview.d.ts.map +1 -1
  15. package/dist/agent-farm/servers/overview.js +52 -31
  16. package/dist/agent-farm/servers/overview.js.map +1 -1
  17. package/dist/agent-farm/servers/tower-routes.d.ts.map +1 -1
  18. package/dist/agent-farm/servers/tower-routes.js +79 -1
  19. package/dist/agent-farm/servers/tower-routes.js.map +1 -1
  20. package/dist/agent-farm/types.d.ts +13 -3
  21. package/dist/agent-farm/types.d.ts.map +1 -1
  22. package/dist/commands/adopt.js +2 -1
  23. package/dist/commands/adopt.js.map +1 -1
  24. package/dist/commands/consult/index.d.ts +7 -1
  25. package/dist/commands/consult/index.d.ts.map +1 -1
  26. package/dist/commands/consult/index.js +2 -2
  27. package/dist/commands/consult/index.js.map +1 -1
  28. package/dist/commands/consult/usage-extractor.d.ts.map +1 -1
  29. package/dist/commands/consult/usage-extractor.js +1 -0
  30. package/dist/commands/consult/usage-extractor.js.map +1 -1
  31. package/dist/commands/doctor.d.ts.map +1 -1
  32. package/dist/commands/doctor.js +22 -0
  33. package/dist/commands/doctor.js.map +1 -1
  34. package/dist/commands/init.js +2 -1
  35. package/dist/commands/init.js.map +1 -1
  36. package/dist/commands/porch/index.d.ts.map +1 -1
  37. package/dist/commands/porch/index.js +15 -17
  38. package/dist/commands/porch/index.js.map +1 -1
  39. package/dist/commands/porch/next.d.ts.map +1 -1
  40. package/dist/commands/porch/next.js +5 -20
  41. package/dist/commands/porch/next.js.map +1 -1
  42. package/dist/commands/porch/protocol.d.ts +8 -13
  43. package/dist/commands/porch/protocol.d.ts.map +1 -1
  44. package/dist/commands/porch/protocol.js +9 -27
  45. package/dist/commands/porch/protocol.js.map +1 -1
  46. package/dist/commands/porch/types.d.ts +4 -18
  47. package/dist/commands/porch/types.d.ts.map +1 -1
  48. package/dist/commands/update.d.ts +4 -0
  49. package/dist/commands/update.d.ts.map +1 -1
  50. package/dist/commands/update.js +41 -2
  51. package/dist/commands/update.js.map +1 -1
  52. package/dist/lib/forge-contracts.d.ts +7 -0
  53. package/dist/lib/forge-contracts.d.ts.map +1 -1
  54. package/dist/lib/forge-contracts.js.map +1 -1
  55. package/dist/lib/forge.js +1 -1
  56. package/dist/lib/forge.js.map +1 -1
  57. package/dist/lib/github.d.ts +32 -0
  58. package/dist/lib/github.d.ts.map +1 -1
  59. package/dist/lib/github.js +45 -0
  60. package/dist/lib/github.js.map +1 -1
  61. package/dist/lib/gitignore.d.ts +60 -0
  62. package/dist/lib/gitignore.d.ts.map +1 -0
  63. package/dist/lib/gitignore.js +114 -0
  64. package/dist/lib/gitignore.js.map +1 -0
  65. package/dist/lib/pr-gate-audit.d.ts +54 -0
  66. package/dist/lib/pr-gate-audit.d.ts.map +1 -0
  67. package/dist/lib/pr-gate-audit.js +106 -0
  68. package/dist/lib/pr-gate-audit.js.map +1 -0
  69. package/dist/lib/scaffold.d.ts +4 -23
  70. package/dist/lib/scaffold.d.ts.map +1 -1
  71. package/dist/lib/scaffold.js +4 -49
  72. package/dist/lib/scaffold.js.map +1 -1
  73. package/package.json +4 -4
  74. package/scripts/forge/gitea/issue-search.sh +28 -0
  75. package/scripts/forge/github/issue-search.sh +13 -0
  76. package/scripts/forge/gitlab/issue-search.sh +19 -0
  77. package/scripts/forge/linear/issue-search.sh +49 -0
  78. package/skeleton/.claude/skills/update-arch-docs/SKILL.md +1 -1
  79. package/skeleton/protocols/aspir/protocol.json +5 -5
  80. package/skeleton/protocols/bugfix/prompts/pr.md +5 -2
  81. package/skeleton/protocols/bugfix/protocol.json +2 -1
  82. package/skeleton/protocols/spir/protocol.json +5 -5
  83. package/skeleton/roles/architect.md +27 -0
  84. package/skeleton/templates/AGENTS.md +22 -0
  85. package/skeleton/templates/CLAUDE.md +22 -0
  86. package/dashboard-dist/assets/index-DSENHqFj.js.map +0 -1
@@ -257,6 +257,33 @@ gh issue view 42
257
257
  Update status as projects progress:
258
258
  - `conceived` → `specified` → `planned` → `implementing` → `committed` → `integrated`
259
259
 
260
+ ## Working with Project Labels
261
+
262
+ If your project uses prefix-structured labels (e.g. `area/*`, `team/*`, `priority/*`) to organize issues, the recipes below are the architect-specific bulk operations — substitute `<prefix>` and `<value>` for your project's actual labels. (Skip this section if your project doesn't use prefix-structured labels.)
263
+
264
+ **Operational recipes:**
265
+
266
+ ```bash
267
+ # Confirm the current label vocabulary (use before any label op to catch drift)
268
+ gh label list --search "<prefix>/"
269
+
270
+ # Group: tally open issues by <prefix>/* label
271
+ gh issue list --state open --limit 500 --json number,title,labels --jq \
272
+ 'group_by([.labels[].name | select(startswith("<prefix>/"))]) | .[] | "\(.[0].labels[] | select(.name | startswith("<prefix>/")).name): \(length)"'
273
+
274
+ # Edit: change a label on a single issue
275
+ gh issue edit <N> --remove-label <prefix>/<old> --add-label <prefix>/<new>
276
+
277
+ # Audit: find open issues with no <prefix>/* label
278
+ gh issue list --state open --limit 500 --json number,title,labels \
279
+ --jq '.[] | select([.labels[].name] | any(startswith("<prefix>/")) | not) | "#\(.number) \(.title)"'
280
+
281
+ # Bulk-move: relabel all open <prefix>/<old> issues to <prefix>/<new>
282
+ for n in $(gh issue list --state open --limit 500 --label <prefix>/<old> --json number --jq '.[].number'); do
283
+ gh issue edit "$n" --remove-label <prefix>/<old> --add-label <prefix>/<new>
284
+ done
285
+ ```
286
+
260
287
  ## Handling Blocked Builders
261
288
 
262
289
  When a builder reports blocked:
@@ -47,6 +47,28 @@ This succeeds if the protocol is registered (including via the skeleton fallback
47
47
  - **Reviews**: `codev/reviews/` - Reviews and lessons learned
48
48
  - **Protocols**: `codev/protocols/` - Development protocols
49
49
 
50
+ ## Working with Project Labels
51
+
52
+ If your project uses GitHub labels with a structured prefix (e.g. `area/*`, `team/*`, `priority/*`) to organize issues, treat them as the primary axis when users ask about grouping, editing, or auditing. Run `gh label list` to discover what your project uses, infer the convention from how existing issues are labeled, and ask the user to confirm before applying broad changes.
53
+
54
+ **Discover the convention:**
55
+
56
+ ```bash
57
+ # List all labels (skim for structured prefixes)
58
+ gh label list
59
+
60
+ # Filter to a specific prefix family
61
+ gh label list --search "<prefix>/"
62
+ ```
63
+
64
+ **Inferring policy:** conventions vary across projects. Common patterns:
65
+
66
+ - **One label per axis.** Many projects allow only one `<prefix>/*` label per issue, with a dedicated multi-axis fallback (e.g. `<prefix>/cross-cutting`).
67
+ - **Layered families.** Some projects use multiple prefixes together (`area/*` + `team/*` + `priority/*`).
68
+ - **Separator style.** `<family>/<value>` and `<family>:<value>` both exist in the wild — respect whatever convention the project already uses.
69
+
70
+ Before bulk-applying labels or relabeling issues, ask the user to confirm the convention — don't assume.
71
+
50
72
  ## Quick Start
51
73
 
52
74
  1. For new features, start with the Specification phase
@@ -45,6 +45,28 @@ This succeeds if the protocol is registered (including via the skeleton fallback
45
45
  - **Reviews**: `codev/reviews/` - Reviews and lessons learned
46
46
  - **Protocols**: `codev/protocols/` - Development protocols
47
47
 
48
+ ## Working with Project Labels
49
+
50
+ If your project uses GitHub labels with a structured prefix (e.g. `area/*`, `team/*`, `priority/*`) to organize issues, treat them as the primary axis when users ask about grouping, editing, or auditing. Run `gh label list` to discover what your project uses, infer the convention from how existing issues are labeled, and ask the user to confirm before applying broad changes.
51
+
52
+ **Discover the convention:**
53
+
54
+ ```bash
55
+ # List all labels (skim for structured prefixes)
56
+ gh label list
57
+
58
+ # Filter to a specific prefix family
59
+ gh label list --search "<prefix>/"
60
+ ```
61
+
62
+ **Inferring policy:** conventions vary across projects. Common patterns:
63
+
64
+ - **One label per axis.** Many projects allow only one `<prefix>/*` label per issue, with a dedicated multi-axis fallback (e.g. `<prefix>/cross-cutting`).
65
+ - **Layered families.** Some projects use multiple prefixes together (`area/*` + `team/*` + `priority/*`).
66
+ - **Separator style.** `<family>/<value>` and `<family>:<value>` both exist in the wild — respect whatever convention the project already uses.
67
+
68
+ Before bulk-applying labels or relabeling issues, ask the user to confirm the convention — don't assume.
69
+
48
70
  ## Quick Start
49
71
 
50
72
  1. For new features, start with the Specification phase