Summary
Recent releases did not publish to crates.io because the Publish Rust crate workflow was cancelled, not because cargo publish failed.
The build job was queued waiting for a runner with label ubuntu-2404-8x-x64 for ~24 hours and then got cancelled by GitHub.
Impact
- crates.io publish did not happen for:
- v1.0.4 (2026-01-26)
- v1.0.3 (2026-01-21)
- v1.0.2 (2026-01-13)
- v1.0.1 (2025-12-30)
Root cause
The workflow file embedded in the v1.0.x tags (coming from release/v1.0) requests a runner label that is not available:
# from tag v1.0.4
.github/workflows/cargo-publish.yml
25: runs-on: ubuntu-2404-8x-x64
As a result, the build job never gets a runner.
Evidence
Runs (all show build cancelled, runner_id=0, label ubuntu-2404-8x-x64)
Example jobs payload (v1.0.4):
{"name":"build","conclusion":"cancelled","labels":["ubuntu-2404-8x-x64"],"runner_id":0,"html_url":"https://github.com/lance-format/lance/actions/runs/21376226393/job/61532881931"}
Log excerpt: job waiting for runner (v1.0.2)
2026-01-13T20:58:43.9150000Z Requested labels: ubuntu-2404-8x-x64
2026-01-13T20:58:43.9150000Z Job defined at: lance-format/lance/.github/workflows/cargo-publish.yml@refs/tags/v1.0.2
2026-01-13T20:58:43.9150000Z Waiting for a runner to pick up this job...
Log excerpt: failure reporter sees build as cancelled and skips issue creation (v1.0.4)
job-results: {
"build": {
"result": "cancelled",
"outputs": {}
}
}
...
No job failures detected, skipping issue creation
Proposed fix
- Update
.github/workflows/cargo-publish.yml on release/v1.0 to use a working runner label (for example warp-ubuntu-latest-x64-8x, which is already used on main/release/v2.0).
- After that, re-run publishing via workflow dispatch from
main (recommended) for the missed tags, e.g. tag=v1.0.4.
Notes
The current Report Workflow Failure action only creates issues for failure results. For this incident, the workflow ended in cancelled, so it did not automatically open an issue.
Parts of this issue were drafted with assistance from Codex (with gpt-5.2) and fully reviewed and edited by me. I take full responsibility for all changes.
Summary
Recent releases did not publish to crates.io because the
Publish Rust crateworkflow was cancelled, not becausecargo publishfailed.The
buildjob was queued waiting for a runner with labelubuntu-2404-8x-x64for ~24 hours and then got cancelled by GitHub.Impact
Root cause
The workflow file embedded in the v1.0.x tags (coming from
release/v1.0) requests a runner label that is not available:As a result, the
buildjob never gets a runner.Evidence
Runs (all show
buildcancelled,runner_id=0, labelubuntu-2404-8x-x64)Example jobs payload (v1.0.4):
{"name":"build","conclusion":"cancelled","labels":["ubuntu-2404-8x-x64"],"runner_id":0,"html_url":"https://github.com/lance-format/lance/actions/runs/21376226393/job/61532881931"}Log excerpt: job waiting for runner (v1.0.2)
Log excerpt: failure reporter sees
buildas cancelled and skips issue creation (v1.0.4)Proposed fix
.github/workflows/cargo-publish.ymlonrelease/v1.0to use a working runner label (for examplewarp-ubuntu-latest-x64-8x, which is already used onmain/release/v2.0).main(recommended) for the missed tags, e.g.tag=v1.0.4.Notes
The current
Report Workflow Failureaction only creates issues forfailureresults. For this incident, the workflow ended incancelled, so it did not automatically open an issue.Parts of this issue were drafted with assistance from Codex (with
gpt-5.2) and fully reviewed and edited by me. I take full responsibility for all changes.