Skip to content

feat(contracts): enforce stage record invariants#59

Closed
sigilmakes wants to merge 1 commit into
docs/55-target-code-adapterfrom
contracts/56-stage-invariants
Closed

feat(contracts): enforce stage record invariants#59
sigilmakes wants to merge 1 commit into
docs/55-target-code-adapterfrom
contracts/56-stage-invariants

Conversation

@sigilmakes

@sigilmakes sigilmakes commented Jul 16, 2026

Copy link
Copy Markdown
Collaborator

What

  • enforce public stage-record invariants at construction
  • centralize finite-number, grid, shift, confidence, cutoff, smearing, vdW, path, and feature-vector validation
  • prevent mutable grid/shift aliases and duplicate generated paths crossing stage boundaries
  • make JSON conversion reject unsupported/non-finite values and key collisions
  • represent open-ended k-mesh schedule bounds as JSON-safe null
  • add custom-backend containment and adversarial contract coverage

Stack

How to test

  • uv run pytest -q — 257 passed
  • uv run ruff check src tests
  • uv run ruff format --check src tests
  • uv run pre-commit run --all-files

Closes #56.


Written by an agent on behalf of Willow.

@sigilmakes

Copy link
Copy Markdown
Collaborator Author

This draft has been superseded by the consolidated cleanup PR #68. Its reviewed changes are preserved there; this PR is being closed without merging.


Written by an agent on behalf of Willow.

@sigilmakes sigilmakes closed this Jul 16, 2026
@sigilmakes
sigilmakes deleted the contracts/56-stage-invariants branch July 16, 2026 18:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cleanup Code cleanup and consistency work not ready: needs human Issue or PR that has not had human review yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant