Skip to content

fix(lattice): compile durable fragment tombstones - #4348

Open
mgazza wants to merge 1 commit into
feat/lattice-fox-fragment-adapterfrom
feat/lattice-fragment-recompile-coordinator
Open

fix(lattice): compile durable fragment tombstones#4348
mgazza wants to merge 1 commit into
feat/lattice-fox-fragment-adapterfrom
feat/lattice-fragment-recompile-coordinator

Conversation

@mgazza

@mgazza mgazza commented Jul 28, 2026

Copy link
Copy Markdown
Collaborator

Summary

Why

DurableFragmentAdapter.read_snapshot() intentionally fails closed after removal. The sealed
registry therefore persisted the removal invalidation but could not observe/acknowledge its
generation. A second coordinator was prototyped and rejected in review because it duplicated
existing restart, CAS, OFFLINE and superseded-candidate state machines.

This patch changes only the registry's private compiler-reader binding. Live states return the
exact original snapshot; durable tombstones become a schema-valid empty fragment at the same
provider/generation. Public read_snapshot() and registry.readers remain unchanged.

Safety

  • registry remains default-off and unregistered
  • no ProviderSnapshot, compile_auto_config, LatticeAutoConfigCompiler, or
    CompiledLatticeCompiler changes
  • explicit removal has no nodes, relationships, aliases, identities, roles, config projections,
    capabilities, or authority
  • transient OFFLINE still follows the existing active-provider-unavailable LKG guard
  • every fresh structural state revalidates provider, generation, snapshot, and semantic fingerprint
  • same-generation resurrection remains rejected
  • invalidation during compilation retains the existing bounded follow-up/superseded-candidate logic

Validation

  • 148 relevant tests pass on Python 3.9 and Python 3.14
  • full pre-commit hooks pass
  • independent request-changes/fix/re-review: approved
  • GitNexus staged analysis: LOW, zero affected processes

Train

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