Skip to content

RFC: Windows CI for gstack — phased rollout (see PR #1122) #1123

@scarson

Description

@scarson

RFC: Windows CI for gstack — phased rollout

TL;DR

gstack ships Windows bugs that no CI job ever sees, because no workflow runs on Windows. Five instances of this pattern have been filed in the last month (one merged in #1024, four open from me in the last 24 hours: #1118, #1119, #1120, #1121). This RFC proposes a phased rollout, starting with a cheap smoke CI that would have surfaced all five at PR time.

Where to discuss

Why an issue in addition to the PR

The PR is the actionable artifact — a workflow file and a regression test that can merge. This issue exists separately as a forum for higher-level pushback on direction ("should this exist at all," "is phased the right shape," "should I volunteer Phase 2 / 3 too"). Inline code review on the PR is for specific YAML / test / doc details; discussion on shape belongs here. Feel free to redirect everything to the PR if that's your preference — I'll mirror any decisions back.

Context

Builds on the root-cause fix in #1024 (v0.18.0.1). Garry's comment on my #1013 captured the symptom:

"you caught that the bug had been shipping silently since v0.15.12 (which explained why Windows users were running a stale v0.15.11-era server bundle). That was the insight that motivated adding the root-cause fix — the || true in the package.json build command that let the build step fail silently in CI."

That fix made CI failures loud. This RFC makes the right code paths actually run.

The one open question

Gate or continue-on-error for the first 2 weeks? Default proposed: continue-on-error: true initially, flip to gating after a clean-signal review. Your context on gstack's flake-tolerance norms beats mine. See the RFC for reasoning and alternatives.

Outcome shape

If directionally OK: I'll mark #1122 ready for review (not draft) once #1118 / #1119 / #1121 merge so the test files it invokes are on main. If shape is wrong, happy to close and iterate on a different proposal before filing a second PR.

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions