Skip to content

chore: typed change.unblock and change.revive operations (change 0450) - #334

Merged
danielhanold merged 8 commits into
mainfrom
chore/typed-change-unblock-operation-to-reverse-change-block
Sep 25, 2026
Merged

danielhanold merged 8 commits into
mainfrom
chore/typed-change-unblock-operation-to-reverse-change-block

Conversation

@danielhanold

Copy link
Copy Markdown
Owner

↩ Change 0450 — Typed change.unblock operation to reverse change.block

↩ Change 0450 — Typed change.unblock operation to reverse change.block

Summary

Adds the missing typed inverses of change.block and change.defer:

  • docket change unblock (change.unblock): blocked → in-progress, clears blocked_by.
  • docket change revive (change.revive): deferred → proposed; keeps ## Why deferred, branch: and claimed_at:.

Both expose the existing domain.Unblock and domain.Revive transitions through the existing executeChangeLifecycle driver, so each is one exact-version metadata commit that also re-renders the artifacts block and the board. A change in any other status is refused with invalid-state and nothing is written. The commands are wired into the CLI, the schema registry and the asset-independent set. The docket-convention lifecycle rules now name them instead of the hand edit. The halt → block → unblock → resume-halted path (the change 0444 incident) has a real-engine regression test.

Review

Reviewer rung: standard (highest task profile standard; diff under 1500 lines).

Finding Severity State
Spec-required real-engine applied revive/unblock tests asserting subject and board row were missing important fixed in e5ba1ea

command: go run ./cmd/docket development test
result: green
head_sha: 098a277
ran_at: 2026-09-25T11:47:09Z

Budget report: several parallel BUDGET WATCH lines (screening only); no SERIAL CONFIRMED OVER BUDGET.

Docket-Plan-Path: docs/superpowers/plans/2026-09-25-typed-change-unblock-operation-to-reverse-change-block.md
…hange 0450)

Review finding (important): the spec's Testing section requires one applied
unblock and one applied revive through the real engine, asserting the
receipt, commit subject, and board row; the applied tests used
recordingEngine and revive never ran through the real engine.

Adds TestIntegrationChangeRuntimeDeferThenRevive (defer then revive via the
real engine: receipt identity, committed revision == tip, subject
'change 0005 → proposed', BOARD.md row under Proposed with no Deferred
section, board matches a fresh render) and adds the commit-subject and
BOARD.md row assertions to the unblock step of
TestIntegrationChangeRuntimeUnblockThenResumeHalted.
@danielhanold
danielhanold merged commit 616439d into main Sep 25, 2026
2 of 4 checks passed
@danielhanold
danielhanold deleted the chore/typed-change-unblock-operation-to-reverse-change-block branch September 25, 2026 13:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant