godpowers 2.2.1 → 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 +33 -7
  2. package/INSPIRATION.md +4 -2
  3. package/README.md +25 -12
  4. package/RELEASE.md +23 -19
  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 +2 -1
  36. package/lib/reverse-sync.js +2 -1
  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,32 @@ 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
+
10
36
  ## [2.2.1] - 2026-05-30
11
37
 
12
38
  ### Fixed
@@ -323,7 +349,7 @@ Dogfooding, host guarantees, extension authoring, and suite release dry-runs.
323
349
  ### Added
324
350
  - Added `lib/dogfood-runner.js`, `/god-dogfood`, and `npx godpowers dogfood`
325
351
  for deterministic messy-repo dogfood scenarios.
326
- - Added `fixtures/dogfood/` scenarios for half-migrated GSD import,
352
+ - Added `fixtures/dogfood/` scenarios for half-migrated legacy planning import,
327
353
  degraded and full host guarantees, extension scaffolding, and Mode D suite
328
354
  release dry-run planning.
329
355
  - Added `lib/host-capabilities.js` and dashboard host guarantee reporting for
@@ -499,7 +525,7 @@ Feature awareness for existing Godpowers projects.
499
525
  Planning-system migration and sync-back.
500
526
 
501
527
  ### Added
502
- - Added `lib/planning-systems.js` to detect GSD, BMAD, and Superpowers
528
+ - Added `lib/planning-systems.js` to detect legacy planning, BMAD, and Superpowers
503
529
  planning context and convert useful signals into Godpowers prep and seed
504
530
  artifacts.
505
531
  - Added `lib/source-sync.js` to write current Godpowers progress back into
@@ -509,11 +535,11 @@ Planning-system migration and sync-back.
509
535
  ambiguous.
510
536
  - Added `docs/planning-system-migration.md` with detection signals, import
511
537
  mapping, sync-back destinations, conflict rules, and return-path guidance.
512
- - Added behavioral tests for GSD, BMAD, Superpowers, imported seed artifacts,
538
+ - Added behavioral tests for legacy planning, BMAD, Superpowers, imported seed artifacts,
513
539
  state recording, and idempotent sync-back.
514
540
 
515
541
  ### Changed
516
- - `/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
517
543
  Superpowers evidence is detected.
518
544
  - `/god-sync` now auto-invokes source-system sync-back when `state.json`
519
545
  records enabled source systems.
@@ -708,7 +734,7 @@ of leaving the user to infer the next action.
708
734
  `/god-roadmap-check`.
709
735
 
710
736
  ### Changed
711
- - 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
712
738
  slice, implement the full route, discuss more, inspect status, or run
713
739
  `/god-mode` only when that is safe.
714
740
  - `/god-next` and `/god-status` now explicitly distinguish partial progress,
@@ -1234,7 +1260,7 @@ routing, or the full autonomous arc starts.
1234
1260
  ### Documented
1235
1261
  - The full recent init preparation flow is now documented together:
1236
1262
  automatic AI-tool context for explicit `god init`, quiet context writes,
1237
- GSD / Superpowers / BMAD import into `IMPORTED-CONTEXT.md`, and direct
1263
+ legacy planning / Superpowers / BMAD import into `IMPORTED-CONTEXT.md`, and direct
1238
1264
  Godpowers repo findings in `INITIAL-FINDINGS.md`.
1239
1265
 
1240
1266
  ## [0.15.7] - 2026-05-11
@@ -1243,7 +1269,7 @@ Planning import release. Lets `/god-init` preserve useful context from nearby
1243
1269
  planning systems without making those systems authoritative.
1244
1270
 
1245
1271
  ### Added
1246
- - `/god-init` now detects GSD, Superpowers, BMAD, and similar planning context
1272
+ - `/god-init` now detects legacy planning, Superpowers, BMAD, and similar planning context
1247
1273
  during project preparation.
1248
1274
  - Added `.godpowers/prep/IMPORTED-CONTEXT.md` as a non-authoritative
1249
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.1-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.1 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.1 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.1 is a patch release for the 2.2 deliverable-progress line. It
7
- keeps the public slash-command surface stable and fixes ledger persistence,
8
- idempotence, and release-state reconciliation.
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,15 +17,18 @@ idempotence, and release-state reconciliation.
16
17
 
17
18
  ## Highlights
18
19
 
19
- - `.godpowers/REQUIREMENTS.md` no longer rewrites on timestamp-only no-op
20
- regenerations, and the generated ledger no longer carries an extra blank line
21
- at EOF.
22
- - `lib/reverse-sync.js` now persists deliverable summaries into
23
- `state.json.deliverables`, matching the documented `/god-sync` behavior.
24
- - The Godpowers self-ledger now reports the shipped deliverable-progress feature
25
- as done across roadmap, requirements ledger, and state cache.
26
- - Regression tests cover no-op ledger writes, state-cache persistence, and
27
- no-op reverse-sync stability.
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.
28
32
 
29
33
  ## Validation
30
34
 
@@ -34,14 +38,14 @@ idempotence, and release-state reconciliation.
34
38
 
35
39
  ## Upgrade
36
40
 
37
- - `npm install -g godpowers@2.2.1` or `npx godpowers@2.2.1`
41
+ - `npm install -g godpowers@2.3.0` or `npx godpowers@2.3.0`
38
42
  - Re-run `/god-context` in each project to refresh installed runtime metadata
39
- - No breaking changes; existing `.godpowers/` state is compatible. Projects gain
40
- 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`.
41
45
 
42
46
  ## Notes
43
47
 
44
- - GitHub release creation for `v2.2.1`
48
+ - GitHub release creation for `v2.3.0`
45
49
  - The tag should match the npm package version
46
- - The `v2.2.1` tag should point to the release commit that matches the npm
47
- `godpowers@2.2.1` 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",
package/lib/README.md CHANGED
@@ -22,6 +22,7 @@ package-level integrations.
22
22
  | `dogfood-runner.js` | Run deterministic messy-repo scenarios against migration, host, extension, and suite release behavior. |
23
23
  | `budget.js` | Read and enforce configured budget controls. |
24
24
  | `cost-tracker.js` | Track token and cost estimates from event streams. |
25
+ | `atomic-write.js` | Write load-bearing files through temp-file validation and atomic rename. |
25
26
  | `fs-async.js` | Promise-based file read/write helpers for non-blocking runtime paths. |
26
27
 
27
28
  ## Events and observability
@@ -45,6 +46,7 @@ package-level integrations.
45
46
  | `agent-cache.js` | Cache agent metadata for faster routing. |
46
47
  | `agent-validator.js` | Validate agent frontmatter and contracts. |
47
48
  | `agent-refs.js` | Validate workflow agent references and scan skill/agent prose for phantom references. |
49
+ | `executor-repair.js` | Classify executor repair decisions as retry, decompose, prune, or escalate. |
48
50
  | `skill-surface.js` | Derive slash-command metadata from the individual `skills/` files. |
49
51
 
50
52
  ## Artifact quality
@@ -63,7 +65,7 @@ package-level integrations.
63
65
  |--------|---------|
64
66
  | `context-writer.js` | Produce tool-specific context files. |
65
67
  | `context-budget.js` | Keep generated context within budget. |
66
- | `planning-systems.js` | Detect and import GSD, BMAD, and Superpowers planning context. |
68
+ | `planning-systems.js` | Detect and import legacy planning, BMAD, and Superpowers planning context. |
67
69
  | `source-sync.js` | Write managed Godpowers progress back to source-system companion files. |
68
70
  | `design-detector.js` | Detect design-system conventions. |
69
71
  | `design-spec.js` | Normalize design specifications. |
@@ -74,6 +76,7 @@ package-level integrations.
74
76
  | `impeccable-bridge.js` | Bridge runtime checks into impeccable quality workflows. |
75
77
  | `extensions.js` | Load and validate extension packs. |
76
78
  | `extension-authoring.js` | Scaffold publishable extension packs with manifest, package, README, skill, agent, and workflow files. |
79
+ | `package-legitimacy.js` | Assess third-party package metadata for existence, typo risk, recency, and repository signals. |
77
80
  | `pillars.js` | Manage the Pillars project-context layer (`AGENTS.md` plus routed `agents/*.md`). |
78
81
 
79
82
  ## Repository and graph helpers
@@ -81,6 +84,7 @@ package-level integrations.
81
84
  | Module | Purpose |
82
85
  |--------|---------|
83
86
  | `code-scanner.js` | Scan source trees for routing and quality evidence. |
87
+ | `source-grounding.js` | Check that build plans cite existing files and symbols before execution starts. |
84
88
  | `cross-artifact-impact.js` | Detect relationships between changed artifacts. |
85
89
  | `cross-repo-linkage.js` | Track suite-level repository relationships. |
86
90
  | `drift-detector.js` | Detect context drift between artifacts and implementation. |
@@ -98,7 +102,9 @@ package-level integrations.
98
102
  | `installer-core.js` | Install and uninstall the Godpowers surface for each runtime. |
99
103
  | `installer-files.js` | File-copy helpers shared by the installer and its tests. |
100
104
  | `installer-args.js` | Parse `bin/install.js` arguments and subcommands. |
105
+ | `install-profiles.js` | Select smaller role-specific slash-command install surfaces. |
101
106
  | `installer-runtimes.js` | Map supported runtimes to their config directories. |
107
+ | `package-identity.js` | Centralize package name, version, repository, docs, and command identity. |
102
108
  | `automation-providers.js` | Detect and configure host-native automation providers. |
103
109
  | `dashboard.js` | Compute the next-step action brief and host guarantee line. |
104
110
  | `quick-proof.js` | Render the shipped proof fixture for `godpowers quick-proof`. |