godpowers 2.2.0 → 2.3.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 (59) hide show
  1. package/CHANGELOG.md +44 -7
  2. package/INSPIRATION.md +4 -2
  3. package/README.md +25 -12
  4. package/RELEASE.md +23 -27
  5. package/SKILL.md +2 -2
  6. package/agents/god-auditor.md +1 -1
  7. package/agents/god-deps-auditor.md +11 -0
  8. package/agents/god-executor.md +22 -5
  9. package/agents/god-greenfieldifier.md +1 -1
  10. package/agents/god-orchestrator.md +2 -2
  11. package/agents/god-planner.md +14 -0
  12. package/agents/god-pm.md +1 -1
  13. package/agents/god-reconciler.md +1 -1
  14. package/agents/god-roadmapper.md +1 -1
  15. package/agents/god-spec-reviewer.md +10 -0
  16. package/agents/god-stack-selector.md +4 -0
  17. package/agents/god-updater.md +1 -1
  18. package/bin/install.js +9 -3
  19. package/fixtures/dogfood/{half-migrated-gsd → half-migrated-planning}/manifest.json +2 -2
  20. package/lib/README.md +7 -1
  21. package/lib/atomic-write.js +85 -0
  22. package/lib/checkpoint.js +2 -1
  23. package/lib/context-writer.js +1 -1
  24. package/lib/executor-repair.js +65 -0
  25. package/lib/feature-awareness.js +1 -1
  26. package/lib/fs-async.js +2 -1
  27. package/lib/install-profiles.js +154 -0
  28. package/lib/installer-args.js +12 -0
  29. package/lib/installer-core.js +43 -8
  30. package/lib/linkage.js +2 -1
  31. package/lib/package-identity.js +38 -0
  32. package/lib/package-legitimacy.js +158 -0
  33. package/lib/planning-systems.js +9 -9
  34. package/lib/repo-surface-sync.js +1 -1
  35. package/lib/requirements.js +38 -5
  36. package/lib/reverse-sync.js +12 -2
  37. package/lib/source-grounding.js +177 -0
  38. package/lib/source-sync.js +6 -5
  39. package/lib/state.js +2 -1
  40. package/package.json +1 -1
  41. package/references/HAVE-NOTS.md +1 -1
  42. package/references/orchestration/MODE-DETECTION.md +2 -2
  43. package/references/shared/ORCHESTRATORS.md +3 -3
  44. package/routing/god-design.yaml +1 -1
  45. package/routing/god-migrate.yaml +3 -3
  46. package/schema/state.v1.json +1 -1
  47. package/skills/god-build.md +17 -3
  48. package/skills/god-doctor.md +2 -2
  49. package/skills/god-dogfood.md +2 -2
  50. package/skills/god-init.md +6 -6
  51. package/skills/god-migrate.md +10 -10
  52. package/skills/god-sync.md +2 -2
  53. package/skills/god-update-deps.md +4 -2
  54. package/skills/god-version.md +1 -1
  55. package/templates/IMPORTED-CONTEXT.md +1 -1
  56. package/templates/INITIAL-FINDINGS.md +2 -2
  57. /package/fixtures/dogfood/{half-migrated-gsd → half-migrated-planning}/.planning/PROJECT.md +0 -0
  58. /package/fixtures/dogfood/{half-migrated-gsd → half-migrated-planning}/.planning/REQUIREMENTS.md +0 -0
  59. /package/fixtures/dogfood/{half-migrated-gsd → half-migrated-planning}/.planning/ROADMAP.md +0 -0
package/CHANGELOG.md CHANGED
@@ -7,6 +7,43 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [2.3.0] - 2026-05-30
11
+
12
+ ### Added
13
+ - Added source-grounded planning helpers so build plans can name existing files,
14
+ existing symbols, planned new artifacts, and unchecked references before
15
+ execution begins.
16
+ - Added package legitimacy checks for package-backed stack and dependency
17
+ replacement decisions, covering npm existence, typo risk, staleness, and
18
+ repository metadata.
19
+ - Added role-based installer profiles (`core`, `builder`, `maintainer`,
20
+ `suite`, and `full`) plus `--minimal` as a compact alias for the core
21
+ surface.
22
+ - Added atomic file-write helpers and wired them into state, checkpoint,
23
+ requirements, linkage, source-sync, reverse-sync, and async filesystem
24
+ persistence paths.
25
+ - Added executor repair classification for retry, decomposition, pruning, and
26
+ escalation so failed implementation attempts leave clearer next actions.
27
+
28
+ ### Changed
29
+ - Debranded legacy planning-system wording across public docs, runtime
30
+ detection, fixtures, tests, and sync-back surfaces to keep Godpowers distinct
31
+ from external workflow products.
32
+ - Build, executor, planner, spec-reviewer, stack-selector, and dependency
33
+ auditor contracts now require source grounding or package legitimacy evidence
34
+ where those checks apply.
35
+
36
+ ## [2.2.1] - 2026-05-30
37
+
38
+ ### Fixed
39
+ - Made `.godpowers/REQUIREMENTS.md` stable on no-op regenerations by ignoring
40
+ generated timestamp-only changes and removing the extra blank line at EOF.
41
+ - Persisted reverse-sync deliverable summaries into `state.json.deliverables`,
42
+ matching the documented `/god-sync` and reverse-sync behavior.
43
+ - Reconciled the Godpowers self-ledger so the shipped deliverable-progress
44
+ feature is marked done in `.godpowers/roadmap/ROADMAP.md`,
45
+ `.godpowers/REQUIREMENTS.md`, and `.godpowers/state.json`.
46
+
10
47
  ## [2.2.0] - 2026-05-30
