Skip to content

fix(ci): call publish workflow directly from release workflow#22

Merged
chaliy merged 2 commits intomainfrom
claude/fix-publish-release-ZfGDq
Feb 8, 2026
Merged

fix(ci): call publish workflow directly from release workflow#22
chaliy merged 2 commits intomainfrom
claude/fix-publish-release-ZfGDq

Conversation

@chaliy
Copy link
Copy Markdown
Owner

@chaliy chaliy commented Feb 8, 2026

What

Fix the publish workflow not being triggered after automated releases.

Why

GitHub Actions events created by GITHUB_TOKEN do not trigger other workflows. The release workflow creates a GitHub Release using GITHUB_TOKEN, so the release: published event never fires and publish.yml is never triggered.

This is why v0.2.1 was released on GitHub but never published to crates.io, while v0.1.0 and v0.2.0 (created manually) were published successfully.

How

  • Add workflow_call trigger to publish.yml with a tag_name input parameter
  • Add a publish job to release.yml that calls publish.yml as a reusable workflow after the release is created
  • Use inputs.tag_name || github.event.release.tag_name so publish.yml works from both triggers
  • Pass secrets: inherit so CARGO_REGISTRY_TOKEN is available

The publish workflow still supports direct triggering from manually-created releases via the release: published event.

Risk

  • Low
  • Only changes CI workflow files, no code changes
  • Publish workflow retains backward compatibility with manual releases

Checklist

  • Tests pass (cargo test - 120 tests)
  • Code formatted (cargo fmt --check)
  • No clippy warnings (cargo clippy)
  • Backward compatibility considered (publish.yml still works for manual releases)

https://claude.ai/code/session_01HPY8vSqa2iu9GnNY4w8DdW

GitHub Actions events created by GITHUB_TOKEN do not trigger other
workflows. The release workflow creates a GitHub Release using
GITHUB_TOKEN, so the `release: published` event never fires, and
publish.yml is never triggered.

Fix by having release.yml call publish.yml as a reusable workflow
via workflow_call, bypassing the event chain entirely. The publish
workflow still supports direct triggering from manual releases.

https://claude.ai/code/session_01HPY8vSqa2iu9GnNY4w8DdW
Allow manual re-triggering of the publish workflow from the GitHub
Actions UI. This is needed for re-publishing releases when the
automated chain was broken (e.g., v0.2.1).

https://claude.ai/code/session_01HPY8vSqa2iu9GnNY4w8DdW
@chaliy chaliy merged commit 66e6c35 into main Feb 8, 2026
11 checks passed
@chaliy chaliy deleted the claude/fix-publish-release-ZfGDq branch February 8, 2026 06:08
@chaliy chaliy mentioned this pull request Feb 8, 2026
6 tasks
chaliy added a commit that referenced this pull request Feb 8, 2026
## What
Prepare patch release v0.2.2.

## Why
Maintenance release including dependency updates, model profile
refreshes, and a CI fix.

## How
- Bumped version in `Cargo.toml` to 0.2.2
- Updated `CHANGELOG.md` with v0.2.2 section

### Changelog

#### Highlights
- Updated dependencies and model profiles for routine maintenance
- Fixed CI release workflow to call publish workflow directly

#### What's Changed
* chore: routine maintenance - update deps, models, and specs (#23) by
@chaliy
* fix(ci): call publish workflow directly from release workflow (#22) by
@chaliy

**Full Changelog**:
v0.2.1...v0.2.2

## Risk
- Low
- Standard maintenance release with no API changes

## Checklist
- [x] `cargo fmt --check` passes
- [x] `cargo clippy -- -D warnings` passes
- [x] `cargo test` passes (125 tests)
- [x] `cargo publish --dry-run` succeeds
- [x] CHANGELOG.md updated
- [x] Cargo.toml version bumped

https://claude.ai/code/session_01XGsYuzj6E4H1womTZL6Ygh

Co-authored-by: Claude <noreply@anthropic.com>
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