bigpowers 1.3.2 → 1.4.0

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 (69) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/SKILL-INDEX.md +9 -9
  3. package/audit-code/SKILL.md +12 -0
  4. package/build-epic/SKILL.md +7 -4
  5. package/commit-message/SKILL.md +12 -0
  6. package/compose-workflow/SKILL.md +2 -0
  7. package/dashboard/bin/dashboard.js +93 -0
  8. package/dashboard/package-lock.json +1035 -0
  9. package/dashboard/package.json +18 -0
  10. package/dashboard/src/data/gate-status.js +32 -0
  11. package/dashboard/src/data/metrics.js +89 -0
  12. package/dashboard/src/data/pipeline-map.js +32 -0
  13. package/dashboard/src/data/reader.js +122 -0
  14. package/dashboard/src/data/watcher.js +108 -0
  15. package/dashboard/src/loaders/gate-status.js +32 -0
  16. package/dashboard/src/loaders/metrics.js +89 -0
  17. package/dashboard/src/loaders/pipeline-map.js +32 -0
  18. package/dashboard/src/loaders/reader.js +122 -0
  19. package/dashboard/src/loaders/watcher.js +108 -0
  20. package/dashboard/src/tui/epic-queue.js +36 -0
  21. package/dashboard/src/tui/filesystem.js +95 -0
  22. package/dashboard/src/tui/index.js +161 -0
  23. package/dashboard/src/tui/ledger.js +66 -0
  24. package/dashboard/src/tui/metrics-bar.js +30 -0
  25. package/dashboard/src/tui/pipeline.js +46 -0
  26. package/dashboard/src/tui/state-yaml.js +49 -0
  27. package/dashboard/src/web/client.html +477 -0
  28. package/dashboard/src/web/server.js +112 -0
  29. package/dashboard/test/fixtures/state.yaml +2 -0
  30. package/deepen-architecture/SKILL.md +2 -0
  31. package/define-language/SKILL.md +2 -0
  32. package/define-success/SKILL.md +4 -0
  33. package/delegate-task/SKILL.md +2 -0
  34. package/design-interface/SKILL.md +2 -0
  35. package/develop-tdd/SKILL.md +32 -0
  36. package/dispatch-agents/SKILL.md +2 -0
  37. package/edit-document/SKILL.md +6 -0
  38. package/elaborate-spec/SKILL.md +2 -0
  39. package/enforce-first/SKILL.md +2 -0
  40. package/grill-me/SKILL.md +2 -0
  41. package/guard-git/SKILL.md +2 -0
  42. package/hook-commits/SKILL.md +2 -0
  43. package/inspect-quality/SKILL.md +2 -0
  44. package/kickoff-branch/SKILL.md +5 -0
  45. package/map-codebase/SKILL.md +2 -0
  46. package/model-domain/SKILL.md +4 -0
  47. package/orchestrate-project/REFERENCE.md +1 -1
  48. package/orchestrate-project/SKILL.md +3 -1
  49. package/organize-workspace/SKILL.md +2 -0
  50. package/package.json +4 -2
  51. package/plan-refactor/SKILL.md +2 -0
  52. package/plan-work/SKILL.md +44 -0
  53. package/release-branch/SKILL.md +28 -0
  54. package/respond-review/SKILL.md +2 -0
  55. package/run-planning/SKILL.md +2 -0
  56. package/search-skills/SKILL.md +2 -0
  57. package/seed-conventions/SKILL.md +2 -0
  58. package/session-state/SKILL.md +16 -0
  59. package/setup-environment/SKILL.md +2 -0
  60. package/simulate-agents/SKILL.md +2 -0
  61. package/spike-prototype/SKILL.md +2 -0
  62. package/stocktake-skills/SKILL.md +2 -0
  63. package/survey-context/SKILL.md +23 -0
  64. package/terse-mode/SKILL.md +2 -0
  65. package/using-bigpowers/SKILL.md +4 -0
  66. package/validate-fix/SKILL.md +2 -0
  67. package/verify-work/SKILL.md +33 -0
  68. package/visual-dashboard/SKILL.md +2 -0
  69. package/wire-observability/SKILL.md +2 -0
package/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ # [1.4.0](https://github.com/danielvm-git/bigpowers/compare/v1.3.2...v1.4.0) (2026-06-11)
2
+
3
+
4
+ ### Features
5
+
6
+ * **skills+dashboard:** add HARD GATE enforcement and factory dashboard ([9d02d50](https://github.com/danielvm-git/bigpowers/commit/9d02d507ce4a2330132cd3cfc2775cd653e90825))
7
+
1
8
  ## [1.3.2](https://github.com/danielvm-git/bigpowers/compare/v1.3.1...v1.3.2) (2026-06-02)
2
9
 
3
10
 
package/SKILL-INDEX.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  **Purpose:** One canonical reference for all bigpowers skills. Referenced by README.md, RELEASE-PLAN.md, and CONVENTIONS.md. Updated per-release.
4
4
 
5
- **Last updated:** 2026-06-02 (v3.0.0 — YAML cockpit; 61 active, 0 planned; maintain-wiki removed; build-epic, run-planning, fix-bug added)
5
+ **Last updated:** 2026-06-10 (v3.1.0 — YAML cockpit; 61 active, 0 planned; 18 sub-ops absorbed into parent skills)
6
6
 
7
7
  ---
8
8
 
@@ -49,8 +49,8 @@
49
49
  | 14 | Plan | `change-request` | Add requirement or WSJF reorder | RELEASE-PLAN.md | ✅ Active |
50
50
  | 15 | Plan | `scope-work` | Define in/out boundaries | SCOPE.md | ✅ Active |
51
51
  | 16 | Plan | `slice-tasks` | Vertical slices | TASKS.md | ✅ Active |
52
- | 17 | Plan | `define-success` | Step → verify pairs | (dialogue) | ✅ Active |
53
- | 18 | Plan | `plan-work` | Detailed plan with verify steps | RELEASE-PLAN.md | ✅ Active |
52
+ | 17 | Plan | `define-success` | Step → verify pairs; absorbs zoom-out, slopcheck | (dialogue) | ✅ Active |
53
+ | 18 | Plan | `plan-work` | Detailed plan with verify steps; absorbs plan-work-fast | RELEASE-PLAN.md | ✅ Active |
54
54
  | 19 | Plan | `plan-refactor` | Refactor plan via interview | REFACTOR.md | ✅ Active |
55
55
  | 20 | Plan | `plan-release` | Release plan with Gherkin criteria | RELEASE-PLAN.md | ✅ Active |
56
56
  | 21 | Spike | `spike-prototype` | Throw-away spike | SPIKE-<name>.md | ✅ Active |
@@ -58,23 +58,23 @@
58
58
  | 23 | Initiate | `guard-git` | Block dangerous git commands | (git state) | ✅ Active |
59
59
  | 24 | Initiate | `hook-commits` | Pre-commit hooks | (git state) | ✅ Active |
60
60
  | 25 | Initiate | `seed-conventions` | CLAUDE.md + CONVENTIONS.md + specs/ | CLAUDE.md, CONVENTIONS.md | ✅ Active |
61
- | 26 | Build | `develop-tdd` | Red → green → refactor TDD | src/ | ✅ Active |
61
+ | 26 | Build | `develop-tdd` | Red → green → refactor TDD; absorbs red-phase, green-phase, refactor-phase | src/ | ✅ Active |
62
62
  | 27 | Build | `enforce-first` | F.I.R.S.T test-quality rubric | (checklist) | ✅ Active |
63
63
  | 28 | Build | `delegate-task` | One subagent, sequential + review | (code) | ✅ Active |
64
64
  | 29 | Build | `dispatch-agents` | Parallel subagents on independent tasks | (code) | ✅ Active |
65
65
  | 30 | Build | `execute-plan` | Batch execute plan with checkpoints | src/ | ✅ Active |
66
66
  | 31 | Harden | `wire-observability` | Structured logging + observability | src/, CLAUDE.md | ✅ Active |
67
- | 32 | Verify | `verify-work` | Multi-phase UAT; loop on gaps | (dialogue) | ✅ Active |
67
+ | 32 | Verify | `verify-work` | Multi-phase UAT; loop on gaps; absorbs cold-start-smoke, gaps-loop, verify-work-smoke | (dialogue) | ✅ Active |
68
68
  | 33 | Verify | `run-evals` | EDD capability + regression evals | EVALS-<feature>.md | ✅ Active |
69
69
  | 34 | Bug | `investigate-bug` | Investigate bug → diagnosis | bugs/BUG-*.md | ✅ Active |
70
70
  | 35 | Bug | `diagnose-root` | 4-phase root cause analysis | bugs/BUG-*.md | ✅ Active |
71
71
  | 36 | Bug | `validate-fix` | Prove fix works | (verify) | ✅ Active |
72
- | 37 | Review | `audit-code` | Self-review checklist | (checklist) | ✅ Active |
72
+ | 37 | Review | `audit-code` | Self-review checklist; absorbs audit-code-quick | (checklist) | ✅ Active |
73
73
  | 38 | Review | `request-review` | Fresh reviewer agent | review-report | ✅ Active |
74
74
  | 39 | Review | `respond-review` | Act on reviewer feedback | src/ | ✅ Active |
75
75
  | 40 | Review | `trace-requirement` | Story ID → code/tests | TRACEABILITY.md | ✅ Active |
76
- | 41 | Integrate | `commit-message` | Conventional Commits + semver | (git message) | ✅ Active |
77
- | 42 | Integrate | `release-branch` | Merge/PR decision + cleanup | (git PR) | ✅ Active |
76
+ | 41 | Integrate | `commit-message` | Conventional Commits + semver; absorbs commit-message-fix | (git message) | ✅ Active |
77
+ | 42 | Integrate | `release-branch` | Merge/PR decision + cleanup; absorbs release-branch-hotfix | (git PR) | ✅ Active |
78
78
  | 43 | Sustain | `inspect-quality` | Structured QA session | BUG-LOG.md | ✅ Active |
79
79
  | 44 | Sustain | `organize-workspace` | Safe workspace cleanup | (filesystem) | ✅ Active |
80
80
  | 45 | Sustain | `stocktake-skills` | Batch audit of skill catalog | specs/ audit report | ✅ Active |
@@ -82,7 +82,7 @@
82
82
  | 47 | Utility | `terse-mode` | Ultra-terse output (fallback) | (prompt) | ✅ Active |
83
83
  | 48 | Utility | `craft-skill` | Build new bigpowers skill | skills/<name>/SKILL.md | ✅ Active |
84
84
  | 49 | Utility | `edit-document` | Edit documents in specs/ | specs/<name>.md | ✅ Active |
85
- | 50 | Utility | `session-state` | Track decisions in state.yaml | state.yaml | ✅ Active |
85
+ | 50 | Utility | `session-state` | Track decisions in state.yaml; absorbs show-state, reset-state, compact-state, list-epics, check-gates | state.yaml | ✅ Active |
86
86
  | 51 | Utility | `migrate-spec` | Migrate foreign spec formats | specs/ | ✅ Active |
87
87
  | 52 | Utility | `visual-dashboard` | Browser dashboard | .bigpowers/dashboard/ | ✅ Active |
88
88
  | 53 | Utility | `write-document` | BMAD technical documents | specs/<name>.md | ✅ Active |
@@ -5,11 +5,18 @@ description: Self-review checklist for the coding agent to run before dispatchin
5
5
  ---
6
6
 
7
7
  # Audit Code
8
+ > **HARD GATE** — **HARD GATE** — Audit must check for: bugs (correctness), security, performance, and clarity. Do NOT skip security review if the code touches user data, auth, or external APIs.
9
+
8
10
 
9
11
  Run this self-review before asking anyone else to look at the code. The goal is to catch everything that is clearly wrong or missing — so the reviewer can focus on design and architecture, not hygiene.
10
12
 
11
13
  **Distinct from `request-review`:** This is the coding agent checking its own work. No second agent is involved. Run this first; run `request-review` after this passes.
12
14
 
15
+ ## Modes
16
+
17
+ - Default: full checklist
18
+ - --quick: Run only Supply Chain and Test Coverage. Use for changes under 50 LOC.
19
+
13
20
  ## Checklist
14
21
 
15
22
  ### Supply Chain & Security
@@ -97,3 +104,8 @@ Report the checklist with ✓ / ✗ per item. For each ✗, describe what needs
97
104
 
98
105
  If all items pass: suggest running `request-review` for an independent second opinion.
99
106
  If any items fail: fix them before proceeding.
107
+
108
+ ## Handoff
109
+
110
+ Gate: READY -> next: commit-message
111
+ Writes: state.yaml handoff.next_skill = commit-message
@@ -6,6 +6,8 @@ description: Eight-step epic build cycle — reads state.yaml, execution-status.
6
6
 
7
7
  # Build Epic
8
8
 
9
+ Scope: one story. Called by orchestrate-project Phase 4. Not a replacement for orchestrate-project.
10
+
9
11
  Orchestrates the **build** flow for a single epic: survey → plan tasks → kickoff → TDD → verify → audit → commit → release.
10
12
 
11
13
  > **HARD GATE** — Set `specs/state.yaml` `active_flow: build_epic` and `active_epic: eNN` before starting.
@@ -28,10 +30,11 @@ Orchestrates the **build** flow for a single epic: survey → plan tasks → kic
28
30
  ## Process
29
31
 
30
32
  1. Read `specs/state.yaml`, `specs/execution-status.yaml`, `specs/release-plan.yaml`, active `specs/epics/eNN-*.yaml`.
31
- 2. If `epic_cycle.step` missing, set to `1`.
32
- 3. Run **only the current step** (resume mode) unless user asked for full auto-run.
33
- 4. After step verify passes, increment `epic_cycle.step` in `state.yaml` (or `bash scripts/bp-yaml-set.sh` if available).
34
- 5. On story complete, set `execution-status.yaml` story key to `done`; run `bash scripts/sync-status-from-epics.sh`.
33
+ 2. **BCP Tracking (Step 2):** After `plan-work` completes, read the `bcps:` count from the epic shard and carry it into `state.yaml` as `epic_cycle.story_bcps = N`.
34
+ 3. If `epic_cycle.step` missing, set to `1`.
35
+ 4. Run **only the current step** (resume mode) unless user asked for full auto-run.
36
+ 5. After step verify passes, increment `epic_cycle.step` in `state.yaml` (or `bash scripts/bp-yaml-set.sh` if available).
37
+ 6. On story complete, set `execution-status.yaml` story key to `done`; run `bash scripts/sync-status-from-epics.sh`.
35
38
 
36
39
  ## Handoff
37
40
 
@@ -5,6 +5,13 @@ description: Reviews working-tree changes, then drafts a Conventional Commits ti
5
5
  ---
6
6
 
7
7
  # Commit Message
8
+ > **HARD GATE** — **HARD GATE** — Commits must follow Conventional Commits spec (type(scope): description). Do NOT use vague messages like 'fix' or 'updates.' The message must explain the 'why,' not the 'what.'
9
+
10
+
11
+ ## Modes
12
+
13
+ - Default: standard Conventional Commits message
14
+ - --fix-type: Forces type=fix. Use when commit type is unambiguous.
8
15
 
9
16
  ## What "last chat" means
10
17
 
@@ -38,3 +45,8 @@ If the repo uses a custom `@semantic-release/commit-analyzer` preset, note that
38
45
  ## Further reading
39
46
 
40
47
  - [REFERENCE.md](REFERENCE.md) — Message shape, footers, release mapping, squashing notes.
48
+
49
+ ## Handoff
50
+
51
+ Gate: READY -> next: release-branch
52
+ Writes: state.yaml handoff.next_skill = release-branch
@@ -5,6 +5,8 @@ model: sonnet
5
5
  ---
6
6
 
7
7
  # Compose Workflow
8
+ > **HARD GATE** — **HARD GATE** — Workflows are orchestration, not automation. Do NOT create workflows for tasks that should be single skills. Workflow complexity must be justified.
9
+
8
10
 
9
11
  ## Process
10
12
 
@@ -0,0 +1,93 @@
1
+ #!/usr/bin/env node
2
+
3
+ const path = require('path');
4
+
5
+ // Parse command-line arguments
6
+ const args = process.argv.slice(2);
7
+ let showHelp = false;
8
+ let useWeb = false;
9
+ let port = 7742;
10
+ let projectRoot = process.cwd();
11
+
12
+ for (let i = 0; i < args.length; i++) {
13
+ const arg = args[i];
14
+ if (arg === '--help' || arg === '-h') {
15
+ showHelp = true;
16
+ } else if (arg === '--web') {
17
+ useWeb = true;
18
+ } else if (arg === '--port') {
19
+ if (i + 1 < args.length) {
20
+ const portNum = parseInt(args[i + 1], 10);
21
+ if (!isNaN(portNum) && portNum > 0 && portNum < 65536) {
22
+ port = portNum;
23
+ i++;
24
+ } else {
25
+ console.error('Error: --port requires a valid port number (1-65535)');
26
+ process.exit(1);
27
+ }
28
+ } else {
29
+ console.error('Error: --port requires a port number');
30
+ process.exit(1);
31
+ }
32
+ } else if (arg === '--project') {
33
+ if (i + 1 < args.length) {
34
+ projectRoot = args[i + 1];
35
+ i++;
36
+ } else {
37
+ console.error('Error: --project requires a path');
38
+ process.exit(1);
39
+ }
40
+ } else {
41
+ console.error(`Error: unknown flag "${arg}"`);
42
+ process.exit(1);
43
+ }
44
+ }
45
+
46
+ if (showHelp) {
47
+ console.log(`
48
+ Dashboard - Visualize and manage your project
49
+
50
+ Usage: dashboard [OPTIONS]
51
+
52
+ Options:
53
+ --help, -h Show this help message and exit
54
+ --web Start the web server (default: TUI mode)
55
+ --port PORT Set the server port (default: 7742)
56
+ --project PATH Set the project root path (default: current directory)
57
+
58
+ Examples:
59
+ dashboard # Start in TUI mode
60
+ dashboard --web # Start web server on port 7742
61
+ dashboard --web --port 3000 # Start web server on port 3000
62
+ dashboard --web --project /path/to/project
63
+ dashboard --help # Show this message
64
+ `);
65
+ process.exit(0);
66
+ }
67
+
68
+ // Resolve the project root to an absolute path
69
+ const resolvedProjectRoot = path.resolve(projectRoot);
70
+
71
+ if (useWeb) {
72
+ // Start the web server
73
+ try {
74
+ const { createServer } = require('../src/web/server');
75
+ const server = createServer(resolvedProjectRoot, port);
76
+ server.listen(port, () => {
77
+ console.log(`Dashboard: http://localhost:${port}`);
78
+ console.log('Press Ctrl-C to stop.');
79
+ });
80
+ } catch (error) {
81
+ console.error('Error starting web server:', error.message);
82
+ process.exit(1);
83
+ }
84
+ } else {
85
+ // Start the TUI
86
+ try {
87
+ const { start } = require('../src/tui/index');
88
+ start(resolvedProjectRoot);
89
+ } catch (error) {
90
+ console.error('Error starting TUI:', error.message);
91
+ process.exit(1);
92
+ }
93
+ }