11
48
 
12
49
  ### Added
@@ -312,7 +349,7 @@ Dogfooding, host guarantees, extension authoring, and suite release dry-runs.
312
349
  ### Added
313
350
  - Added `lib/dogfood-runner.js`, `/god-dogfood`, and `npx godpowers dogfood`
314
351
  for deterministic messy-repo dogfood scenarios.
315
- - Added `fixtures/dogfood/` scenarios for half-migrated GSD import,
352
+ - Added `fixtures/dogfood/` scenarios for half-migrated legacy planning import,
316
353
  degraded and full host guarantees, extension scaffolding, and Mode D suite
317
354
  release dry-run planning.
318
355
  - Added `lib/host-capabilities.js` and dashboard host guarantee reporting for
@@ -488,7 +525,7 @@ Feature awareness for existing Godpowers projects.
488
525
  Planning-system migration and sync-back.
489
526
 
490
527
  ### Added
491
- - Added `lib/planning-systems.js` to detect GSD, BMAD, and Superpowers
528
+ - Added `lib/planning-systems.js` to detect legacy planning, BMAD, and Superpowers
492
529
  planning context and convert useful signals into Godpowers prep and seed
493
530
  artifacts.
494
531
  - Added `lib/source-sync.js` to write current Godpowers progress back into
@@ -498,11 +535,11 @@ Planning-system migration and sync-back.
498
535
  ambiguous.
499
536
  - Added `docs/planning-system-migration.md` with detection signals, import
500
537
  mapping, sync-back destinations, conflict rules, and return-path guidance.
501
- - Added behavioral tests for GSD, BMAD, Superpowers, imported seed artifacts,
538
+ - Added behavioral tests for legacy planning, BMAD, Superpowers, imported seed artifacts,
502
539
  state recording, and idempotent sync-back.
503
540
 
504
541
  ### Changed
505
- - `/god-init` now auto-invokes planning-system import when GSD, BMAD, or
542
+ - `/god-init` now auto-invokes planning-system import when legacy planning, BMAD, or
506
543
  Superpowers evidence is detected.
507
544
  - `/god-sync` now auto-invokes source-system sync-back when `state.json`
508
545
  records enabled source systems.
@@ -697,7 +734,7 @@ of leaving the user to infer the next action.
697
734
  `/god-roadmap-check`.
698
735
 
699
736
  ### Changed
700
- - Proposal-style outputs now mirror the clearer GSD pattern: implement a small
737
+ - Proposal-style outputs now mirror the clearer legacy planning pattern: implement a small
701
738
  slice, implement the full route, discuss more, inspect status, or run
702
739
  `/god-mode` only when that is safe.
703
740
  - `/god-next` and `/god-status` now explicitly distinguish partial progress,
@@ -1223,7 +1260,7 @@ routing, or the full autonomous arc starts.
1223
1260
  ### Documented
1224
1261
  - The full recent init preparation flow is now documented together:
1225
1262
  automatic AI-tool context for explicit `god init`, quiet context writes,
1226
- GSD / Superpowers / BMAD import into `IMPORTED-CONTEXT.md`, and direct
1263
+ legacy planning / Superpowers / BMAD import into `IMPORTED-CONTEXT.md`, and direct
1227
1264
  Godpowers repo findings in `INITIAL-FINDINGS.md`.
1228
1265
 
1229
1266
  ## [0.15.7] - 2026-05-11
@@ -1232,7 +1269,7 @@ Planning import release. Lets `/god-init` preserve useful context from nearby
1232
1269
  planning systems without making those systems authoritative.
1233
1270
 
1234
1271
  ### Added
1235
- - `/god-init` now detects GSD, Superpowers, BMAD, and similar planning context
1272
+ - `/god-init` now detects legacy planning, Superpowers, BMAD, and similar planning context
1236
1273
  during project preparation.
1237
1274
  - Added `.godpowers/prep/IMPORTED-CONTEXT.md` as a non-authoritative
1238
1275
  preparation artifact for imported product, delivery, architecture, and stack
package/INSPIRATION.md CHANGED
@@ -7,7 +7,9 @@
7
7
  Godpowers was shaped by ideas from several existing AI coding workflow
