Skip to content

Close workspace transition deadlocks - #174

Merged
bigboateng merged 2 commits into
mainfrom
fix/workspace-transition-coreachability
Aug 9, 2026
Merged

Close workspace transition deadlocks#174
bigboateng merged 2 commits into
mainfrom
fix/workspace-transition-coreachability

Conversation

@bigboateng

Copy link
Copy Markdown
Contributor

Why

Validated planning packages could remain in the source checkout while approval, autonomy, or activation continued in another workspace. This left a reachable workspace-transition deadlock and could bind authority to the wrong branch.

What changed

  • Route validated plans through the existing workspace-cut operation before approval or autonomy.
  • Create, adopt, or reuse only exact-base, unowned feature destinations.
  • Move embedded planning packages transactionally and preserve detached controller identity.
  • Return the destination repository, branch, base commit, plan fingerprint, controller mode, and transition outcome.
  • Continue later commands from the returned destination path.
  • Fail closed on divergence, dirtiness, ownership conflicts, package conflicts, and injected transition failures.
  • Remove docs/why-these-steps.md and repoint its maintained references.

Evidence

  • go test ./...
  • go vet ./...
  • go build ./...
  • Repository-contract Python tests
  • Release-note policy and committed preflight
  • Locus nonblockingness: verified, event completeness discharged, frontier target met

Review order

  1. boatstack/workspace.go and boatstack/detached.go
  2. Routing and authority changes in next.go, readiness.go, autonomy.go, and flow control
  3. workspace_transition_conformance_test.go and solution-closure tests
  4. Generated instructions, public claim evidence, and release note

Risks and rollback

The change expands workspace-cut from create-only behavior to deterministic create, adopt, or reuse behavior. Every accepted destination must match the fetched base and complete planning-package digest. Reverting this commit restores the previous transition behavior.

Release note

Added release-notes/2026-08-09-workspace-transition-coreachability.md.

@bigboateng
bigboateng enabled auto-merge (squash) August 9, 2026 21:44
@bigboateng
bigboateng merged commit effcec4 into main Aug 9, 2026
9 checks passed
@bigboateng
bigboateng deleted the fix/workspace-transition-coreachability branch August 9, 2026 21:53
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