Skip to content

autopilot's INHERITED dogfood GO writes no receipt that check_publish_preflight.sh R5 accepts — v0.69.0 stopped at the publish preflight 43 min after tagging #3708

Closed as not planned

Description

@noahgift

Measured 2026-09-21 (v0.69.0 train)

autopilot STATUS: 13:56:49Z DOGFOOD GO at 225b2a9ab (INHERITED from parent 5f9bd9344 preflight GO; bump diff = version surface only; receipt …/rel-069-state/dogfood-inherited.receipt). Then tag, clean-room (re-dispatched once), assets 16/16, B2-GPU all green, and:

FAIL  R5 no dogfood receipt under /mnt/nvme-raid0/agent-wt/rel-069-state/wt/.dogfood (run scripts/dogfood.sh on this commit)
REFUSE check_publish_preflight.sh: publishing is not allowed from this tree (see the FAIL rows).
14:40:10Z STOP publish preflight refused rc=1

The two halves of the train disagree. The inheritance shortcut saves ~35 min at T-1, then R5 at T-4 demands the real receipt in the tag's worktree. Recovery was to run the real dogfood on the release commit (+~35 min, after the tag was already public). The cheapest path is also the wrong order: the dogfood the shortcut skipped ran anyway, just later.

done_when

  • ONE rule, enforced at both ends. EITHER autopilot never inherits and runs the real dogfood at T-1 in $AP/wt (pre-tag, where a NO-GO costs no public tag), OR R5 accepts the inherited receipt under exactly the conditions autopilot checked (parent GO receipt present, bump diff = version surface only, parent is the release commit's first parent), and both read the same file. Pick one; don't keep both.
  • a case table in scripts/release/: inherited receipt + R5 → PASS iff the conditions hold; missing parent receipt → REFUSE at T-1, never at T-4
  • measured on the 0.70 train: no STOP between TAGGED and CASCADE for this reason

Also found the same day (aprender-f0): the close step requires the milestone to have 0 open items, but nothing closes the release EPIC, so close dies on its own epic. 0.68.2's was closed by hand. Same fix owner.

Activity

  1. added this to the 0.70.0 milestone on Sep 21, 2026
  2. added
    bugSomething isn't working
    P0Critical priority
    on Sep 21, 2026
  3. noahgift commented on Sep 21, 2026

    @noahgift
    MemberAuthor

    Obligation added (issue author, cop, 2026-09-21): prepare_bump.sh --ship refuses to open the bump PR unless per-host model-ladder receipts for the NEW version are committed on the bump branch: evidence/dogfood/models/<v>/{lambda,gx10}.json, written by scripts/model_ladder.sh with an apr built from the bump tree. 0.68.2 did this by hand (#3498); 0.69.0 missed it, and that made check_model_ladder unmeasurable until after the tag. The script may REQUIRE the receipts without producing them; gx10's is measured over the operator-authorized lambda→gx10 SSH. Case row: missing gx10.json refuses, naming the file; mutant.

  4. noahgift commented on Sep 21, 2026

    @noahgift
    MemberAuthor

    done_when 2 amended (issue author, cop, 2026-09-21), replacing the original, which assumed the inherit option. The option picked is: NEVER inherit.

    • a case table, wired as a scripts/check_*.sh so guard-tree runs it (the check_t2_preflight_verdict.sh pattern), that drives the real scripts/release/autopilot.sh dogfood step with stubs: a parent GO receipt plus a version-only bump diff still runs dogfood.sh (never inherits); a receipt R5 refuses (NO-GO, other commit, other version, absent) STOPs at T-1 before any tag; a GO receipt passes R5 at T-1, and check_publish_preflight.sh R5 at T-4 reads the same receipt file with the same function. Plus the close step: the epic as the milestone's only open item is closed, then the milestone; any other open item refuses both. A mutant for each.

    done_when 1 and the ladder-receipt obligation (comment above) stand. done_when 3 (measured on a real train) is met at 0.69.1, so the PR carries Refs #3708.

  5. added 2 commits that reference this issue on Sep 22, 2026
  6. modified the milestones: 0.70.0, 0.70.1 on Sep 24, 2026
  7. noahgift commented on Sep 24, 2026

    @noahgift
    MemberAuthor

    Milestone 0.70.0 → 0.70.1 (gate triage). 0.70.0 now holds only the operator's release gate: "FULL ontology spec and all aprender binary working" + "0.70 to crates.io" (ONT-001, every [[bin]] build+smoke, the publish cascade), plus P0s and operator-ruled rows. This issue isn't needed for any of those. Evidence: evidence/m070-gate-triage-1835.md. If that's wrong, move it back to 0.70.0 and say which gate it serves.

  8. noahgift commented on Sep 24, 2026

    @noahgift
    MemberAuthor

    Status on the 0.70 line: done_when 1 and 2 landed via #3772 (squash 8c7822f, which batch/0.70.0 contains). autopilot.sh runs the real pre-publish dogfood at T-1 and never inherits it. It judges R5 there with check_publish_preflight.sh --receipt-only and closes the epic before the milestone. scripts/check_release_autopilot_dogfood_close.sh passes 17/17 rows today, and its 2 mutants are killed. What remains is done_when 3: measuring on the 0.70 train that nothing STOPs between TAGGED and CASCADE for this reason. Close after the train.

  9. modified the milestones: 0.70.1, 0.71.0 on Sep 25, 2026
  10. added
    P1High priority
    and removed
    P0Critical priority
    on Oct 14, 2026
  11. noahgift commented on Oct 14, 2026

    @noahgift
    MemberAuthor

    P0 to P1 (2026-10-14 P0 triage): P0 now means it blocks the next release or carries the operator's own words on it; this issue does neither, so it stays on the 0.71.0 milestone at P1.

  12. noahgift commented on Oct 14, 2026

    @noahgift
    MemberAuthor

    Folded into #2876 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

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

    P1High prioritybugSomething isn't workingowner:aprender-a7owner sessionsize:MK̂ 3-4 h

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions