Skip to content

BAD CODE™: make the JSR preflight bootstrap deterministic and retryable #830

Closed

Description

@flyingrobots

Problem

The release preflight invokes npx -y jsr publish --dry-run. On PR #829 run 30318761064, that command spent more than 23 minutes downloading the JSR release binary and then failed with TypeError: terminated, caused by read ECONNRESET. No package validation ran, but the entire 29-minute preflight job became red and must be repeated.

Evidence

Required outcome

  • Pin the JSR CLI/bootstrap artifact used by release preflight.
  • Cache or install it before the publication proof so the proof does not depend on a long one-off download.
  • Apply a bounded retry policy to transient network/bootstrap failures.
  • Keep real JSR validation failures non-retryable and visible.
  • Add workflow-level evidence that a transient bootstrap reset retries without hiding a deterministic package failure.

Relationship

Related to #826, which removes duplicated test work from release preflight. This issue is independently about deterministic JSR tooling and transient-network recovery.

Activity

  1. added this to the v19.1.0 milestone on Jul 28, 2026
  2. added
    type:debtDebt, rot, or structural risk.
    priority:nextNext in line after active work.
    area:releasePrimary work area: release.
    status:availableOpen and available for prioritization; not blocked or actively in progress.
    on Jul 28, 2026
  3. coderabbitai commented on Jul 28, 2026

    @coderabbitai
    🔗 Related PRs

    #678 - release: require manual registry publication [merged]
    #687 - docs: formalize Continuum release contract [merged]


    📝 Issue Planner

    Check the box below or use the @coderabbitai plan command to generate an implementation plan and prompts that you can use with your favorite coding assistant.

    • Create Plan

    🧪 Issue enrichment is currently in open beta.

    You can configure auto-planning by selecting labels in the issue_enrichment configuration.

    To disable automatic issue enrichment, add the following to your .coderabbit.yaml:

    issue_enrichment:
      auto_enrich:
        enabled: false

    💬 Have feedback or questions? Drop into our discord!

  4. added
    priority:asapImmediate release pressure.
    status:activeSomeone is actively working this issue.
    and removed
    priority:nextNext in line after active work.
    status:availableOpen and available for prioritization; not blocked or actively in progress.
    on Aug 24, 2026
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

    area:releasePrimary work area: release.priority:asapImmediate release pressure.status:activeSomeone is actively working this issue.type:debtDebt, rot, or structural risk.

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions