Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
517 commits
Select commit Hold shift + click to select a range
0d10b0c
Shard concentrated CI groups without dropping environment coverage
MaxGhenis Sep 14, 2026
2300e56
Enforce flat CI test inventory and cover nested paths
MaxGhenis Sep 14, 2026
93601f9
Seal private child support frames without requiring US schema
MaxGhenis Sep 14, 2026
5fc6a77
Integrate reviewed survey completion components with CI sharding
MaxGhenis Sep 14, 2026
160eda0
Update US release path with complete child component checks
MaxGhenis Sep 14, 2026
ee1a690
Merge launch integration with current main and resolve UK identity
MaxGhenis Sep 14, 2026
6fef909
Refresh validated calibration parity identity pins
MaxGhenis Sep 14, 2026
5952152
Fix wheel fixture environment contracts
MaxGhenis Sep 14, 2026
79545c9
Fix completion custody for private child support populations
MaxGhenis Sep 14, 2026
0776789
Fix full US schema in completion custody test fixture
MaxGhenis Sep 14, 2026
4bdc261
Keep invented US group slices nonempty in custody fixture
MaxGhenis Sep 14, 2026
1967d5d
Use a valid empty US context in completion custody fixture
MaxGhenis Sep 14, 2026
ce408b4
Check empty custody metadata through the mapping interface
MaxGhenis Sep 14, 2026
47a1203
Accept node population refusals in mutation tests
MaxGhenis Sep 14, 2026
35d463b
Compose a private registry in the PUF55 recipient graph tests
MaxGhenis Sep 15, 2026
4f31a63
Nest the student-pins patch inside the property host generator's life…
MaxGhenis Sep 15, 2026
cd02669
Shard the rest lane six ways and wheels eight ways; report slow tests
MaxGhenis Sep 15, 2026
fedd272
Merge remote-tracking branch 'origin/main' into microcosm-us-launch-v…
MaxGhenis Sep 15, 2026
4fc4ee6
Merge remote-tracking branch 'origin/main' into microcosm-us-launch-v…
MaxGhenis Sep 15, 2026
2bc6976
Merge remote-tracking branch 'origin/main' into microcosm-us-launch-v…
MaxGhenis Sep 16, 2026
f7bb885
Patch the code pin in every UK calibration test that reaches it
MaxGhenis Sep 16, 2026
363a903
Record the 15 September release-path decisions
MaxGhenis Sep 16, 2026
e06b0c9
Open the verify-once lane journal
MaxGhenis Sep 16, 2026
687dae4
Build each column's context-digest stream with numpy, byte for byte
MaxGhenis Sep 16, 2026
a65421b
Record the verify-once design before changing any capsule
MaxGhenis Sep 16, 2026
f8b4f47
Fence ACS records with the C scanners instead of a byte loop
MaxGhenis Sep 16, 2026
124f158
Derive each source content key once per run, and prove them at run end
MaxGhenis Sep 16, 2026
96423cb
Add verification epochs to the two native capsules
MaxGhenis Sep 16, 2026
3bff62f
Open a verification epoch around each atomic native run
MaxGhenis Sep 16, 2026
7e2f1fb
Start the lane report with the proofs that are already in hand
MaxGhenis Sep 16, 2026
d9a12e4
Keep the witness helper private, and re-pin its module contract
MaxGhenis Sep 16, 2026
647063b
Record that this stacked PR's base does not reach CI
MaxGhenis Sep 16, 2026
bf8712d
Record the lane's second-session state before the measurement runs
MaxGhenis Sep 16, 2026
e32bb46
Commit the before/after probe so the measurement can be re-run
MaxGhenis Sep 16, 2026
41703d5
Complete the lane report: measurement, proofs, pins, tests, open ques…
MaxGhenis Sep 16, 2026
cba9d6c
Reach the memo-miss refusal in a mutation test for both memoised caps…
MaxGhenis Sep 16, 2026
e36f975
Let a memo miss raise today's refusal code, and pin that it does
MaxGhenis Sep 16, 2026
d03c275
Record each run's verification epoch on the manifest both runners return
MaxGhenis Sep 16, 2026
0b11356
Follow a member symlink in the source signature, as the content key does
MaxGhenis Sep 16, 2026
dd3d759
Pack the float stream in native order, as the loop it replaces does
MaxGhenis Sep 16, 2026
3451870
Describe the code the way it behaves, and chain the nested refusal
MaxGhenis Sep 16, 2026
2197948
Delete the dead stat helper, and state why its four twins stay
MaxGhenis Sep 16, 2026
cecf0f8
Name the test that carries mechanism 5's mutation guard, and what it …
MaxGhenis Sep 16, 2026
4d4427c
Historicize the lane's own summary lines and open question 4
MaxGhenis Sep 16, 2026
b6cc8ee
Say in the report what the code now does, and re-derive its diff stat
MaxGhenis Sep 17, 2026
baec266
Re-run every group the findings touched, and paste what it printed
MaxGhenis Sep 17, 2026
d113b0e
Give the diff stat as parts that stand still
MaxGhenis Sep 17, 2026
18d64c6
Read the epoch record off the other runner too, in a test and in the …
MaxGhenis Sep 17, 2026
db7a3a0
Restate #938 at the head it has now, with the mirror recorded as landed
MaxGhenis Sep 17, 2026
7046d2c
Re-derive the branch diff stat at the head the fix pass produced
MaxGhenis Sep 17, 2026
3b052b0
Refuse what moves while an epoch close is validating, not after it
MaxGhenis Sep 17, 2026
de17ed2
Test the epoch record in the shard that owns it, and two branches not…
MaxGhenis Sep 17, 2026
3b63b85
Say what the cheap tier does now, everywhere that still described the…
MaxGhenis Sep 17, 2026
5a2a46b
Re-derive the branch diff stat at the head the third fix pass pushed
MaxGhenis Sep 17, 2026
c990689
Refuse at the outermost close what no later borrow can refuse
MaxGhenis Sep 17, 2026
e8432ac
Say what the cheap tier does in the last place that still described t…
MaxGhenis Sep 17, 2026
8ce9224
Merge origin/main (4d832e2fc) into the US launch integration branch
MaxGhenis Sep 17, 2026
d1d2923
Compare the serialized manifest between the two cold runs too
MaxGhenis Sep 17, 2026
7b5c839
Say where the five removed fields actually sit, not where they nearly…
MaxGhenis Sep 17, 2026
69e7a87
Write down the window the outermost close closes, in both places that…
MaxGhenis Sep 17, 2026
a75d567
Say what the two-run test pins, now that it pins the document too
MaxGhenis Sep 17, 2026
5ff8898
List the two new close-window tests where the report lists the others
MaxGhenis Sep 17, 2026
e47adc6
Merge origin/main (d1196af10) into the US launch integration branch
MaxGhenis Sep 17, 2026
4ff6bf2
Open the lane journal with the sites this branch will move
MaxGhenis Sep 17, 2026
c645b05
Take back what a refused run wrote, and say which check catches what
MaxGhenis Sep 17, 2026
69fe333
Cast the integer length after the arithmetic, not before it
MaxGhenis Sep 17, 2026
2a5f60f
Hold every caller's epoch record live, not only a dict
MaxGhenis Sep 17, 2026
8c58397
Name the test that actually profiles the source-key helper
MaxGhenis Sep 17, 2026
29c8ea8
Point the source-key note at the build tests that are on this branch
MaxGhenis Sep 17, 2026
0d04abf
Settle a run that leaves by exception, not only one that reaches run end
MaxGhenis Sep 17, 2026
c00da8b
Seal a frame column at a time, and write down the transport that repl…
MaxGhenis Sep 17, 2026
8a7e1b1
Declare the SPM selection and the provider's reads in the fiscal kernel
MaxGhenis Sep 17, 2026
5307249
Carry the whole-roster receipts as bounded segments instead of one bo…
MaxGhenis Sep 17, 2026
52d1a2b
Record the baseline, including the one measurement the profiler could…
MaxGhenis Sep 17, 2026
a51957c
Check every component of the path the spill writes through
MaxGhenis Sep 17, 2026
53763c3
Say in the design note what the inventory's read contract cannot see
MaxGhenis Sep 17, 2026
66d5600
Prove the per-column seal against the cell walk on the values that ca…
MaxGhenis Sep 17, 2026
6712396
Commit the three harnesses as they ran
MaxGhenis Sep 17, 2026
f01adf2
Feed the pilot's own receipt, scaled, through both transports and rec…
MaxGhenis Sep 17, 2026
7522c7f
Measure the seal per dtype, with byte equality asserted before anythi…
MaxGhenis Sep 17, 2026
77dc016
Census the row-count ceilings, so the next lane does not meet them on…
MaxGhenis Sep 17, 2026
33657ed
Bring the journal up to the draft PR
MaxGhenis Sep 17, 2026
0570122
Record how far the 1/10 graph got, for a measurement the CPU ceiling …
MaxGhenis Sep 17, 2026
f5a517a
Correct the note: pyarrow is already a declared dependency of this ve…
MaxGhenis Sep 17, 2026
72112b9
Compare this branch's own receipt against the recovered pilot's, bloc…
MaxGhenis Sep 17, 2026
189e565
Drive the last guard I added but had not tested
MaxGhenis Sep 17, 2026
247a7cf
Read the retention mode that was written and dropped, before proposin…
MaxGhenis Sep 17, 2026
aa7aa0b
Commit the three launchers and the session helper as they ran
MaxGhenis Sep 17, 2026
b6081ef
Hash a spill segment that was already there, rather than trusting its…
MaxGhenis Sep 17, 2026
52a2a54
Commit the baseline measurement itself, not only the figures read off it
MaxGhenis Sep 17, 2026
e348028
Write the lane report, with the two in-flight measurements named as i…
MaxGhenis Sep 17, 2026
c6dca13
Fold the 1/1000 before/after into the report, in reading order
MaxGhenis Sep 17, 2026
eea2507
Put the 41-file sweep in the report, with what it measured and what i…
MaxGhenis Sep 17, 2026
dcd3694
Say in the report that the control was stopped, rather than leaving a…
MaxGhenis Sep 17, 2026
d129381
Record the required replay, and the flaw in the harness that first mi…
MaxGhenis Sep 17, 2026
c7956ac
Commit the after-run measurement, replay verdict included
MaxGhenis Sep 17, 2026
baaf427
Fold the replay proof into the report; only the 1/10 run is outstanding
MaxGhenis Sep 17, 2026
68395c7
Close the report's last placeholder by saying the control did not com…
MaxGhenis Sep 17, 2026
a64f7b7
Revert 68 files a stray ruff format reformatted and this lane never m…
MaxGhenis Sep 17, 2026
3e733a8
Open the lane journal for the row-count ceilings
MaxGhenis Sep 17, 2026
1d5cfaf
Record the 1/1000 roster ratios the census scales from
MaxGhenis Sep 17, 2026
1bccb2e
Measure the full-source counts from the artifact's catalogues, not by…
MaxGhenis Sep 17, 2026
e660ec6
Measure the origin-budget payload, which binds harder than anything t…
MaxGhenis Sep 17, 2026
14defbf
Lift the four binding row-count ceilings under one rule
MaxGhenis Sep 17, 2026
55ca820
Re-pin the inventory contract the base branch moved and did not regen…
MaxGhenis Sep 17, 2026
2ebd246
Re-pin the ACS accepted digest my acs_pums edit moves, and prove the …
MaxGhenis Sep 17, 2026
2b25f95
Test every moved ceiling: its own boundary, and a full-source-sized c…
MaxGhenis Sep 17, 2026
cb5a62c
Record the rule, the measured counts, and what the census turned up
MaxGhenis Sep 17, 2026
907e308
Write the one argument down
MaxGhenis Sep 17, 2026
3aa1802
Apply the rule to a sixth ceiling the transport lane's census did not…
MaxGhenis Sep 17, 2026
3fb1111
Add the changelog fragment
MaxGhenis Sep 17, 2026
d0ead6d
Record why the origin budget's byte cap cannot be raised here at all
MaxGhenis Sep 17, 2026
f2428e9
Apply the rule to a seventh ceiling, after reading what stood behind it
MaxGhenis Sep 17, 2026
7034dee
Measure the two ceilings that refuse before anything this lane moved
MaxGhenis Sep 17, 2026
a40666b
Commit the census and fold the two consumer ceilings into the argument
MaxGhenis Sep 17, 2026
d277ee8
Bring the journal and the changelog fragment up to the seven
MaxGhenis Sep 17, 2026
099c83c
Write the lane report's census, argument, moved table, findings and pins
MaxGhenis Sep 17, 2026
47dbe45
Say plainly why the census reports fourteen and the base branch has n…
MaxGhenis Sep 17, 2026
f40294e
Replace an estimate with a measurement, and two wordings with what th…
MaxGhenis Sep 17, 2026
431f445
Add the verbatim gates and the questions for Max to the lane report
MaxGhenis Sep 17, 2026
c5ac78d
Record the pull request, the file map, and what a reader should not take
MaxGhenis Sep 17, 2026
886f777
Re-pin the preparation module's resource-access identity after the sp…
MaxGhenis Sep 18, 2026
6fca96f
Historicise the report's pin table: one pin moved with the spill hard…
MaxGhenis Sep 18, 2026
b041972
Open the stack-reconcile journal section before merging main
MaxGhenis Sep 18, 2026
a402dfc
Merge origin/main (8c44daa52) into the US launch integration branch
MaxGhenis Sep 18, 2026
e1ea539
Open the lane journal for the byte-transport ceilings
MaxGhenis Sep 18, 2026
d12f05a
Lift the ACS serialno and body budgets, the two that gate any run abo…
MaxGhenis Sep 18, 2026
c6e38d6
Merge the reconciled US launch integration branch (a402dfcc9) into na…
MaxGhenis Sep 18, 2026
ae3955c
Merge native-verify-once (c6e38d6f1) into native-scale-transport (6fc…
MaxGhenis Sep 18, 2026
0319b1c
Merge native-scale-transport (ae3955cd9) into native-row-ceilings (c5…
MaxGhenis Sep 18, 2026
2ed7b07
Carry the segmented stream into the remaining whole-roster documents
MaxGhenis Sep 18, 2026
77bafbb
Merge origin/native-row-ceilings (0319b1c73) into native-byte-transports
MaxGhenis Sep 18, 2026
7e04682
Stream the budget view's comparison; drop the segment-at-most-maximum…
MaxGhenis Sep 18, 2026
475c9ba
Add the agreement sweep receipt, the dependent-file battery and the 1…
MaxGhenis Sep 18, 2026
52abeb9
Lift the child lane's recipient ceiling, chain the last catch-alls, a…
MaxGhenis Sep 18, 2026
9af56aa
Commit the raw census and logs; make the lane's tools lint clean and …
MaxGhenis Sep 18, 2026
ed12342
Plan completion-compatible native observation retention
MaxGhenis Sep 19, 2026
ee70493
Retain compact native survey observations through completion
MaxGhenis Sep 19, 2026
144078d
Reuse ACS serial lookup across native archive chunks
MaxGhenis Sep 19, 2026
5258a4c
Cache immutable ACS source declarations without reusing live validity
MaxGhenis Sep 19, 2026
59daeda
Add checked native survey development handoff
MaxGhenis Sep 19, 2026
516e6e8
Port SOI Table 1.1 AGI targets into native continuation
MaxGhenis Sep 19, 2026
d9ddc5e
Add pure native-keyed usual-hours proposals
MaxGhenis Sep 19, 2026
c0d5ccc
Preserve valid ASEC supplement nonresponse status in hours proposals
MaxGhenis Sep 19, 2026
2f5ed4e
Bind native ACS hours proposals to retained survey sources
MaxGhenis Sep 19, 2026
8c9877c
Distinguish ASEC usual-hours observations from universe absence
MaxGhenis Sep 19, 2026
561c6cc
Qualify usual hours for both original survey arms
MaxGhenis Sep 19, 2026
023fb57
Transport source hours through exact clone ancestry
MaxGhenis Sep 19, 2026
86353cd
Add opt-in ACS SPM source assembly before native input mapping
MaxGhenis Sep 19, 2026
1729d1b
Record source adapter implementation hashes in construction receipts
MaxGhenis Sep 19, 2026
cf04225
Bind optional ACS SPM construction to native source custody
MaxGhenis Sep 19, 2026
ac15e9f
Integrate authenticated usual hours into native survey graph
MaxGhenis Sep 19, 2026
46c5152
Verify combined native hours handoff and metadata custody
MaxGhenis Sep 19, 2026
f3b942c
Qualify native immigration source literals before status assignment
MaxGhenis Sep 19, 2026
59b14c2
Verify retained immigration digest dependencies and scoped provenance…
MaxGhenis Sep 19, 2026
120ef06
Rebind Medicaid substitution target hierarchy
MaxGhenis Sep 19, 2026
1f527f4
Add source-qualified primary-family household diagnostics
MaxGhenis Sep 19, 2026
3321c11
Correct ASEC relationship dictionary page citation
MaxGhenis Sep 19, 2026
bfaa796
Iterate ACS income anchors without full record lists
MaxGhenis Sep 19, 2026
eae74af
Record reform comparisons and benchmark publishers in validation
MaxGhenis Sep 19, 2026
30f0b09
Preserve authenticated upstream schemas in PUF replay
MaxGhenis Sep 19, 2026
55e7969
Prove household support replay and reuse recipient owner check
MaxGhenis Sep 19, 2026
83e0519
Add scoped final-export SNAP acceptance checks
MaxGhenis Sep 19, 2026
745ecd6
Report malformed SNAP export containers as failed acceptance
MaxGhenis Sep 19, 2026
66a05b6
Preserve Frame context during ACA source writeback
MaxGhenis Sep 19, 2026
8a5029d
Separate legacy headship evidence from source-qualified roles
MaxGhenis Sep 19, 2026
a65dabf
Check preserved legacy headship in housing source fixture
MaxGhenis Sep 19, 2026
774a900
Integrate native SPM source, projection and enrichment graph
MaxGhenis Sep 19, 2026
116dac2
Add checked full-original ASEC immigration donor
MaxGhenis Sep 19, 2026
8241daf
Bind full ASEC donor demographic and state coordinates
MaxGhenis Sep 19, 2026
3242996
Qualify selected ACS immigration source projection
MaxGhenis Sep 19, 2026
249fd57
Refuse ACS entry evidence outside questionnaire universe
MaxGhenis Sep 19, 2026
071f563
Bind immigration rules and transfer to source observation years
MaxGhenis Sep 19, 2026
3b0f776
Regenerate native immigration typed source bundle
MaxGhenis Sep 19, 2026
c692758
Align typed ACS transfer declaration with live v4 identity
MaxGhenis Sep 19, 2026
75a6fbe
Add explicit unqualified native engine projection
MaxGhenis Sep 19, 2026
310f00f
Reject selected weight source columns in native projection
MaxGhenis Sep 19, 2026
bb92dcb
Assign immigration pairs on retained full ASEC donors
MaxGhenis Sep 19, 2026
3216967
Retain captured immigration controls through ACS transfer
MaxGhenis Sep 20, 2026
54f224f
Allow explicit formula metadata in fiscal release helpers
MaxGhenis Sep 20, 2026
bbc6f89
Share the maintained dense and L0 fiscal release solve
MaxGhenis Sep 20, 2026
18f8ba1
Share fiscal target compilation without changing release gates
MaxGhenis Sep 20, 2026
0b476f9
Allow explicit fiscal consumer constructors and SPM settings
MaxGhenis Sep 20, 2026
dc6b79a
Keep US adapter metadata in the selected SPM context
MaxGhenis Sep 20, 2026
39c8761
Compare US release artifacts using their shipped weights
MaxGhenis Sep 20, 2026
d425eaa
Return verified graph-store byte buffers
MaxGhenis Sep 20, 2026
5af8636
Add retained original-survey immigration transfer owner
MaxGhenis Sep 20, 2026
ba75a14
Bind US release comparisons to an explicit model consumer
MaxGhenis Sep 20, 2026
099d6f3
Validate native projection input representations against consumer met…
MaxGhenis Sep 20, 2026
ddfd72b
Add verified logical PolicyEngine H5 readback bridge
MaxGhenis Sep 20, 2026
1a44396
Reject lossy floating storage for structural IDs
MaxGhenis Sep 20, 2026
8ae20b8
Add private native calibration attachment bridge
MaxGhenis Sep 20, 2026
fef2cb5
Classify reviewed store and consumer metadata dependencies
MaxGhenis Sep 20, 2026
3991e96
Add explicit native US input-name profile
MaxGhenis Sep 20, 2026
d33d71b
Attach retained original immigration pairs to survey clones
MaxGhenis Sep 20, 2026
a4ed334
Seal original immigration owner entry points before clone borrowing
MaxGhenis Sep 20, 2026
15b7bef
Anchor clone borrowing guards to original owner baseline
MaxGhenis Sep 20, 2026
26b7ec2
Classify shared income names and H5 readback runtime helpers
MaxGhenis Sep 20, 2026
460addb
Add opt-in native workers compensation amount route
MaxGhenis Sep 20, 2026
bf77231
Add opt-in native ACS health coverage completion
MaxGhenis Sep 20, 2026
26ce370
Materialize health donor filters during host reconstruction
MaxGhenis Sep 20, 2026
5cb3b54
Bind qualified survey sex on originals and existing clones
MaxGhenis Sep 20, 2026
55cdb90
Add observation-conditioned QRF matrix graph application
MaxGhenis Sep 20, 2026
b64a7c1
Bind exact survey race and Hispanic origin on originals and clones
MaxGhenis Sep 20, 2026
82d9921
Check independent demographic and health options with WC integration
MaxGhenis Sep 20, 2026
8c44d4f
Add opt-in full-original ASEC amount donors
MaxGhenis Sep 20, 2026
d7ef139
Check full donor support with independent enrichment options
MaxGhenis Sep 20, 2026
477582c
Scope native financial rechecks to a verification epoch
MaxGhenis Sep 20, 2026
0e3b4e2
Preserve logical string equality across H5 readback storage
MaxGhenis Sep 20, 2026
bcd6f0d
Add source-qualified fixed inputs for explicit PUF55 survey arms
MaxGhenis Sep 20, 2026
33d231b
Bind canonical state to qualified atomic geography
MaxGhenis Sep 20, 2026
b4f9b8e
Accelerate bounded unquoted ASEC CSV record checks
MaxGhenis Sep 20, 2026
1d36c0c
Add original-arm PUF application and conditioning merge
MaxGhenis Sep 20, 2026
0042e38
Add opt-in native child-support receipt modeling
MaxGhenis Sep 20, 2026
869f4d7
Bind canonical state after native enrichment with explicit population…
MaxGhenis Sep 20, 2026
8af4f01
Verify child and state terminal composition with explicit axis preser…
MaxGhenis Sep 20, 2026
4503161
Add opt-in native veterans benefits with qualified original donors
MaxGhenis Sep 20, 2026
1c0524a
Preserve qualified original SPM amount evidence at unit grain
MaxGhenis Sep 20, 2026
1199f5e
Add conservative original-arm PUF55 placement fragment
MaxGhenis Sep 20, 2026
f17182e
Wire original-arm PUF application into survey enrichment host
MaxGhenis Sep 20, 2026
c8652fb
Add source-qualified development inputs to the survey graph
MaxGhenis Sep 20, 2026
9cb1973
Add full original Social Security report basis
MaxGhenis Sep 20, 2026
e2c612b
Keep invented enrichment SS receipt consistent with age
MaxGhenis Sep 20, 2026
decbfc5
Add weighted categorical model and graph probability artifacts
MaxGhenis Sep 20, 2026
fe4bf26
Add a qualified ASEC other-disability source adapter
MaxGhenis Sep 20, 2026
7163b5b
Refuse a missing workers' compensation amount and widen the fences
MaxGhenis Sep 20, 2026
0db555c
Detach the constant snapshot, pin the imported bytes, settle topcoding
MaxGhenis Sep 20, 2026
fc8db8b
Recheck the implementation after the receiver runs, and sharpen the c…
MaxGhenis Sep 20, 2026
873ccf5
Seal the returned constructors the receiver can reach
MaxGhenis Sep 20, 2026
d6eed79
Recheck other disability source after final qualification callback
MaxGhenis Sep 20, 2026
0f92ddf
Decompose the US replacement scorecard on a national/state/CD view
MaxGhenis Sep 20, 2026
c3a7709
Keep the national/CD view on the incumbent-only scorecard path
MaxGhenis Sep 20, 2026
61a501a
Bind a scorecard row's area identifier to the level that resolved it
MaxGhenis Sep 20, 2026
b9ae38f
Restate the id-copy invariant comment against the compiler refusal
MaxGhenis Sep 20, 2026
861b95c
Unpack the bound identifier in declaration order, not reversed
MaxGhenis Sep 20, 2026
9a72296
Validate geography identities in release comparisons
MaxGhenis Sep 20, 2026
faf324e
Add the native Social Security report completion fragment
MaxGhenis Sep 20, 2026
bcf9181
Declare only owned columns in the original placement slices
MaxGhenis Sep 21, 2026
02be048
Open a private source version for the original PUF arm
MaxGhenis Sep 21, 2026
f7a304c
Accept the receiving version as owner of carried arm-one outputs
MaxGhenis Sep 21, 2026
7c1c1ae
Order the carried-output test so the shared frame is mutated last
MaxGhenis Sep 21, 2026
91f2185
Persist input population versions, not the in-process seal, in the pl…
MaxGhenis Sep 21, 2026
47960af
Compare the placement documents in the replay-invariance test
MaxGhenis Sep 21, 2026
55e8233
Attribute the 1/1000 run's outside-graph CPU by issuer and operation
MaxGhenis Sep 23, 2026
c85fbbe
WIP: persistent content-addressed source memo for ACS source derivations
MaxGhenis Sep 23, 2026
220ddc6
WIP: bind live code, constants and exact selections into source memo …
MaxGhenis Sep 23, 2026
9a507bf
Test the source memo: exact reuse, fail-closed entries, identical owners
MaxGhenis Sep 23, 2026
761e9d2
Hash the interpreter binary through its resolved path
MaxGhenis Sep 23, 2026
469b57b
WIP: document the source memo and add the ACS owner benchmark
MaxGhenis Sep 23, 2026
90b8c0f
Preserve object columns and bind the live parser in the ACS source memo
MaxGhenis Sep 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Preserve exact unified-diff context markers in the archived measured experiment.
experiments/us-acs-code-memo-not-adopted-20260910.patch -whitespace
195 changes: 175 additions & 20 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,8 @@ jobs:
# python3 (not bare `python`): guaranteed on the Ubuntu image, and this
# step runs before any sync so it must hold with the stdlib alone.
run: python3 tools/ci_test_groups.py --verify
- name: Check file-shard and workflow coverage without importing data tests
run: python3 -I -B -S packages/microcosm-build/tests/test_ci_test_groups.py
- name: Verify the graph acceptance burndown is monotone
# The charter's second process rule, executable: the number of red
# properties in the microcosm-graph acceptance suite never rises
Expand All @@ -186,18 +188,29 @@ jobs:
fail-fast: false
matrix:
python-version: ["3.13", "3.14"]
group: [trade, spine-uk, rest]
lane:
- {"group": "trade", "shard": "1/1"}
- {"group": "spine-uk", "shard": "1/1"}
- {"group": "rest", "shard": "1/6"}
- {"group": "rest", "shard": "2/6"}
- {"group": "rest", "shard": "3/6"}
- {"group": "rest", "shard": "4/6"}
- {"group": "rest", "shard": "5/6"}
- {"group": "rest", "shard": "6/6"}
steps:
- uses: actions/checkout@v4
- uses: astral-sh/setup-uv@v6
with:
python-version: ${{ matrix.python-version }}
- name: Sync workspace without engines
run: uv sync --all-packages --locked
- name: Engine-free tests (${{ matrix.group }})
- name: Engine-free tests (${{ matrix.lane.group }} ${{ matrix.lane.shard }})
run: |
mapfile -t files < <(uv run --no-sync python tools/ci_test_groups.py --list "${{ matrix.group }}")
/usr/bin/time -v uv run --no-sync pytest "${files[@]}" -p no:cacheprovider
set -euo pipefail
selected="$(uv run --no-sync python tools/ci_test_groups.py --list "${{ matrix.lane.group }}" --shard "${{ matrix.lane.shard }}")"
test -n "$selected"
mapfile -t files <<< "$selected"
/usr/bin/time -v uv run --no-sync pytest "${files[@]}" -p no:cacheprovider --durations=25

engine-shared:
# Deliberately does NOT depend on `changes`: it reads no classifier output,
Expand All @@ -207,7 +220,7 @@ jobs:
strategy:
fail-fast: false
matrix:
python-version: ["3.13", "3.14"]
python-version: ["3.13", "3.14.4"]
steps:
- uses: actions/checkout@v4
- uses: astral-sh/setup-uv@v6
Expand All @@ -217,8 +230,75 @@ jobs:
run: uv sync --all-packages --locked --extra us --extra uk
- name: Shared/spec engine tests
run: |
mapfile -t files < <(uv run --no-sync python tools/ci_test_groups.py --list shared-spec)
/usr/bin/time -v uv run --no-sync pytest "${files[@]}" -p no:cacheprovider
set -euo pipefail
selected="$(uv run --no-sync python tools/ci_test_groups.py --list shared-spec)"
test -n "$selected"
mapfile -t files <<< "$selected"
/usr/bin/time -v uv run --no-sync pytest "${files[@]}" -p no:cacheprovider --durations=25

spec-seed-diagnostics:
# Produce bounded diagnosis immediately, independently of the full suite.
# This remains required by ci-ok and never updates assertion goldens.
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: astral-sh/setup-uv@v6
with:
python-version: "3.14.4"
- name: Sync workspace with US and UK engines
run: uv sync --all-packages --locked --extra us --extra uk
- name: Check diagnostic bootstrap and failure reporting
timeout-minutes: 2
env:
PYTHONDONTWRITEBYTECODE: "1"
PYTEST_DISABLE_PLUGIN_AUTOLOAD: "1"
run: >-
uv run --no-sync pytest --noconftest -p no:cacheprovider -q
packages/microcosm-build/tests/test_spec_seed_identity_cpu_bootstrap.py
packages/microcosm-build/tests/test_spec_seed_identity_outer_failure.py
packages/microcosm-build/tests/test_spec_seed_identity_owned_temp.py
packages/microcosm-build/tests/test_spec_seed_identity_system_metadata.py
packages/microcosm-build/tests/test_spec_seed_identity_per_code_context.py
- name: Derive candidate spec and seed identities (diagnostic only)
id: spec_seed_diagnostics
timeout-minutes: 15
env:
DIAG_WORKFLOW_SHA: ${{ github.workflow_sha }}
DIAG_PR_HEAD_SHA: ${{ github.event.pull_request.head.sha }}
DIAG_PR_BASE_SHA: ${{ github.event.pull_request.base.sha }}
DIAG_MERGE_SHA: ${{ github.event.pull_request.merge_commit_sha }}
PYTHONDONTWRITEBYTECODE: "1"
PYTEST_DISABLE_PLUGIN_AUTOLOAD: "1"
OMP_NUM_THREADS: "1"
OPENBLAS_NUM_THREADS: "1"
MKL_NUM_THREADS: "1"
VECLIB_MAXIMUM_THREADS: "1"
NUMEXPR_NUM_THREADS: "1"
BLIS_NUM_THREADS: "1"
POPULACE_FIT_N_JOBS: "1"
POPULACE_FIT_PREDICT_WORKERS: "1"
run: |
DIAG_CHECKOUT_SHA="$(git rev-parse --verify HEAD)"
DIAG_UV_VERSION="$(uv --version)"
export DIAG_CHECKOUT_SHA DIAG_UV_VERSION
uv run --no-sync python tools/spec_seed_identity_diagnostics.py \
--output-dir "$RUNNER_TEMP/spec-seed-diagnostics"
- name: Retain bounded candidate identity evidence
if: ${{ always() && steps.spec_seed_diagnostics.outcome != 'skipped' }}
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
name: spec-seed-diagnostics-${{ github.run_id }}-${{ github.run_attempt }}-py3.14.4
path: |
${{ runner.temp }}/spec-seed-diagnostics/candidate-digests.json
${{ runner.temp }}/spec-seed-diagnostics/seed-protocol.json
${{ runner.temp }}/spec-seed-diagnostics/seed-map.json
${{ runner.temp }}/spec-seed-diagnostics/seed-bindings.json
${{ runner.temp }}/spec-seed-diagnostics/environment-and-source.json
${{ runner.temp }}/spec-seed-diagnostics/diagnostic-status.json
if-no-files-found: error
retention-days: 3
compression-level: 0
include-hidden-files: false

engine-us:
needs: changes
Expand All @@ -228,20 +308,33 @@ jobs:
fail-fast: false
matrix:
python-version: ["3.13", "3.14"]
group: [us-p, us-qs, us-not, us-am]
lane:
- {"group": "us-p", "shard": "1/1"}
- {"group": "us-qs", "shard": "1/1"}
- {"group": "us-not", "shard": "1/1"}
- {"group": "us-am", "shard": "1/4"}
- {"group": "us-am", "shard": "2/4"}
- {"group": "us-am", "shard": "3/4"}
- {"group": "us-am", "shard": "4/4"}
steps:
- uses: actions/checkout@v4
- uses: astral-sh/setup-uv@v6
with:
python-version: ${{ matrix.python-version }}
- name: Sync workspace with US and UK engines
run: uv sync --all-packages --locked --extra us --extra uk
- name: US engine tests (${{ matrix.group }})
- name: US engine tests (${{ matrix.lane.group }} ${{ matrix.lane.shard }})
run: |
while IFS= read -r proc; do
mapfile -t files < <(uv run --no-sync python tools/ci_test_groups.py --list "${{ matrix.group }}:${proc}")
/usr/bin/time -v uv run --no-sync pytest "${files[@]}" -p no:cacheprovider
done < <(uv run --no-sync python tools/ci_test_groups.py --procs "${{ matrix.group }}")
set -euo pipefail
selected_procs="$(uv run --no-sync python tools/ci_test_groups.py --procs "${{ matrix.lane.group }}")"
test -n "$selected_procs"
mapfile -t procs <<< "$selected_procs"
for proc in "${procs[@]}"; do
selected="$(uv run --no-sync python tools/ci_test_groups.py --list "${{ matrix.lane.group }}:${proc}" --shard "${{ matrix.lane.shard }}")"
test -n "$selected"
mapfile -t files <<< "$selected"
/usr/bin/time -v uv run --no-sync pytest "${files[@]}" -p no:cacheprovider --durations=25
done

engine-uk:
needs: changes
Expand All @@ -261,10 +354,16 @@ jobs:
run: uv sync --all-packages --locked --extra us --extra uk
- name: UK engine tests
run: |
while IFS= read -r proc; do
mapfile -t files < <(uv run --no-sync python tools/ci_test_groups.py --list "uk:${proc}")
/usr/bin/time -v uv run --no-sync pytest "${files[@]}" -p no:cacheprovider
done < <(uv run --no-sync python tools/ci_test_groups.py --procs uk)
set -euo pipefail
selected_procs="$(uv run --no-sync python tools/ci_test_groups.py --procs uk)"
test -n "$selected_procs"
mapfile -t procs <<< "$selected_procs"
for proc in "${procs[@]}"; do
selected="$(uv run --no-sync python tools/ci_test_groups.py --list "uk:${proc}")"
test -n "$selected"
mapfile -t files <<< "$selected"
/usr/bin/time -v uv run --no-sync pytest "${files[@]}" -p no:cacheprovider --durations=25
done

wheels:
# The charter-mandated packaging gate: editable installs hide packaging
Expand All @@ -277,6 +376,15 @@ jobs:
fail-fast: false
matrix:
python-version: ["3.13", "3.14"]
lane:
- {"group": "wheels", "shard": "1/8"}
- {"group": "wheels", "shard": "2/8"}
- {"group": "wheels", "shard": "3/8"}
- {"group": "wheels", "shard": "4/8"}
- {"group": "wheels", "shard": "5/8"}
- {"group": "wheels", "shard": "6/8"}
- {"group": "wheels", "shard": "7/8"}
- {"group": "wheels", "shard": "8/8"}
steps:
- uses: actions/checkout@v4
- uses: astral-sh/setup-uv@v6
Expand Down Expand Up @@ -336,10 +444,56 @@ jobs:
PY
- name: Spec identity section digests (cross-environment diffing aid)
run: env -u PYTHONPATH /tmp/wheels-venv/bin/python -I tools/spec_envelope_digests.py be uk
- name: Run the suite against the installed wheels
- name: Add engine-free source preparation extras
# Real source fixtures require microunit for tax-unit construction and
# PyTables for pandas HDF input, alongside h5py. Request the extras from
# built wheels so their metadata, not editable installs, supplies these
# dependencies. The preceding step still checks the base wheel boundary;
# neither source extra installs a country rules engine.
run: |
frame_wheel="$(ls dist/microcosm_frame-*.whl)"
build_wheel="$(ls dist/microcosm_build-*.whl)"
uv pip install --python /tmp/wheels-venv/bin/python \
--constraint /tmp/wheel-constraints.txt \
"microcosm-frame[us] @ file://$(realpath "$frame_wheel")" \
"microcosm-build[source-io] @ file://$(realpath "$build_wheel")"
env -u PYTHONPATH /tmp/wheels-venv/bin/python -I - <<'PY'
from importlib import metadata, util
from pathlib import Path
from tempfile import TemporaryDirectory

import h5py
import pandas as pd
import tables

assert util.find_spec("microunit") is not None, (
"microcosm-frame[us] must install microunit into the wheel venv"
)
# Exercise the same HDF reader used by source preparation. Imports
# alone do not establish that the compiled PyTables backend works.
with TemporaryDirectory() as directory:
path = Path(directory) / "invented-source.h5"
expected = pd.DataFrame({"person_id": [1, 2], "amount": [0.0, 12.5]})
expected.to_hdf(path, key="person")
pd.testing.assert_frame_equal(pd.read_hdf(path, key="person"), expected)
assert util.find_spec("policyengine_us") is None
try:
metadata.distribution("policyengine-us")
except metadata.PackageNotFoundError:
pass
else:
raise AssertionError("policyengine-us must be absent from the base wheel gate")
print("microunit", metadata.version("microunit"))
print("h5py", h5py.__version__, "tables", tables.__version__)
PY
- name: Run the suite against the installed wheels (${{ matrix.lane.shard }})
run: |
set -euo pipefail
selected="$(env -u PYTHONPATH /tmp/wheels-venv/bin/python -I tools/ci_test_groups.py --list wheels --shard "${{ matrix.lane.shard }}")"
test -n "$selected"
mapfile -t files <<< "$selected"
/usr/bin/time -v env -u PYTHONPATH /tmp/wheels-venv/bin/python -I -m pytest \
packages/*/tests -p no:cacheprovider
"${files[@]}" -p no:cacheprovider --durations=25

ci-ok:
# The single aggregate context for branch protection. Per-leg matrix names
Expand All @@ -350,7 +504,7 @@ jobs:
# dependency-skip lets a failed `changes` take the engine lanes down without
# any required check going red: a lane skip is accepted only when
# classification itself succeeded.
needs: [changes, lint, fast, engine-shared, engine-us, engine-uk, wheels]
needs: [changes, lint, fast, engine-shared, spec-seed-diagnostics, engine-us, engine-uk, wheels]
if: always()
runs-on: ubuntu-latest
steps:
Expand All @@ -365,6 +519,7 @@ jobs:
require_success lint "${{ needs.lint.result }}"
require_success fast "${{ needs.fast.result }}"
require_success engine-shared "${{ needs['engine-shared'].result }}"
require_success spec-seed-diagnostics "${{ needs['spec-seed-diagnostics'].result }}"
require_success wheels "${{ needs.wheels.result }}"
for lane in "engine-us:${{ needs['engine-us'].result }}" "engine-uk:${{ needs['engine-uk'].result }}"; do
name="${lane%%:*}"; result="${lane#*:}"
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,6 @@ tools/release.env

# Finder metadata — never payload
.DS_Store

# Lane-local before/after measurement staging (see docs/us-native-verification-once.md)
.measure/
42 changes: 37 additions & 5 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,8 @@ PR CI (`.github/workflows/test.yml`) has four lanes — `lint`, `fast`,
the diff into `shared`/`us`/`uk`. `lint` verifies
`tools/ci_test_groups.py --verify`, syncs with `--locked`, and runs ruff.
`fast` runs the full tracked test-file inventory without engine extras in
three groups (`trade`, `spine-uk`, `rest`); engine-gated tests skip there
three groups (`trade`, `spine-uk`, `rest`), with `rest` split across six
parallel matrix jobs per Python version; engine-gated tests skip there
through whichever guard they carry — the `requires_*` markers, or the
`importorskip` calls that remain the norm on the US side. `engine-shared` always syncs
`--extra us --extra uk` and runs the shared/spec group. `engine-us` and
Expand All @@ -39,6 +40,31 @@ shard's real wheel, install into a clean uv-export-constrained venv, assert
the wheel/import boundary and spec digests, and run the suite against installed
wheels.

`us-am` likewise has four matrix subdivisions. Within each, build and other-shard
tests retain separate pytest processes to isolate their import state. Every wheel
job retains the complete build/install/smoke boundary and runs one of eight
disjoint file subdivisions, including engine-only files whose markers skip when
the engine is absent. Other groups and both Python versions are unchanged.
`tools/ci_test_groups.py --list GROUP[:PROCESS] --shard INDEX/COUNT` selects
sorted whole files round-robin; indices are 1-based and counts are capped at 64.
An invalid or empty selection fails before pytest. `--verify` proves the
configured shard unions and process partitions, while the stdlib-only
`python3 -I -B -S packages/microcosm-build/tests/test_ci_test_groups.py` checks
the actual matrix and selection contract. See [CI file sharding](docs/ci-file-sharding.md).
File counts are not measured runtime weights; a single expensive module can
still dominate a job, and module-scoped fixtures must remain intact.

After checking the base wheel boundary, the wheel lane installs the built
`microcosm-frame[us]` and `microcosm-build[source-io]` extras for engine-free
source tests. An invented pandas HDF round trip checks the compiled reader;
the country rules engine must still be absent.

The shared engine lane also runs a bounded source/seed identity diagnostic on
Python 3.14.4 after its normal tests, including when those tests fail. Its six
JSON artifacts retain candidate digests and their complete canonical seed
records for review. They never replace the test assertions or certify coverage;
review the captured source and dependency identities before updating any pins.

New commits to a PR cancel older unfinished CI runs for that same PR.
Each main-push run has a unique concurrency group, so all main-push runs
remain independent and can finish validating their merged changes.
Expand All @@ -53,10 +79,9 @@ are already editing that test for another reason.

**Adding a test file.** It must sit directly in `packages/<shard>/tests/` — flat,
no subdirectories; `fixtures/` and `golden/` hold data only — and be named
`test_*.py`. The lanes run explicit file lists built from a flat pathspec, while
local `uv run pytest` and the wheels lane discover recursively, so a test parked
next to its fixtures would run locally and stay green in CI without ever
executing against an engine. `--verify` fails on such a file rather than letting
`test_*.py`. All lanes, including wheels, run explicit flat file lists, while
local `uv run pytest` discovers recursively. A test parked next to its fixtures
could run locally without being selected in CI. `--verify` fails on such a file rather than letting
it hide. Build tests that exercise a country engine must be named `test_us_*` or
`test_uk_*` so they land in that country's lane; an engine-dependent file named
anything else falls into the always-on `shared-spec` group and runs on every PR.
Expand Down Expand Up @@ -128,6 +153,13 @@ A sealed deny-list in `microcosm.build.us_runtime.h5_io` overrides this opt-in
for known-excluded publications while preserving their scoring-only diagnostic
path.

The native survey development handoff is documented in
[the native handoff guide](docs/us-native-survey-development-handoff.md).
`prepare_native_survey_development_input` in the maintained US release tool
accepts a live issued enrichment owner and returns a verified Frame checkpoint
plus missing-input/gate inventory. This development checkpoint is not accepted
as native authority, a legacy pool manifest, or a certified dataset.

## Root journals are history, not state

The root `PROGRESS*.md`, `FINAL_REPORT.md`, `*_COVERAGE_PROGRESS.md`, and
Expand Down
Loading