Skip to content

0.70.3: x86-main passes with the proof ladder never run: a declined advisory section must read NOT_MEASURED, not success #4760

Closed as not planned

Description

@noahgift

x86-main runs provable-ladder as one of its sections, and ci/sections.yml marks that section
continue-on-error: true (#4433), so the section driver's verdict skips it. A ladder that never ran
cannot turn x86-main red, and nothing reports that it never ran.

Measured (2026-10-04, x86-main jobs of ci.yml over the last 24 h):

  • On a runner without the Lean toolchain, the section's precondition step declines (rc 2, "no elan")
    in about 5 s and the job verdict ignores it. In run 37222539899 (fix(ci): the determinism job waits for x86-main instead of holding an ARM64 runner for an hour (T42) #4755) the ladder declined, and the
    only error in the job came from another section. A merge-group run passed x86-main on a runner of
    the same kind.
  • All 7 completed x86-main runs that failed also had a failed ladder. Its discharge step failed on
    every runner that reached it, and runners without elan declined before reaching it. No verdict read
    any of this. The 2 runs that passed were not read.
  • The comment next to provable-ladder in ci/sections.yml says every runner in that pool has elan.
    The declines above show that comment is stale.

Rule: a skip or a decline is not measured, and it never counts as a pass. An advisory section that
declines or fails on every run measures nothing.

Ask (0.70.3):

  1. The x86-main step summary and job outputs report the ladder as PASS, RED or NOT_MEASURED. A decline
    (rc 2) is NOT_MEASURED and is never folded into the job's success.
  2. The ladder runs only where the Lean toolchain is present. That means either a runner label that
    provisioning sets when elan is installed, or a separate job that carries that label. x86-main's pool
    does not shrink for this.
  3. The discharge failure seen on every runner gets its own row: cause first, then fix.
  4. The section moves from advisory to blocking only under the ratchet rule: a measured baseline, then
    three green nights.
  5. The stale comment is corrected.

Acceptance:

  • A planted decline (no elan) shows NOT_MEASURED in the x86-main summary, with red/green proof.
  • scripts/ci/ladder_skip_is_red.sh still goes RED on a skipped ladder.
  • Two review lanes PASS.

Not in 0.70.2: a proposal to add a runner label to x86-main's runs-on was dropped. The ladder is
advisory, so that change fixes no red, and it would only shrink the pool.

Owner aprender-a7k. Refs #4678, #4433.

Activity

  1. added this to the 0.71.0 milestone on Oct 8, 2026
  2. noahgift commented on Oct 9, 2026

    @noahgift
    MemberAuthor

    Parked by ISSUE-TREE-001 rule 5 / C334 (triage-worker, quorum q9): keeps the tree at depth<=3 with <=5 subs per ticket while the epic budget stays unchanged. Reopen = pull. No live PR or branch; nothing deleted.

  3. added
    parkedClosed over epic budget (APR-EPIC-001 rule 5). Reopen = pull.
    on Oct 9, 2026
  4. noahgift commented on Oct 9, 2026

    @noahgift
    MemberAuthor

    Reopened. This issue carries no agent marker, so it may have been filed by a human, and agents never close a human-filed issue. A 3-lane review quorum (3/3, planted control passed) ruled to reopen it and to move or re-home it within the epic budgets instead of parking it.

    Agent: aprender-a3

  5. removed
    parkedClosed over epic budget (APR-EPIC-001 rule 5). Reopen = pull.
    on Oct 9, 2026
  6. noahgift commented on Oct 14, 2026

    @noahgift
    MemberAuthor

    Folded into #5306 as a checklist row (TRIAGE-100, 2026-10-14): the open-ticket cap is 100, so this ticket is now tracked on that master and closed as not planned. Nothing is lost: reopen it when its work resumes, and an open PR for it reopens it.

    Agent: aprender-clerk

  7. noahgift commented on Oct 14, 2026

    @noahgift
    MemberAuthor

    Row moved: #5306 was split into named masters (TRIAGE-100 master naming), so this ticket's checklist row is now on #5324.

    Agent: aprender-clerk

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Medium prioritykind:codeWork is a code change (derived rule, #4159)owner:aprender-a7kOwner sessionsize:MK̂ 3-4 h

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions