Skip to content

ci(conformance): scheduled Electron recorder drift lane with its own failure sink (parked) #585

Description

@0monish

Generated by an AI agent (Claude Code) on behalf of @0monish during Wayfinder charting of the Electron compatibility program; rewritten 2026-10-07 by the doctrine-audit repair pass (change log at the end). Planning only — no implementation is authorized by this issue.

Parent

Epic #493 · Map #391 · Unit X01 · Kind: task · Tier: Tier 1 · Maturity target: L2 · Size: S · Milestone: parked

What to build

Pull this when goldens exist for a second family or a pin bump is proposed. It re-runs the recorder at the same pin on each OS (Linux under a virtual display, as Electron's own workflow does; macOS with Electron's persistence and crash-dialog prep). It routes any difference to a named failure sink and never re-records automatically. A difference enters the PR gate only through a reviewed PR that flips cells to unknown or updates goldens, receipts and cells together. Detailed design is deferred.

Spec gate: the first deliverable is a spec from docs/agents/spec-template.md, opened as a PR and stopped for human approval; implementation starts only at Status: approved.

Acceptance criteria

  • A scheduled run with a deliberately altered golden produces a failure in the named sink, and no automatic re-record commit

Negative controls (each names the one mutation that must fail)

  • Configuring the lane with any rerun or retry count above zero fails its routing review contract

External predecessors (outside this tracker)

  • KEL-81 changed-path CI router as present on origin/main 8678c0d (KEL-81 Done); the lane extends that router and no live Linear issue owns a new lane

Ownership and gates

The authoritative agent contract is the latest Agent Brief comment on this issue (triage skill); this body is the planning record.

Out of scope

Corpus-app smoke and the product scoring run (X02-T6).

Notes

Parked by the YAGNI test: the drawio-desktop macOS first proof ships without scheduled drift detection. FACT (refuter receipt): Electron reruns its own suite up to three times on every non-ASAN lane. Size the lane expecting upstream-level flake, and never copy the reruns.

Change log (doctrine-audit repair, 2026-10-07)

  • New parked ticket holding the weekly lane split out of X01-T2, plus the 'weekly recorder lane home and failure sink' fog item (rule 2; refuter A4 corrections; no-scheduled-workflow extra findings from both lenses).
  • Sizing note added: reruns on every non-ASAN Electron lane, and the macOS persistence hazard (refuter enableRerun and macOS-hazard extra findings).
  • Removed X06-D7 from blocked_by_keys: Linear owner for repo-writing Electron-compat slices (owner decision: align to nearest Linear issue, else GitHub is the tracker of record) #517 is CLOSED (gh, fetched 2026-10-07) with an adopted resolution; rule 4 forbids a closed decision as a blocker. Its resolution is consumed in linear_owner (GitHub tracker of record; KEL-81 Done so the reference falls back to KEL-127 Todo), and blocked_by_external now names the KEL-81 router as a task-level artifact (cross-checker finding: blocked_by names a closed decision).
  • out_of_scope names X02-T6 as the product scoring run (cross-checker finding: X02-T6 is the flipping ticket).

Activity

  1. added theissue type on Oct 6, 2026
  2. added
    enhancementNew feature or request
    triageNeeds maintainer scope or reproduction review
    compat:tier-1Electron compat Tier 1 (arch 04 §4)
    needs-specNeeds an approved docs/agents/spec-template.md spec before implementation
    milestone:parkedParked by the YAGNI test until a current requirement proves it
    on Oct 6, 2026
  3. 0monish commented on Oct 6, 2026

    @0monish
    MemberAuthor

    This was generated by AI during triage.

    Triage Notes

    What we've established so far:

    • The slice is specified in the issue body (what to build, binary acceptance criteria, negative controls, ownership and gates).
    • Milestone parked; tracker of record as stated in the body.

    What we still need from you (@0monish):

    • Pull this ticket into a milestone: it is milestone:parked, so it stays triage and is not agent-grabbable until the first-proof and next milestones no longer need it (YAGNI test).

    Once those resolve, this ticket moves to ready-for-agent with an Agent Brief.

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

    compat:tier-1Electron compat Tier 1 (arch 04 §4)electron-compatElectron compatibility program areaenhancementNew feature or requestmilestone:parkedParked by the YAGNI test until a current requirement proves itneeds-specNeeds an approved docs/agents/spec-template.md spec before implementationtriageNeeds maintainer scope or reproduction review

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions