RT 2026-07-24 - area 4 - opus (Opus 4.8) - yield 3 #160
ms609-agent
announced in
04 · Parallelism & RNG
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
opus (Opus 4.8) | effort: unrecorded | 2026-07-24
Migrated record. This round predates the move to Discussions; it is reproduced
verbatim below from
dev/red-team/log.md, which is now closed to new entries. It isposted here so this area has a round record whose
createdAtorders correctly againstthe other areas' — the backfill ran oldest-first for that reason. All fourteen posting
timestamps are later than the rounds they describe; the real date is in the title and
in the
date:field.⚠ Scoped round. This was one of the 2026-07-24 directed passes over what was new in
MaximizeParsimonysince the previous inspection — not the area's full file list. Theseam verdict it records is about that surface. Read the verdict in the notes rather
than inferring one from the yield in the title: a low number here can mean the new
code was clean, which says nothing about the parts of the area it never opened.
area: 4 (Parallelism & RNG — DIRECTED round: "what's new in MaximizeParsimony since last inspection")
reviewed_by: opus finder (a07f1d11) + opus peer verifier (a1be3e5b, P1-class) + haiku verifier (a456c2a9, low/latent) + orchestrator (advisor-briefed scoping); pinned @ 31b0627
date: 2026-07-24
tier: opus (Opus 4.8)
yield: 3 filed — T-336 P1 (data race), T-337 P2 (R-API-on-worker crash), T-338 P3 (3 consolidated inert tripwires); 0 refuted
notes: First area-4 review since the 2026-06-15 CRAN sweep (which found the T-309 P1, landed PR ms609#252); the last rotation round was 2026-05-19 (dry, pre-tier). ~2.5k net-new lines since 2026-06-15, concentrated in
ts_driven.cpp(1383) +ts_parallel.cpp(692), almost all opt-in mission-b speed features → fresh-surface opus pass, not a dry re-mine (start_tier=opus per doctrine reset). Advisor's key correction: the areas-2/3 full-rescore firewall does NOT transfer here — that firewall re-scores the final tree; it cannot un-corrupt a heap or un-race a data race. Went in expecting P1 (precedent: T-309 + the two MinGW emutls teardown crashes [[parallel-emutls-crash]]/[[parallel-na-crash]]) — and found one. CROWN-JEWEL RNG CLASS HOLDS (do not re-litigate):thread_rngset before any search on BOTH worker paths (parallel_drivenworker_threadts_parallel.cpp:168, re-seeded per rep :190; parallel_resample :640/:648);driven_search'sbandit_rng = ts::make_rng()(ts_driven.cpp:734) drawn after thread_rng is live; new sector/drift RNGs allts::make_rng()(ts_sector.cpp:1508,1875; ts_drift.cpp:894); ts_driven.cpp has ZERO raw R-RNG/R-API calls; T-309 fix intact, new features did NOT reintroduce it. POOL_RESEED (suspect #1) CLEARED: worker-reachable via resample but RNG-safe (bandit_rng), env-gated default-OFF, getenv hoisted out of the rep loop (:760); inert-latent, NOT a T-309 reintroduction. Seeds pre-generated on main thread (:292-296,:627-631); relaxed atomics are boolean signals + per-thread-index accumulators read only post-join; ThreadSafePool fully mutex-guarded incl. new pairwise-fuse branch; exact_verify cache (78b7414) per-DataSet single-writer, prototype written only in post-join MPT phase; new in-sector drift (~300 lines) has no thread_local/function-static → emutls class not reintroduced. THE FIND — T-336 P1 (opus finder + opus PEER verifier, all 5 links independently traced):ts_parallel_resamplebuilds ONEConstraintData cdand theparallel_resampleworker lambda captures it by[&], handing the SAME pointer to every worker'sresample_search→driven_search— where workers concurrently WRITE tree-specificcd->constraint_node/dfs_entry/dfs_exit/clip_zones/clip_tip_mask(map_constraint_nodes/update_constraint/classify_clip_constraints/impose_constraint) and read them back to gatefused_ok.parallel_driven'sworker_threaddeliberately copiescdper worker (ts_parallel.cpp:159-164); the resample path does NOT → data race UB + wrong-tree constraint gating + non-reproducibility, reachable via publicResample(constraint=…, nReplicates>1, nThreads>1). Peer verifier CLOSED both open threads:.ResampleHierarchyis NOT a 2nd instance (serial R loop, nThreads=1L, own cd — REFUTED);posthoc_datacompounding REFUTED (read-only on this path). Fix = mirror parallel_driven's per-workercd_local = *cd;. APPLIED + committed same-turn (f951df5) after user approval — per-worker copy in the resample worker lambda; build clean (6.6s) + functional smoke (constrained & unconstrained parallel Resample) passes; thread-race validation deferred to GHA-ASan/TSan (local ASan blocked). Stagedts_parallel.cppalone (concurrent session'sRcppExports.Rleft untouched). T-337 P2:build_dataset→Rf_error(ts_data.cpp:32, n_states>32) longjmps across threads on the parallel resample worker path (T-309 class); the finder's originally-cited ts_resample.cpp:44,50 weight-guards are pre-empted on the main thread by.ScaleWeight(verifier-corrected the reachable trigger to the n_states>32 companion — no n_states cap on the main-thread resample path). Fix = validate on main thread in ts_parallel_resample before spawn. T-338 P3 (3 consolidated inert tripwires, haiku-verified REAL-but-INERT): getenv-on-worker (no setenv in src/ → safe), verbosity≥1 Rprintf-on-worker (verbosity defaults 0, never set on parallel resample path), TS_AUDIT_PROBE static-counter race (fully #ifdef'd, macro not default) — all could flip live under the active mission-b work, filed as anti-dup. Seam status: STILL YIELDING (a P1 + P2 on the first fresh-surface pass) → next area-4 visit STAYS at opus with a fresh agent (mine the live seam before escalating). Notes for next reviewer: (i) once T-336 is fixed, re-confirm exact_verify/posthoc DataSet ownership under the fixed per-worker constraint copy; (ii) the resample→driven_search bridge is where serial "mission-b" features become worker-reachable — re-triage worker-reachability whenever new opt-in features land in ts_driven.cpp. NEXT ROTATION AREA = 5 (Data pipeline & simplification).All reactions