Skip to content

fix(ci): always ship checksums.txt; unglue update spinner (0.1.15) - #74

Merged
duyetbot merged 1 commit into
mainfrom
fix/claude-launcher-floors-0.1.15
Sep 16, 2026
Merged

duyetbot merged 1 commit into
mainfrom
fix/claude-launcher-floors-0.1.15

Conversation

@duyetbot

Copy link
Copy Markdown
Member

Why

v0.1.15 anyr update warned release has no checksums.txt — skipping verification.
Root cause: release-binaries.yml notes (which uploaded checksums.txt) was skipped when any matrix build failed. Windows gh release upload often flakes with release not found, which skipped checksums for the whole tag.

Also: spinner glued the warning: (stable channel)warning: ...

What

  1. checksums jobif: always() && !cancelled() after build/wasm. Downloads anyr-* from the tag, sha256sum, uploads checksums.txt --clobber. Fails if zero binaries.
  2. Upload retryscripts/gh-release-upload.sh retries 3× on release not found (Windows).
  3. Notes after checksums — bench/notes cannot block checksums; notes continue-on-error.
  4. Beta CItest -s dist/checksums.txt before gh release create.
  5. Spinner — pause + newline before install warnings.

Launcher + update-channel work from #72 is already on main; this branch also contains those commits if GitHub shows a delta.

After merge: workflow_dispatch release-binaries for v0.1.15 so the tag gets checksums.txt.

Checksums is its own job with if: always() so one platform cannot skip
sha256sum. Upload retry is inlined (3x on release not found) so
workflow_dispatch of historical tags like v0.1.15 still works.
Checksums/notes check out github.sha, not the tag. Hard-fail when the
tag has zero binaries. Spinner warnings print once on a new line.
@duyetbot
duyetbot force-pushed the fix/claude-launcher-floors-0.1.15 branch from efafc38 to a183da0 Compare September 16, 2026 11:55
@github-actions

Copy link
Copy Markdown
Contributor

anyr size and startup

Startup is wall time for a cold anyr --version / anyr --help (median of 21 runs). Size is the stripped release binary, or the .wasm for the browser demo.

Size budget: anyr-linux-x86_64 must stay ≤ 4.0 MiB (4194304 bytes) stripped.

Asset Kind Size --version median --help median
anyr-darwin-arm64 native 2.8 MiB 4.48 ms 4.23 ms
anyr-darwin-x86_64 native 3.0 MiB 44.28 ms 41.08 ms
anyr-linux-arm64 native 2.8 MiB 0.84 ms 0.84 ms
anyr-linux-x86_64 native 3.1 MiB 1.04 ms 1.0 ms
anyr-windows-x86_64.exe native 2.6 MiB 9.23 ms 9.26 ms
anyr.wasm wasm 180.1 KiB

Budget check: ok

raw timings
[
  {
    "asset": "anyr-darwin-arm64",
    "kind": "native",
    "path": "/Users/runner/work/cli/cli/anyr-darwin-arm64",
    "bytes": 2949544,
    "size": "2.8 MiB",
    "version": "0.1.15 (built 2026-09-16 11:57:52)",
    "target": "aarch64-apple-darwin",
    "os": "macos-latest",
    "startup_version": {
      "n": 21,
      "min_ms": 4.3,
      "median_ms": 4.48,
      "p95_ms": 5.27,
      "mean_ms": 4.66
    },
    "startup_help": {
      "n": 21,
      "min_ms": 3.7,
      "median_ms": 4.23,
      "p95_ms": 6.31,
      "mean_ms": 4.66
    }
  },
  {
    "asset": "anyr-darwin-x86_64",
    "kind": "native",
    "path": "/Users/runner/work/cli/cli/anyr-darwin-x86_64",
    "bytes": 3159408,
    "size": "3.0 MiB",
    "version": "0.1.15 (built 2026-09-16 11:57:23)",
    "target": "x86_64-apple-darwin",
    "os": "macos-latest",
    "startup_version": {
      "n": 21,
      "min_ms": 34.5,
      "median_ms": 44.28,
      "p95_ms": 58.09,
      "mean_ms": 45.59
    },
    "startup_help": {
      "n": 21,
      "min_ms": 34.39,
      "median_ms": 41.08,
      "p95_ms": 52.04,
      "mean_ms": 44.9
    }
  },
  {
    "asset": "anyr-linux-arm64",
    "kind": "native",
    "path": "/home/runner/work/cli/cli/anyr-linux-arm64",
    "bytes": 2888744,
    "size": "2.8 MiB",
    "version": "0.1.15 (built 2026-09-16 11:56:52)",
    "target": "aarch64-unknown-linux-gnu",
    "os": "ubuntu-24.04-arm",
    "startup_version": {
      "n": 21,
      "min_ms": 0.8,
      "median_ms": 0.84,
      "p95_ms": 1.0,
      "mean_ms": 0.85
    },
    "startup_help": {
      "n": 21,
      "min_ms": 0.78,
      "median_ms": 0.84,
      "p95_ms": 0.9,
      "mean_ms": 0.84
    }
  },
  {
    "asset": "anyr-linux-x86_64",
    "kind": "native",
    "path": "/home/runner/work/cli/cli/anyr-linux-x86_64",
    "bytes": 3253576,
    "size": "3.1 MiB",
    "version": "0.1.15 (built 2026-09-16 11:56:49)",
    "target": "x86_64-unknown-linux-gnu",
    "os": "ubuntu-latest",
    "startup_version": {
      "n": 21,
      "min_ms": 1.01,
      "median_ms": 1.04,
      "p95_ms": 1.09,
      "mean_ms": 1.05
    },
    "startup_help": {
      "n": 21,
      "min_ms": 0.99,
      "median_ms": 1.0,
      "p95_ms": 1.06,
      "mean_ms": 1.01
    }
  },
  {
    "asset": "anyr-windows-x86_64.exe",
    "kind": "native",
    "path": "D:\\a\\cli\\cli\\anyr-windows-x86_64.exe",
    "bytes": 2694656,
    "size": "2.6 MiB",
    "version": "0.1.15 (built 2026-09-16T11:58:21Z)",
    "target": "x86_64-pc-windows-msvc",
    "os": "windows-latest",
    "startup_version": {
      "n": 21,
      "min_ms": 8.9,
      "median_ms": 9.23,
      "p95_ms": 9.8,
      "mean_ms": 9.33
    },
    "startup_help": {
      "n": 21,
      "min_ms": 8.52,
      "median_ms": 9.26,
      "p95_ms": 9.62,
      "mean_ms": 9.18
    }
  },
  {
    "asset": "anyr.wasm",
    "kind": "wasm",
    "path": "/home/runner/work/cli/cli/target/wasm-pkg/anyr_cli_bg.wasm",
    "bytes": 184424,
    "size": "180.1 KiB",
    "version": "wasm",
    "target": "wasm32-unknown-unknown",
    "os": ""
  }
]

@duyetbot
duyetbot merged commit 3038fb7 into main Sep 16, 2026
9 checks passed
@duyetbot
duyetbot deleted the fix/claude-launcher-floors-0.1.15 branch September 16, 2026 11:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants