Migrate broker and repair ownership to project identity v3#1041
Merged
Conversation
e8d5fb7 to
309369e
Compare
8 tasks
309369e to
e269f5d
Compare
3 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Context
Broker and repair ownership still used project identity v2 and universally case-folded path text after lossless identity v3 landed in #974. That allowed case-distinct Unix roots to collide and left scopes, locks, snapshots, operation IDs, and GPU proof binding on the legacy contract.
Closes #1033
Refs #1032
Refs #913
Refs #899
What Changed
ProjectIdentityV3and lossless workspace IDs.How To Review
readiness_broker/scope.rsfor current/v2/v1 provenance validation.readiness_broker/snapshot.rsfor v3 path selection, legacy read fallback, cross-root rejection, and sidecar-v2 to broker-v3 GPU binding.readiness_broker/tests.rs.Verification
cargo test -p codestory-cli readiness_broker— 53 broker unit tests plus broker CLI integration passed.cargo test -p codestory-workspace repository_identity— 19 passed.cargo clippy -p codestory-cli -p codestory-workspace --all-targets -- -D warnings— passed.cargo fmt --all -- --check,git diff --check, docs links (69 files / 281 links), and workflow policy — passed.Risk
The migration deliberately leaves old snapshot files in place because a legacy case-folded path can be ambiguous on case-sensitive filesystems. Only state whose stored root, project identity, and legacy workspace identity map unambiguously is read. Screenshot evidence is not applicable; this change has no visual UI surface.