test: C-70 test adds — proportionality law, mmap read-only pin, missing-map-entry raise#195
Merged
Merged
Conversation
…issing-map-entry raise The 2026-07 four-axis audit's three committed-test recommendations (register C-70): - Share-proportionality LAW test: the method's defining forecast-proportion property was pinned only by the frozen-oracle fixtures (an equal-split mutation would have passed every law test). The falsify F5 probe proved the law holds; commit it so the essence is oracle-independent. - mmap read-only pin: load(mmap=True) buffers were asserted only as isinstance(memmap); now pinned writeable=False + in-place write raises (falsify F2 verified the behavior). - Reconcile missing-(time,gid)-mapping-entry raise: previously pinned only at the leaf, never from the reconcile suite — Reconcile.md §10's alignment claim is now true. Tests-only; 100% line+branch coverage held; ruff/pytest green. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Polichinel
added a commit
that referenced
this pull request
Jul 2, 2026
…ard (resolves C-70) (#196) The 2026-07 four-axis audit found the code<->contract agreement strong but the narrative documentation an epoch behind. Clear the whole list: - CLAUDE.md: rewritten for the released three-package reality (was "Two packages", "Status: v0.1.0", no views_frames_reconcile — misinforming every onboarding). - README banner: v1.7.0 -> v1.8.0 + the 1.8.0 chronicle line. - ADR-013: as-built amendment (feature_names is a FeatureFrame constructor arg, not a header field; header fields are all-optional — the decision's core stands). - CIC fixes: PF/TF/FF §5 artifact name -> values.npy; PredictionFrame §6 states the real dtype behavior (float64 COERCED, object dtype ValueError); SpatioTemporalIndex §6 NaN-via-dtype wording; Reconcile.md §10 names the actual pinning files (true after #195); CICs/README "no contracts yet" -> "fully contracted"; ADRs/README framing 011–016/design-bible -> 011–025/released; Last-reviewed dates bumped. - Recurrence guard: validate_docs.sh now checks the README banner's MAJOR.MINOR against pyproject.toml (patch-tolerant), so banner epoch-lag fails validation. - Register: C-70 -> Resolved (both halves done: tests #195 + this PR); 12 open / 55 resolved. Docs+script+register only — no src/ or test change. Gate green (ruff, pytest 100%, validate_docs incl. the new check). /review-diff CLEAN. Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
This was referenced Jul 2, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part 1 of 2 clearing register C-70 (the 2026-07 audit's polish bundle). Tests-only.
test_reconciliation_parity.py): the method's definingforecast-proportion property, previously pinned only by the frozen-oracle fixtures — now a law.
test_io.py):writeable is False+ in-place write raises.(time,gid)-mapping-entry raise (test_reconciliation_validation.py): the oneReconcile.md §6 mode not pinned from the reconcile suite — §10's alignment claim is now true.
Gate: ruff ✅ · pytest 100% line+branch ✅.
/review-diffCLEAN. Part 2 (docs) follows, then C-70 → Resolved.🤖 Generated with Claude Code