{
  "tool": "inject-tiered.mjs",
  "subject": "probes/detect-frame-theme/detect-frame-theme-tiered.mjs",
  "takenAt": "2026-09-03T02:19:22.515Z",
  "boundaries": [
    "只证这 24 条钉子对这 6 种改坏有判别力，⛔ 不声称改坏面已穷尽",
    "expectRed / expectGreen 是子集断言，⛔ 不是全集",
    "⛔ 不覆盖真实 Figma 节点；面级判别力由预注册 §6.2 的读数级注入另证"
  ],
  "baseline": {
    "exit": 0,
    "red": 0,
    "green": 24
  },
  "arms": [
    {
      "arm": "ctrl-copy-pristine",
      "kind": "control-green",
      "why": "未改一字的副本 ⇒ 证明「跑副本」这件事本身不制造红条",
      "nailExit": 0,
      "redCount": 0,
      "greenCount": 24,
      "missedRed": [],
      "wronglyRed": [],
      "probes": [
        {
          "probe": "t1-keeps-own",
          "pristine": "light",
          "afterInjection": "light",
          "predicted": "light",
          "matchesPredicted": true
        },
        {
          "probe": "t2-depth2",
          "pristine": "dark",
          "afterInjection": "dark",
          "predicted": "dark",
          "matchesPredicted": true
        },
        {
          "probe": "t3-fallback",
          "pristine": "light",
          "afterInjection": "light",
          "predicted": "light",
          "matchesPredicted": true
        }
      ],
      "verdict": "PASS"
    },
    {
      "arm": "ctrl-noop-comment",
      "kind": "control-green",
      "why": "只改注释 ⇒ 证明钉子不是见改就红",
      "nailExit": 0,
      "redCount": 0,
      "greenCount": 24,
      "missedRed": [],
      "wronglyRed": [],
      "probes": [
        {
          "probe": "t1-keeps-own",
          "pristine": "light",
          "afterInjection": "light",
          "predicted": "light",
          "matchesPredicted": true
        },
        {
          "probe": "t2-depth2",
          "pristine": "dark",
          "afterInjection": "dark",
          "predicted": "dark",
          "matchesPredicted": true
        },
        {
          "probe": "t3-fallback",
          "pristine": "light",
          "afterInjection": "light",
          "predicted": "light",
          "matchesPredicted": true
        }
      ],
      "verdict": "PASS"
    },
    {
      "arm": "ctrl-positive",
      "kind": "control-red",
      "why": "主臂恒回 light ⇒ 证明这套钉子确实能红（⛔ 否则全绿毫无意义）",
      "nailExit": 1,
      "redCount": 8,
      "greenCount": 16,
      "missedRed": [],
      "wronglyRed": [],
      "probes": [
        {
          "probe": "t1-keeps-own",
          "pristine": "light",
          "afterInjection": "light",
          "predicted": "light",
          "matchesPredicted": true
        },
        {
          "probe": "t2-depth2",
          "pristine": "dark",
          "afterInjection": "light",
          "predicted": "light",
          "matchesPredicted": true
        },
        {
          "probe": "t3-fallback",
          "pristine": "light",
          "afterInjection": "light",
          "predicted": "light",
          "matchesPredicted": true
        }
      ],
      "verdict": "PASS"
    },
    {
      "arm": "p1-no-tiering",
      "kind": "分级",
      "why": "🔴 拆掉分档 ⇒ 所有节点都走递归（= v2 的一刀切）。T1 那半必须被带坏",
      "nailExit": 1,
      "redCount": 7,
      "greenCount": 17,
      "missedRed": [],
      "wronglyRed": [],
      "probes": [
        {
          "probe": "t1-keeps-own",
          "pristine": "light",
          "afterInjection": "dark",
          "predicted": "dark",
          "matchesPredicted": true
        },
        {
          "probe": "t2-depth2",
          "pristine": "dark",
          "afterInjection": "dark",
          "predicted": "dark",
          "matchesPredicted": true
        },
        {
          "probe": "t3-fallback",
          "pristine": "light",
          "afterInjection": "light",
          "predicted": "light",
          "matchesPredicted": true
        }
      ],
      "verdict": "PASS"
    },
    {
      "arm": "p2-no-recursion",
      "kind": "递归上限",
      "why": "🔴 上限 3 → 1（= v2 的边界①）。第 2/3 层的铺底应该探不到了",
      "nailExit": 1,
      "redCount": 3,
      "greenCount": 21,
      "missedRed": [],
      "wronglyRed": [],
      "probes": [
        {
          "probe": "t1-keeps-own",
          "pristine": "light",
          "afterInjection": "light",
          "predicted": "light",
          "matchesPredicted": true
        },
        {
          "probe": "t2-depth2",
          "pristine": "dark",
          "afterInjection": "light",
          "predicted": "light",
          "matchesPredicted": true
        },
        {
          "probe": "t3-fallback",
          "pristine": "light",
          "afterInjection": "light",
          "predicted": "light",
          "matchesPredicted": true
        }
      ],
      "verdict": "PASS"
    },
    {
      "arm": "p3-white-approx",
      "kind": "纯白谓词",
      "why": "精确纯白改成近似（> 0.99）⇒ 分档边界漂移，#fffffe 会被误当纯白",
      "nailExit": 1,
      "redCount": 1,
      "greenCount": 23,
      "missedRed": [],
      "wronglyRed": [],
      "probes": [
        {
          "probe": "t1-keeps-own",
          "pristine": "light",
          "afterInjection": "light",
          "predicted": "light",
          "matchesPredicted": true
        },
        {
          "probe": "t2-depth2",
          "pristine": "dark",
          "afterInjection": "dark",
          "predicted": "dark",
          "matchesPredicted": true
        },
        {
          "probe": "t3-fallback",
          "pristine": "light",
          "afterInjection": "light",
          "predicted": "light",
          "matchesPredicted": true
        }
      ],
      "verdict": "PASS"
    },
    {
      "arm": "p4-literal-fallback",
      "kind": "真源字面",
      "why": "🔴 T2 探到铺底也只作回退（§M23.18 那个「或」的字面）⇒ 主臂应塌回 v1",
      "nailExit": 1,
      "redCount": 6,
      "greenCount": 18,
      "missedRed": [],
      "wronglyRed": [],
      "probes": [
        {
          "probe": "t1-keeps-own",
          "pristine": "light",
          "afterInjection": "light",
          "predicted": "light",
          "matchesPredicted": true
        },
        {
          "probe": "t2-depth2",
          "pristine": "dark",
          "afterInjection": "light",
          "predicted": "light",
          "matchesPredicted": true
        },
        {
          "probe": "t3-fallback",
          "pristine": "light",
          "afterInjection": "light",
          "predicted": "light",
          "matchesPredicted": true
        }
      ],
      "verdict": "PASS"
    }
  ],
  "restore": {
    "exit": 0,
    "red": 0,
    "srcUnchanged": true,
    "strayCopy": false,
    "gitStatus": ""
  },
  "hardFail": 0
}