The #12981 swallow census has controls that nothing ever runs — wire the families the repair programme cannot destroy, or leave the instrument a measurement? #13919

Description

@claude

Filed by the domain:devx execution PM seat (#6023), session session_01Pk26oZ12t5N1hwGW1m1MgC, on behalf of the #13785 dev, which surfaced this while landing PR #13915 and ⛔ deliberately did not take it. ⛔ Filed unassigned and ungradeddomain:*, priority and type are triage's field.

⚠️Routed here rather than taken as a rider because it changes the entry-point shape of an instrument that sits under the #12981 maintainer ruling of 2026-08-29 (verbatim 「同意」). ⛔ A PM seat does not re-shape a ruling's instrument inside an unrelated fix.

The gap

scripts/measure-durability-swallow-family.mjs declares four control families, all asserted by --self-test:

familywhat it pins
POSITIVE_CONTROLSknown members that must be found at their declared tier
NEGATIVE_CONTROLSnon-members that must yield nothing
REGRESSION_CONTROLSthe two prior resolution defects in this same resolver
RESOLUTION_CONTROLSnew in PR #13915 — six sites pinning the scope-aware resolution

Nothing runs any of them. Measured on origin/main: zero references to measure-durability-swallow-family anywhere in package.json or .github/**. ⭐ Counter-checked against a control that must return non-zero — measure-stall-guard-headroom returns 2 hits (package.json:150 plus a lint.yml note) — so the zero is a reading, ⛔ not a broken query.

⇒ The controls are green only when a human or an agent runs them by hand.

⭐ Why it matters, in the dev's own words

the same resolver has now been repaired three times#13459, PR #13915, and the sibling's #13474 — and each time the previous fix had no gate holding it.

The census's numbers also feed #12981's repair worklist, so a wrong denominator propagates into that programme with nobody watching. That is a live consumer, ⛔ not a speculative surface.

⛔ Why the obvious fix is refuted — by the file's own record, not by opinion

Wiring the whole--self-test as a check:* would make CI red when the repair programme succeeds. POSITIVE_CONTROLS are tier-1 dark members of the #12981 worklist — precisely what the programme exists to remove. The file records this already happening:

This control used to name bootstrap-system-capabilities.ts … and #12981 batch 2 repaired it, which turned this self-test red for doing exactly what the ruling asked. ANY tier-1 DARK member of the worklist is a control the repair programme is designed to destroy, so repointing at another one only moves the breakage to the batch that repairs THAT file.

⇒ ⛔ A gate that reddens on success is not a gate. The current dark control was chosen for stability (batch 1 judged its site out of the programme on the merits), which is a workaround for this exact hazard, not a solution to it.

The three options, as the dev framed them

  • A — wire the full --self-test as a check:*. Two lines, and the precedent is real and sanctioned: check:stall-guard-headroom runs measure-stall-guard-headroom.mjs --self-test from lint.yml. ⛔ Cost: the hazard above, promoted from a local surprise to a merge blocker.
  • B — split the self-test (the dev's recommendation): wire RESOLUTION + NEGATIVE + REGRESSION, none of which the repair programme is designed to destroy; leave POSITIVE_CONTROLS to manual runs. Cost: a new flag, and it splits an instrument whose single-entry-point shape the ruling sanctioned.
  • C — leave unwired, as today. Zero risk to the repair programme. ⛔ Cost: it is what produced this card.

This seat's reading, offered as evidence and ⛔ not as a grading: the instability the dev names is specific to POSITIVE_CONTROLS, and the other three families are exactly the ones the programme cannot destroy — which is an argument for B on the merits. ⛔ Not a recommendation: whether an instrument that prints "a MEASUREMENT, not a gate" on every run should acquire a CI entry point at all is the ruling's question.

⚠️ What this card is NOT

  • Not the handover step. The file reserves the ruling's LAST step for adding tryInsert / tryUpdate to the real gate's DURABILITY_CRITICAL_CALLEES with zero reds, gated on outstanding == 0. This card is about the census's own controls and ⛔ must not be folded into that step or used to bring it forward.
  • ⛔ Not a claim that the census is wrong today. PR Resolve the swallow census's same-file hop by scope, not file order #13915's ablation exercised all four families by hand and they behaved as declared.
  • ⛔ Not an argument for adding an entry to durability-degradation.baseline.json, nor for widening the gate vocabulary — both explicitly refused by the ruling.
  • Not established that a split (option B) can be built without duplicating the self-test's reporting; nobody has tried it.

Re-check

# the absence (must be empty), then the control that proves the query works (must not be):
git grep -n measure-durability-swallow-family origin/main -- package.json .github
git grep -n measure-stall-guard-headroom origin/main -- package.json .github
node scripts/measure-durability-swallow-family.mjs --self-test

Dedup declaration

⚠️ Title-only scan of the repo's open issues for the census / wiring / check:* wording; nothing matching. ⛔ Bodies not searched, and search_issues is unavailable on this channel (REST /search/issues is 403 here). ⇒ ⛔ Not a claim that no duplicate exists. Nearest known neighbours, ⛔ none of them this: #12981 (the programme and its ruling), #13459 / #13474 / #13785 (three repairs of the resolver this card wants held), #13246 (cited in lint.yml beside the precedent).

Refs


Generated by Claude Code

Metadata

Metadata

Assignees

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

    , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
     blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
    }
    } catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
    })();
    (function(){
    try {
    var __m = "github.com";
    var __re = new RegExp('^' + "github\\.com" + '
    
    Skip to content

    The #12981 swallow census has controls that nothing ever runs — wire the families the repair programme cannot destroy, or leave the instrument a measurement? #13919

    Description

    @claude

    Filed by the domain:devx execution PM seat (#6023), session session_01Pk26oZ12t5N1hwGW1m1MgC, on behalf of the #13785 dev, which surfaced this while landing PR #13915 and ⛔ deliberately did not take it. ⛔ Filed unassigned and ungradeddomain:*, priority and type are triage's field.

    ⚠️Routed here rather than taken as a rider because it changes the entry-point shape of an instrument that sits under the #12981 maintainer ruling of 2026-08-29 (verbatim 「同意」). ⛔ A PM seat does not re-shape a ruling's instrument inside an unrelated fix.

    The gap

    scripts/measure-durability-swallow-family.mjs declares four control families, all asserted by --self-test:

    familywhat it pins
    POSITIVE_CONTROLSknown members that must be found at their declared tier
    NEGATIVE_CONTROLSnon-members that must yield nothing
    REGRESSION_CONTROLSthe two prior resolution defects in this same resolver
    RESOLUTION_CONTROLSnew in PR #13915 — six sites pinning the scope-aware resolution

    Nothing runs any of them. Measured on origin/main: zero references to measure-durability-swallow-family anywhere in package.json or .github/**. ⭐ Counter-checked against a control that must return non-zero — measure-stall-guard-headroom returns 2 hits (package.json:150 plus a lint.yml note) — so the zero is a reading, ⛔ not a broken query.

    ⇒ The controls are green only when a human or an agent runs them by hand.

    ⭐ Why it matters, in the dev's own words

    the same resolver has now been repaired three times#13459, PR #13915, and the sibling's #13474 — and each time the previous fix had no gate holding it.

    The census's numbers also feed #12981's repair worklist, so a wrong denominator propagates into that programme with nobody watching. That is a live consumer, ⛔ not a speculative surface.

    ⛔ Why the obvious fix is refuted — by the file's own record, not by opinion

    Wiring the whole--self-test as a check:* would make CI red when the repair programme succeeds. POSITIVE_CONTROLS are tier-1 dark members of the #12981 worklist — precisely what the programme exists to remove. The file records this already happening:

    This control used to name bootstrap-system-capabilities.ts … and #12981 batch 2 repaired it, which turned this self-test red for doing exactly what the ruling asked. ANY tier-1 DARK member of the worklist is a control the repair programme is designed to destroy, so repointing at another one only moves the breakage to the batch that repairs THAT file.

    ⇒ ⛔ A gate that reddens on success is not a gate. The current dark control was chosen for stability (batch 1 judged its site out of the programme on the merits), which is a workaround for this exact hazard, not a solution to it.

    The three options, as the dev framed them

    • A — wire the full --self-test as a check:*. Two lines, and the precedent is real and sanctioned: check:stall-guard-headroom runs measure-stall-guard-headroom.mjs --self-test from lint.yml. ⛔ Cost: the hazard above, promoted from a local surprise to a merge blocker.
    • B — split the self-test (the dev's recommendation): wire RESOLUTION + NEGATIVE + REGRESSION, none of which the repair programme is designed to destroy; leave POSITIVE_CONTROLS to manual runs. Cost: a new flag, and it splits an instrument whose single-entry-point shape the ruling sanctioned.
    • C — leave unwired, as today. Zero risk to the repair programme. ⛔ Cost: it is what produced this card.

    This seat's reading, offered as evidence and ⛔ not as a grading: the instability the dev names is specific to POSITIVE_CONTROLS, and the other three families are exactly the ones the programme cannot destroy — which is an argument for B on the merits. ⛔ Not a recommendation: whether an instrument that prints "a MEASUREMENT, not a gate" on every run should acquire a CI entry point at all is the ruling's question.

    ⚠️ What this card is NOT

    • Not the handover step. The file reserves the ruling's LAST step for adding tryInsert / tryUpdate to the real gate's DURABILITY_CRITICAL_CALLEES with zero reds, gated on outstanding == 0. This card is about the census's own controls and ⛔ must not be folded into that step or used to bring it forward.
    • ⛔ Not a claim that the census is wrong today. PR Resolve the swallow census's same-file hop by scope, not file order #13915's ablation exercised all four families by hand and they behaved as declared.
    • ⛔ Not an argument for adding an entry to durability-degradation.baseline.json, nor for widening the gate vocabulary — both explicitly refused by the ruling.
    • Not established that a split (option B) can be built without duplicating the self-test's reporting; nobody has tried it.

    Re-check

    # the absence (must be empty), then the control that proves the query works (must not be):
    git grep -n measure-durability-swallow-family origin/main -- package.json .github
    git grep -n measure-stall-guard-headroom origin/main -- package.json .github
    node scripts/measure-durability-swallow-family.mjs --self-test
    

    Dedup declaration

    ⚠️ Title-only scan of the repo's open issues for the census / wiring / check:* wording; nothing matching. ⛔ Bodies not searched, and search_issues is unavailable on this channel (REST /search/issues is 403 here). ⇒ ⛔ Not a claim that no duplicate exists. Nearest known neighbours, ⛔ none of them this: #12981 (the programme and its ruling), #13459 / #13474 / #13785 (three repairs of the resolver this card wants held), #13246 (cited in lint.yml beside the precedent).

    Refs


    Generated by Claude Code

    Metadata

    Metadata

    Assignees

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
      Skip to content

      The #12981 swallow census has controls that nothing ever runs — wire the families the repair programme cannot destroy, or leave the instrument a measurement? #13919

      Description

      @claude

      Filed by the domain:devx execution PM seat (#6023), session session_01Pk26oZ12t5N1hwGW1m1MgC, on behalf of the #13785 dev, which surfaced this while landing PR #13915 and ⛔ deliberately did not take it. ⛔ Filed unassigned and ungradeddomain:*, priority and type are triage's field.

      ⚠️Routed here rather than taken as a rider because it changes the entry-point shape of an instrument that sits under the #12981 maintainer ruling of 2026-08-29 (verbatim 「同意」). ⛔ A PM seat does not re-shape a ruling's instrument inside an unrelated fix.

      The gap

      scripts/measure-durability-swallow-family.mjs declares four control families, all asserted by --self-test:

      familywhat it pins
      POSITIVE_CONTROLSknown members that must be found at their declared tier
      NEGATIVE_CONTROLSnon-members that must yield nothing
      REGRESSION_CONTROLSthe two prior resolution defects in this same resolver
      RESOLUTION_CONTROLSnew in PR #13915 — six sites pinning the scope-aware resolution

      Nothing runs any of them. Measured on origin/main: zero references to measure-durability-swallow-family anywhere in package.json or .github/**. ⭐ Counter-checked against a control that must return non-zero — measure-stall-guard-headroom returns 2 hits (package.json:150 plus a lint.yml note) — so the zero is a reading, ⛔ not a broken query.

      ⇒ The controls are green only when a human or an agent runs them by hand.

      ⭐ Why it matters, in the dev's own words

      the same resolver has now been repaired three times#13459, PR #13915, and the sibling's #13474 — and each time the previous fix had no gate holding it.

      The census's numbers also feed #12981's repair worklist, so a wrong denominator propagates into that programme with nobody watching. That is a live consumer, ⛔ not a speculative surface.

      ⛔ Why the obvious fix is refuted — by the file's own record, not by opinion

      Wiring the whole--self-test as a check:* would make CI red when the repair programme succeeds. POSITIVE_CONTROLS are tier-1 dark members of the #12981 worklist — precisely what the programme exists to remove. The file records this already happening:

      This control used to name bootstrap-system-capabilities.ts … and #12981 batch 2 repaired it, which turned this self-test red for doing exactly what the ruling asked. ANY tier-1 DARK member of the worklist is a control the repair programme is designed to destroy, so repointing at another one only moves the breakage to the batch that repairs THAT file.

      ⇒ ⛔ A gate that reddens on success is not a gate. The current dark control was chosen for stability (batch 1 judged its site out of the programme on the merits), which is a workaround for this exact hazard, not a solution to it.

      The three options, as the dev framed them

      • A — wire the full --self-test as a check:*. Two lines, and the precedent is real and sanctioned: check:stall-guard-headroom runs measure-stall-guard-headroom.mjs --self-test from lint.yml. ⛔ Cost: the hazard above, promoted from a local surprise to a merge blocker.
      • B — split the self-test (the dev's recommendation): wire RESOLUTION + NEGATIVE + REGRESSION, none of which the repair programme is designed to destroy; leave POSITIVE_CONTROLS to manual runs. Cost: a new flag, and it splits an instrument whose single-entry-point shape the ruling sanctioned.
      • C — leave unwired, as today. Zero risk to the repair programme. ⛔ Cost: it is what produced this card.

      This seat's reading, offered as evidence and ⛔ not as a grading: the instability the dev names is specific to POSITIVE_CONTROLS, and the other three families are exactly the ones the programme cannot destroy — which is an argument for B on the merits. ⛔ Not a recommendation: whether an instrument that prints "a MEASUREMENT, not a gate" on every run should acquire a CI entry point at all is the ruling's question.

      ⚠️ What this card is NOT

      • Not the handover step. The file reserves the ruling's LAST step for adding tryInsert / tryUpdate to the real gate's DURABILITY_CRITICAL_CALLEES with zero reds, gated on outstanding == 0. This card is about the census's own controls and ⛔ must not be folded into that step or used to bring it forward.
      • ⛔ Not a claim that the census is wrong today. PR Resolve the swallow census's same-file hop by scope, not file order #13915's ablation exercised all four families by hand and they behaved as declared.
      • ⛔ Not an argument for adding an entry to durability-degradation.baseline.json, nor for widening the gate vocabulary — both explicitly refused by the ruling.
      • Not established that a split (option B) can be built without duplicating the self-test's reporting; nobody has tried it.

      Re-check

      # the absence (must be empty), then the control that proves the query works (must not be):
      git grep -n measure-durability-swallow-family origin/main -- package.json .github
      git grep -n measure-stall-guard-headroom origin/main -- package.json .github
      node scripts/measure-durability-swallow-family.mjs --self-test
      

      Dedup declaration

      ⚠️ Title-only scan of the repo's open issues for the census / wiring / check:* wording; nothing matching. ⛔ Bodies not searched, and search_issues is unavailable on this channel (REST /search/issues is 403 here). ⇒ ⛔ Not a claim that no duplicate exists. Nearest known neighbours, ⛔ none of them this: #12981 (the programme and its ruling), #13459 / #13474 / #13785 (three repairs of the resolver this card wants held), #13246 (cited in lint.yml beside the precedent).

      Refs


      Generated by Claude Code

      Metadata

      Metadata

      Assignees

      Type

      Projects

      No projects

        Milestone

        No milestone

        Relationships

        None yet

        Development

        No branches or pull requests

        Issue actions

        , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
        Skip to content

        The #12981 swallow census has controls that nothing ever runs — wire the families the repair programme cannot destroy, or leave the instrument a measurement? #13919

        Description

        @claude

        Filed by the domain:devx execution PM seat (#6023), session session_01Pk26oZ12t5N1hwGW1m1MgC, on behalf of the #13785 dev, which surfaced this while landing PR #13915 and ⛔ deliberately did not take it. ⛔ Filed unassigned and ungradeddomain:*, priority and type are triage's field.

        ⚠️Routed here rather than taken as a rider because it changes the entry-point shape of an instrument that sits under the #12981 maintainer ruling of 2026-08-29 (verbatim 「同意」). ⛔ A PM seat does not re-shape a ruling's instrument inside an unrelated fix.

        The gap

        scripts/measure-durability-swallow-family.mjs declares four control families, all asserted by --self-test:

        familywhat it pins
        POSITIVE_CONTROLSknown members that must be found at their declared tier
        NEGATIVE_CONTROLSnon-members that must yield nothing
        REGRESSION_CONTROLSthe two prior resolution defects in this same resolver
        RESOLUTION_CONTROLSnew in PR #13915 — six sites pinning the scope-aware resolution

        Nothing runs any of them. Measured on origin/main: zero references to measure-durability-swallow-family anywhere in package.json or .github/**. ⭐ Counter-checked against a control that must return non-zero — measure-stall-guard-headroom returns 2 hits (package.json:150 plus a lint.yml note) — so the zero is a reading, ⛔ not a broken query.

        ⇒ The controls are green only when a human or an agent runs them by hand.

        ⭐ Why it matters, in the dev's own words

        the same resolver has now been repaired three times#13459, PR #13915, and the sibling's #13474 — and each time the previous fix had no gate holding it.

        The census's numbers also feed #12981's repair worklist, so a wrong denominator propagates into that programme with nobody watching. That is a live consumer, ⛔ not a speculative surface.

        ⛔ Why the obvious fix is refuted — by the file's own record, not by opinion

        Wiring the whole--self-test as a check:* would make CI red when the repair programme succeeds. POSITIVE_CONTROLS are tier-1 dark members of the #12981 worklist — precisely what the programme exists to remove. The file records this already happening:

        This control used to name bootstrap-system-capabilities.ts … and #12981 batch 2 repaired it, which turned this self-test red for doing exactly what the ruling asked. ANY tier-1 DARK member of the worklist is a control the repair programme is designed to destroy, so repointing at another one only moves the breakage to the batch that repairs THAT file.

        ⇒ ⛔ A gate that reddens on success is not a gate. The current dark control was chosen for stability (batch 1 judged its site out of the programme on the merits), which is a workaround for this exact hazard, not a solution to it.

        The three options, as the dev framed them

        • A — wire the full --self-test as a check:*. Two lines, and the precedent is real and sanctioned: check:stall-guard-headroom runs measure-stall-guard-headroom.mjs --self-test from lint.yml. ⛔ Cost: the hazard above, promoted from a local surprise to a merge blocker.
        • B — split the self-test (the dev's recommendation): wire RESOLUTION + NEGATIVE + REGRESSION, none of which the repair programme is designed to destroy; leave POSITIVE_CONTROLS to manual runs. Cost: a new flag, and it splits an instrument whose single-entry-point shape the ruling sanctioned.
        • C — leave unwired, as today. Zero risk to the repair programme. ⛔ Cost: it is what produced this card.

        This seat's reading, offered as evidence and ⛔ not as a grading: the instability the dev names is specific to POSITIVE_CONTROLS, and the other three families are exactly the ones the programme cannot destroy — which is an argument for B on the merits. ⛔ Not a recommendation: whether an instrument that prints "a MEASUREMENT, not a gate" on every run should acquire a CI entry point at all is the ruling's question.

        ⚠️ What this card is NOT

        • Not the handover step. The file reserves the ruling's LAST step for adding tryInsert / tryUpdate to the real gate's DURABILITY_CRITICAL_CALLEES with zero reds, gated on outstanding == 0. This card is about the census's own controls and ⛔ must not be folded into that step or used to bring it forward.
        • ⛔ Not a claim that the census is wrong today. PR Resolve the swallow census's same-file hop by scope, not file order #13915's ablation exercised all four families by hand and they behaved as declared.
        • ⛔ Not an argument for adding an entry to durability-degradation.baseline.json, nor for widening the gate vocabulary — both explicitly refused by the ruling.
        • Not established that a split (option B) can be built without duplicating the self-test's reporting; nobody has tried it.

        Re-check

        # the absence (must be empty), then the control that proves the query works (must not be):
        git grep -n measure-durability-swallow-family origin/main -- package.json .github
        git grep -n measure-stall-guard-headroom origin/main -- package.json .github
        node scripts/measure-durability-swallow-family.mjs --self-test
        

        Dedup declaration

        ⚠️ Title-only scan of the repo's open issues for the census / wiring / check:* wording; nothing matching. ⛔ Bodies not searched, and search_issues is unavailable on this channel (REST /search/issues is 403 here). ⇒ ⛔ Not a claim that no duplicate exists. Nearest known neighbours, ⛔ none of them this: #12981 (the programme and its ruling), #13459 / #13474 / #13785 (three repairs of the resolver this card wants held), #13246 (cited in lint.yml beside the precedent).

        Refs


        Generated by Claude Code

        Metadata

        Metadata

        Assignees

        Type

        Projects

        No projects

          Milestone

          No milestone

          Relationships

          None yet

          Development

          No branches or pull requests

          Issue actions

          , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
          Skip to content

          The #12981 swallow census has controls that nothing ever runs — wire the families the repair programme cannot destroy, or leave the instrument a measurement? #13919

          Description

          @claude

          Filed by the domain:devx execution PM seat (#6023), session session_01Pk26oZ12t5N1hwGW1m1MgC, on behalf of the #13785 dev, which surfaced this while landing PR #13915 and ⛔ deliberately did not take it. ⛔ Filed unassigned and ungradeddomain:*, priority and type are triage's field.

          ⚠️Routed here rather than taken as a rider because it changes the entry-point shape of an instrument that sits under the #12981 maintainer ruling of 2026-08-29 (verbatim 「同意」). ⛔ A PM seat does not re-shape a ruling's instrument inside an unrelated fix.

          The gap

          scripts/measure-durability-swallow-family.mjs declares four control families, all asserted by --self-test:

          familywhat it pins
          POSITIVE_CONTROLSknown members that must be found at their declared tier
          NEGATIVE_CONTROLSnon-members that must yield nothing
          REGRESSION_CONTROLSthe two prior resolution defects in this same resolver
          RESOLUTION_CONTROLSnew in PR #13915 — six sites pinning the scope-aware resolution

          Nothing runs any of them. Measured on origin/main: zero references to measure-durability-swallow-family anywhere in package.json or .github/**. ⭐ Counter-checked against a control that must return non-zero — measure-stall-guard-headroom returns 2 hits (package.json:150 plus a lint.yml note) — so the zero is a reading, ⛔ not a broken query.

          ⇒ The controls are green only when a human or an agent runs them by hand.

          ⭐ Why it matters, in the dev's own words

          the same resolver has now been repaired three times#13459, PR #13915, and the sibling's #13474 — and each time the previous fix had no gate holding it.

          The census's numbers also feed #12981's repair worklist, so a wrong denominator propagates into that programme with nobody watching. That is a live consumer, ⛔ not a speculative surface.

          ⛔ Why the obvious fix is refuted — by the file's own record, not by opinion

          Wiring the whole--self-test as a check:* would make CI red when the repair programme succeeds. POSITIVE_CONTROLS are tier-1 dark members of the #12981 worklist — precisely what the programme exists to remove. The file records this already happening:

          This control used to name bootstrap-system-capabilities.ts … and #12981 batch 2 repaired it, which turned this self-test red for doing exactly what the ruling asked. ANY tier-1 DARK member of the worklist is a control the repair programme is designed to destroy, so repointing at another one only moves the breakage to the batch that repairs THAT file.

          ⇒ ⛔ A gate that reddens on success is not a gate. The current dark control was chosen for stability (batch 1 judged its site out of the programme on the merits), which is a workaround for this exact hazard, not a solution to it.

          The three options, as the dev framed them

          • A — wire the full --self-test as a check:*. Two lines, and the precedent is real and sanctioned: check:stall-guard-headroom runs measure-stall-guard-headroom.mjs --self-test from lint.yml. ⛔ Cost: the hazard above, promoted from a local surprise to a merge blocker.
          • B — split the self-test (the dev's recommendation): wire RESOLUTION + NEGATIVE + REGRESSION, none of which the repair programme is designed to destroy; leave POSITIVE_CONTROLS to manual runs. Cost: a new flag, and it splits an instrument whose single-entry-point shape the ruling sanctioned.
          • C — leave unwired, as today. Zero risk to the repair programme. ⛔ Cost: it is what produced this card.

          This seat's reading, offered as evidence and ⛔ not as a grading: the instability the dev names is specific to POSITIVE_CONTROLS, and the other three families are exactly the ones the programme cannot destroy — which is an argument for B on the merits. ⛔ Not a recommendation: whether an instrument that prints "a MEASUREMENT, not a gate" on every run should acquire a CI entry point at all is the ruling's question.

          ⚠️ What this card is NOT

          • Not the handover step. The file reserves the ruling's LAST step for adding tryInsert / tryUpdate to the real gate's DURABILITY_CRITICAL_CALLEES with zero reds, gated on outstanding == 0. This card is about the census's own controls and ⛔ must not be folded into that step or used to bring it forward.
          • ⛔ Not a claim that the census is wrong today. PR Resolve the swallow census's same-file hop by scope, not file order #13915's ablation exercised all four families by hand and they behaved as declared.
          • ⛔ Not an argument for adding an entry to durability-degradation.baseline.json, nor for widening the gate vocabulary — both explicitly refused by the ruling.
          • Not established that a split (option B) can be built without duplicating the self-test's reporting; nobody has tried it.

          Re-check

          # the absence (must be empty), then the control that proves the query works (must not be):
          git grep -n measure-durability-swallow-family origin/main -- package.json .github
          git grep -n measure-stall-guard-headroom origin/main -- package.json .github
          node scripts/measure-durability-swallow-family.mjs --self-test
          

          Dedup declaration

          ⚠️ Title-only scan of the repo's open issues for the census / wiring / check:* wording; nothing matching. ⛔ Bodies not searched, and search_issues is unavailable on this channel (REST /search/issues is 403 here). ⇒ ⛔ Not a claim that no duplicate exists. Nearest known neighbours, ⛔ none of them this: #12981 (the programme and its ruling), #13459 / #13474 / #13785 (three repairs of the resolver this card wants held), #13246 (cited in lint.yml beside the precedent).

          Refs


          Generated by Claude Code

          Metadata

          Metadata

          Assignees

          Type

          Projects

          No projects

            Milestone

            No milestone

            Relationships

            None yet

            Development

            No branches or pull requests

            Issue actions

            , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
            Skip to content

            The #12981 swallow census has controls that nothing ever runs — wire the families the repair programme cannot destroy, or leave the instrument a measurement? #13919

            Description

            @claude

            Filed by the domain:devx execution PM seat (#6023), session session_01Pk26oZ12t5N1hwGW1m1MgC, on behalf of the #13785 dev, which surfaced this while landing PR #13915 and ⛔ deliberately did not take it. ⛔ Filed unassigned and ungradeddomain:*, priority and type are triage's field.

            ⚠️Routed here rather than taken as a rider because it changes the entry-point shape of an instrument that sits under the #12981 maintainer ruling of 2026-08-29 (verbatim 「同意」). ⛔ A PM seat does not re-shape a ruling's instrument inside an unrelated fix.

            The gap

            scripts/measure-durability-swallow-family.mjs declares four control families, all asserted by --self-test:

            familywhat it pins
            POSITIVE_CONTROLSknown members that must be found at their declared tier
            NEGATIVE_CONTROLSnon-members that must yield nothing
            REGRESSION_CONTROLSthe two prior resolution defects in this same resolver
            RESOLUTION_CONTROLSnew in PR #13915 — six sites pinning the scope-aware resolution

            Nothing runs any of them. Measured on origin/main: zero references to measure-durability-swallow-family anywhere in package.json or .github/**. ⭐ Counter-checked against a control that must return non-zero — measure-stall-guard-headroom returns 2 hits (package.json:150 plus a lint.yml note) — so the zero is a reading, ⛔ not a broken query.

            ⇒ The controls are green only when a human or an agent runs them by hand.

            ⭐ Why it matters, in the dev's own words

            the same resolver has now been repaired three times#13459, PR #13915, and the sibling's #13474 — and each time the previous fix had no gate holding it.

            The census's numbers also feed #12981's repair worklist, so a wrong denominator propagates into that programme with nobody watching. That is a live consumer, ⛔ not a speculative surface.

            ⛔ Why the obvious fix is refuted — by the file's own record, not by opinion

            Wiring the whole--self-test as a check:* would make CI red when the repair programme succeeds. POSITIVE_CONTROLS are tier-1 dark members of the #12981 worklist — precisely what the programme exists to remove. The file records this already happening:

            This control used to name bootstrap-system-capabilities.ts … and #12981 batch 2 repaired it, which turned this self-test red for doing exactly what the ruling asked. ANY tier-1 DARK member of the worklist is a control the repair programme is designed to destroy, so repointing at another one only moves the breakage to the batch that repairs THAT file.

            ⇒ ⛔ A gate that reddens on success is not a gate. The current dark control was chosen for stability (batch 1 judged its site out of the programme on the merits), which is a workaround for this exact hazard, not a solution to it.

            The three options, as the dev framed them

            • A — wire the full --self-test as a check:*. Two lines, and the precedent is real and sanctioned: check:stall-guard-headroom runs measure-stall-guard-headroom.mjs --self-test from lint.yml. ⛔ Cost: the hazard above, promoted from a local surprise to a merge blocker.
            • B — split the self-test (the dev's recommendation): wire RESOLUTION + NEGATIVE + REGRESSION, none of which the repair programme is designed to destroy; leave POSITIVE_CONTROLS to manual runs. Cost: a new flag, and it splits an instrument whose single-entry-point shape the ruling sanctioned.
            • C — leave unwired, as today. Zero risk to the repair programme. ⛔ Cost: it is what produced this card.

            This seat's reading, offered as evidence and ⛔ not as a grading: the instability the dev names is specific to POSITIVE_CONTROLS, and the other three families are exactly the ones the programme cannot destroy — which is an argument for B on the merits. ⛔ Not a recommendation: whether an instrument that prints "a MEASUREMENT, not a gate" on every run should acquire a CI entry point at all is the ruling's question.

            ⚠️ What this card is NOT

            • Not the handover step. The file reserves the ruling's LAST step for adding tryInsert / tryUpdate to the real gate's DURABILITY_CRITICAL_CALLEES with zero reds, gated on outstanding == 0. This card is about the census's own controls and ⛔ must not be folded into that step or used to bring it forward.
            • ⛔ Not a claim that the census is wrong today. PR Resolve the swallow census's same-file hop by scope, not file order #13915's ablation exercised all four families by hand and they behaved as declared.
            • ⛔ Not an argument for adding an entry to durability-degradation.baseline.json, nor for widening the gate vocabulary — both explicitly refused by the ruling.
            • Not established that a split (option B) can be built without duplicating the self-test's reporting; nobody has tried it.

            Re-check

            # the absence (must be empty), then the control that proves the query works (must not be):
            git grep -n measure-durability-swallow-family origin/main -- package.json .github
            git grep -n measure-stall-guard-headroom origin/main -- package.json .github
            node scripts/measure-durability-swallow-family.mjs --self-test
            

            Dedup declaration

            ⚠️ Title-only scan of the repo's open issues for the census / wiring / check:* wording; nothing matching. ⛔ Bodies not searched, and search_issues is unavailable on this channel (REST /search/issues is 403 here). ⇒ ⛔ Not a claim that no duplicate exists. Nearest known neighbours, ⛔ none of them this: #12981 (the programme and its ruling), #13459 / #13474 / #13785 (three repairs of the resolver this card wants held), #13246 (cited in lint.yml beside the precedent).

            Refs


            Generated by Claude Code

            Metadata

            Metadata

            Assignees

            Type

            Projects

            No projects

              Milestone

              No milestone

              Relationships

              None yet

              Development

              No branches or pull requests

              Issue actions

              , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
              Skip to content

              The #12981 swallow census has controls that nothing ever runs — wire the families the repair programme cannot destroy, or leave the instrument a measurement? #13919

              Description

              @claude

              Filed by the domain:devx execution PM seat (#6023), session session_01Pk26oZ12t5N1hwGW1m1MgC, on behalf of the #13785 dev, which surfaced this while landing PR #13915 and ⛔ deliberately did not take it. ⛔ Filed unassigned and ungradeddomain:*, priority and type are triage's field.

              ⚠️Routed here rather than taken as a rider because it changes the entry-point shape of an instrument that sits under the #12981 maintainer ruling of 2026-08-29 (verbatim 「同意」). ⛔ A PM seat does not re-shape a ruling's instrument inside an unrelated fix.

              The gap

              scripts/measure-durability-swallow-family.mjs declares four control families, all asserted by --self-test:

              familywhat it pins
              POSITIVE_CONTROLSknown members that must be found at their declared tier
              NEGATIVE_CONTROLSnon-members that must yield nothing
              REGRESSION_CONTROLSthe two prior resolution defects in this same resolver
              RESOLUTION_CONTROLSnew in PR #13915 — six sites pinning the scope-aware resolution

              Nothing runs any of them. Measured on origin/main: zero references to measure-durability-swallow-family anywhere in package.json or .github/**. ⭐ Counter-checked against a control that must return non-zero — measure-stall-guard-headroom returns 2 hits (package.json:150 plus a lint.yml note) — so the zero is a reading, ⛔ not a broken query.

              ⇒ The controls are green only when a human or an agent runs them by hand.

              ⭐ Why it matters, in the dev's own words

              the same resolver has now been repaired three times#13459, PR #13915, and the sibling's #13474 — and each time the previous fix had no gate holding it.

              The census's numbers also feed #12981's repair worklist, so a wrong denominator propagates into that programme with nobody watching. That is a live consumer, ⛔ not a speculative surface.

              ⛔ Why the obvious fix is refuted — by the file's own record, not by opinion

              Wiring the whole--self-test as a check:* would make CI red when the repair programme succeeds. POSITIVE_CONTROLS are tier-1 dark members of the #12981 worklist — precisely what the programme exists to remove. The file records this already happening:

              This control used to name bootstrap-system-capabilities.ts … and #12981 batch 2 repaired it, which turned this self-test red for doing exactly what the ruling asked. ANY tier-1 DARK member of the worklist is a control the repair programme is designed to destroy, so repointing at another one only moves the breakage to the batch that repairs THAT file.

              ⇒ ⛔ A gate that reddens on success is not a gate. The current dark control was chosen for stability (batch 1 judged its site out of the programme on the merits), which is a workaround for this exact hazard, not a solution to it.

              The three options, as the dev framed them

              • A — wire the full --self-test as a check:*. Two lines, and the precedent is real and sanctioned: check:stall-guard-headroom runs measure-stall-guard-headroom.mjs --self-test from lint.yml. ⛔ Cost: the hazard above, promoted from a local surprise to a merge blocker.
              • B — split the self-test (the dev's recommendation): wire RESOLUTION + NEGATIVE + REGRESSION, none of which the repair programme is designed to destroy; leave POSITIVE_CONTROLS to manual runs. Cost: a new flag, and it splits an instrument whose single-entry-point shape the ruling sanctioned.
              • C — leave unwired, as today. Zero risk to the repair programme. ⛔ Cost: it is what produced this card.

              This seat's reading, offered as evidence and ⛔ not as a grading: the instability the dev names is specific to POSITIVE_CONTROLS, and the other three families are exactly the ones the programme cannot destroy — which is an argument for B on the merits. ⛔ Not a recommendation: whether an instrument that prints "a MEASUREMENT, not a gate" on every run should acquire a CI entry point at all is the ruling's question.

              ⚠️ What this card is NOT

              • Not the handover step. The file reserves the ruling's LAST step for adding tryInsert / tryUpdate to the real gate's DURABILITY_CRITICAL_CALLEES with zero reds, gated on outstanding == 0. This card is about the census's own controls and ⛔ must not be folded into that step or used to bring it forward.
              • ⛔ Not a claim that the census is wrong today. PR Resolve the swallow census's same-file hop by scope, not file order #13915's ablation exercised all four families by hand and they behaved as declared.
              • ⛔ Not an argument for adding an entry to durability-degradation.baseline.json, nor for widening the gate vocabulary — both explicitly refused by the ruling.
              • Not established that a split (option B) can be built without duplicating the self-test's reporting; nobody has tried it.

              Re-check

              # the absence (must be empty), then the control that proves the query works (must not be):
              git grep -n measure-durability-swallow-family origin/main -- package.json .github
              git grep -n measure-stall-guard-headroom origin/main -- package.json .github
              node scripts/measure-durability-swallow-family.mjs --self-test
              

              Dedup declaration

              ⚠️ Title-only scan of the repo's open issues for the census / wiring / check:* wording; nothing matching. ⛔ Bodies not searched, and search_issues is unavailable on this channel (REST /search/issues is 403 here). ⇒ ⛔ Not a claim that no duplicate exists. Nearest known neighbours, ⛔ none of them this: #12981 (the programme and its ruling), #13459 / #13474 / #13785 (three repairs of the resolver this card wants held), #13246 (cited in lint.yml beside the precedent).

              Refs


              Generated by Claude Code

              Metadata

              Metadata

              Assignees

              Type

              Projects

              No projects

                Milestone

                No milestone

                Relationships

                None yet

                Development

                No branches or pull requests

                Issue actions

                , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
                Skip to content

                The #12981 swallow census has controls that nothing ever runs — wire the families the repair programme cannot destroy, or leave the instrument a measurement? #13919

                Description

                @claude

                Filed by the domain:devx execution PM seat (#6023), session session_01Pk26oZ12t5N1hwGW1m1MgC, on behalf of the #13785 dev, which surfaced this while landing PR #13915 and ⛔ deliberately did not take it. ⛔ Filed unassigned and ungradeddomain:*, priority and type are triage's field.

                ⚠️Routed here rather than taken as a rider because it changes the entry-point shape of an instrument that sits under the #12981 maintainer ruling of 2026-08-29 (verbatim 「同意」). ⛔ A PM seat does not re-shape a ruling's instrument inside an unrelated fix.

                The gap

                scripts/measure-durability-swallow-family.mjs declares four control families, all asserted by --self-test:

                familywhat it pins
                POSITIVE_CONTROLSknown members that must be found at their declared tier
                NEGATIVE_CONTROLSnon-members that must yield nothing
                REGRESSION_CONTROLSthe two prior resolution defects in this same resolver
                RESOLUTION_CONTROLSnew in PR #13915 — six sites pinning the scope-aware resolution

                Nothing runs any of them. Measured on origin/main: zero references to measure-durability-swallow-family anywhere in package.json or .github/**. ⭐ Counter-checked against a control that must return non-zero — measure-stall-guard-headroom returns 2 hits (package.json:150 plus a lint.yml note) — so the zero is a reading, ⛔ not a broken query.

                ⇒ The controls are green only when a human or an agent runs them by hand.

                ⭐ Why it matters, in the dev's own words

                the same resolver has now been repaired three times#13459, PR #13915, and the sibling's #13474 — and each time the previous fix had no gate holding it.

                The census's numbers also feed #12981's repair worklist, so a wrong denominator propagates into that programme with nobody watching. That is a live consumer, ⛔ not a speculative surface.

                ⛔ Why the obvious fix is refuted — by the file's own record, not by opinion

                Wiring the whole--self-test as a check:* would make CI red when the repair programme succeeds. POSITIVE_CONTROLS are tier-1 dark members of the #12981 worklist — precisely what the programme exists to remove. The file records this already happening:

                This control used to name bootstrap-system-capabilities.ts … and #12981 batch 2 repaired it, which turned this self-test red for doing exactly what the ruling asked. ANY tier-1 DARK member of the worklist is a control the repair programme is designed to destroy, so repointing at another one only moves the breakage to the batch that repairs THAT file.

                ⇒ ⛔ A gate that reddens on success is not a gate. The current dark control was chosen for stability (batch 1 judged its site out of the programme on the merits), which is a workaround for this exact hazard, not a solution to it.

                The three options, as the dev framed them

                • A — wire the full --self-test as a check:*. Two lines, and the precedent is real and sanctioned: check:stall-guard-headroom runs measure-stall-guard-headroom.mjs --self-test from lint.yml. ⛔ Cost: the hazard above, promoted from a local surprise to a merge blocker.
                • B — split the self-test (the dev's recommendation): wire RESOLUTION + NEGATIVE + REGRESSION, none of which the repair programme is designed to destroy; leave POSITIVE_CONTROLS to manual runs. Cost: a new flag, and it splits an instrument whose single-entry-point shape the ruling sanctioned.
                • C — leave unwired, as today. Zero risk to the repair programme. ⛔ Cost: it is what produced this card.

                This seat's reading, offered as evidence and ⛔ not as a grading: the instability the dev names is specific to POSITIVE_CONTROLS, and the other three families are exactly the ones the programme cannot destroy — which is an argument for B on the merits. ⛔ Not a recommendation: whether an instrument that prints "a MEASUREMENT, not a gate" on every run should acquire a CI entry point at all is the ruling's question.

                ⚠️ What this card is NOT

                • Not the handover step. The file reserves the ruling's LAST step for adding tryInsert / tryUpdate to the real gate's DURABILITY_CRITICAL_CALLEES with zero reds, gated on outstanding == 0. This card is about the census's own controls and ⛔ must not be folded into that step or used to bring it forward.
                • ⛔ Not a claim that the census is wrong today. PR Resolve the swallow census's same-file hop by scope, not file order #13915's ablation exercised all four families by hand and they behaved as declared.
                • ⛔ Not an argument for adding an entry to durability-degradation.baseline.json, nor for widening the gate vocabulary — both explicitly refused by the ruling.
                • Not established that a split (option B) can be built without duplicating the self-test's reporting; nobody has tried it.

                Re-check

                # the absence (must be empty), then the control that proves the query works (must not be):
                git grep -n measure-durability-swallow-family origin/main -- package.json .github
                git grep -n measure-stall-guard-headroom origin/main -- package.json .github
                node scripts/measure-durability-swallow-family.mjs --self-test
                

                Dedup declaration

                ⚠️ Title-only scan of the repo's open issues for the census / wiring / check:* wording; nothing matching. ⛔ Bodies not searched, and search_issues is unavailable on this channel (REST /search/issues is 403 here). ⇒ ⛔ Not a claim that no duplicate exists. Nearest known neighbours, ⛔ none of them this: #12981 (the programme and its ruling), #13459 / #13474 / #13785 (three repairs of the resolver this card wants held), #13246 (cited in lint.yml beside the precedent).

                Refs


                Generated by Claude Code

                Metadata

                Metadata

                Assignees

                Type

                Projects

                No projects

                  Milestone

                  No milestone

                  Relationships

                  None yet

                  Development

                  No branches or pull requests

                  Issue actions