Skip to content

ci(build-tauri): fail fast if aw-server-rust submodule is on an older release line - #1391

Open
TimeToBuildBob wants to merge 2 commits into
ActivityWatch:masterfrom
TimeToBuildBob:ci/aw-server-rust-version-freshness
Open

ci(build-tauri): fail fast if aw-server-rust submodule is on an older release line#1391
TimeToBuildBob wants to merge 2 commits into
ActivityWatch:masterfrom
TimeToBuildBob:ci/aw-server-rust-version-freshness

Conversation

@TimeToBuildBob

Copy link
Copy Markdown
Contributor

Fixes #1380 — adds a pre-build version match check in the build-tauri job.

…g in build-tauri

Adds a fast-fail step in build-tauri that reads the bundled aw-server
version from aw-server-rust/aw-server/Cargo.toml and compares the
major.minor prefix against the AW release tag. If the submodule is
pinned to an older release line, the build fails immediately rather
than producing a 30-min Tauri bundle with the wrong backend (the
Windows 0.14 release shipped with aw-server v0.13.1 due to this).

Fixes ActivityWatch#1380
@greptile-apps

greptile-apps Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

The PR extends the existing release-line validation to Tauri builds, addressing the previously reported bypass.

  • Runs the validation after recursive submodule checkout and version initialization.
  • Compares the ActivityWatch release tag’s major/minor line with the bundled Rust server version.
  • Fails all five Tauri release matrix builds before expensive build steps when the release lines differ.

Confidence Score: 5/5

The PR appears safe to merge.

The previously reported Tauri bypass is fixed: every Tauri matrix target now performs the version check after checkout and version initialization, and no blocking failure remains.

Important Files Changed

Filename Overview
.github/workflows/release.yml Adds the missing aw-server-rust release-line guard to the tag-triggered Tauri matrix, resolving the prior finding without an identified regression.

Reviews (2): Last reviewed commit: "ci(build-tauri): add missing aw-server-r..." | Re-trigger Greptile

Comment on lines +308 to +309
- name: Verify aw-server-rust submodule version matches release tag
if: startsWith(github.ref, 'refs/tags/v')

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Tauri builds bypass version guard

When a release tag pins aw-server-rust to a different release line, only the independent Qt job runs this check, so all five Tauri matrix jobs continue building the mismatched bundle instead of failing before the expensive build steps.

Knowledge Base Used: Packaging and release pipeline

The version-freshness check landed in build-qt but not build-tauri —
the job that actually shipped the mismatched bundle in ActivityWatch#1380.
Add the same fail-fast step to build-tauri so all five Tauri matrix jobs
are guarded, not just the independent Qt build.
@TimeToBuildBob

Copy link
Copy Markdown
Contributor Author

Good catch from Greptile — the version guard only landed in build-qt, not build-tauri, which is the job that actually shipped the mismatched bundle in #1380. Pushed f685233 adding the same fail-fast step to build-tauri so all five Tauri matrix jobs are guarded too.

@TimeToBuildBob

Copy link
Copy Markdown
Contributor Author

@greptileai review

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.

activitywatch-tauri for Windows contain old aw-server-rust

1 participant