godpowers 2.5.2 → 2.7.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.
- package/CHANGELOG.md +40 -0
- package/README.md +49 -19
- package/RELEASE.md +41 -29
- package/SKILL.md +46 -48
- package/agents/god-deploy-engineer.md +2 -2
- package/agents/god-designer.md +3 -2
- package/agents/god-greenfieldifier.md +2 -4
- package/agents/god-launch-strategist.md +4 -5
- package/agents/god-observability-engineer.md +5 -5
- package/agents/god-reconciler.md +10 -4
- package/agents/god-retrospective.md +1 -1
- package/agents/god-updater.md +5 -5
- package/bin/install.js +9 -1
- package/fixtures/gate/build-pass/.godpowers/state.json +33 -0
- package/lib/README.md +2 -0
- package/lib/artifact-map.js +15 -3
- package/lib/cli-dispatch.js +51 -1
- package/lib/context-writer.js +4 -4
- package/lib/gate.js +107 -9
- package/lib/host-capabilities.js +53 -3
- package/lib/installer-args.js +25 -0
- package/lib/mcp-info.js +93 -0
- package/lib/pillars.js +2 -4
- package/lib/recipes.js +16 -0
- package/lib/router.js +1 -5
- package/lib/source-sync.js +1 -1
- package/lib/state-advance.js +244 -0
- package/lib/state-lock.js +8 -4
- package/lib/state-views.js +460 -0
- package/lib/state.js +52 -3
- package/package.json +7 -2
- package/routing/god-audit.yaml +1 -1
- package/routing/god-build.yaml +1 -1
- package/routing/god-context.yaml +1 -1
- package/routing/god-deploy.yaml +3 -1
- package/routing/god-design.yaml +2 -2
- package/routing/god-launch.yaml +4 -1
- package/routing/god-migrate.yaml +0 -1
- package/routing/god-mode.yaml +1 -1
- package/routing/god-observe.yaml +4 -1
- package/routing/god-prd.yaml +1 -1
- package/routing/god-reconcile.yaml +2 -5
- package/routing/god-sync.yaml +1 -1
- package/routing/recipes/returning-after-break.yaml +1 -1
- package/schema/state.v1.json +68 -1
- package/skills/god-arch.md +1 -1
- package/skills/god-build.md +6 -4
- package/skills/god-deploy.md +16 -14
- package/skills/god-design.md +3 -3
- package/skills/god-fast.md +2 -2
- package/skills/god-feature.md +1 -1
- package/skills/god-harden.md +3 -3
- package/skills/god-hotfix.md +1 -1
- package/skills/god-init.md +14 -10
- package/skills/god-launch.md +14 -12
- package/skills/god-lifecycle.md +2 -1
- package/skills/god-mode.md +5 -4
- package/skills/god-next.md +2 -1
- package/skills/god-observe.md +15 -13
- package/skills/god-pause-work.md +2 -2
- package/skills/god-prd.md +5 -4
- package/skills/god-quick.md +1 -1
- package/skills/god-repo.md +1 -1
- package/skills/god-resume-work.md +5 -4
- package/skills/god-roadmap-update.md +1 -1
- package/skills/god-roadmap.md +1 -1
- package/skills/god-rollback.md +1 -1
- package/skills/god-skip.md +2 -2
- package/skills/god-stack.md +1 -1
- package/skills/god-standards.md +1 -1
- package/skills/god-status.md +6 -5
- package/skills/god-story.md +1 -1
- package/skills/god-sync.md +2 -2
- package/workflows/bluefield-arc.yaml +2 -4
- package/workflows/brownfield-arc.yaml +2 -4
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,46 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [2.7.0] - 2026-06-10
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
- Added `godpowers state advance --step=<step> --status=<status> --project=.`
|
|
14
|
+
as a locked state mutation helper that updates `.godpowers/state.json` and
|
|
15
|
+
regenerates managed state views.
|
|
16
|
+
- Added generated checksummed state views for Godpowers-owned design, build,
|
|
17
|
+
deploy, observe, and launch `STATE.md` files, all sourced from
|
|
18
|
+
`.godpowers/state.json`.
|
|
19
|
+
|
|
20
|
+
### Changed
|
|
21
|
+
- Changed route prerequisites, executable gates, workflow handoffs, command
|
|
22
|
+
prompts, and specialist agent contracts so Godpowers decision reads use
|
|
23
|
+
`.godpowers/state.json` instead of generated markdown state views.
|
|
24
|
+
- Changed tier completion instructions to use `godpowers state advance` or an
|
|
25
|
+
owning command wrapper instead of direct edits to `.godpowers/PROGRESS.md`.
|
|
26
|
+
|
|
27
|
+
### Fixed
|
|
28
|
+
- Fixed state-view drift by regenerating `.godpowers/PROGRESS.md` and
|
|
29
|
+
Godpowers-owned per-tier `STATE.md` files after state mutations and replacing
|
|
30
|
+
tampered managed fences on the next mutation.
|
|
31
|
+
|
|
32
|
+
## [2.6.0] - 2026-06-10
|
|
33
|
+
|
|
34
|
+
### Added
|
|
35
|
+
- Added the `@godpowers/mcp` companion package with read-only MCP tools for
|
|
36
|
+
status, next, gate checks, artifact linting, and requirement tracing.
|
|
37
|
+
- Added `godpowers mcp-info --project=.` as a read-only main-package helper
|
|
38
|
+
that prints setup instructions without loading the MCP SDK.
|
|
39
|
+
- Added MCP protocol tests that spawn the companion server over stdio, list
|
|
40
|
+
tools, and call each tool against the quick-proof fixture.
|
|
41
|
+
|
|
42
|
+
### Changed
|
|
43
|
+
- Updated dashboard and quick-proof host guarantee output to include MCP
|
|
44
|
+
availability.
|
|
45
|
+
- Updated `/god-status` and `/god-next` to prefer MCP tools when available and
|
|
46
|
+
fall back to CLI or runtime modules otherwise.
|
|
47
|
+
- Updated release checks to verify the companion package protocol and package
|
|
48
|
+
contents while keeping the main `godpowers` package dependency-free.
|
|
49
|
+
|
|
10
50
|
## [2.5.2] - 2026-06-10
|
|
11
51
|
|
|
12
52
|
### Added
|
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://github.com/aihxp/godpowers/actions/workflows/ci.yml)
|
|
4
4
|
[](LICENSE)
|
|
5
|
-
[](CHANGELOG.md)
|
|
6
6
|
[](https://www.npmjs.com/package/godpowers)
|
|
7
7
|
|
|
8
8
|
**Ship fast. Ship right. Ship everything. Ship accountably.**
|
|
@@ -30,9 +30,13 @@ Godpowers makes AI coding accountable: every serious run should leave disk
|
|
|
30
30
|
state, artifacts, validation gates, host guarantees, and a next action. Code is
|
|
31
31
|
only one output. The project memory and proof trail matter too.
|
|
32
32
|
|
|
33
|
-
Version 2.
|
|
34
|
-
|
|
35
|
-
|
|
33
|
+
Version 2.7.0 makes `.godpowers/state.json` the one-directional state authority,
|
|
34
|
+
adds the locked `godpowers state advance` helper, and generates checksummed
|
|
35
|
+
markdown state views for humans. It keeps the optional `@godpowers/mcp`
|
|
36
|
+
companion package, the 2.5.2 installed-runtime gate and build-gate fixes, the
|
|
37
|
+
2.5.1 Codex host proof studies, executable tier gates, 2.4 command-family UX,
|
|
38
|
+
external CLI canary evidence, prompt-size guardrails, legacy command quarantine,
|
|
39
|
+
lib coverage gating, and package verification before publish.
|
|
36
40
|
|
|
37
41
|
Maintainer hardening continues on the 2.x line with small, audited public
|
|
38
42
|
surface updates when they close real workflow gaps. The 2.1.0 patch closes a command-injection vector in the
|
|
@@ -207,9 +211,10 @@ You can also ask any time:
|
|
|
207
211
|
/god-next
|
|
208
212
|
```
|
|
209
213
|
|
|
210
|
-
This reads `.godpowers/
|
|
211
|
-
|
|
212
|
-
|
|
214
|
+
This reads `.godpowers/state.json`, treats `.godpowers/PROGRESS.md` as a
|
|
215
|
+
generated human view, scans disk, reconciles any drift, and suggests the next
|
|
216
|
+
logical command with a compact action brief. The SessionStart hook does the
|
|
217
|
+
same thing when you open a new session in a Godpowers project.
|
|
213
218
|
|
|
214
219
|
### Start With A Path
|
|
215
220
|
|
|
@@ -255,7 +260,9 @@ npx godpowers next --project=.
|
|
|
255
260
|
npx godpowers status --project=. --brief
|
|
256
261
|
npx godpowers status --project=. --json
|
|
257
262
|
npx godpowers quick-proof --project=.
|
|
263
|
+
npx godpowers state advance --step=prd --status=done --project=.
|
|
258
264
|
npx godpowers gate --tier=prd --project=.
|
|
265
|
+
npx godpowers mcp-info --project=.
|
|
259
266
|
npx godpowers dogfood
|
|
260
267
|
npx godpowers extension-scaffold --name=@godpowers/my-pack --output=.
|
|
261
268
|
```
|
|
@@ -284,12 +291,34 @@ npx godpowers gate --tier=build --project=.
|
|
|
284
291
|
npx godpowers gate --tier=harden --project=.
|
|
285
292
|
```
|
|
286
293
|
|
|
287
|
-
The gate reads disk artifacts, runs the shared artifact linter, checks
|
|
288
|
-
|
|
294
|
+
The gate reads disk artifacts, runs the shared artifact linter, checks
|
|
295
|
+
structured `state.json` evidence for design and build gates, and blocks
|
|
296
|
+
unresolved Critical harden findings.
|
|
289
297
|
|
|
290
|
-
The runtime remains dependency-free.
|
|
291
|
-
|
|
292
|
-
|
|
298
|
+
The main `godpowers` runtime remains dependency-free. The optional
|
|
299
|
+
`@godpowers/mcp` companion package owns the MCP SDK dependency and exposes
|
|
300
|
+
read-only tools through explicit host setup. YAML parsing is intentionally
|
|
301
|
+
limited to the documented Godpowers subset used by intent, routing, workflow,
|
|
302
|
+
and extension files, with parser coverage in `scripts/test-yaml-parser.js`.
|
|
303
|
+
|
|
304
|
+
### MCP Companion
|
|
305
|
+
|
|
306
|
+
MCP-capable hosts can use the optional companion package without adding an SDK
|
|
307
|
+
dependency to the main `godpowers` package:
|
|
308
|
+
|
|
309
|
+
```bash
|
|
310
|
+
npx godpowers mcp-info --project=.
|
|
311
|
+
npx -y -p godpowers@2.7.0 -p @godpowers/mcp@2.7.0 godpowers-mcp serve --project=.
|
|
312
|
+
```
|
|
313
|
+
|
|
314
|
+
The companion exposes `status`, `next`, `gate_check`, `lint_artifact`, and
|
|
315
|
+
`trace_requirement`. Host registration is opt-in:
|
|
316
|
+
|
|
317
|
+
```bash
|
|
318
|
+
npx -y -p godpowers@2.7.0 -p @godpowers/mcp@2.7.0 godpowers-mcp setup --host=codex --project=. --write
|
|
319
|
+
```
|
|
320
|
+
|
|
321
|
+
See [MCP Companion](docs/mcp.md) for package boundaries and setup details.
|
|
293
322
|
|
|
294
323
|
### Slash Commands
|
|
295
324
|
|
|
@@ -452,10 +481,10 @@ It spawns the right specialist agent in a **fresh context** to do the work.
|
|
|
452
481
|
You type: /god-prd
|
|
453
482
|
Skill loads: skills/god-prd.md
|
|
454
483
|
Skill spawns: god-pm agent (fresh 200K context)
|
|
455
|
-
Agent reads: .godpowers/
|
|
484
|
+
Agent reads: .godpowers/state.json + .godpowers/intent.yaml
|
|
456
485
|
Agent writes: .godpowers/prd/PRD.md
|
|
457
486
|
Skill verifies: artifact exists, have-nots pass
|
|
458
|
-
Skill updates:
|
|
487
|
+
Skill updates: state.json via godpowers state advance
|
|
459
488
|
```
|
|
460
489
|
|
|
461
490
|
### The Four Tiers
|
|
@@ -470,7 +499,8 @@ Skill updates: PROGRESS.md
|
|
|
470
499
|
### Artifact Paths
|
|
471
500
|
|
|
472
501
|
```
|
|
473
|
-
.godpowers/
|
|
502
|
+
.godpowers/state.json Machine-readable project state
|
|
503
|
+
.godpowers/PROGRESS.md Generated cross-tier progress view
|
|
474
504
|
.godpowers/REQUIREMENTS.md Requirement checklist (done / in progress / not started)
|
|
475
505
|
.godpowers/prd/PRD.md Product Requirements Document
|
|
476
506
|
.godpowers/domain/GLOSSARY.md Domain vocabulary and resolved ambiguities
|
|
@@ -480,10 +510,10 @@ Skill updates: PROGRESS.md
|
|
|
480
510
|
.godpowers/stack/DECISION.md Stack Decision (with flip points)
|
|
481
511
|
.godpowers/repo/AUDIT.md Repo Scaffold Audit
|
|
482
512
|
.godpowers/build/PLAN.md Build Plan (slices, waves)
|
|
483
|
-
.godpowers/build/STATE.md
|
|
484
|
-
.godpowers/deploy/STATE.md
|
|
485
|
-
.godpowers/observe/STATE.md
|
|
486
|
-
.godpowers/launch/STATE.md
|
|
513
|
+
.godpowers/build/STATE.md Generated build state view
|
|
514
|
+
.godpowers/deploy/STATE.md Generated deploy state view
|
|
515
|
+
.godpowers/observe/STATE.md Generated observability state view
|
|
516
|
+
.godpowers/launch/STATE.md Generated launch state view
|
|
487
517
|
.godpowers/harden/FINDINGS.md Security Findings
|
|
488
518
|
```
|
|
489
519
|
|
package/RELEASE.md
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
# Godpowers 2.
|
|
1
|
+
# Godpowers 2.7.0 Release
|
|
2
2
|
|
|
3
|
-
> Status:
|
|
3
|
+
> Status: Release candidate
|
|
4
4
|
> Date: 2026-06-10
|
|
5
5
|
|
|
6
|
-
[DECISION] Godpowers 2.
|
|
7
|
-
[DECISION] This release
|
|
8
|
-
[DECISION] This release
|
|
6
|
+
[DECISION] Godpowers 2.7.0 is the Phase 4 one-directional state release.
|
|
7
|
+
[DECISION] This release makes `.godpowers/state.json` the authority for Godpowers state decisions while treating `.godpowers/PROGRESS.md` and Godpowers-owned per-tier `STATE.md` files as generated human views.
|
|
8
|
+
[DECISION] This release preserves the optional `@godpowers/mcp` companion boundary and keeps the main `godpowers` package dependency-free.
|
|
9
9
|
|
|
10
10
|
## What's in this release
|
|
11
11
|
|
|
@@ -13,39 +13,51 @@
|
|
|
13
13
|
- [DECISION] 40 specialist agents.
|
|
14
14
|
- [DECISION] 13 executable workflows.
|
|
15
15
|
- [DECISION] 42 intent recipes.
|
|
16
|
-
- [DECISION]
|
|
16
|
+
- [DECISION] A locked `godpowers state advance --step=<step> --status=<status> --project=.` state mutation helper.
|
|
17
|
+
- [DECISION] Generated checksummed state views for `.godpowers/PROGRESS.md` and Godpowers-owned design, build, deploy, observe, and launch `STATE.md` files.
|
|
18
|
+
- [DECISION] Five read-only MCP tools in `@godpowers/mcp`.
|
|
17
19
|
|
|
18
20
|
## Highlights
|
|
19
21
|
|
|
20
|
-
- [DECISION] `godpowers
|
|
21
|
-
- [DECISION]
|
|
22
|
-
- [DECISION]
|
|
22
|
+
- [DECISION] `godpowers state advance` updates `.godpowers/state.json` through the state lock and refreshes generated markdown views after the mutation.
|
|
23
|
+
- [DECISION] Route prerequisites, executable gates, workflow handoffs, command prompts, and specialist agent contracts now use `.godpowers/state.json` for Godpowers state decisions.
|
|
24
|
+
- [DECISION] Generated markdown views preserve user prose outside managed fences and replace tampered managed fences on the next state mutation.
|
|
25
|
+
- [DECISION] Design and build gates now use structured state evidence instead of markdown `STATE.md` authority.
|
|
26
|
+
- [DECISION] Deploy, observe, and launch handoffs now use structured state evidence for readiness, target, rollback, SLO, alert, runbook, and launch data.
|
|
27
|
+
- [DECISION] `god-repair` remains available as diagnostics and recovery while generated state views prove themselves.
|
|
23
28
|
|
|
24
29
|
## Validation
|
|
25
30
|
|
|
26
|
-
- [DECISION] `
|
|
27
|
-
- [DECISION] `node scripts/test-
|
|
28
|
-
- [DECISION] `
|
|
29
|
-
- [DECISION] `
|
|
30
|
-
- [DECISION] `node scripts/
|
|
31
|
-
- [DECISION] `
|
|
32
|
-
- [DECISION] `npm run
|
|
33
|
-
- [DECISION]
|
|
34
|
-
- [DECISION]
|
|
35
|
-
- [DECISION]
|
|
36
|
-
- [DECISION]
|
|
37
|
-
- [DECISION]
|
|
38
|
-
- [DECISION]
|
|
39
|
-
- [DECISION]
|
|
40
|
-
- [DECISION]
|
|
31
|
+
- [DECISION] `npm ci` passed and reported 0 vulnerabilities.
|
|
32
|
+
- [DECISION] `node scripts/test-state-advance.js` passed.
|
|
33
|
+
- [DECISION] `node scripts/test-state-views.js` passed.
|
|
34
|
+
- [DECISION] `npm --workspace @godpowers/mcp test` passed.
|
|
35
|
+
- [DECISION] `node scripts/static-check.js` passed.
|
|
36
|
+
- [DECISION] `npm run lint` passed.
|
|
37
|
+
- [DECISION] `npm run test:quick-proof` passed.
|
|
38
|
+
- [DECISION] `npm run test:audit` passed with `npm audit --omit=dev`, `git diff --check`, and public surface checks green.
|
|
39
|
+
- [DECISION] `npm run test:e2e` passed.
|
|
40
|
+
- [DECISION] `node scripts/test-runtime-verification.js` passed.
|
|
41
|
+
- [DECISION] `node scripts/test-agent-browser.js` passed.
|
|
42
|
+
- [DECISION] `npm run pack:check` passed with 538 root package files.
|
|
43
|
+
- [DECISION] `npm run pack:mcp:check` passed with 8 companion package files.
|
|
44
|
+
- [DECISION] `node bin/install.js dogfood --json` passed 5 of 5 scenarios.
|
|
45
|
+
- [DECISION] Repo documentation sync, repo surface sync, and release surface sync were fresh.
|
|
46
|
+
- [DECISION] Changed-file banned character scans passed.
|
|
47
|
+
- [DECISION] `npm run release:check` passed with `coverage:lib` at 92.78 percent line coverage, `npm audit --omit=dev` reporting 0 vulnerabilities, public surface docs matching version 2.7.0, root package contents verified at 538 files, and `@godpowers/mcp` package contents verified at 8 files.
|
|
48
|
+
- [DECISION] The final publish result must be recorded in `docs/BRIDGE-PLAN.md` after the tag-triggered GitHub workflow completes.
|
|
41
49
|
|
|
42
50
|
## Upgrade
|
|
43
51
|
|
|
44
|
-
- [DECISION] Use `npm install -g godpowers@2.
|
|
45
|
-
- [DECISION]
|
|
46
|
-
- [DECISION]
|
|
52
|
+
- [DECISION] Use `npm install -g godpowers@2.7.0` or `npx godpowers@2.7.0`.
|
|
53
|
+
- [DECISION] Use optional MCP package install `npm install -g godpowers @godpowers/mcp` when the host can register MCP servers.
|
|
54
|
+
- [DECISION] Re-run `/god-context` in each project to refresh installed runtime metadata.
|
|
55
|
+
- [DECISION] Existing `.godpowers/state.json` files remain compatible.
|
|
56
|
+
- [DECISION] Existing `.godpowers/PROGRESS.md` and Godpowers-owned per-tier `STATE.md` files become generated human views after the next state mutation.
|
|
47
57
|
|
|
48
58
|
## Notes
|
|
49
59
|
|
|
50
|
-
- [DECISION] The npm `godpowers@2.
|
|
51
|
-
- [DECISION]
|
|
60
|
+
- [DECISION] The npm `godpowers@2.7.0` package must be published through the tag-triggered GitHub workflow with provenance.
|
|
61
|
+
- [DECISION] The npm `@godpowers/mcp@2.7.0` package must be published through the same workflow with provenance.
|
|
62
|
+
- [DECISION] The `v2.7.0` tag must match the npm package version.
|
|
63
|
+
- [DECISION] The next bridge-plan phase after 2.7.0 publish verification is Phase 5: Surface Contraction.
|
package/SKILL.md
CHANGED
|
@@ -321,8 +321,8 @@ Run or apply these by default in every relevant closeout:
|
|
|
321
321
|
|
|
322
322
|
#### Level 2: Auto-run local helpers, visible and logged
|
|
323
323
|
Run these local runtime helpers automatically when their trigger is present:
|
|
324
|
-
- `lib/checkpoint.syncFromState` after every `state.json` or
|
|
325
|
-
|
|
324
|
+
- `lib/checkpoint.syncFromState` after every `state.json` mutation or
|
|
325
|
+
managed progress view refresh.
|
|
326
326
|
- Lightweight reverse-sync or linkage scan after code or artifact edits.
|
|
327
327
|
- Pillars sync planning after durable artifact truth changes.
|
|
328
328
|
- `lib/planning-systems.importPlanningContext` when legacy planning, BMAD, or
|
|
@@ -405,9 +405,9 @@ Never auto-run these from inference alone:
|
|
|
405
405
|
reports success
|
|
406
406
|
|
|
407
407
|
Every auto-invoke decision must be explainable from one of these inputs:
|
|
408
|
-
changed files, Godpowers artifacts, `state.json`, `PROGRESS.md
|
|
409
|
-
`CHECKPOINT.md`, `SYNC-LOG.md`, `REVIEW-REQUIRED.md`, routing YAML,
|
|
410
|
-
or explicit user intent.
|
|
408
|
+
changed files, Godpowers artifacts, `state.json`, generated `PROGRESS.md`
|
|
409
|
+
view, `CHECKPOINT.md`, `SYNC-LOG.md`, `REVIEW-REQUIRED.md`, routing YAML,
|
|
410
|
+
recipe YAML, or explicit user intent.
|
|
411
411
|
|
|
412
412
|
---
|
|
413
413
|
|
|
@@ -433,11 +433,11 @@ coordination plan.
|
|
|
433
433
|
## Tier 0: Orchestration
|
|
434
434
|
|
|
435
435
|
### On every invocation:
|
|
436
|
-
1. Read `.godpowers/
|
|
436
|
+
1. Read `.godpowers/state.json` if it exists, using `.godpowers/PROGRESS.md` only as a generated legacy fallback when state is missing
|
|
437
437
|
2. Scan for existing artifacts at all canonical paths
|
|
438
438
|
3. Detect operating mode (A/B/C/D)
|
|
439
439
|
4. Detect project scale (trivial / small / medium / large / enterprise)
|
|
440
|
-
5. Record mode and scale in
|
|
440
|
+
5. Record mode and scale in `state.json`
|
|
441
441
|
6. Route to the appropriate tier and sub-step
|
|
442
442
|
|
|
443
443
|
### Scale Detection
|
|
@@ -450,30 +450,27 @@ Assess the project description against these criteria:
|
|
|
450
450
|
|
|
451
451
|
Scale determines which personas activate and how deep the planning goes.
|
|
452
452
|
|
|
453
|
-
###
|
|
454
|
-
```
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
| 1 | Roadmap | pending | -- | -- |
|
|
468
|
-
| 1 | Stack | pending | -- | -- |
|
|
469
|
-
| 2 | Repo | pending | -- | -- |
|
|
470
|
-
| 2 | Build | pending | -- | -- |
|
|
471
|
-
| 3 | Deploy | pending | -- | -- |
|
|
472
|
-
| 3 | Observe | pending | -- | -- |
|
|
473
|
-
| 3 | Launch | pending | -- | -- |
|
|
474
|
-
| 3 | Harden | pending | -- | -- |
|
|
453
|
+
### State Ledger (`.godpowers/state.json`)
|
|
454
|
+
```json
|
|
455
|
+
{
|
|
456
|
+
"project": { "name": "Example", "started": "2026-05-09T14:30:00Z" },
|
|
457
|
+
"mode": "A",
|
|
458
|
+
"tiers": {
|
|
459
|
+
"tier-1": {
|
|
460
|
+
"prd": { "status": "done" },
|
|
461
|
+
"arch": { "status": "in-flight" },
|
|
462
|
+
"roadmap": { "status": "pending" },
|
|
463
|
+
"stack": { "status": "pending" }
|
|
464
|
+
}
|
|
465
|
+
}
|
|
466
|
+
}
|
|
475
467
|
```
|
|
476
468
|
|
|
469
|
+
`.godpowers/PROGRESS.md` is a generated human-readable view of this state.
|
|
470
|
+
Commands update tracked steps through `npx godpowers state advance --step=<step>
|
|
471
|
+
--status=<status> --project=.` or through an owning command wrapper, never by
|
|
472
|
+
editing the generated view.
|
|
473
|
+
|
|
477
474
|
Valid statuses: pending, in-flight, done, skipped, imported, failed, re-invoked.
|
|
478
475
|
Silence is not a status. Every tier must have an explicit entry.
|
|
479
476
|
|
|
@@ -501,7 +498,7 @@ Silence is not a status. Every tier must have an explicit entry.
|
|
|
501
498
|
3. Run substitution test on every claim
|
|
502
499
|
4. Run three-label test on every sentence
|
|
503
500
|
5. Write to `.godpowers/prd/PRD.md`
|
|
504
|
-
6.
|
|
501
|
+
6. Run `npx godpowers state advance --step=prd --status=done --project=.`
|
|
505
502
|
|
|
506
503
|
**Have-nots (PRD fails if any are true)**:
|
|
507
504
|
- Problem statement passes substitution test (reads the same for any product)
|
|
@@ -536,7 +533,7 @@ Silence is not a status. Every tier must have an explicit entry.
|
|
|
536
533
|
- Data model (entities, relationships, ownership)
|
|
537
534
|
4. Run have-nots check
|
|
538
535
|
5. Write to `.godpowers/arch/ARCH.md`
|
|
539
|
-
6.
|
|
536
|
+
6. Run `npx godpowers state advance --step=arch --status=done --project=.`
|
|
540
537
|
|
|
541
538
|
**Have-nots (Architecture fails if any are true)**:
|
|
542
539
|
- A box in the diagram has no clear responsibility
|
|
@@ -569,7 +566,7 @@ Silence is not a status. Every tier must have an explicit entry.
|
|
|
569
566
|
- Dependency list
|
|
570
567
|
- Estimated scope (T-shirt size, not fake precision)
|
|
571
568
|
6. Write to `.godpowers/roadmap/ROADMAP.md`
|
|
572
|
-
7.
|
|
569
|
+
7. Run `npx godpowers state advance --step=roadmap --status=done --project=.`
|
|
573
570
|
|
|
574
571
|
**Have-nots (Roadmap fails if any are true)**:
|
|
575
572
|
- Milestone goal passes substitution test
|
|
@@ -592,7 +589,7 @@ Silence is not a status. Every tier must have an explicit entry.
|
|
|
592
589
|
- Document the flip point (when would you reverse this choice?)
|
|
593
590
|
- Document the lock-in cost
|
|
594
591
|
3. Write to `.godpowers/stack/DECISION.md`
|
|
595
|
-
4.
|
|
592
|
+
4. Run `npx godpowers state advance --step=stack --status=done --project=.`
|
|
596
593
|
|
|
597
594
|
**Pause conditions**:
|
|
598
595
|
- Two candidates score within 10% and the flip point is a human constraint
|
|
@@ -613,7 +610,7 @@ Silence is not a status. Every tier must have an explicit entry.
|
|
|
613
610
|
5. .gitignore, .editorconfig
|
|
614
611
|
6. Run repo audit
|
|
615
612
|
7. Write audit to `.godpowers/repo/AUDIT.md`
|
|
616
|
-
8.
|
|
613
|
+
8. Run `npx godpowers state advance --step=repo --status=done --project=.`
|
|
617
614
|
|
|
618
615
|
### 2.2 Build (god build)
|
|
619
616
|
|
|
@@ -636,8 +633,8 @@ Silence is not a status. Every tier must have an explicit entry.
|
|
|
636
633
|
- Agent refactors (REFACTOR)
|
|
637
634
|
- Two-stage review: spec compliance, then code quality
|
|
638
635
|
- Atomic commit on pass
|
|
639
|
-
7.
|
|
640
|
-
8.
|
|
636
|
+
7. Record build verification evidence in `.godpowers/state.json`
|
|
637
|
+
8. Run `npx godpowers state advance --step=build --status=done --project=.` to regenerate the build state view
|
|
641
638
|
|
|
642
639
|
**TDD Enforcement**:
|
|
643
640
|
- If a subagent writes implementation before tests, flag the violation
|
|
@@ -664,7 +661,7 @@ Silence is not a status. Every tier must have an explicit entry.
|
|
|
664
661
|
2. Environment parity (dev matches prod)
|
|
665
662
|
3. Rollback plan (documented, tested)
|
|
666
663
|
4. Health checks (not just "is the process running")
|
|
667
|
-
5.
|
|
664
|
+
5. Record deploy evidence in `.godpowers/state.json` and regenerate the deploy state view
|
|
668
665
|
|
|
669
666
|
**Have-nots**:
|
|
670
667
|
- Different build per environment
|
|
@@ -681,7 +678,7 @@ Silence is not a status. Every tier must have an explicit entry.
|
|
|
681
678
|
3. Alerting (symptoms, not causes)
|
|
682
679
|
4. Structured logging
|
|
683
680
|
5. Runbooks (tested, not paper)
|
|
684
|
-
6.
|
|
681
|
+
6. Record observability evidence in `.godpowers/state.json` and regenerate the observability state view
|
|
685
682
|
|
|
686
683
|
**Have-nots**:
|
|
687
684
|
- SLO has no error budget policy
|
|
@@ -699,7 +696,7 @@ Silence is not a status. Every tier must have an explicit entry.
|
|
|
699
696
|
3. Launch channels identified with messaging per channel
|
|
700
697
|
4. Launch-day telemetry (source attribution on every signup)
|
|
701
698
|
5. D-7 to D+7 runbook
|
|
702
|
-
6.
|
|
699
|
+
6. Record launch evidence in `.godpowers/state.json` and regenerate the launch state view
|
|
703
700
|
|
|
704
701
|
**Have-nots**:
|
|
705
702
|
- Landing copy passes substitution test (reads generic)
|
|
@@ -750,7 +747,7 @@ God Mode pauses ONLY when:
|
|
|
750
747
|
God Mode NEVER pauses to:
|
|
751
748
|
- Ask permission to proceed to the next tier
|
|
752
749
|
- Confirm it should write a file
|
|
753
|
-
- Report progress (
|
|
750
|
+
- Report progress (the generated progress view does that)
|
|
754
751
|
- Ask "is this okay?" without specific options
|
|
755
752
|
|
|
756
753
|
### Pause Format
|
|
@@ -762,7 +759,7 @@ Every pause includes:
|
|
|
762
759
|
|
|
763
760
|
### Resume Protocol
|
|
764
761
|
On resume:
|
|
765
|
-
1. Read `.godpowers/PROGRESS.md`
|
|
762
|
+
1. Read `.godpowers/state.json`, with `.godpowers/PROGRESS.md` only as a generated legacy fallback when state is missing
|
|
766
763
|
2. Scan all artifact paths
|
|
767
764
|
3. Verify artifact integrity (have-nots check on existing artifacts)
|
|
768
765
|
4. Pick up at the first non-done tier
|
|
@@ -786,8 +783,8 @@ grep-testable against the produced artifact.
|
|
|
786
783
|
- **AI-slop**: Output passes substitution test (reads generic)
|
|
787
784
|
- **Phantom resume**: Agent claims done, artifact not on disk
|
|
788
785
|
- **Ghost handoff**: Tier invoked before upstream artifact exists
|
|
789
|
-
- **Rubber-stamp**:
|
|
790
|
-
- **Silence as skip**: Tier absent from
|
|
786
|
+
- **Rubber-stamp**: state.json says done with no artifact
|
|
787
|
+
- **Silence as skip**: Tier absent from state.json
|
|
791
788
|
- **Paper artifact**: Document exists but mechanism does not
|
|
792
789
|
- **Theater**: Sentences that are neither decision, hypothesis, nor open question
|
|
793
790
|
|
|
@@ -815,7 +812,8 @@ See individual tier sections above.
|
|
|
815
812
|
|
|
816
813
|
```
|
|
817
814
|
.godpowers/
|
|
818
|
-
|
|
815
|
+
state.json # Machine-readable source of truth
|
|
816
|
+
PROGRESS.md # Generated cross-tier progress view
|
|
819
817
|
prd/
|
|
820
818
|
PRD.md # Product Requirements Document
|
|
821
819
|
domain/
|
|
@@ -830,13 +828,13 @@ See individual tier sections above.
|
|
|
830
828
|
repo/
|
|
831
829
|
AUDIT.md # Repo Scaffold Audit
|
|
832
830
|
build/
|
|
833
|
-
STATE.md #
|
|
831
|
+
STATE.md # Generated build state view
|
|
834
832
|
deploy/
|
|
835
|
-
STATE.md #
|
|
833
|
+
STATE.md # Generated deploy pipeline state view
|
|
836
834
|
observe/
|
|
837
|
-
STATE.md #
|
|
835
|
+
STATE.md # Generated observability state view
|
|
838
836
|
launch/
|
|
839
|
-
STATE.md #
|
|
837
|
+
STATE.md # Generated launch state view
|
|
840
838
|
harden/
|
|
841
839
|
FINDINGS.md # Security Findings
|
|
842
840
|
```
|
|
@@ -14,7 +14,7 @@ Set up the deploy pipeline.
|
|
|
14
14
|
|
|
15
15
|
## Gate Check
|
|
16
16
|
|
|
17
|
-
Build is complete. All tests pass. `.godpowers/build
|
|
17
|
+
Build is complete. All tests pass. `.godpowers/state.json` records `tier-2.build.status == done` with passing build verification commands.
|
|
18
18
|
|
|
19
19
|
## Process
|
|
20
20
|
|
|
@@ -91,7 +91,7 @@ Build is complete. All tests pass. `.godpowers/build/STATE.md` shows green.
|
|
|
91
91
|
|
|
92
92
|
## Output
|
|
93
93
|
|
|
94
|
-
|
|
94
|
+
Return deploy evidence for `.godpowers/state.json`; `lib/state-views.js` generates `.godpowers/deploy/STATE.md` from these fields:
|
|
95
95
|
|
|
96
96
|
```markdown
|
|
97
97
|
# Deploy State
|
package/agents/god-designer.md
CHANGED
|
@@ -105,8 +105,9 @@ result before applying.
|
|
|
105
105
|
(parsed by `lib/design-spec.js`)
|
|
106
106
|
- `PRODUCT.md` at project root, when impeccable is present (impeccable owns
|
|
107
107
|
the format)
|
|
108
|
-
- `.godpowers/
|
|
109
|
-
command log, drift snapshot
|
|
108
|
+
- `.godpowers/state.json` design evidence with lint history, version,
|
|
109
|
+
impeccable command log, and drift snapshot; `lib/state-views.js`
|
|
110
|
+
regenerates `.godpowers/design/STATE.md`
|
|
110
111
|
|
|
111
112
|
## Validation
|
|
112
113
|
|
|
@@ -29,10 +29,8 @@ intent, architecture, delivery commitments, or org constraints.
|
|
|
29
29
|
- `.godpowers/roadmap/ROADMAP.md`
|
|
30
30
|
- `.godpowers/stack/DECISION.md`
|
|
31
31
|
- `.godpowers/repo/AUDIT.md`
|
|
32
|
-
- `.godpowers/
|
|
33
|
-
- `.godpowers/
|
|
34
|
-
- `.godpowers/observe/STATE.md`
|
|
35
|
-
- `.godpowers/launch/STATE.md`
|
|
32
|
+
- `.godpowers/state.json` build, deploy, observe, and launch evidence
|
|
33
|
+
- `.godpowers/build/PLAN.md`
|
|
36
34
|
- `.godpowers/harden/FINDINGS.md`
|
|
37
35
|
- Source evidence from code, org context, and imported planning systems.
|
|
38
36
|
|
|
@@ -69,9 +69,8 @@ For each channel:
|
|
|
69
69
|
- D+7: post-launch retrospective
|
|
70
70
|
|
|
71
71
|
### 6. Shipping Closure
|
|
72
|
-
- Read `.godpowers/deploy
|
|
73
|
-
`.godpowers/deploy/WAITING-FOR-EXTERNAL-ACCESS.md` if present
|
|
74
|
-
`.godpowers/observe/STATE.md`.
|
|
72
|
+
- Read `.godpowers/state.json` deploy and observe evidence plus
|
|
73
|
+
`.godpowers/deploy/WAITING-FOR-EXTERNAL-ACCESS.md` if present.
|
|
75
74
|
- If deploy or observe is waiting on external access, do not create a broad
|
|
76
75
|
dashboard checklist. Reference only the smallest next access item from the
|
|
77
76
|
waiting bundle and write launch state as local-ready with deployed
|
|
@@ -96,7 +95,7 @@ For each channel:
|
|
|
96
95
|
|
|
97
96
|
## Output
|
|
98
97
|
|
|
99
|
-
|
|
98
|
+
Return launch evidence for `.godpowers/state.json`; `lib/state-views.js` generates `.godpowers/launch/STATE.md` with the launch artifact summary.
|
|
100
99
|
|
|
101
100
|
## Have-Nots
|
|
102
101
|
|
|
@@ -129,7 +128,7 @@ pause. Log to YOLO-DECISIONS.md so the user can revise:
|
|
|
129
128
|
- Auto-picked tone: direct/professional (default)
|
|
130
129
|
- Auto-picked headline: [actual headline written]
|
|
131
130
|
- Reason: substitution-tested headline that emphasizes the strongest PRD value prop
|
|
132
|
-
- Reversible by:
|
|
131
|
+
- Reversible by: update launch evidence in `.godpowers/state.json` and regenerate the launch state view
|
|
133
132
|
- Timestamp: [ISO 8601]
|
|
134
133
|
```
|
|
135
134
|
|
|
@@ -15,10 +15,10 @@ Wire observability.
|
|
|
15
15
|
|
|
16
16
|
## Gate Check
|
|
17
17
|
|
|
18
|
-
`.godpowers/
|
|
19
|
-
|
|
20
|
-
bundle. A deferred staging URL must not block
|
|
21
|
-
CI-verifiable checks can still run.
|
|
18
|
+
`.godpowers/state.json` records deploy completion. The deploy evidence says the
|
|
19
|
+
app is deployed and reachable, or it documents a tested local staging harness
|
|
20
|
+
plus a single external access bundle. A deferred staging URL must not block
|
|
21
|
+
observability setup when local or CI-verifiable checks can still run.
|
|
22
22
|
|
|
23
23
|
## Process
|
|
24
24
|
|
|
@@ -78,7 +78,7 @@ For each PRD success metric, define an SLO:
|
|
|
78
78
|
|
|
79
79
|
## Output
|
|
80
80
|
|
|
81
|
-
|
|
81
|
+
Return observability evidence for `.godpowers/state.json`; `lib/state-views.js` generates `.godpowers/observe/STATE.md` with:
|
|
82
82
|
- SLO definitions
|
|
83
83
|
- Error budget policies
|
|
84
84
|
- Alert catalog
|
package/agents/god-reconciler.md
CHANGED
|
@@ -82,12 +82,16 @@ For each artifact below, check (in parallel where possible):
|
|
|
82
82
|
|
|
83
83
|
### Tier 3 artifacts
|
|
84
84
|
|
|
85
|
-
#### DEPLOY
|
|
85
|
+
#### DEPLOY state evidence
|
|
86
|
+
|
|
87
|
+
Source: `.godpowers/state.json` `tier-3.deploy`.
|
|
86
88
|
- Does the feature need a new env var?
|
|
87
89
|
- New deploy step (e.g., new service)?
|
|
88
90
|
- Verdict: covered / needs-extension
|
|
89
91
|
|
|
90
|
-
#### OBSERVE
|
|
92
|
+
#### OBSERVE state evidence
|
|
93
|
+
|
|
94
|
+
Source: `.godpowers/state.json` `tier-3.observe`.
|
|
91
95
|
- Does the feature need a new SLO?
|
|
92
96
|
- New error budget category?
|
|
93
97
|
- New alert + runbook?
|
|
@@ -99,7 +103,9 @@ For each artifact below, check (in parallel where possible):
|
|
|
99
103
|
- New input source to validate?
|
|
100
104
|
- Verdict: covered / needs-review / new-surface
|
|
101
105
|
|
|
102
|
-
#### LAUNCH
|
|
106
|
+
#### LAUNCH state evidence
|
|
107
|
+
|
|
108
|
+
Source: `.godpowers/state.json` `tier-3.launch`.
|
|
103
109
|
- Is the feature user-visible?
|
|
104
110
|
- Does launch copy need updating?
|
|
105
111
|
- New channel-specific messaging needed?
|
|
@@ -168,7 +174,7 @@ Return structured JSON to the orchestrating skill:
|
|
|
168
174
|
"roadmap": { "status": "enhancement", "match": "Milestone 2", "action": "fold in or amend" },
|
|
169
175
|
"stack": { "status": "covered" },
|
|
170
176
|
"repo": { "status": "scaffolded" },
|
|
171
|
-
"deploy": { "status": "needs-extension", "action": "
|
|
177
|
+
"deploy": { "status": "needs-extension", "action": "record new env var in state.json deploy evidence" },
|
|
172
178
|
"observe": { "status": "needs-slo", "action": "add SLO for new endpoint" },
|
|
173
179
|
"harden": { "status": "needs-review", "action": "scope-to-new-code review" },
|
|
174
180
|
"launch": { "status": "copy-update", "action": "update landing if launching publicly" },
|
|
@@ -22,7 +22,7 @@ sprint, not generic platitudes.
|
|
|
22
22
|
### 1. Gather Data
|
|
23
23
|
Read:
|
|
24
24
|
- Sprint PLAN.md (what was committed)
|
|
25
|
-
- Sprint slice completion record from `.godpowers/
|
|
25
|
+
- Sprint slice completion record from `.godpowers/state.json`
|
|
26
26
|
- Git log for the sprint window
|
|
27
27
|
- Any HANDOFF.md or pause logs from the sprint
|
|
28
28
|
|