Skip to content

Route Branch selectors through Working Directory Update - #1027

Merged
ScottArbeit merged 3 commits into
epic/835-working-directory-updatefrom
agent/1025-branch-selector-wdu
Aug 25, 2026
Merged

Route Branch selectors through Working Directory Update#1027
ScottArbeit merged 3 commits into
epic/835-working-directory-updatefrom
agent/1025-branch-selector-wdu

Conversation

@ScottArbeit

Copy link
Copy Markdown
Owner

Route Branch selectors through Working Directory Update

Related to Issue #1025.

Why

Branch ID/name switching is a supported Grace workflow. It must receive the same local-integrity, restart, cancellation, and truthful-result behavior as exact Reference switching before Issue #835 can complete.

What changed

  • Record the approved Branch-selector-to-Reference mapping in the WDU specification and ADR.
  • Preserve Branch ID precedence when both ID and name are supplied.
  • Resolve the selected Branch once and bind its exact latest nonempty Reference.
  • Validate repository, Branch, Reference, and target-root identities before mutation.
  • Route no-Save and Save-enabled Branch selectors through the existing exact-Reference WDU paths.
  • Preserve explicit Reference, hash, unsupported-selector, output, and command-surface behavior.

No WDU contracts or implementation, persistence, project shape, Server, SDK, OpenAPI, or generated artifacts changed.

Validation

GitHub Validate, Shape Review, and R1 are required on the current PR head before merge.

Residual risk

There is no live-server Branch-selector integration test. The built action boundary covers public routing and selector identity, while existing WDU tests cover the reused mutation and completion path.

Delivery

  • Base: epic/835-working-directory-update
  • Candidate head: 433dac8fa67aa30091681e9e501ee2f6c1834730
  • Candidate tree: 560e6b649466bfbcd1f9c601788f88d304cd8cda
  • Docs impact: WDU specification and ADR updated
  • Skipped: local Fast/Full, because focused tests plus required GitHub Validate cover this bounded caller-routing change

@ScottArbeit

Copy link
Copy Markdown
Owner Author

Landing evidence

Pinned approved head: 1857f2a4ac5c7b7feab4e6cd7476317a81c87a00

  • Shape Review completed with zero owner questions at the pre-repair head. The accepted repair changed only comparison behavior and tests, with no declaration or data-relationship change, so the report remains current under the shape-neutral repair rule.
  • R1 found one Product V1 compatibility regression: the new post-resolution Branch-name check was case-sensitive while the server resolves names case-insensitively.
  • The repair now uses ordinal case-insensitive comparison, accepts feature for stored Feature, and still rejects a genuinely different name.
  • R2 verdict: VERIFIED.
  • Repaired-head focused tests: Issue WDU prerequisite: Route Branch-ID/name switching through Working Directory Update #1025 10/10; complete Branch command fixture 62/62; Release build clean; formatting and git diff --check clean.
  • Current-head GitHub Validate: passed, run 32910258112.
  • Accepted risk: no live-server Branch-selector integration test; built-action routing plus existing Reference/WDU tests cover the bounded change.

Owner approved PR #1027 at the pinned repaired head. The candidate is ready to merge to epic/835-working-directory-update.

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