ParetoGTICal

策略详解:MS_z3.5_corePolicy: MS_z3.5_core

本页目录On this page
  1. 一段话回答One-paragraph answer
  2. 它用什么、不用什么What it uses and what it does not
  3. 算法,从零一步步讲The algorithm, step by step, from zero
  4. 五个观测的实做例子Five worked examples
  5. 它在 Pareto 前沿上的位置Where it sits on the Pareto front
  6. 一致性与剖面Consistency and profiles
  7. 已知失败与限度Known failures and limits
  8. 如何亲手跑它How to run it by hand

1. 一段话回答1. One-paragraph answer

MS_z3.5_core 是一条"只看高能段、逐段检验正超出"的 GTI 规则。它只读每次观测自己的 2.5–8 keV 视场光变曲线(不看未曝光角落、不读归档 2.filter、不按 ObsID 分支),把耀斑定义成"一段持续的正超出":先估一个安静参考率,再找出所有超出参考 0.7 个泊松标准差的连续段,只把"整段累计超出超过 z² 个泊松偏差且至少含 200 s 活时间"的段连同一格保护带一起删掉。它来自 2026-10-14 的 E012 政策搜索(执行者 sol,六个已消费设计案例),模块此后冻结未再调(SHA-256 fb2e0451…)。在 E019 的 R9 跨集检验里,它是三个在 25 观测的 M31 test 子集与其余三个集上全部 8 个"集 × 相机"格子里都优于 2.filter 的政策之一,保留 0.74–0.88 倍 2.filter 的时间,每个集里排名前 6–25。但 RT-16(2026-10-16 已裁定)指出:这个胜利大部分是"修好了 2.filter 自己失败的观测" —— 在 M31 MOS1 上去掉 2.filter 最差的两个观测(0301、2601)后,MS 的配对差从 −0.80 变成 +0.33,即持平。RT-16 当时提到的 FLR_z3 领先,到 E022/R13 已查明来源:它靠一条绝对硬度门把 Virgo-server 集 34–38% 的曝光整段丢掉;而 MS 加上 E021 的场门(XJ.MS)在 M31 上是 −1.53 [−2.31, −0.73] / −3.84,会否掉 0800733101 与 0800731701,但在 P004 的三条冻结读数条件里失手两条(LH MOS2 上对 FLR_z3 的 Δσ_R 的 p84 为 +0.81,要求 ≤ +0.5 pp;Virgo-server 上丢 8 个观测,而 FLR_z3 丢 51–54,要求 ≤ 它所丢的十分之一即 5.1–5.4)。主候选留给 PI 决定。还悬着的事:R7(剖面预注册)排队中;谱验证 C2 未做;R2/E021 已完成,其跨观测参考没能超过单观测领先政策。

MS_z3.5_core is a "high-band-only, run-by-run positive-excess" GTI rule. It reads only each observation's own 2.5–8 keV FOV light curve (no unexposed corner, no archived 2.filter, no ObsID branching) and defines a flare as a coherent positive excursion: estimate a quiet reference rate, find every contiguous run above it by more than 0.7 Poisson standard errors, and cut a run only when its integrated positive Poisson deviance exceeds z² and it holds at least 200 s of live time — plus one cell of padding. It comes from the E012 policy search of 2026-10-14 (executor sol, six consumed design cases), and the module has been frozen since (SHA-256 fb2e0451…). In E019's R9 cross-set test it is one of the three policies that beat 2.filter in all 8 set × camera cases on the 25-observation M31 test subset and the other three sets, keeping 0.74-0.88 of 2.filter's time and ranking in the top 6-25 of each set. But RT-16 (triaged 2026-10-16) finds that most of this win is "repairing 2.filter's own failed observations" — on M31 MOS1, dropping 2.filter's two worst observations (0301, 2601) takes MS's paired difference from -0.80 to +0.33, i.e. no significant difference. The FLR_z3 lead that RT-16 mentioned was traced by E022/R13 to an absolute hardness gate that drops 34-38% of the Virgo-server exposure outright; MS plus the E021 field gate (XJ.MS) gives -1.53 [-2.31, -0.73] / -3.84 on M31 and rejects 0800733101 and 0800731701, but it fails two of P004's three frozen reading conditions (on LH MOS2 its delta sigma_R against FLR_z3 has p84 = +0.81, required ≤ +0.5 pp; it drops 8 Virgo-server observations, required ≤ one tenth of FLR_z3's 51–54, i.e. 5.1–5.4). The main candidate awaits the PI. Still open: R7 (the pre-registered profile test) is queued; the spectral check C2 has not been done; R2/E021 is complete and its cross-observation reference did not beat the single-observation leaders.

来源:Source: results/c001_policy_search/sol/policies_sol.py (scan_core, policies); .agent/jobs/2026-10-14-pareto-policy-search/REPORT.sol.md; cognition-os/experiments/E012_policy_search_cases.md; E019_criterion_v3_random_effects.md §R9 与 §RT-16sections R9 and RT-16; cognition-os/RESEARCH_PLAN.md R2/R7/R8b; cognition-os/experiments/E021_xq_cross_observation_reference.md; E022_flr_hardness_gate.md §R13section R13; prereg/P004_gated_leaders.md。

2. 它用什么、不用什么2. What it uses and what it does not

输入Input用不用Used?为什么重要Why it matters
2.5–8 keV 视场光变曲线(20 s cell 的计数与活时间)The 2.5–8 keV FOV light curve (per-20 s-cell counts and live time) 用USED 这是唯一输入。它落在 1.000–2.395 keV 打分窗口之外,所以"选择"与"测量"不碰同一批光子。The only input. It lies outside the 1.000–2.395 keV scoring window, so selection and measurement never touch the same photons.
8–12 keV 视场光变曲线The 8–12 keV FOV light curve 用USED 与 2.5–8 keV 相加成"高能段总计数",一起做泊松检验(两个不相交的高能带)。Added to the 2.5–8 keV band as the "high-band total count" for the Poisson test (two disjoint high-energy bands).
未曝光角落计数Unexposed-corner counts 不用NOT USED D015:判据不能依赖角落,因为 MOS1 上角落太吵(σ = 0.0133)。MS 是 corner-free 的:把角落换成它的均值,掩码不变(自动检测)。D015: the criterion must not depend on the corner, which is too noisy on MOS1 (σ = 0.0133). MS is corner-free: replacing the corner by its mean leaves the mask unchanged (detected automatically).
归档 2.filter GTIThe archived 2.filter GTI 不用NOT USED D013:新政策独立于 2.filter 建造;它是及格线,不是底座。MS 从整次观测出发,自己决定切什么。D013: new policies are built independently of 2.filter, which is the passing line, not the base. MS starts from the whole observation and decides its own cuts.
0.5–2 keV 打分带The 0.5–2 keV scoring band 不用NOT USED 选择与打分同一批事件会让一致性得分为 0.0%(PITFALLS)。政策模块只看公共键:live、mid、origin、h、u、cn、ct、meta。Selecting and scoring on the same events gives a consistency score of 0.0% (PITFALLS). Policy modules see only the public keys: live, mid, origin, h, u, cn, ct, meta.
ObsID / 元数据分支ObsID / metadata branching 不用NOT USED D015:案例角色是按光变曲线肉眼定的,一条通用规则不能靠"认 ObsID"过关。MS 没有任何按观测编号的条件语句。D015: case roles were set by eye from light curves, so a general rule may not pass by "recognising an ObsID". MS has no per-observation conditional statement.
来源:Source: cognition-os/04_DECISION_LOG.md D013/D015; cognition-os/PITFALLS.md; scripts/c001_policy_score.py (PUBLIC_KEYS, module_policies 的角落检测corner detection); results/c001_policy_search/sol/audit.json (28/28 无角落)(28/28 corner-free).

3. 算法,从零一步步讲3. The algorithm, step by step, from zero

下面每一步都对应冻结模块 policies_sol.py 里 scan_core(t, c, z) 的一段代码,z = 3.5 就是名字里的 3.5。先说清楚:z = 3.5 是设计参数,不是标定过的假阳性率。搜索里同时试过 3.5/4/4.5/5/6/7 六个值,报告明确写了"检测阈值是启发式设计参数,不是标定的假阳性概率"。

Each step below maps to one block of scan_core(t, c, z) in the frozen module policies_sol.py, and z = 3.5 is the 3.5 in the name. State plainly: z = 3.5 is a design parameter, not a calibrated false-positive rate. The search tried 3.5/4/4.5/5/6/7 together, and the report says "detection thresholds are heuristic design parameters, not calibrated false-positive probabilities".

第 0 步:把观测切成 100 s 的格子Step 0: cut the observation into 100 s cells

每个 20 s 的原始 cell 按时间归入 100 s 的格子(blocks 函数)。每格得到两个数:活时间 t_i(秒,来自 EXPOSU,不是"有事件的格子数")和高能段计数 c_i = h_i + u_i(2.5–8 keV 加 8–12 keV)。

Every raw 20 s cell is binned into 100 s cells (the blocks function). Each cell gets two numbers: live time t_i (seconds, from EXPOSU, not "cells with events") and high-band count c_i = h_i + u_i (2.5–8 keV plus 8–12 keV).

第 1 步:估一个安静参考率 μStep 1: estimate a quiet reference rate mu

这一步是整条规则的"锚"。把格子按 5 个一组并成 500 s 的块,取这些块的率的下四分位数,再按泊松噪声修正:μ ← μ + 0.67449·√(μ/中位活时间)。然后做 4 轮"只信低的那部分"的迭代:凡是计数超过 μ·t + 3.5√(μ·t) 的块都算被污染,剔除后重新加权平均,重复 4 次。为什么不能直接用中位数:当大部分时间都在耀发时,中位数本身就坐在耀斑里(PITFALLS 记了这个失败)。

This is the rule's anchor. Group the cells into 500 s blocks of 5, take the lower quartile of their rates, then correct for Poisson noise: mu ← mu + 0.67449·√(mu/median live time). Then run 4 rounds of "trust only the low part": any block with counts above mu·t + 3.5√(mu·t) is treated as contaminated, and mu is re-averaged over the rest, 4 times. Why not the plain median: when most of the time is flaring, the median itself sits inside the flare (PITFALLS records this failure).

第 2 步:找"支撑段"(support runs)Step 2: find the support runs

对每个 100 s 格子,把计数和期望值都做 3 格(300 s)的滑动平均,然后问:平滑后的超出 (c − e) 是否大于 0.7 个泊松标准差 √e?是就是 1,不是就是 0。再用 3 格的结构元素做一次闭运算(把 ≤ 2 格的短缝隙填上),得到一串连续的 1 段 —— 这些就是候选耀斑段。观测的首尾格子单独判断,不让边界把一段耀斑切成两半。

For each 100 s cell, smooth both the counts and the expectation over 3 cells (300 s) and ask: is the smoothed excess (c − e) larger than 0.7 Poisson standard errors √e? Yes → 1, no → 0. Then apply a binary closing with a 3-cell structure (fills gaps of up to 2 cells), giving a set of contiguous runs of 1s — the candidate flare runs. The first and last cells are judged separately, so an edge cannot cut a flare in half.

第 3 步:逐段做泊松检验,决定切不切Step 3: test each run and decide whether to cut

对每个支撑段 [a, b),把整段的观测计数 n 与期望计数 e 相加,算正的泊松偏差(Poisson deviance)D = 2·[n·ln(n/e) − n + e]。只有当三个条件同时成立才切:n > e(必须是正超出)、D > z² = 12.25(z = 3.5 时)、且该段活时间 ≥ 200 s。最后把切掉的段各向外膨胀 1 格(100 s 保护带)。

For each run [a, b), sum the observed counts n and expected counts e over the whole run and compute the positive Poisson deviance D = 2·[n·ln(n/e) − n + e]. A run is cut only when all three hold: n > e (it must be a positive excess), D > z² = 12.25 (for z = 3.5), and the run holds at least 200 s of live time. Finally each cut run is dilated by 1 cell (100 s of padding).

"core" 改了第 2 轮什么What "core" changed in round 2

第 1 轮的 MS 用一组很宽的滑动窗口(4/8/16/32/64 格)扫描,任何超标的窗口都把覆盖的格子标成坏。宽窗口的毛病是:一个大耀斑会污染很多与它重叠的长窗口,把旁边无关的安静时间一起删掉。第 2 轮改成上面的"支撑段 + 整段检验"。效果在 2801 上最清楚:第 1 轮 MS_z3.5 只保留 10.88% / 11.52%(M1 / M2),第 2 轮 MS_z3.5_core 保留 75.67% / 74.99%。

Round 1's MS scanned with a set of broad sliding windows (4/8/16/32/64 cells) and marked every covered cell bad whenever a window exceeded the threshold. The flaw: one big flare contaminates many long overlapping windows and deletes unrelated quiet time next to it. Round 2 replaced this with the "support run + whole-run test" above. The effect is clearest on 2801: round-1 MS_z3.5 kept only 10.88% / 11.52% (M1 / M2); round-2 MS_z3.5_core keeps 75.67% / 74.99%.

可以照抄的伪代码Pseudo-code a student can re-implement

def ms_z3p5_core(cells, z=3.5):
    # cells: list of (live_seconds t_i, high_band_counts c_i) on a 100 s grid
    # 1. reference rate mu on 500 s blocks
    blocks = group_by_5(cells)
    mu = lower_quartile([c_i / t_i for blocks])
    mu += 0.67449 * sqrt(mu / median(t))
    for _ in range(4):
        ok = [c <= mu*t + 3.5*sqrt(max(mu*t, 1)) for each block]
        mu = sum(c[ok]) / sum(t[ok])
    expected = [mu * t_i for each cell]
    # 2. support runs: 300 s smoothed excess above 0.7 sigma
    s = [ (smooth3(c)[i] - smooth3(expected)[i]) > 0.7*sqrt(max(smooth3(expected)[i],1)) ]
    s = binary_closing(s, 3 cells)          # fill gaps of up to 2 cells
    s[0] = (c[0]-expected[0]) > 0.7*sqrt(max(expected[0],1))   # edges judged alone
    s[-1] = (c[-1]-expected[-1]) > 0.7*sqrt(max(expected[-1],1))
    # 3. cut a run only if it is a positive, significant, long-enough excursion
    bad = zeros
    for (a, b) in runs_of_true(s):
        n = sum(c[a:b]); e = sum(expected[a:b])
        D = 2 * (n*log(n/e) - n + e)
        if n > e and D > z*z and sum(t[a:b]) >= 200:
            bad[a:b] = True
    keep = not dilate(bad, 1 cell)          # 100 s padding
    return keep
来源:Source: results/c001_policy_search/sol/policies_sol.py (blocks, base_rate, scan_core,第 105–130 行, lines 105-130); .agent/jobs/2026-10-14-pareto-policy-search/REPORT.sol.md "MS — coherent positive excursion runs" 一节与 "What worked"(2801 的 10.88%/11.52% → 75.67%/74.99%)sections "MS - coherent positive excursion runs" and "What worked" (2801: 10.88%/11.52% to 75.67%/74.99%); cognition-os/PITFALLS.md (中位数基线失败)(the median-baseline failure).

4. 五个观测的实做例子4. Five worked examples

每张图画的是同一批东西:蓝色细线是 20 s 格子的 2.5–8 keV 视场率;灰色虚线是 MS 自己估的安静参考率 μ;红色阴影是 MS 真正删掉的段;底部黑色粗条是归档 2.filter 保留的时间。所有数字都是从缓存光变曲线现算的(脚本 make_figures_policy_ms.py,与冻结模块同一份代码路径)。

Every figure draws the same things: the thin blue line is the 20 s-cell 2.5–8 keV FOV rate; the grey dashed line is MS's own quiet reference rate mu; the red shading is what MS actually cuts; the thick black bar at the bottom is the archived 2.filter kept time. All numbers are recomputed from the cached light curves (script make_figures_policy_ms.py, the same code path as the frozen module).

0800730201 M1 light curve with MS reference, no cut, and the 2.filter GTI
0800730201 M1(干净对照)。13 个支撑段,0 个被切,MS 保留 100%(15.45 ks / 15.45 ks),与 2.filter 完全一致。参考率 μ = 0.601 ct/s。这是 PI 定的"干净案例",MS 的 ≥ 90% 保留规则在这里没有失败。 0800730201 M1 (clean control). 13 support runs, 0 cut; MS keeps 100% (15.45 ks / 15.45 ks), identical to 2.filter. Reference rate mu = 0.601 ct/s. This is the PI's clean case, and MS's ≥ 90% retention rule has no failure here. 来源:Source: results/c001_frontier/cache/0800730201_M1.npz; results/c001_policy_search/sol/policies_sol.py; REPORT.sol.md (全部 28 个最终政策在 0201 上保留 100%)(all 28 final policies keep 100% on 0201).
0800730301 M1 light curve with three MS cut intervals and the 2.filter GTI
0800730301 M1(中等耀斑)。13 个支撑段,3 个被切;MS 保留 63.9%(15.78 ks / 24.65 ks),2.filter 保留 80.8%(19.94 ks)。MS 比 2.filter 多删约 4.2 ks。E012 的记录:这里剩下的安静 ~70% 在 0.5–2 keV 仍有 s_w ≈ 3.7%,只有 MOS2 如此(RT-03 F2 更正:MOS1 的硬带也变,z = +4.4)。 0800730301 M1 (moderate flare). 13 support runs, 3 cut; MS keeps 63.9% (15.78 ks / 24.65 ks), 2.filter keeps 80.8% (19.94 ks). MS cuts about 4.2 ks more than 2.filter. E012's record: the quiet ~70% left here still has s_w ≈ 3.7% in 0.5–2 keV, and that holds for MOS2 only (RT-03 F2 correction: on MOS1 the hard band also varies, z = +4.4). 来源:Source: results/c001_frontier/cache/0800730301_M1.npz; cognition-os/experiments/E012_policy_search_cases.md §Correction (RT-03)section Correction (RT-03).
0800730101 M1 light curve with two MS cut intervals and the 2.filter GTI
0800730101 M1(PI 自己举的"小鼓包")。7 个支撑段,2 个被切;MS 保留 47.1%(12.43 ks / 26.40 ks),2.filter 保留 58.3%(15.39 ks)。这是唯一一个 MS 的 σ_tot 点估计严格小于全部基线政策的格子(1.419% 对 EH_B1000_n1 的 1.458%),但 P(best) 只有 0.00235,报告明确说"不要把 0.039 个百分点的探索性优势当成改进的证据"。 0800730101 M1 (the PI's own small-bump example). 7 support runs, 2 cut; MS keeps 47.1% (12.43 ks / 26.40 ks), 2.filter keeps 58.3% (15.39 ks). This is the only case-camera cell where MS's sigma_tot point estimate is strictly smaller than every baseline policy (1.419% against EH_B1000_n1's 1.458%), but P(best) is only 0.00235, and the report says plainly "do not promote a 0.039 percentage-point exploratory advantage into a detection of improvement". 来源:Source: results/c001_frontier/cache/0800730101_M1.npz; REPORT.sol.md §Results and interpretationsection Results and interpretation; results/c001_policy_search/sol/table.md.
0800732801 M1 light curve with one long MS cut interval and the 2.filter GTI
0800732801 M1(强耀斑)。8 个支撑段,1 个被切(一个从约 7.7 ks 延伸到 11.3 ks 的长段,整段偏差 D ≈ 16226,远超 z² = 12.25);MS 保留 75.7%(11.64 ks / 15.39 ks),2.filter 保留 77.7%(11.96 ks)。两者删掉的几乎同一段时间 —— 这正是第 2 轮"core"要修的行为:第 1 轮在这里只保留 10.88%。 0800732801 M1 (strong flare). 8 support runs, 1 cut (one long run from about 7.7 ks to 11.3 ks, whole-run deviance D ≈ 16226, far above z² = 12.25); MS keeps 75.7% (11.64 ks / 15.39 ks), 2.filter keeps 77.7% (11.96 ks). The two cut almost the same time — exactly the behaviour round 2's "core" was built to fix: round 1 kept only 10.88% here. 来源:Source: results/c001_frontier/cache/0800732801_M1.npz; REPORT.sol.md §What workedsection What worked; 段位置与偏差由作者用run positions and deviances recomputed by the author with make_figures_policy_ms.py.
0800733101 M1 light curve with two MS cut intervals and the 2.filter GTI
0800733101 M1(已知失败)。率的中位数是 1.62 ct/s,而 MS 估出的参考率只有 0.82 ct/s —— 这次观测整段基线被抬高,不是一段耀斑。MS 保留 17.0%(2.27 ks / 13.37 ks),2.filter 保留 21.2%(2.84 ks),两者都留得很少,而 σ_tot 分别是 95.74% 和 81.88%:MS 删得比 2.filter 还干净,分数却更差,因为剩下的时间相对它的同天空孪生 0701 仍然偏高(RT-09 更正后的 d_ref = 73.5%,MOS1)。这条规则没有失败在"切得不够",而是失败在"切完之后剩下的东西本身就不干净"。 0800733101 M1 (the known failure). The rate median is 1.62 ct/s while MS's estimated reference is only 0.82 ct/s — this observation has a raised baseline throughout, not one flare. MS keeps 17.0% (2.27 ks / 13.37 ks), 2.filter keeps 21.2% (2.84 ks); both keep little, and sigma_tot is 95.74% and 81.88% respectively: MS cuts more than 2.filter and still scores worse, because what remains is still high relative to its same-sky twin 0701 (d_ref = 73.5% on MOS1 after the RT-09 correction). The rule does not fail by "cutting too little"; it fails because what is left after cutting is itself not clean. 来源:Source: results/c001_frontier/cache/0800733101_M1.npz; REPORT.sol.md §What failed or remains unresolvedsection What failed or remains unresolved; cognition-os/experiments/E014_m31_mosaic_test.md §Correction (RT-09)section Correction (RT-09); 04_DECISION_LOG.md D015 的 d_ref 更正D015's d_ref correction.

Lockman Hole 0101(0022740101):缓存里也有它。MS 在 M1 上只保留 3.5%、M2 上 3.4%,2.filter 保留 23.4% / 17.4%。这是 RT-06 认定的 2.filter 失败(espfilt 峰锁在耀斑上,6.8 倍中位数),MS 在这里比 2.filter 切得更狠 —— 是更接近真相还是过度切割,R2(跨观测安静参考)要回答的正是这个问题。

Lockman Hole 0101 (0022740101): it is also in the cache. MS keeps 3.5% on M1 and 3.4% on M2, against 2.filter's 23.4% / 17.4%. This is the 2.filter failure identified by RT-06 (espfilt's peak locks onto a flare, 6.8× the median); MS cuts harder than 2.filter here — whether that is closer to the truth or over-cutting is exactly what R2 (a cross-observation quiet reference) is meant to answer.

来源:Source: results/c001_frontier/cache/0022740101_M1.npz 与and 0022740101_M2.npz; cognition-os/REDTEAM_QUEUE.md RT-06 F-04; cognition-os/RESEARCH_PLAN.md R2. 保留比例由作者 2026-10-16 从缓存现算。Retention fractions recomputed by the author from the cache on 2026-10-16.

5. 它在 Pareto 前沿上的位置5. Where it sits on the Pareto front

单次观测内:保留时间对纯泊松误差Within one observation: kept time against Poisson-only error

下面两张图画的是 157 个候选政策(基线 + E012 三个执行者的合并模块)在同一观测里的位置。横轴是保留活时间,纵轴是 σ_stat = 1/√N(N = 保留的 0.5–2 keV 计数,30″ 掩模)。注意这张图的纵轴只是计数噪声,不含系统项,所以"越靠右下越好"只对"曝光几乎免费"的深场成立;在 M31 上系统项主导(见第 6 节)。

The two figures below show 157 candidate policies (the baseline plus the merged E012 modules of three executors) in the same observation. The x-axis is kept live time and the y-axis is sigma_stat = 1/√N (N = kept 0.5–2 keV counts, 30" mask). Note that this y-axis is counting noise only, with no systematic term, so "lower right is better" holds only where exposure is nearly free (deep fields); on M31 the systematic term dominates (see section 6).

0800730301 M1: kept time vs Poisson error for all policies, MS highlighted
0800730301 M1。灰色点是全部 157 个政策;红色菱形是 MS_z3.5_core(σ_stat 1.118%,保留 15.78 ks),黑色圆是 2.filter(0.973%,19.94 ks)。MS 在这张图上比 2.filter 更差 —— 它保留的时间更少,而这张图不给系统项加分。箭头指向最小 σ_stat 的政策(最激进的切割)。 0800730301 M1. Grey dots are all 157 policies; the red diamond is MS_z3.5_core (sigma_stat 1.118%, 15.78 ks kept), the black circle is 2.filter (0.973%, 19.94 ks). MS is worse than 2.filter on this figure — it keeps less time and this figure gives no credit for the systematic term. The arrow points at the minimum-sigma_stat policy (the most aggressive cut). 来源:Source: results/c001_frontier/cache/0800730301_M1.npz; 政策掩码由policy masks recomputed with ps.baseline_policies 与and ps.module_policies (results/c001_policy_search/merged/policies_merged.py).
0800730101 M1: kept time vs Poisson error for all policies, MS highlighted
0800730101 M1。同一坐标系。MS 保留 12.43 ks(σ_stat 1.176%),2.filter 保留 15.39 ks(1.045%)。在开发打分器下 MS 的 σ_tot 是 1.419%、2.filter 是 8.236% —— 差别不在计数噪声,而在被删时间里藏着的系统项。 0800730101 M1. Same axes. MS keeps 12.43 ks (sigma_stat 1.176%), 2.filter keeps 15.39 ks (1.045%). Under the development scorer MS's sigma_tot is 1.419% and 2.filter's is 8.236% — the difference is not counting noise but the systematic term hidden in the rejected time. 来源:Source: results/c001_frontier/cache/0800730101_M1.npz; results/c001_policy_search/sol/table.md (σ_tot 与 p16–p84)(sigma_tot and p16-p84).

叠加后:σ_R 对保留时间,四个集 × 两个相机Stacked: sigma_R against kept time, four sets x two cameras

这是 C001 v3.1 判据(E019)下的位置:σ_R = √(Σ K_o τ²_o / Σ K_o + 1/N_P),τ²_o 是每次观测的潜在一个非负超出(负二项后验),1/N_P 是拼接后的计数项。每张子图一个"集 × 相机",横轴是相对 2.filter 的保留时间比。p16/p84 是观测重采样的散布,不是置信区间(RT-08 F02:覆盖率 52%)。

This is the position under the C001 v3.1 criterion (E019): sigma_R = √(Σ K_o τ²_o / Σ K_o + 1/N_P), where τ²_o is each observation's latent nonnegative excess (a negative-binomial posterior) and 1/N_P is the concatenated counting term. Each panel is one set × camera, and the x-axis is the retained time relative to 2.filter. p16/p84 are the spread from resampling observations, not confidence intervals (RT-08 F02: coverage 52%).

sigma_R vs T/2.filter, one panel per set and camera: M1 full range and zoom, then M2 full range and zoom, MS and the gated XJ.MS highlighted
四个集 × 两个相机的 σ_R 前沿(test 子集),每格一个"集 × 相机"。第 1–2 行是 MOS1(第 1 行全量程、第 2 行放大到 y ≤ 12%),第 3–4 行是 MOS2(同样先全量程后放大)。M31 用 25 个未参与设计的观测,CDFS 34 个、LH 13 个、Virgo-server 142 个。红色菱形是 MS_z3.5_core,橙色方块是带门的 XJ.MS(R13)。它从不是最靠左下的点,但它在每个格子里都压在 2.filter(黑点,σ_R 5.15–9.16%)的左下方,同时保留 0.74–0.88 倍的时间。全量程行里"完全不做筛选"的 none 政策在 30–40%,把领先者挤成一条线,所以每个相机都再画一行放大。RT-16 的限定:M31 MOS1 这个位置主要由 2.filter 最差的两个观测撑起,去掉它们后 MS 与 2.filter 持平。 The sigma_R front, one panel per set x camera (test subset). Rows 1-2 are MOS1 (row 1 the full range, row 2 zoomed to y ≤ 12%); rows 3-4 are MOS2 (full range then zoom). M31 uses the 25 observations that took no part in the design; CDFS 34, LH 13, Virgo-server 142. The red diamond is MS_z3.5_core and the orange square is the gated XJ.MS (R13). It is never the lowest-leftmost point, but in every panel it sits below-left of 2.filter (black, sigma_R 5.15-9.16%) while keeping 0.74-0.88 of the time. In the full-range rows the "no filtering at all" policy sits at 30-40% and squashes the leaders onto one line, so each camera gets a zoomed row as well. RT-16's caveat: on M31 MOS1 that position is carried mostly by 2.filter's two worst observations; without them MS ties 2.filter. 来源:Source: results/c001_risk_v31/risk.json (M31)(M31); results/c001_risk_v31_sets/cdfs/risk.json, lh_stage/risk.json, virgo/risk.json; results/r13_gated/*/risk.json 的fields policy = R13:XJ.MS; cognition-os/experiments/E019_criterion_v3_random_effects.md §R9section R9.

与 2.filter 的配对差,带它的散布Paired difference against 2.filter, with its spread

paired delta sigma_R against 2.filter for five policies across four sets and two cameras, including the gated XJ.MS
配对 Δσ_R(百分点),点 + p16–p84 散布。每个重采样抽次对 2.filter 与候选政策同时计算,所以这是配对差。MS_z3.5_core(红)与带门的 XJ.MS(橙,R13)在这 8 个格子(M31 为 25 观测 test 子集)里全部为负,且散布都不含 0。RT-16 限定:M31 MOS1 上去掉 2.filter 最差的两个观测后,MS 的差从 −0.80 变 +0.33(持平),FLR_z3 仍为 −0.79、RT3 为 −0.30。CDFS 与 LH 上 EH_B1000_n2(棕)也低于 2.filter,但它在 M31 上是正的(+4.98 [−1.08, +8.60],M1)—— RT-16 的更正读法是"EH 修不了 espfilt 的失败(M31、LH),但在 espfilt 工作的地方有帮助"。 Paired delta sigma_R in percentage points, point plus the p16-p84 spread. Every resampling draw computes 2.filter and the candidate together, so this is a paired difference. MS_z3.5_core (red) and the gated XJ.MS (orange, R13) are negative in all 8 cells (M31 is the 25-observation test subset), and no spread contains 0. RT-16's caveat: on M31 MOS1, dropping 2.filter's two worst observations takes MS from -0.80 to +0.33 (no significant difference), while FLR_z3 stays at -0.79 and RT3 at -0.30. On CDFS and LH, EH_B1000_n2 (brown) is also below 2.filter, but on M31 it is positive (+4.98 [-1.08, +8.60], M1) — RT-16's corrected reading is "EH does not repair espfilt's failures (M31, LH) but helps where espfilt works". 来源:Source: 同上四份the same four risk.json 的files, fields delta_vs_2.filter 与and delta_vs_2.filter_p16/p84; XJ.MS 来自from results/r13_gated/*/risk.json 的fields policy = R13:XJ.MS; E019 §R9section R9.

五个政策 × 四集 × 两相机的完整表The full table: five policies x four sets x two cameras

集(观测数)Set (observations) 相机Camera 政策Policy T/2.filterT/2.filter σ_Rsigma_R σ_R_netsigma_R_net σ_RCsigma_RC Δσ_R [p16, p84]delta sigma_R [p16, p84]
M31 test(25)M31 test (25) M1MS_z3.5_core0.8844.15%2.38%4.15%−1.00 [−1.66, −0.29]
M12.filter1.0005.15%4.09%5.15%0.00 [0.00, 0.00]
M1FLR_z30.8703.81%2.35%4.11%−1.34 [−1.98, −0.65]
M1RT3_h2.5_l10.9274.00%2.57%4.00%−1.15 [−1.82, −0.41]
M1XJ.MS(带门, R13)XJ.MS (gated, R13)0.8733.74%2.12%4.06%−1.41 [−2.05, −0.70]
M2MS_z3.5_core0.8813.89%2.84%3.89%−1.96 [−2.68, −1.13]
M22.filter1.0005.84%5.30%5.84%0.00 [0.00, 0.00]
M2FLR_z30.8513.93%3.07%3.98%−1.92 [−2.58, −1.18]
M2RT3_h2.5_l10.9304.38%3.55%4.38%−1.46 [−2.03, −0.81]
M2XJ.MS(带门, R13)XJ.MS (gated, R13)0.8683.30%2.33%3.47%−2.54 [−3.48, −1.54]
CDFS(34)CDFS (34) M1MS_z3.5_core0.8052.96%2.43%n/a−3.88 [−4.46, −3.30]
M12.filter1.0006.84%6.63%n/a0.00 [0.00, 0.00]
M1FLR_z30.8233.23%2.74%n/a−3.61 [−4.07, −3.17]
M1RT3_h2.5_l10.8853.70%3.29%n/a−3.14 [−3.61, −2.69]
M1XJ.MS(带门, R13)XJ.MS (gated, R13)0.8052.96%2.43%n/a−3.88 [−4.46, −3.30]
M2MS_z3.5_core0.8223.06%2.70%n/a−3.41 [−3.87, −2.93]
M22.filter1.0006.47%6.31%n/a0.00 [0.00, 0.00]
M2FLR_z30.8333.40%3.06%n/a−3.07 [−3.49, −2.65]
M2RT3_h2.5_l10.8933.67%3.36%n/a−2.80 [−3.19, −2.41]
M2XJ.MS(带门, R13)XJ.MS (gated, R13)0.8223.06%2.69%n/a−3.41 [−3.87, −2.93]
LH stage(13)LH stage (13) M1MS_z3.5_core0.5363.60%2.59%n/a−5.57 [−6.00, −5.10]
M12.filter1.0009.16%8.94%n/a0.00 [0.00, 0.00]
M1FLR_z30.4833.63%2.91%n/a−5.53 [−6.39, −4.74]
M1RT3_h2.5_l10.6374.31%3.55%n/a−4.85 [−5.54, −4.18]
M1XJ.MS(带门, R13)XJ.MS (gated, R13)0.5043.32%2.35%n/a−5.84 [−6.39, −5.28]
M2MS_z3.5_core0.5053.97%3.11%n/a−5.04 [−5.70, −4.29]
M22.filter1.0009.00%8.79%n/a0.00 [0.00, 0.00]
M2FLR_z30.4803.63%3.07%n/a−5.37 [−6.38, −4.48]
M2RT3_h2.5_l10.6364.51%3.85%n/a−4.49 [−5.01, −3.95]
M2XJ.MS(带门, R13)XJ.MS (gated, R13)0.4733.76%2.99%n/a−5.24 [−5.91, −4.58]
Virgo-server(142)Virgo-server (142) M1MS_z3.5_core0.7423.70%2.96%n/a−3.58 [−4.05, −3.11]
M12.filter1.0007.28%7.01%n/a0.00 [0.00, 0.00]
M1FLR_z30.5394.05%3.47%n/a−3.23 [−3.82, −2.66]
M1RT3_h2.5_l10.8304.05%3.43%n/a−3.23 [−3.69, −2.77]
M1XJ.MS(带门, R13)XJ.MS (gated, R13)0.7273.48%2.79%n/a−3.80 [−4.28, −3.30]
M2MS_z3.5_core0.7553.37%2.82%n/a−3.34 [−3.79, −2.85]
M22.filter1.0006.71%6.50%n/a0.00 [0.00, 0.00]
M2FLR_z30.5073.84%3.40%n/a−2.87 [−3.36, −2.36]
M2RT3_h2.5_l10.8403.87%3.43%n/a−2.84 [−3.27, −2.36]
M2XJ.MS(带门, R13)XJ.MS (gated, R13)0.7403.09%2.52%n/a−3.62 [−4.05, −3.13]
怎么读这张表How to read this table

σ_RC 只在 M31 上有定义(那里的指向是不同天空,丢掉一个指向要付 V_miss 的代价;√V_miss = 6.7% / 5.1%,M1 / M2);CDFS、LH 与 Virgo-server 是同天空集,打分器输出 n/a。MS 不丢任何指向(每个集最多丢 1 个观测,E022),所以它的 σ_RC = σ_R。Δσ_R 是配对差,方括号是 p16–p84 散布,不是置信区间。MS 在 8 个格子里全部为负、散布全部不含 0 —— 但 RT-16 表明 M31 MOS1 的负值主要由 2.filter 最差的两个观测贡献(去掉后 +0.33,持平)。RT3_h2.5_l1 保留时间最多(0.64–0.93),FLR_z3 在 M31 上更优但靠的是整观测硬度过硬门(E022:它在 Virgo-server 上丢掉 51–54/142 个观测,含 NGC 1399 热气体)。XJ.MS 是 R13 的带门变体:MS_z3.5_core 的光变掩码加上 E021 的场门(丢掉 0800733101、0800731701 与各集里 3–8 个最差观测)。在 M31 test 子集上它比裸 MS 略好(M1 −1.41 对 −1.00;M2 −2.54 对 −1.96),σ_R_net 也更低(2.12% / 2.33% 对 2.38% / 2.84%);但它要付门丢掉曝光的代价,在 P004 的三条冻结读数条件里失手两条(LH MOS2 上对 FLR_z3 的 Δσ_R 的 p84 为 +0.81,要求 ≤ +0.5 pp;Virgo-server 上丢 8 个观测,而 FLR_z3 丢 51–54,要求 ≤ 它所丢的十分之一即 5.1–5.4)。

sigma_RC is defined on M31 only (there the pointings are different sky, so dropping one costs V_miss, with √V_miss = 6.7% / 5.1% for M1 / M2); CDFS, LH and Virgo-server are same-sky sets and the scorer reports n/a. MS drops no pointing (at most 1 observation per set, E022), so its sigma_RC equals sigma_R. delta sigma_R is a paired difference and the brackets are the p16-p84 spread, not a confidence interval. MS is negative in all 8 cells with no spread containing 0 — but RT-16 shows the M31 MOS1 negative is carried mostly by 2.filter's two worst observations (+0.33 without them, no significant difference). RT3_h2.5_l1 keeps the most time (0.64-0.93); FLR_z3 does better on M31 but through its absolute-hardness whole-observation gate (E022: it drops 51–54 of 142 Virgo-server observations, including the NGC 1399 hot gas). XJ.MS is the R13 gated variant: the MS_z3.5_core light-curve mask plus the E021 field gate (dropping 0800733101, 0800731701 and the 3-8 worst observations of each set). On the M31 test subset it is slightly better than bare MS (M1 -1.41 vs -1.00; M2 -2.54 vs -1.96) and its sigma_R_net is lower too (2.12% / 2.33% vs 2.38% / 2.84%); but it pays for the exposure the gate discards and fails two of P004's three frozen reading conditions (on LH MOS2 its delta sigma_R against FLR_z3 has p84 = +0.81, required ≤ +0.5 pp; it drops 8 Virgo-server observations, required ≤ one tenth of FLR_z3's 51–54, i.e. 5.1–5.4).

来源:Source: results/c001_risk_v31/risk.json 与and results/c001_risk_v31_sets/cdfs/risk.json, lh_stage/risk.json, virgo/risk.json 的fields T_vs_2filter, sigma_R, sigma_R_net, sigma_RC, delta_vs_2.filter (test 子集,作者 2026-10-16 逐格读出)(test subset, read cell by cell by the author on 2026-10-16); E019 §R9section R9; cognition-os/experiments/E019_criterion_v3_random_effects.md §v3.1(V_miss)section v3.1 (V_miss); XJ.MS 一行来自the XJ.MS row comes from results/r13_gated/{m31,cdfs,lh_stage,virgo}/risk.json 的fields policy = R13:XJ.MS (test 子集)(test subset), 与and cognition-os/experiments/E022_flr_hardness_gate.md §R13、section R13, prereg/P004_gated_leaders.md.

6. 一致性与剖面6. Consistency and profiles

E014:31 个 M31 观测叠成一个马赛克E014: 31 M31 observations as one mosaic

E014 把 31 个 M31 halo 观测当成一次拼接观测,用当时的 v_W 判据打分。在保留 ≥ 0.88 倍 2.filter 曝光的政策里,MS_z3.5_core 是最好的一档:1.3%(M1)与 1.6%(M2),对应 0.88 倍的 2.filter 时间。同一份产品里 2.filter 是 4.4% / 4.9%,绝对最小点(EH_B300_n-1,MOS2)只有 0.55% 但只保留 0.16 倍时间。P(best) 分散在 10–30 个政策上,最大 0.18 —— 最好的政策没有定论。

E014 treated the 31 M31 halo observations as one concatenated pointing and scored them with the then-current v_W criterion. Among policies keeping at least 0.88× of 2.filter's exposure, MS_z3.5_core is the best tier: 1.3% (M1) and 1.6% (M2), at 0.88× of 2.filter's time. In the same products 2.filter gives 4.4% / 4.9%, and the absolute minimum (EH_B300_n-1, MOS2) is 0.55% but keeps only 0.16× of the time. P(best) is spread over 10-30 policies with a maximum of 0.18 — the best policy is not resolved.

来源:Source: cognition-os/experiments/E014_m31_mosaic_test.md §Stage 2; results/e014_m31_mosaic/sol/run31/mosaic.json (作者复核:MS test 子集 σ_tot,noD = 1.30% / 1.61%,T/2.filter = 0.883 / 0.884;2.filter 4.35% / 4.94%)(author's recheck: MS test-subset sigma_tot,noD = 1.30% / 1.61%, T/2.filter = 0.883 / 0.884; 2.filter 4.35% / 4.94%).

E020:垂直剖面一致性 —— "未检出",而且功效很低E020: vertical-profile consistency — "not detected", and with little power

E020 问的是一个更接近科学产出的问题:换 GTI 政策能不能让 M31 halo 的垂直剖面在不同观测之间更一致?答案经过 RT-12 修正后是:未检出,且这个检验的功效很低。

E020 asks a question closer to the scientific output: can changing the GTI policy make the M31 halo vertical profile more consistent between observations? After the RT-12 correction the answer is: not detected, and the test has little power.

量Quantity2.filter2.filterMS_z3.5_coreMS_z3.5_core配对差 [95%]paired delta [95%]
M1 中位 τ_b(4′ 箱)M1 median tau_b (4' bins)9.03%10.37%−0.8 pp [−3.11, +1.16]
M1 合并 χ²_νM1 pooled chi2_nu7.956.91−0.71 [−1.57, +0.02]
M2 中位 τ_b(4′ 箱)M2 median tau_b (4' bins)10.79%9.22%−1.11 pp [−3.24, +0.70]
M2 合并 χ²_νM2 pooled chi2_nu13.8710.64−2.43 [−3.91, −1.27]

RT-12 的原话:如果 E019 的观测内项与一个结构性项正交相加,从 2.filter 换成领先政策只预测 Δτ_b ≈ −0.8…−1.1 pp(M1)与 −1.9 pp(M2),而配对 bootstrap 的 sd 是 0.7–1.9 pp —— 预测只有 1–2σ。所以"没有政策显著改善剖面"必须读成"未检出,功效低",不是"剖面与 GTI 无关"。

RT-12's own words: if E019's within-observation term adds in quadrature to a structural term, switching from 2.filter to the leaders predicts only Δτ_b ≈ −0.8…−1.1 pp (M1) and −1.9 pp (M2), while the paired bootstrap sd is 0.7-1.9 pp — the prediction is only 1-2σ. So "no policy significantly improves the profile" must be read as "not detected; low power", not as "the profile is unrelated to the GTI".

RT-12 还撤回了一句话:"剩下的散布不是 GTI 效应"是错的。去掉每次观测的 z 无关偏移后,中位 τ_b 从 8.8% → 6.5%(M1)与 11.5% → 8.7%(M2),即 τ_b² 的 43–46% 是一个可用 GTI 修的逐观测偏移。MS 在这个偏移统计上:M1 +2.20 pp [−1.22, +3.78]、M2 −1.28 pp [−3.14, +0.13] —— M2 上方向为负但区间含 0,记持平;M1 上为正。做这个统计的 Q_d0.05_n2 用角落,MS 不用。

RT-12 also withdrew one sentence: "the remaining scatter is not a GTI effect" is wrong. Removing each observation's z-independent offset takes the median τ_b from 8.8% to 6.5% (M1) and 11.5% to 8.7% (M2), i.e. 43-46% of τ_b² is a per-observation offset a GTI can fix. For MS on that offset statistic: M1 +2.20 pp [-1.22, +3.78] and M2 -1.28 pp [-3.14, +0.13] — on M2 the sign is negative but the interval contains 0, so no significant difference; on M1 it is positive. The policy that does well there, Q_d0.05_n2, uses the corner; MS does not.

来源:Source: cognition-os/experiments/E020_m31_vertical_profile.md §Correction (RT-12); results/e020_m31_profile/luna/run2/consistency.json (4′ 箱的 τ_b、χ²_ν 与配对 Δ,作者 2026-10-16 逐行读出)(4' bins: tau_b, chi2_nu and paired deltas, read row by row by the author on 2026-10-16); results/redteam/rt12-profile/hermes/check1b_power.out (MS_core 的预测 −1.88%、bootstrap sd 0.96%、z(obs vs 0) = −0.16)(MS_core: prediction -1.88%, bootstrap sd 0.96%, z(obs vs 0) = -0.16); check2c_remove_offset.out; check7c_pooled_fixed.out.

E010:Al 线稳定性 —— 线检验目前排不出政策名次E010: Al-line stability — the line test cannot rank policies at present precision

E010 对 20 个政策叠合了 ln(L_K/L_B)。结论:Al-K 线在保留与拒绝时间之间稳定到约 1%,所有政策共有一个约 +1% 的偏移,政策之间的差别 ≤ 1% 且可由稀释解释。线检验不能用来给政策排名。MS_z3.5_core 不在 E010 的 20 个政策名单里(那份工作在 E012 之前),所以这里没有 MS 的专属数字 —— 这是空缺,不是通过。

E010 stacked ln(L_K/L_B) over 20 policies. The conclusion: the Al-K line is stable between kept and rejected time to about 1%, all policies share a common +1% offset, and differences between policies are ≤ 1% and explained by dilution. The line test cannot rank policies. MS_z3.5_core is not among E010's 20 policies (that work predates E012), so there is no MS-specific number here — that is a gap, not a pass.

来源:Source: cognition-os/experiments/E010_line_stack_per_policy.md; results/c001_line_stack/sol/stacks.json (政策名单)(the policy list).

7. 已知失败与限度7. Known failures and limits

事项Item数字 / 状态Number / status为什么是问题Why it matters
0800733101 失败The 0800733101 failure 保留 2.27 / 3.75 ks(M1 / M2),σ_tot 95.7% / 27.0%,2.filter 是 81.88% / 26.56%keeps 2.27 / 3.75 ks (M1 / M2), sigma_tot 95.7% / 27.0% against 2.filter's 81.88% / 26.56% 整次观测基线被抬高(d_ref 对孪生 0701 是 73.5%,MOS1),时间筛选看不见一个随时间恒定的成分。报告明确说"孪生参考暴露了一个单靠时间稳定性看不见的残余水平问题"。D017(PI,2026-10-16):无法确定基线的观测需要被剔除,候选规则是线锚标志 ln(H_kept/L_Al)(E021/R11)—— 而 MS_z3.5_core 在这个标志下不剔除任何观测(max z 2.5),即它治不了这一类。The whole observation has a raised baseline (d_ref against twin 0701 is 73.5% on MOS1); temporal screening cannot see a component that is steady in time. The report says the twin reference "exposes a residual level problem that temporal stability alone misses". D017 (PI, 2026-10-16): observations whose baseline cannot be determined are removed, and the candidate rule is the line-anchored flag ln(H_kept/L_Al) (E021/R11) — under which MS_z3.5_core rejects nothing (max z 2.5), i.e. it cannot fix this class.
干净案例上的水平审计The clean-case level audit 0701 上保留 90.73% / 92.81%,掩模后 kept/all 水平 = 0.97711 / 0.97649on 0701 it keeps 90.73% / 92.81%, masked kept/all level = 0.97711 / 0.97649 在干净观测上任何切割都会把保留的 0.5–2 keV 均值压低 0.3–1.6%(D015 的零测试)。这个向下的位移不证明没有选择偏差,只说明它很小。报告原话:"这些观测到的向下位移不证明不存在选择偏差"。On a clean observation any cut lowers the kept 0.5-2 keV mean by 0.3-1.6% (D015's null test). This downward shift does not prove the absence of selection bias, only that it is small. The report: "these observed downward shifts do not prove absence of selection bias".
只在六个已消费案例上设计Designed on six consumed cases only E012 / sol 报告:开发数据,不是冻结验证E012 / the sol report: development data, not frozen validation z = 3.5 与 0.7σ、200 s 这些常数都是在这六个案例上调出来的。R9 的四个集里,M31 之外的三个集没有参与设计,CDFS 对 E007 是开发数据 —— 报告自己列了这条保留。z = 3.5 and the 0.7-sigma and 200 s constants were all tuned on these six cases. Of R9's four sets, the three outside M31 took no part in the design, and CDFS was development data for E007 — the report lists this caveat itself.
散布不是置信区间The spreads are not confidence intervals RT-08 F02:覆盖率 52%,全干净马赛克上 0%RT-08 F02: coverage 52%, and 0% on an all-clean mosaic p16/p84 只描述"重采观测"的离散,不对应真实风险区间。读它们时不能写"显著优于"。p16/p84 describe only the spread from resampling observations and are not intervals on the true risk. They must not be read as "significantly better".
RT-16 已裁定:胜利的来源RT-16 triaged: where the win comes from 已裁定,1 条实质TRIAGED, 1 material 符号在所有打分器变体下都活下来;但 M31 MOS1 上前 5 个观测承担了 MS 的 K·τ² 下降的 138%,去掉 2.filter 最差的 0301 与 2601 后 Δσ_R 从 −0.80 变 +0.33(持平)。它当时倾向 FLR_z3,而 E022/R13 后来查明 FLR 的领先来自绝对硬度门(丢掉 Virgo-server 34–38% 的曝光),所以主候选仍未定,留给 PI。另更正了"每个集排名前 1–50"的说法:CDFS MOS1 上 MS 的排名是 12–25。The sign survives every scorer variant; but on M31 MOS1 the top 5 observations carry 138% of MS's K·τ² drop, and removing 2.filter's two worst (0301, 2601) takes Δσ_R from -0.80 to +0.33 (no significant difference). It leaned toward FLR_z3, which E022/R13 later showed comes from an absolute hardness gate (discarding 34-38% of the Virgo-server exposure), so the main candidate is still open and awaits the PI. It also corrects "top 1-50 in every set": on CDFS MOS1 MS ranks 12-25.
R7 未跑R7 has not run 排队中(R2 之后)QUEUED (after R2) 预注册的剖面检验(RT-12 F-02 的逐观测偏移统计,远盘箱,带 QPB 相减变体)还没做,所以"剖面更一致"这件事对 MS 仍是未检出。The pre-registered profile test (RT-12 F-02's per-observation offset statistic, far-disk bins, with a QPB-subtracted variant) has not run, so "a more consistent profile" remains undetected for MS.
谱验证 C2 未做The spectral check C2 has not been done 未做NOT DONE C001 的快速判据最终要用天空谱参数的一致性检验(C2,P002 之后)。MS 目前只有光变曲线层面的证据。C001's quick criterion must finally be checked against sky-spectral consistency (C2, after P002). MS currently has light-curve-level evidence only.
R2 已完成:跨观测参考没有超过它R2 done: the cross-observation reference did not beat it 已完成(E021)DONE (E021) XQ 家族(codexnim 的 HSH_q20_z3、FFC_q20_z4、XOG)在 M31 上没有超过单观测领先政策;M31 MOS1 上 HSH 是 −0.21 [−1.18, +0.78](持平)。E021 还确认:R9 的"全部 8 格"只在 25 观测 test 子集上成立,M31 全 31 观测上 MS MOS1 是 −0.80 [−1.62, +0.06](持平)。E022(R12):FLR_z3 的优势来自它的整观测硬门(Virgo-server 上丢 51–54/142),MS 每个集最多丢 1 个观测,在 CDFS、LH、Virgo-server 上与 FLR 相当或更好。The XQ families (codexnim's HSH_q20_z3, FFC_q20_z4, XOG) did not beat the single-observation leaders on M31; on M31 MOS1 HSH is -0.21 [-1.18, +0.78] (no significant difference). E021 also confirms: R9's "all 8 cells" holds on the 25-observation test subset only; on all 31 M31 observations MS MOS1 is -0.80 [-1.62, +0.06] (no significant difference). E022 (R12): FLR_z3's edge comes from its whole-observation hardness gate (dropping 51–54 of 142 on Virgo-server); MS drops at most 1 observation per set and matches or beats FLR on CDFS, LH and Virgo-server.
R13:带门的 XJ.MS 失手两条冻结读数条件R13: the gated XJ.MS fails two frozen reading conditions 已跑,未通过 P004RAN, fails P004 XJ.MS = MS_z3.5_core 的掩码 + E021 的场门(否掉 0800733101、0800731701)。它在 M31 全 31 观测上是 −1.53 [−2.31, −0.73] / −3.84,比裸 MS 强,但 P004 的三条冻结读数条件里它没达到两条:LH MOS2 上 Δσ_R 对 FLR_z3 的 p84 是 +0.81(要求 ≤ +0.5 pp),Virgo-server 上丢 8 个观测而 FLR_z3 丢 51–54,十分之一是 5.1–5.4(要求 ≤ 十分之一)。第三条(M31 全 31 上 Δσ_R 对 2.filter 不含 0,或否掉 3101 与 1701)它满足。所以带门变体不是现成的替代品;它治得了 3101 那一类,代价是丢掉已接受的曝光。XJ.MS = the MS_z3.5_core mask plus the E021 field gate (rejecting 0800733101 and 0800731701). On all 31 M31 observations it is -1.53 [-2.31, -0.73] / -3.84, stronger than bare MS, but it misses two of P004's three frozen reading conditions: on LH MOS2 its delta sigma_R against FLR_z3 has p84 = +0.81 (required ≤ +0.5 pp) and it drops 8 Virgo-server observations where FLR_z3 drops 51–54, so one tenth is 5.1–5.4 (required ≤ one tenth). The third condition (M31 all-31 delta sigma_R against 2.filter excluding 0, or rejecting 3101 and 1701) it meets. So the gated variant is not a drop-in replacement: it fixes the 3101 class at the cost of discarding accepted exposure.
来源:Source: .agent/jobs/2026-10-14-pareto-policy-search/REPORT.sol.md §What failed or remains unresolved、§Clean-case selection audit、§Policies put forwardsections What failed or remains unresolved, Clean-case selection audit, Policies put forward; results/c001_policy_search/sol/table.md; cognition-os/experiments/E019_criterion_v3_random_effects.md §RT-08、§R9 与 §RT-16sections RT-08, R9 and RT-16; cognition-os/experiments/E021_xq_cross_observation_reference.md; E022_flr_hardness_gate.md; cognition-os/04_DECISION_LOG.md D017; cognition-os/RESEARCH_PLAN.md R2/R7/R12/R13。

8. 如何亲手跑它8. How to run it by hand

政策代码在数据树里,是冻结的只读模块;打分脚本在代码树里。下面每条命令都在 lang 上实跑过(作者 2026-10-16,退出码 0),输出写到 $TMPDIR,不改动任何收据。

The policy code is a frozen read-only module in the data tree; the scoring scripts are in the code tree. Every command below was run for real on lang (by the author on 2026-10-16, exit code 0), writing to $TMPDIR and touching no receipt.

8.1 模块在哪里,怎么读它8.1 Where the module is and how to read it

cd /u/Lang3/program/DiffuseXrayCalibration/ParetoGTICal
# The frozen module (SHA-256 fb2e0451...79b26, unchanged since the E012 search):
#   /u/Lang3/Data/DiffuseXrayCalibration/ParetoGTICal/results/c001_policy_search/sol/policies_sol.py
# MS_z3.5_core = scan_core(t, c, 3.5) inside policies(): out[f"MS_z{z}_core"]
# It is loaded by the scorer under the name "sol." through the merged module:
#   results/c001_policy_search/merged/policies_merged.py   -> "sol.MS_z3.5_core"
# and by c001_risk.py under the name "merged:" -> "merged:sol.MS_z3.5_core"

8.2 导出 GTI 区间8.2 Export GTI intervals

cd /u/Lang3/program/DiffuseXrayCalibration/ParetoGTICal
PYTHONDONTWRITEBYTECODE=1 python3 scripts/c001_export_gti.py --out "$TMPDIR/gti_ms.json"
# Prints per observation, in ks, for none / 2.filter / EH_B1000_n2 / sol:MS_z3.5_core /
# sonnet:CP_h_p6_d0.05.  The JSON is {obsid: {policy: [[t0, t1], ...]}} in TT seconds,
# MOS1 and MOS2 intersected (a time is kept only when both cameras keep it).

实跑输出(2026-10-16,作者):0201 的 MS 保留 15.6 ks(1 个区间,与 none 相同);3101 的 MS 保留 2.266 ks(2 个区间),2.filter 2.8 ks。每个 ObsID 只跑六个基本案例,这是 E013 的五仪器检验入口。

Real output (2026-10-16, the author): on 0201 MS keeps 15.6 ks (1 interval, the same as none); on 3101 MS keeps 2.266 ks (2 intervals) against 2.filter's 2.8 ks. It runs only the six basic cases; this is the entry point for E013's five-instrument test.

8.3 重新打分(v3.1 判据)8.3 Rescore with the v3.1 criterion

cd /u/Lang3/program/DiffuseXrayCalibration/ParetoGTICal
# M31 halo (the default --glob 080073*01):
PYTHONDONTWRITEBYTECODE=1 python3 scripts/c001_risk.py --out "$TMPDIR/risk_m31"
# One of the other three sets:
PYTHONDONTWRITEBYTECODE=1 python3 scripts/c001_risk.py --set cdfs     --out "$TMPDIR/risk_cdfs"
PYTHONDONTWRITEBYTECODE=1 python3 scripts/c001_risk.py --set lh_stage --out "$TMPDIR/risk_lh"
PYTHONDONTWRITEBYTECODE=1 python3 scripts/c001_risk.py --set virgo    --out "$TMPDIR/risk_virgo"
# Reads: per_obs.json, risk.json, summary.txt.  Look for the row "merged:sol.MS_z3.5_core".
不要重跑覆盖已有收据Do not rerun over the existing receipts

不带 --out 时默认写 results/c001_risk_v31/,会覆盖记录在案的结果。要演示就指向 $TMPDIR(脚本只读输入)。本页所有数字来自已有的 results/c001_risk_v31/ 与 results/c001_risk_v31_sets/,作者只读未写。

Without --out the default writes results/c001_risk_v31/ and would overwrite the recorded results. To demonstrate, point it at $TMPDIR (the scripts only read their inputs). Every number on this page comes from the existing results/c001_risk_v31/ and results/c001_risk_v31_sets/, which the author read but never wrote.

来源:Source: scripts/c001_export_gti.py 与and scripts/c001_risk.py 的(their --help 实跑(2026-10-16)与作者对导出脚本的实跑runs on 2026-10-16, plus the author's real run of the export script); results/c001_policy_search/sol/policies_sol.py; results/c001_policy_search/merged/policies_merged.py。