Skip to content

feat(lattice): add minimal auto-config compiler core - #4444

Open
mgazza wants to merge 8 commits into
mainfrom
feat/lattice-autoconfig-core-minimal
Open

feat(lattice): add minimal auto-config compiler core#4444
mgazza wants to merge 8 commits into
mainfrom
feat/lattice-autoconfig-core-minimal

Conversation

@mgazza

@mgazza mgazza commented Aug 6, 2026

Copy link
Copy Markdown
Collaborator

Scope

First PR in the minimal Lattice auto-config train tracked by Predictive-Cloud-Ltd/predbat-saas-infra#561.

Adds the provider-neutral, default-off core required for Gateway and GivEnergy fragments to compile PredBat configuration:

  • topology decode/merge with provenance and tombstones
  • strongly correlated provider identities and indexed roles
  • provider projection composition with explicit user-override precedence
  • invalidation/coalescing with fresh reads and bounded follow-up
  • immutable durable compiled publication
  • provider-neutral fragment adapter registry
  • durable fragment-removal compilation

This PR does not register live providers, change PredBat runtime configuration, or activate Lattice. Gateway + GivEnergy fragment publishers are PR 2; default-off runtime materialization is PR 3.

Safety

GitNexus pre-change analysis reported HIGH/CRITICAL fan-out inside this new core (compiler layers and their tests), but zero existing execution flows. The complete coherent core and every d=1 test dependent are therefore carried together.

Post-change GitNexus comparison:

  • 9 changed files
  • 507 new/touched symbols
  • 0 affected existing processes
  • LOW integration risk

Validation

  • 53 auto-config compiler tests
  • 19 durable publication tests
  • 17 adapter registry tests
  • 5 tombstone compilation tests
  • 10 topology tests
  • repository pre-commit: all hooks passed
  • PredBat quick suite: all 201 selected tests passed, 5 slow tests skipped

Note: the repository wrapper currently invokes macOS Python 3.9, while requirements pin numpy==2.3.5 (no Python 3.9 wheel). Equivalent required checks were run under Python 3.12.

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