You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Tracking only — filed so this is recorded rather than remembered. Not claiming a bug; claiming an unowned behaviour change.
What changed underneath them
slowrot_fs_lib.build_finite_size_data (in RIFT_roboto_paper, analyses/slowrot_finite-size/) used to set deltaT = 1/(2*fmax), tying the rholm sample rate to the analysis band limit. It now sets deltaT = 1/(2*oversample*fmax) with OVERSAMPLE = 4 by default, and fmax means the band limit only.
Every script in MonteCarloMarginalizeCode/Code/test/jax/ that builds fslib.Source(..., fmax=1024.0) and does not pass oversample therefore moves from rholm srate 2048 → 8192 the moment a user's paper-repo checkout picks that change up. That is ~4x more samples: more accurate, and ~4x slower to build the data.
The seven
debug_fs_consistency.py
debug_jax_vs_cupy_inj.py
debug_orientation_degeneracy.py
demo_slowrot_flowmc.py
demo_slowrot_highsnr_nuts.py
demo_slowrot_reparam.py
test_.../other callers, if any are added later
(make_3g_figdata.py and debug_timeshift.py are already handled — #194 and #195.)
Why this is worth recording
None of these scripts makes a false statement about its sampling, so there was nothing to correct under a comment-only change. But:
Nobody opted in. Anyone comparing a result from one of these scripts across the library update will see numbers move, with no local diff to explain it.
At least one script's meaning depends on it.debug_timeshift.py turned out to be measuring something different at the new default — its scan is defined relative to deltaT, so a finer deltaT silently shrank the physical range it probes. It has been pinned to oversample=1 in test/jax: identify the fslib version by its behaviour, not by a commit id #195. The other seven have not been audited for the same property, and that audit is the actual work here.
fmax is no longer a sufficient configuration label. At equal srate 8192, (fmax 1024, oversample 4) and (fmax 2048, oversample 2) are measurably different analyses. Any of these scripts whose output is quoted anywhere should record both.
Suggested disposition
For each of the seven, decide one of:
inherit the new default (fine for anything that just wants the best available sampling), or
pinoversample=1 (for anything whose measurement is defined relative to deltaT, as debug_timeshift.py was), or
exposeSLOWROT_OVERSAMPLE with an explicit default, as make_3g_figdata.py and debug_timeshift.py now do — including the inspect.signature guard, so an explicit request an older library cannot satisfy is refused rather than silently downgraded.
Context
Library change: RIFT_roboto_paper, branch claude/stoic-saha-496052, 2026-08-26. Not yet landed on that repo's main, and the branch is not pushed — so this is latent until it does, and the two handled scripts identify the library by behaviour rather than by commit id for exactly that reason.
Evidence and the measured ladders: analyses/slowrot_finite-size/DESIGN_sampling.md.
Tracking only — filed so this is recorded rather than remembered. Not claiming a bug; claiming an unowned behaviour change.
What changed underneath them
slowrot_fs_lib.build_finite_size_data(inRIFT_roboto_paper,analyses/slowrot_finite-size/) used to setdeltaT = 1/(2*fmax), tying the rholm sample rate to the analysis band limit. It now setsdeltaT = 1/(2*oversample*fmax)withOVERSAMPLE = 4by default, andfmaxmeans the band limit only.Every script in
MonteCarloMarginalizeCode/Code/test/jax/that buildsfslib.Source(..., fmax=1024.0)and does not passoversampletherefore moves from rholm srate 2048 → 8192 the moment a user's paper-repo checkout picks that change up. That is ~4x more samples: more accurate, and ~4x slower to build the data.The seven
debug_fs_consistency.pydebug_jax_vs_cupy_inj.pydebug_orientation_degeneracy.pydemo_slowrot_flowmc.pydemo_slowrot_highsnr_nuts.pydemo_slowrot_reparam.pytest_.../other callers, if any are added later(
make_3g_figdata.pyanddebug_timeshift.pyare already handled — #194 and #195.)Why this is worth recording
None of these scripts makes a false statement about its sampling, so there was nothing to correct under a comment-only change. But:
debug_timeshift.pyturned out to be measuring something different at the new default — its scan is defined relative todeltaT, so a finerdeltaTsilently shrank the physical range it probes. It has been pinned tooversample=1in test/jax: identify the fslib version by its behaviour, not by a commit id #195. The other seven have not been audited for the same property, and that audit is the actual work here.fmaxis no longer a sufficient configuration label. At equal srate 8192,(fmax 1024, oversample 4)and(fmax 2048, oversample 2)are measurably different analyses. Any of these scripts whose output is quoted anywhere should record both.Suggested disposition
For each of the seven, decide one of:
oversample=1(for anything whose measurement is defined relative todeltaT, asdebug_timeshift.pywas), orSLOWROT_OVERSAMPLEwith an explicit default, asmake_3g_figdata.pyanddebug_timeshift.pynow do — including theinspect.signatureguard, so an explicit request an older library cannot satisfy is refused rather than silently downgraded.Context
RIFT_roboto_paper, branchclaude/stoic-saha-496052, 2026-08-26. Not yet landed on that repo's main, and the branch is not pushed — so this is latent until it does, and the two handled scripts identify the library by behaviour rather than by commit id for exactly that reason.analyses/slowrot_finite-size/DESIGN_sampling.md.oversample#194 (comments), test/jax: identify the fslib version by its behaviour, not by a commit id #195 (version predicate +debug_timeshift.pypin).