Skip to content

ci: release workflow test gate is dead — continue-on-error forces conclusion=success; flip to outcome + make CI suite honestly green #255

Description

@rahlk

PROBLEM

The release workflow's test gate is dead code and has never fired. .github/workflows/release.yml runs tests with continue-on-error: true (line 44) and gates tag deletion on steps.test.conclusion == 'failure' (line 48) — but under continue-on-error, a failed step's conclusion is forced to success (only outcome records the failure). Verified on real runs: v1.4.0 and v1.4.1 both had failing tests in the Run Tests step, conclusion=success, Delete-tag skipped, release published.

FIX DIRECTION (couples with making CI green — do NOT just flip the field)

  1. steps.test.conclusion -> steps.test.outcome makes the gate real — but flipping it today blocks every future release until the suite is CI-green, which it currently is not (see companion issues: TS golden-fixture collection errors, Java source-code-path crash).
  2. So this lands together with CI test-suite partitioning: env-dependent tests must skip cleanly (pytest markers / fixture-presence gating) so "green in CI" is meaningful, then the gate flips to outcome.
  3. Belongs to the Epic D floor alongside ci: run tests and lint on every PR #197 (PR-time CI) — same suite hygiene, one policy.

DEFINITION OF DONE

  • Gate fires on a deliberately broken test (verified on a scratch tag or workflow_dispatch dry run).
  • Release workflow green on an honest, fully-run suite; skipped-by-gating tests visibly reported.

Refs: #193 (Epic D), #197.

Metadata

Metadata

Assignees

No one assigned

    Labels

    cicontinuous integration goodies

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions