Repository navigation
docs: ADR-0019 (Proposed) and plan 006 - #198
Conversation
…frastructure Goal abbb0456-5370, the owner's question of 2026-10-18 (session e664b977-8f49-44ff-a914-0cf9abbb0456): whether GoogleTest can test this repository beside WW3's regtests. ADR-0010 stays unchanged for ported routines; ADR-0019 proposes GoogleTest suites for the code that ports no WW3 routine and that every resident run depends on: the resident spectrum's state machine, column syncs and cache (resident_shim.cpp), the flags, presets, strict mode and fallback slots (part_flags.cpp), the presets table against its three readers, and the installed package config. Plan 006 ranks them by what a silent defect costs since PR #191, shows how the public C ABI observes every state without a test hook, lists the test cases, and asks for a planted-defect check per test before the suites enter. Tested: nix shell nixpkgs#vale -c scripts/vale.sh on the ADR, the ADR index and the plan, rc 0; python3 scripts/adrs.py lists ADR-0019 Proposed; python3 -m unittest discover tests, 88 OK; relative links of both files resolve Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The owner stopped this session's runs for another session to continue. The entry records what PR #191 delivered with its records, the state and next step of every open branch (the follow-up of #191's review, pushed without a PR; this PR's ADR-0019 and plan 006; the Fortran A/B harness), what waits on the owner, and the traps met on the way. Tested: nix shell nixpkgs#vale -c scripts/vale.sh on the entry and the log index, rc 0; python3 -m unittest discover tests, 88 OK Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Handover: this session is stopped, and another session takes overThe full record is in What worked. #191 merged (
WW3's regtests on the rebased tree: resident serial 5 PASS (the two Open work:
Waiting on the owner:
Runs: every run of this session is stopped. The one |
Brings in #197 (the NOAA record, plan 005, the S0 log and L1). One conflict, in the dated table of docs/log/README.md: both sides appended a 2026-10-18 row; the log is append-only, so both rows are kept, main's first. Tested: scripts/vale.sh and lychee --offline on docs/log/README.md and the PR's four files, 0 errors; python3 scripts/figures.py check, current Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Brings in #198 (ADR-0019, plan 006, the abbb0456 handover). One conflict, in the dated table of docs/log/README.md: both sides appended a 2026-10-18 row; both are kept, main's first. Tested: no conflict marker left in docs/log/README.md (grep) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
What this session finished (#197: the NOAA record and its ten-run median, plan 005, S0, L1; the merge that unblocked #198), what is open (#199's regtest run and review, plan 005 L3 to L7, the uncommitted opportunity and GFS-Wave analysis), what waits on the owner, and the traps met: unpinned one-thread timings on a hybrid CPU, the load average counting the job itself, g++'s -ftrapping-math and lane loops, -Wpsabi without -march, pkill -f killing its own shell. Tested: scripts/vale.sh on the entry and docs/log/README.md, exit 0, 0 errors; lychee --offline on both, 0 errors Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Before. ADR-0010 removed every unit test of a ported routine and kept the tool tests. Since PR #191, every resident run depends on C++ that ports no WW3 routine:
resident_shim.cpp, 599 lines);part_flags.cpp, 135 lines).That code had no test faster than a WW3 regtest. The review of #191 found its gaps by reading.
After. ADR-0019 (Proposed) would allow GoogleTest suites for that infrastructure only. Each suite goes through the public C ABI, on a host backend, and with a planted-defect check per test. Ported routines keep ADR-0010 unchanged.
Plan 006 covers:
presets.txtagainst its three readers, and the package config;Nothing is built before the owner accepts ADR-0019.
Goal
abbb0456-5370, Claude Code sessione664b977-8f49-44ff-a914-0cf9abbb0456.nix shell nixpkgs#vale -c scripts/vale.shon the ADR, the ADR index and the planpython3 scripts/adrs.pypython3 -m unittest discover testsFor the owner: accept, change or reject ADR-0019. Then, in plan 006's T2, decide whether
WW_KOKKOS_STRICT=trueoryesshould turn strict mode on.🤖 Generated with Claude Code