Skip to content

Windows static and e2e gap oracles: remaining failures by class (non-blocking on #58) #72

Open

Description

@KyleAMathews

The Windows static (windows-gap-oracles) and e2e (windows-gap-end-to-end) jobs are non-blocking on #58, which makes Windows blocking for everything else. These two jobs still fail on windows-latest. This issue tracks the remaining failures by class, from run 43522329610 (head 70b118d) and the later runs.

Failures by class (verdict names as the oracles print them):

  • Output namespace: 82 oracle-gaps.report-static violations, law "output namespace" (checkpoint static). Suspected: a path separator or case in an output directory name.
  • Baseline lead: 18 oracle-gaps.report violations, law "baseline lead" (checkpoint cli). Suspected: a line written before the baseline's note, or CRLF on Windows stdout.
  • Streaming: 4 violations, law "streaming" (checkpoint cli).
  • Greppable stream: 3 violations, law "greppable stream" (checkpoint cli). Possibly a P10 issue on Windows (prefixed lines and the done line).
  • Incremental equals cold: 1 violation (checkpoint incremental): after a test edit, the daemon's check exited 0 and the cold run exited 3.
  • 2 gap lines for 0 gaps: the stdout gap-line count differs from the model's gap count.

Also tracked here: the Windows e2e shards run 2 to 19 minutes and the static shards 9 to 13 minutes, over the 9-minute per-job budget. Re-shard only after the failures are fixed.

The win32 unknown-argument case caps its argument at 30,000 characters (Windows command-line limit), a recorded narrowing.

Activity

  1. KyleAMathews commented on Nov 14, 2026

    @KyleAMathews
    ContributorAuthor

    Windows job timings (run 43525797122, head ebc39e6), minutes:

    • Windows gap report end-to-end oracle (fixed seed, 1/6) 18min
    • Windows gap report end-to-end oracle (fixed seed, 2/6) 16min
    • Windows gap report end-to-end oracle (fixed seed, 3/6) 5min
    • Windows gap report end-to-end oracle (fixed seed, 4/6) 11min
    • Windows gap report end-to-end oracle (fixed seed, 5/6) 2min
    • Windows gap report end-to-end oracle (fixed seed, 6/6) 14min
    • Windows gap report static oracle (1/6) 10min
    • Windows gap report static oracle (2/6) 10min
    • Windows gap report static oracle (3/6) 11min
    • Windows gap report static oracle (4/6) 8min
    • Windows gap report static oracle (5/6) 7min
    • Windows gap report static oracle (6/6) 7min

    Budget per job under 9 minutes (P12). Re-shard after the failures are fixed.

  2. KyleAMathews commented on Nov 14, 2026

    @KyleAMathews
    ContributorAuthor

    Follow-ups from the round-2 review of #58 (recorded here, not fixed on #58):

    • JavaScript realpathSync sweep: the gap CLI still calls the JavaScript realpathSync where the native variant is required on Windows (it keeps an 8.3 short name): check.mjs (around lines 517, 1773, 2224) and analysis.mjs (around line 106). Each should use realPathOf (paths.mjs), the same rule as the CLI's package root.
    • replaceAll divergence in the model: the gap-report model and the e2e driver name a path in one spelling in some places and both spellings in others (namedScratch now names both). The model should apply the same rule everywhere, so the expected report line and the observed one are built the same way.
  3. KyleAMathews commented on Nov 14, 2026

    @KyleAMathews
    ContributorAuthor

    Follow-ups from the last check of #58 (recorded here, not fixed on #58):

    • L1 (classify reader): the classify oracle's cmd reader rejects every && in a line, even inside quotes, so the set "NAME=value" && prefix branch is never reached by a line the oracle judges. The reader should accept && inside double quotes and judge a set prefix the way the printer writes it, and a generated case should reach that branch.
    • L6 (Rerun across shells): the Rerun pairs are compared within one shell only. The witness should check that the PowerShell and cmd Rerun lines select the same failing unit (the same decoded filter, the same FAIL line in each shell's output).
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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions