Harden Git synchronization and lock publication against concurrent changes #55
Labels
No labels
host:electra
host:fleet
host:lyra
host:vega
host:vega
phase:cutover
phase:deploy
phase:mcp
phase:module
phase:packaging
phase:prep
phase:validation
project:attic-postgres-lyra-rollout
project:auto-update-reliability
project:declarative-purity-cleanup
project:external-review
project:host-facts-refactor
project:lyra-nixos-deploy
project:lyra-service-stack-migration
project:nebula-mesh-network
project:security-hardening
project:service-stack-migration
project:vega-sillytavern-cutover
service:auto-update
service:mem0
service:sillytavern
No milestone
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
nimmo/nixos-config#55
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Context
Consumers use
git pull origin mainwithout an explicit fast-forward policy. The producer commits after potentially long builds, then runsgit pull --rebaseimmediately before push. A concurrent main update can therefore change the parent/configuration after validation; the rebased lock commit may no longer describe exactly the tree that was built and cached.The emergency local producer also continues switching after push failure, leaving a local-only lock commit and divergent deployment state.
Scope
Completion criteria
Implemented in
9eb45a9(fix: make flake lock publication race-safe).Validation evidence:
Result=success,ExecMainStatus=0) and deployedconfigurationRevision=9eb45a94e63f7f98437be0f02f0a10e0cb9b0fdf.Consumers now accept only fast-forwards. Producer publication is tied to the validated base SHA, lock hash, and closure-manifest hash; concurrent main changes abort before publication, and the atomic exact lease prevents a race after the final fetch. Emergency publication failure aborts local activation. Closing as complete.