4.7 KiB
T1 log — phase-start health, carry cleanup and baselines (Phase 3.39)
Timeline:
- Read card slice, plan Context/Interfaces/Cookbook/Research, T1 entry, phase-3.38 T6/T7 summaries.
timeline.py --checkSTALE →timeline.py+progress.py --readme(README block unchanged, Levers 3,729 live) → --check fresh → commit3feb64acd2.research_add.py adopt --task T1→ R3.39-001 (cast instruments).- R22 on src == start commit
7c28c1b8af(git diff --quiet 7c28c1b8af HEAD -- src include config):make clean && make extract-all JOBS=16 && make check-all JOBS=16→ 217/0/217 extracted, 218 passed 0 failed (.run/logs/t1_r22.log). restruct --check-ledgeralready clean before any change (it checks MEMBER sites, not stale rows); the 18 rows were censusconflicting_types=18. No restruct path drew them (--redrawonly re-draws TUs argcheck still flags) → coder T1.c1.- Coder T1.c1 (
6ea94447d7):restruct --rung D --redraw KEYsupersedes lifted rows with no argcheck lying row (DECL-NONE, cause "already canonical: no lying declaration left (stale … superseded)"); argcheck rows factored toargcheck_rows(); selftest 77/77;--planreported 16 .c + 2 .h. Log logs/T1.c1.md. - Parallel: lever_census
-j 8 --out-dir .run/P39/levers --sites(.run/logs/t1_lcensus.log, 51.9 s); type_census-j 16 --out-dir .run/P39/census --no-cache --sitesfailed first (FileNotFoundError parked.tsv: out-dir not created) →mkdir -p→ rerun OK (.run/logs/t1_tcensus2.log, 214.8 s, at6ea94447d7, src stamp 287e6f521d908e6d). delever_oracle --snapshot-baseline -j 16+--calibrate ov_SC04_011 ov_SC03_015 md_SC07_004 main -j 16→ 7428 objects; 146/146 identical, twin 32/0, positive control DIFFERS OK (.run/logs/t1_snap.log).restruct --selftest --real82/82 (.run/logs/t1_selftest_real.log).- Real supersede:
restruct --apply --rung D --redraw DECL-KEPT:conflicting --label t1_stale→ 16; same--headers --label t1_stale_h→ 2; ledger 173441 → 173459 rows; no src touched. - Verify part 1 (.run/logs/t1_verify_a.log): tools-health FAIL in
tool_census --check: 9 gaps (tools/expert_ttl.py no dictionary row + missing corpus copy; corpus copies stale for launch.py, phaseend_index.py, plan_edit.py, restruct.py; PhaseEnd_Phase3.38 record copy missing). Fix: PROJECT-ONLY row for expert_ttl.py in config/tool_dictionary.tsv +make kit-corpus→tool_census --checkOK. Commit 5f8a490f98 (with tracked .run census/ledger/calibration viagit add -f; first commit_task attempt refused the ignored paths). - Verify part 2 (t1_verify_b): timeline STALE again (progress.json moved) → regenerated, commit cadda579cb → t1_verify_c STALE again: Commits column of 2026-10-01 counts that day's commits, the timeline's own commit bumps it (5 vs 6). Never fresh after a same-day commit → coder T1.c2 (0cb2b6b522): --check masks only the latest row's Commits cell; negative control (historic cell 93→94 → STALE) passed. Log logs/T1.c2.md.
make kit-corpusagain (timeline.py corpus copy) + census outputs → commit b5e18e5f83.type_census --check-structs --quiet→ OK, conflicting_types=0 tu_conflict=0 types_floor_lying=229 (.run/logs/t1_checkstructs.log).- t1_verify_d:
timeline --checkfresh (81 rows),make tools-healthOK,--check-ledger0 violations, rc=0. - Re-snapshot + calibrate +
restruct --selftest --realat b5e18e5f83 → 7428 objects, 146/146, 82/82 (.run/logs/t1_snap2.log). - Aggregations: .run/P39/t1/agg.py (sites.jsonl per form/binary/bclass/base; .run/logs/t1_agg.log), .run/P39/t1/lying.py (restruct argcheck_cache rows, filter as type_census.py:1358-1360).
- docs/ops/p39-t1-2026-10-01-restruct-stale-supersede-timeline-check.md + INDEX line (H7).
Hypotheses rejected:
- "--check-ledger flags the stale rows": it reported 0 before the change; the rows are visible only in check-structs
conflicting_types. - "a redraw clears them": plan_D draws only TUs in argcheck's lying set; these units are not in it.
Coder briefs: T1.c1 (restruct supersede, tools/restruct.py only, no real apply), T1.c2 (timeline --check mask, tools/timeline.py only). Retrievers: none. Reports: R3.39-001 adopted (pending retriever-code-p39-cast-instruments.md).
Per-binary raw deref (P+I+X+M), top 30: shared/ov 12832, ov_SC06_032 6897, ov_SC06_018 6867, ov_SC06_033 6637, ov_SC06_024 6109, ov_SC06_022 5698, ov_SC02_011 5476, ov_SC02_005 5275, ov_SC03_028 5240, ov_SC04_011 5170, ov_SC02_027 4857, ov_SC02_028 4808, ov_SC03_006 4790, ov_SC03_094 4678, ov_SC03_091 4559, ov_SC03_090 4474, ov_SC06_010 4464, ov_SC02_017 4402, ov_SC02_026 4379, ov_SC03_118 4375, ov_SC06_029 4367, ov_SC05_010 4365, ov_SC03_105 4313, ov_SC03_007 4297, ov_SC02_000 4291, ov_SC03_104 4212, ov_SC03_014 4176, ov_SC01_077 4146, ov_SC06_008 4092, ov_SC03_093 4086. Full Counter: rerun .run/P39/t1/agg.py.