8
8
  systems. The four direct ancestors were:
9
9
 
10
- - **GSD** by Hanns Princivil ([github.com/aihxp/gsd](https://github.com/aihxp/gsd)) - pure-skill model, slash commands inside AI tools, TDD enforcement, critical-finding gate with autonomous-mode carve-out
10
+ - **Prior internal planning-system experiments** - pure-skill model, slash
11
+ commands inside AI tools, TDD enforcement, critical-finding gate with
12
+ autonomous-mode carve-out
11
13
  - **Superpowers** by Anthropic ([github.com/anthropics/skills](https://github.com/anthropics/skills)) - subagent specialization with strict hand-off contracts, fresh-context isolation, two-stage review pipelines
12
14
  - **BMAD-METHOD** ([github.com/bmad-code-org/BMAD-METHOD](https://github.com/bmad-code-org/BMAD-METHOD)) - story-file workflow for incremental delivery, multi-phase methodology
13
15
  - **arc-ready / arc-anything** - artifact-quality discipline (substitution test, three-label test, named have-nots catalog)
@@ -35,7 +37,7 @@ Beyond what was inherited, godpowers added:
35
37
  AGENTS.md / CLAUDE.md / GEMINI.md and 11 other tool-specific paths
36
38
  - **Feature awareness and host guarantee reporting** so existing projects and
37
39
  AI coding hosts can state what Godpowers capabilities are actually available
38
- - **Messy-repo dogfood fixtures** for GSD migration, sync-back, extension
40
+ - **Messy-repo dogfood fixtures** for legacy planning migration, sync-back, extension
39
41
  authoring, host capability, and Mode D suite release dry-run behavior
40
42
  - **Autonomous repo documentation and surface sync** for badges, route
41
43
  metadata, recipes, package payloads, release gates, and extension packs
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  [![CI](https://github.com/aihxp/godpowers/actions/workflows/ci.yml/badge.svg)](https://github.com/aihxp/godpowers/actions/workflows/ci.yml)
4
4
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
5
- [![Version](https://img.shields.io/badge/version-2.2.0-blue)](CHANGELOG.md)
5
+ [![Version](https://img.shields.io/badge/version-2.3.0-blue)](CHANGELOG.md)
6
6
  [![npm](https://img.shields.io/npm/v/godpowers.svg)](https://www.npmjs.com/package/godpowers)
7
7
 
8
8
  **Ship fast. Ship right. Ship everything. Ship accountably.**
@@ -21,14 +21,12 @@ Godpowers makes AI coding accountable: every serious run should leave disk
21
21
  state, artifacts, validation gates, host guarantees, and a next action. Code is
22
22
  only one output. The project memory and proof trail matter too.
23
23
 
24
- Version 2.2.0 keeps the proof loop executable. `npx godpowers quick-proof
25
- --project=.` now renders a shipped fixture with real `.godpowers/state.json`,
26
- computed next action, missing-artifact visibility, and host guarantees. The
27
- 2.0 line also ships a proof transcript, adoption canary harness, published npm
28
- install verifier, package checks that require the proof fixture to ship, and
29
- request-trace review guardrails for narrower implementation diffs. The 2.0.2
30
- release also hardens the dependency-free YAML subset, route file checks,
31
- installer file copying, and maintainer release gates.
24
+ Version 2.3.0 keeps the proof loop executable and adds accountability
25
+ hardening. Build plans can now be checked against real repository files and
26
+ symbols before execution, package-backed stack choices can be screened for
27
+ legitimacy, core ledger writes use atomic persistence, installer profiles let
28
+ teams choose a smaller command surface, and failed executor attempts leave a
29
+ clear repair classification.
32
30
 
33
31
  Maintainer hardening continues on the 2.x line without expanding the public
34
32
  command surface. The 2.1.0 patch closes a command-injection vector in the
@@ -78,6 +76,8 @@ should prove:
78
76
  - Planning artifacts, code changes, reviews, and launch checks can be inspected.
79
77
  - Host guarantees are explicit, including degraded or simulated agent behavior.
80
78
  - Release confidence covers tests, package contents, install surfaces, and docs.
79
+ - Build plans cite real files and symbols before execution starts.
80
+ - New dependencies have registry and legitimacy evidence before they enter the stack.
81
81
 
82
82
  ## Install
83
83
 
@@ -96,6 +96,19 @@ The installer copies:
96
96
  - Codex agent metadata to `<runtime>/agents/*.toml`
97
97
  - SessionStart hook (Claude Code only) to `<runtime>/hooks/`
98
98
 
99
+ Installer profiles keep the visible command surface calm:
100
+
101
+ ```bash
102
+ npx godpowers --claude --global --profile=core
103
+ npx godpowers --codex --local --profile=builder
104
+ npx godpowers --all --profile=maintainer
105
+ ```
106
+
107
+ Profiles are `core`, `builder`, `maintainer`, `suite`, and `full`. `full`
108
+ preserves the complete command surface, while the smaller profiles install the
109
+ commands most relevant to the role. `--minimal` is an alias for
110
+ `--profile=core`.
111
+
99
112
  Agent spawning is host-native. Claude uses its native agent/task interface,
100
113
  Codex uses installed `agents/*.toml` metadata backed by the same Markdown agent
101
114
  contracts, and the other runtimes use their supported agent or subagent
@@ -240,7 +253,7 @@ extension files, with parser coverage in `scripts/test-yaml-parser.js`.
240
253
  | `/god-automation-status` | Show host automation provider support | (built-in) |
241
254
  | `/god-automation-setup` | Prepare opt-in automation setup | (built-in) |
242
255
  | `/god-dogfood` | Run messy-repo dogfood scenarios for release and autonomy readiness | (built-in) |
243
- | `/god-migrate` | Detect GSD, BMAD, and Superpowers context; import and sync back | god-greenfieldifier when needed |
256
+ | `/god-migrate` | Detect legacy planning, BMAD, and Superpowers context; import and sync back | god-greenfieldifier when needed |
244
257
  | `/god-preflight` | Read-only intake audit before project-run readiness and pillars | god-auditor |
245
258
  | `/god-audit` | Score artifacts against have-nots | god-auditor |
246
259
  | `/god-debug` | 4-phase systematic debug | god-debugger |
@@ -327,7 +340,7 @@ Godpowers can dogfood itself against shipped messy-repo fixtures:
327
340
  npx godpowers dogfood
328
341
  ```
329
342
 
330
- The dogfood suite covers a half-migrated GSD project, full and degraded host
343
+ The dogfood suite covers a half-migrated legacy planning project, full and degraded host
331
344
  guarantee detection, extension scaffold validation, and a Mode D suite release
332
345
  dry-run. `/god-dogfood` reports failures with scoped specialist ownership
333
346
  rather than treating fixture checks as silent background work.
@@ -343,7 +356,7 @@ Godpowers can migrate from adjacent planning systems:
343
356
  /god-migrate
344
357
  ```
345
358
 
346
- This detects GSD `.planning/` or `.gsd/`, BMAD `_bmad-output/` or `.bmad/`,
359
+ This detects legacy planning `.planning/` or `.legacy-planning/`, BMAD `_bmad-output/` or `.bmad/`,
347
360
  and Superpowers specs or plans. It writes
348
361
  `.godpowers/prep/IMPORTED-CONTEXT.md`, optional imported seed artifacts, and
349
362
  managed sync-back files such as `.planning/GODPOWERS-SYNC.md`,
package/RELEASE.md CHANGED
@@ -1,11 +1,12 @@
1
- # Godpowers 2.2.0 Release
1
+ # Godpowers 2.3.0 Release
2
2
 
3
3
  > Status: Ready for release
4
4
  > Date: 2026-05-30
5
5
 
6
- Godpowers 2.2.0 adds deliverable progress tracking on top of the 2.1.1
7
- documentation and off-switch safety patch. It keeps the public slash-command
8
- surface stable and backward compatible.
6
+ Godpowers 2.3.0 is an accountability-hardening release for the 2.x line. It
7
+ keeps the public slash-command surface stable while strengthening planning
8
+ grounding, package legitimacy, install profiles, atomic persistence, and
9
+ executor recovery.
9
10
 
10
11
  ## What's in this release
11
12
 
@@ -16,23 +17,18 @@ surface stable and backward compatible.
16
17
 
17
18
  ## Highlights
18
19
 
19
- - Deliverable progress tracking: the new `/god-progress` command and the
20
- `.godpowers/REQUIREMENTS.md` ledger report which PRD requirements and roadmap
21
- increments are done, in progress, or not started. Status is derived from the
22
- linkage map by `lib/requirements.js`, so it cannot drift from the code that is
23
- actually implemented.
24
- - Stable requirement and increment ids: PRD requirements carry
25
- `P-MUST-NN`/`P-SHOULD-NN`/`P-COULD-NN`, and ROADMAP increments carry `M-slug`
26
- ids with a per-increment `Status` and member requirement ids.
27
- - The build chain populates the ledger during real runs: `god-planner` names the
28
- requirement ids each slice delivers, `god-executor` stamps `// Implements: P-...`
29
- annotations, and the spec and quality reviewers verify them.
30
- - The dashboard (`/god-status`, `/god-next`, `/god-mode` closeout) gains a
31
- `Deliverable progress` section, and a `whats-done` recipe routes natural
32
- language like "how far along are we" to `/god-progress`.
33
- - Documentation reconciled with the shipped surface and version: accurate
34
- counts and `/god-progress`/`REQUIREMENTS.md` awareness across README,
35
- ARCHITECTURE, reference, linkage, recipes, and the artifact inventories.
20
+ - Source-grounded planning records existing files, existing symbols, planned new
21
+ artifacts, and unchecked references before build execution.
22
+ - Package legitimacy checks give stack and dependency decisions a concrete npm
23
+ evidence gate before recommending package-backed choices.
24
+ - Installer profiles let users install a smaller role-based command surface
25
+ with `--profile=<name>` or `--minimal`.
26
+ - Atomic write helpers now protect core state and ledger writes from partial
27
+ file updates.
28
+ - Executor repair classification names whether a failed attempt should retry,
29
+ decompose, prune, or escalate.
30
+ - Public migration language now uses neutral legacy-planning terminology so
31
+ Godpowers is not confused with external workflow products.
36
32
 
37
33
  ## Validation
38
34
 
@@ -42,14 +38,14 @@ surface stable and backward compatible.
42
38
 
43
39
  ## Upgrade
44
40
 
45
- - `npm install -g godpowers@2.2.0` or `npx godpowers@2.2.0`
41
+ - `npm install -g godpowers@2.3.0` or `npx godpowers@2.3.0`
46
42
  - Re-run `/god-context` in each project to refresh installed runtime metadata
47
- - No breaking changes; existing `.godpowers/` state is compatible. Projects gain
48
- a `REQUIREMENTS.md` ledger the next time `/god-progress` or `/god-sync` runs.
43
+ - No breaking changes; existing `.godpowers/` state is compatible. Users who
44
+ want a compact install can run `npx godpowers --profile=core`.
49
45
 
50
46
  ## Notes
51
47
 
52
- - GitHub release creation for `v2.2.0`
48
+ - GitHub release creation for `v2.3.0`
53
49
  - The tag should match the npm package version
54
- - The `v2.2.0` tag should point to the release commit that matches the npm
55
- `godpowers@2.2.0` package.
50
+ - The `v2.3.0` tag should point to the release commit that matches the npm
51
+ `godpowers@2.3.0` package.
package/SKILL.md CHANGED
@@ -297,7 +297,7 @@ Run these local runtime helpers automatically when their trigger is present:
297
297
  `PROGRESS.md` mutation.
298
298
  - Lightweight reverse-sync or linkage scan after code or artifact edits.
299
299
  - Pillars sync planning after durable artifact truth changes.
300
- - `lib/planning-systems.importPlanningContext` when GSD, BMAD, or
300
+ - `lib/planning-systems.importPlanningContext` when legacy planning, BMAD, or
301
301
  Superpowers planning context is detected during `/god-init` or
302
302
  `/god-migrate`.
303
303
  - `lib/source-sync.run` when `state.json` records enabled `source-systems`
@@ -351,7 +351,7 @@ Spawn these agents only when the trigger is direct and scope is bounded:
351
351
  - `god-automation-engineer` after the user approves provider, template,
352
352
  cadence, and scope for multi-template, write-capable, background-agent,
353
353
  scriptable-scheduler, or provider-uncertain automation setup.
354
- - `god-greenfieldifier` when imported GSD, BMAD, or Superpowers context has
354
+ - `god-greenfieldifier` when imported legacy planning, BMAD, or Superpowers context has
355
355
  low confidence, conflicting systems, or missing canonical Godpowers seed
356
356
  artifacts after local import.
357
357
  - `god-greenfieldifier` when feature-awareness detects unimported or imported
@@ -250,7 +250,7 @@ Mode: [brownfield | bluefield]
250
250
  - This audit does not rewrite artifacts.
251
251
  - This audit must be followed by `god-greenfieldifier` in brownfield and
252
252
  bluefield workflows when the user wants the audit acted on.
253
- - This audit does not treat imported GSD, Superpowers, BMAD, or org context as
253
+ - This audit does not treat imported legacy planning, Superpowers, BMAD, or org context as
254
254
  source of truth.
255
255
  - This audit does not block the project run unless it finds a Critical security or
256
256
  impossible planning contradiction.
@@ -31,6 +31,15 @@ For each dependency, classify:
31
31
  - **Minor behind**: only minor/patch updates available
32
32
  - **Up to date**: no action needed
33
33
 
34
+ For each new replacement candidate, run the package legitimacy gate before
35
+ recommending it:
36
+ - Registry existence
37
+ - Package age and recent publish signal
38
+ - Repository URL
39
+ - Maintainer or ownership signal when visible
40
+ - Typo-squat similarity to better-known packages
41
+ - Known vulnerability status where available
42
+
34
43
  ### 2. Triage
35
44
 
36
45
  Priority order:
@@ -109,3 +118,5 @@ Deps audit FAILS if:
109
118
  - Changelog not consulted (so breaking changes unknown)
110
119
  - Lockfile not committed alongside package.json
111
120
  - Bulk update without per-package commits (loses bisect-ability)
121
+ - Replacement package recommended without legitimacy evidence or accepted-risk
122
+ note
@@ -22,6 +22,8 @@ You receive:
22
22
  - The slice's dependencies (what must already exist)
23
23
  - Optional repair payload: failing command, error counts, focused diagnostics,
24
24
  and files implicated by a previous verification run
25
+ - Optional source-grounding report: pass/fail status for existing files and
26
+ symbols cited by the slice plan
25
27
 
26
28
  ## TDD Sequence (mandatory)
27
29
 
@@ -73,6 +75,14 @@ requirement as "not started" even after you ship it.
73
75
  - **Unrelated cleanup**: VIOLATION. Do not reformat, rename, refactor, or
74
76
  delete adjacent code that is not required for this slice. Mention it as a
75
77
  follow-up instead.
78
+ - **Ungrounded existing references**: VIOLATION. Do not implement against a
79
+ file, symbol, route, or API that the source-grounding preflight failed to
80
+ locate unless the plan explicitly declares it as a new artifact or the user
81
+ accepted it as unchecked risk.
82
+ - **Unverified new dependency**: VIOLATION. Before installing or adding a new
83
+ third-party package, run the package legitimacy gate from
84
+ `lib/package-legitimacy.js` or record why network verification was unavailable
85
+ and who accepted the risk.
76
86
 
77
87
  ## Request Trace Discipline
78
88
 
@@ -122,8 +132,15 @@ happen.
122
132
 
123
133
  ## Repair Mode
124
134
 
125
- If invoked with a repair payload, stay narrowly focused on the failing command.
126
- Do not reopen PRD, ARCH, roadmap, or stack unless the diagnostic proves the
127
- artifact is stale. Fix code, config, imports, tests, generated types, or
128
- tooling until the command passes. If the same root failure survives 3 focused
129
- attempts, return the smallest human-only question needed to continue.
135
+ If invoked with a repair payload, classify the failure before editing:
136
+
137
+ | Strategy | Use when | Action |
138
+ |---|---|---|
139
+ | retry | The approach is right but a command, import, path, dependency, timeout, or environment failed | Make one focused adjustment and rerun the exact verification |
140
+ | decompose | The task is too broad or the done criteria combines multiple outcomes | Split into at most 3 smaller verified steps for this run |
141
+ | prune | A task is infeasible in this slice because a prerequisite is missing or out of scope | Skip only with a recorded reason and a downstream review marker |
142
+ | escalate | The repair budget is exhausted or the fix changes architecture, product behavior, or user intent | Stop and return the smallest human-only decision needed |
143
+
144
+ Log every repair decision in the slice closeout as
145
+ `[Executor Repair - STRATEGY] task: reason`. Do not reopen PRD, ARCH, roadmap,
146
+ or stack unless the diagnostic proves the artifact is stale.
@@ -137,7 +137,7 @@ After approved rewrites:
137
137
 
138
138
  ## Rules
139
139
 
140
- - Imported GSD, Superpowers, BMAD, org context, and reconstructed artifacts are
140
+ - Imported legacy planning, Superpowers, BMAD, org context, and reconstructed artifacts are
141
141
  evidence, not source of truth.
142
142
  - Never erase existing specific evidence to replace it with a generic
143
143
  greenfield default.
@@ -161,7 +161,7 @@ Before each tier, check whether this repo is part of a registered suite:
161
161
 
162
162
  ## Planning-system context import
163
163
 
164
- During `/god-init`, scan for adjacent methodology artifacts from GSD,
164
+ During `/god-init`, scan for adjacent methodology artifacts from legacy planning,
165
165
  Superpowers, BMAD, and similar systems. Treat them as preparation context,
166
166
  not as source of truth.
167
167
 
@@ -210,7 +210,7 @@ conflicts with user intent, state.json, PROGRESS.md, or completed Godpowers
210
210
  artifacts, the Godpowers artifact wins.
211
211
 
212
212
  Detection signals:
213
- - GSD: `.gsd/`, `.planning/`, `GSD.md`, `gsd*.md`
213
+ - legacy planning: `.legacy-planning/`, `.planning/`, `LEGACY-PLANNING.md`, `legacy-planning*.md`
214
214
  - Superpowers: `.superpowers/`, `superpowers/`, `SUPERPOWERS.md`,
215
215
  `.claude/skills/`, `.codex/skills/`
216
216
  - BMAD: `.bmad-core/`, `bmad-core/`, `.bmad/`, `BMAD.md`,
@@ -35,6 +35,12 @@ Plan the build.
35
35
  - **Slice name**: user-visible behavior
36
36
  - **Requirements**: the PRD requirement ids this slice delivers (so the
37
37
  executor can annotate the code and the deliverable ledger can trace it)
38
+ - **Source grounding**:
39
+ - Existing files this slice depends on
40
+ - Existing symbols, functions, classes, routes, commands, or APIs this
41
+ slice depends on
42
+ - New artifacts this slice will create
43
+ - Unchecked references that need human acceptance before execution
38
44
  - **Files to create/modify**: exact paths
39
45
  - **Tests to write FIRST**: with expected behavior
40
46
  - **Implementation steps**: ordered
@@ -55,6 +61,11 @@ Write `.godpowers/build/PLAN.md`:
55
61
  ## Wave 1 (parallel)
56
62
  ### Slice 1.1: User can create an account
57
63
  - Requirements: P-MUST-01
64
+ - Source grounding:
65
+ - Existing files: src/auth/index.ts
66
+ - Existing symbols: createSession
67
+ - New artifacts: src/auth/signup.ts, src/auth/signup.test.ts
68
+ - Unchecked references: none
58
69
  - Files: src/auth/signup.ts, src/auth/signup.test.ts, src/db/users.ts
59
70
  - Tests first:
60
71
  - signup_creates_user_record
@@ -76,6 +87,9 @@ Write `.godpowers/build/PLAN.md`:
76
87
  - `.godpowers/build/PLAN.md` exists
77
88
  - Every slice has tests-first sequence
78
89
  - Every slice names the PRD requirement ids it delivers
90
+ - Every slice separates existing references from new artifacts
91
+ - Every existing reference is grounded by `lib/source-grounding.js` before
92
+ execution
79
93
  - Every member requirement id of the increment is covered by at least one slice
80
94
  - Every slice has verification criteria
81
95
  - Dependencies are explicit
package/agents/god-pm.md CHANGED
@@ -62,7 +62,7 @@ reflects what Godpowers observed during init: codebase shape, tests, docs,
62
62
  risks, and methodology systems detected.
63
63
 
64
64
  If `.godpowers/prep/IMPORTED-CONTEXT.md` exists, read it before drafting the
65
- PRD. Use product signals from GSD, Superpowers, BMAD, or similar systems as
65
+ PRD. Use product signals from legacy planning, Superpowers, BMAD, or similar systems as
66
66
  hypothesis-level input only.
67
67
 
68
68
  If `.godpowers/domain/GLOSSARY.md` exists, read it before drafting the PRD.
@@ -144,7 +144,7 @@ For each artifact below, check (in parallel where possible):
144
144
  - If imported planning systems have low confidence or conflicts: recommend
145
145
  `god-greenfieldifier`.
146
146
 
147
- #### SOURCE SYSTEM SYNC-BACK (GSD, BMAD, Superpowers)
147
+ #### SOURCE SYSTEM SYNC-BACK (legacy planning, BMAD, Superpowers)
148
148
  - Did migrated source-system summaries need managed sync-back?
149
149
  - Verdict: not-applicable / fresh / needs-sync-back / blocked-by-conflict
150
150
  - If conflicts exist: recommend greenfieldifier review before writes.
@@ -36,7 +36,7 @@ If `.godpowers/prep/INITIAL-FINDINGS.md` exists, read it first for repo risks,
36
36
  existing tests, docs, CI, deploy, and suggested sequencing implications.
37
37
 
38
38
  If `.godpowers/prep/IMPORTED-CONTEXT.md` exists, read its delivery signals
39
- before sequencing work. Use imported GSD, Superpowers, BMAD, or similar
39
+ before sequencing work. Use imported legacy planning, Superpowers, BMAD, or similar
40
40
  stories and plans as hypothesis-level input only. Convert imported terminology
41
41
  into Godpowers vocabulary. Do not preserve imported methodology terminology in
42
42
  Godpowers artifacts unless the user explicitly asked for it.
@@ -57,6 +57,14 @@ Answer each with EVIDENCE from the code:
57
57
  - A planned requirement id with no annotation is a finding, because the
58
58
  deliverable ledger derives requirement status from those annotations.
59
59
 
60
+ 7. **Did the implementation honor source grounding and package legitimacy?**
61
+ - Did every existing file or symbol cited by the slice plan exist before
62
+ execution?
63
+ - Did new files appear only under the plan's new artifacts or expected file
64
+ list?
65
+ - If the slice added a dependency, is there package legitimacy evidence or
66
+ an explicit accepted-risk note?
67
+
60
68
  ## Output
61
69
 
62
70
  Return verdict to orchestrator:
@@ -83,6 +91,8 @@ Return verdict to orchestrator:
83
91
  - Every touched file has request-trace evidence
84
92
  - No speculative flexibility or unrelated cleanup entered the diff
85
93
  - Every planned requirement id carries its `// Implements: P-...` annotation
94
+ - Source-grounding failures are resolved or explicitly accepted
95
+ - New dependencies have legitimacy evidence or accepted-risk notes
86
96
 
87
97
  If FAIL: orchestrator returns the slice to god-executor with the failures.
88
98
  If PASS: orchestrator spawns god-quality-reviewer next.
@@ -65,6 +65,9 @@ Rules:
65
65
  3. For each category:
66
66
  - List 2-3 viable candidates
67
67
  - Score on: fit-for-requirements, maturity, ecosystem health, team familiarity, total cost
68
+ - For package-backed choices, run or request the package legitimacy gate:
69
+ registry existence, package age, repository signal, maintainer signal,
70
+ typo-squat risk, and known vulnerability status where available
68
71
  - Document the **flip point**: condition under which you'd reverse this choice
69
72
  - Document the **lock-in cost**: how hard is it to switch (Low/Medium/High)
70
73
  4. Verify pairing compatibility (e.g., chosen ORM works with chosen DB)
@@ -103,6 +106,7 @@ Stack DECISION FAILS if:
103
106
  - High lock-in choice with likely flip point in <6 months
104
107
  - Pairing incompatibility (chosen ORM doesn't support chosen DB, etc.)
105
108
  - "Best practice" rationale without specific rationale tied to ARCH
109
+ - Package-backed choice without legitimacy evidence or an accepted-risk note
106
110
 
107
111
  ## Pause Conditions
108
112
 
@@ -174,7 +174,7 @@ After feature work, every artifact that was impacted needs to reflect reality.
174
174
 
175
175
  ### Source-system sync-back
176
176
  - Call `lib/source-sync.run(projectRoot)` when `.godpowers/state.json`
177
- declares GSD, BMAD, Superpowers, or other source-system records.
177
+ declares legacy planning, BMAD, Superpowers, or other source-system records.
178
178
  - Write only managed Godpowers summary sections back to source systems.
179
179
  - Preserve user-authored source-system content outside managed sections.
180
180
  - If source-system confidence is low or conflicts are present, recommend
package/bin/install.js CHANGED
@@ -17,8 +17,10 @@ const {
17
17
  uninstallForRuntime,
18
18
  countInstalledSurface
19
19
  } = require('../lib/installer-core');
20
+ const { describeProfiles } = require('../lib/install-profiles');
21
+ const identity = require('../lib/package-identity');
20
22
 
21
- const VERSION = require('../package.json').version;
23
+ const VERSION = identity.PACKAGE_VERSION;
22
24
 
23
25
  const BANNER = `
24
26
  GODPOWERS v${VERSION}
@@ -80,6 +82,8 @@ function showHelp() {
80
82
  log(' --codebuddy Install for CodeBuddy');
81
83
  log(' --pi Install for Pi');
82
84
  log(' --all Install for all 15 runtimes');
85
+ log(' --profile=<name> Install profile: core, builder, maintainer, suite, or full');
86
+ log(' --minimal Alias for --profile=core');
83
87
  log(' -u, --uninstall Uninstall Godpowers');
84
88
  log(' -h, --help Show this help message');
85
89
  log('');
@@ -92,6 +96,7 @@ function showHelp() {
92
96
  log(' npx godpowers dogfood');
93
97
  log(' npx godpowers extension-scaffold --name=@godpowers/my-pack --output=.');
94
98
  log(' npx godpowers --claude --global');
99
+ log(' npx godpowers --claude --global --profile=core');
95
100
  log(' npx godpowers --all');
96
101
  log(' npx godpowers --codex --cursor');
97
102
  }
@@ -243,10 +248,11 @@ function runInstall(opts, srcDir) {
243
248
  process.exit(1);
244
249
  }
245
250
 
246
- const surface = countInstalledSurface(srcDir);
251
+ const surface = countInstalledSurface(srcDir, opts);
247
252
  log('');
248
253
  log(`\x1b[32mDone!\x1b[0m Installed Godpowers v${VERSION} for ${installed} runtime(s).`);
249
254
  log('');
255
+ log(`\x1b[36mProfile:\x1b[0m ${describeProfiles(opts.profile)}`);
250
256
  log(`\x1b[36mInstalled:\x1b[0m`);
251
257
  log(` ${surface.skills} slash commands (try: /god-mode, /god-next, /god-status, /god-progress)`);
252
258
  log(` ${surface.agents} specialist agents`);
@@ -258,7 +264,7 @@ function runInstall(opts, srcDir) {
258
264
  log(` Or: \x1b[36m/god-next\x1b[0m to see what to run next`);
259
265
  log(` Or: \x1b[36m/god-init\x1b[0m to start a new project`);
260
266
  log('');
261
- log(`\x1b[36mDocs:\x1b[0m https://github.com/godpowers/godpowers`);
267
+ log(`\x1b[36mDocs:\x1b[0m ${identity.HOMEPAGE_URL}`);
262
268
  log('');
263
269
  }
264
270
 
@@ -1,12 +1,12 @@
1
1
  {
2
- "name": "Half migrated GSD project",
2
+ "name": "Half migrated planning project",
3
3
  "kind": "planning-migration",
4
4
  "actions": [
5
5
  "import-planning-context",
6
6
  "sync-back"
7
7
  ],
8
8
  "expectedSystems": [
9
- "gsd"
9
+ "legacy-planning"
10
10
  ],
11
11
  "expectedFiles": [
12
12
  ".godpowers/prep/IMPORTED-CONTEXT.md",