Skip to content

fix(upload): keep normal writes independent of unfinished Checkout - #21

Closed
opendev9 wants to merge 5 commits into
devfrom
fix/upload-guard-errors
Closed

opendev9 wants to merge 5 commits into
devfrom
fix/upload-guard-errors

Conversation

@opendev9

@opendev9 opendev9 commented Oct 20, 2026 •

Copy link
Copy Markdown

Ordinary upload and optimistic commits skip Guard SQL when the existing Checkout setting is disabled. Enabled Checkout still fails closed on unsupported schema or database errors; only Branch HEAD conflicts retry. The compiled C fileop barrier and unleased Branch transaction now read the path-keyed V2 Guard directly, without cf_resource or the 029 migration ledger. An active exclusive reservation also blocks an unscoped owner write.

Validation: targeted Go tests passed in the earlier commits; the added native C test compiles the complete production barrier, real fileop dispatcher and production final-transaction function and passes 12 cases. SQL extracted from these C readers passed empty/active/expired Guard cases against an isolated four-table MariaDB database. Full Linux Server build and image integration were not performed.

Coordinate with Hub #43 and Docker's four-table runtime PR. No library-storage Checkout column, environment-variable change or live deployment is included.

@opendev9 opendev9 changed the title fix(upload): keep disabled Checkout independent of Guard SQL fix(upload): keep normal writes independent of unfinished Checkout Oct 20, 2026
@opendev9

Copy link
Copy Markdown
Author

Superseded by #22 (fix/upload-guard-errors-ab): it contains all commits from this PR plus startup Guard contract validation and the retry regression test. Confirmed via commit compare: #22 is ahead of #21, behind_by=0.

@opendev9 opendev9 closed this Oct 21, 2026
@opendev9
opendev9 deleted the fix/upload-guard-errors branch October 21, 2026 00:50
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