[ci] add PR-time test workflow (cargo build + cargo test on push/PR) #52

Open
opened 2026-05-06 20:22:56 +00:00 by mik-tf · 0 comments
Owner

Follow-up from PR #51 (release pipeline).

Today hero_collab has no PR-time CI — only the new tag-driven release workflow (build-linux.yaml). Other Hero repos (hero_agent, hero_matrixchat, hero_proc) have a separate build.yaml / ci.yml that runs on every push to a feature branch and on every PR, with cargo build --workspace --release + cargo test --workspace.

Scope:

  • Add .forgejo/workflows/build.yaml mirroring hero_agent's build.yaml shape.
  • Run cargo fmt --check, cargo clippy --workspace --all-targets -D warnings, cargo build --workspace --release, cargo test --workspace on push to non-main and on PR.
  • Decide whether to keep hero_collab_app in --workspace for the test job or scope it out: it currently fails its host-linux compile against the latest hero_archipelagos development (use_focus_poll rename + IslandContext field drift). Either fix the archipelago drift first (preferred) or scope the test job to -p hero_collab_server -p hero_collab_ui -p hero_collab to match the release workflow.

Why deferred: session 67 was scoped to closing Bucket C item 3 of home#212 (--download rollout). The release pipeline alone is the home#212 deliverable; PR-time test CI is independent infrastructure work that benefits from being repeated cleanly across the remaining Bucket C repos in one batch.

Refs: PR #51, home#212

Follow-up from PR #51 (release pipeline). Today `hero_collab` has no PR-time CI — only the new tag-driven release workflow (`build-linux.yaml`). Other Hero repos (`hero_agent`, `hero_matrixchat`, `hero_proc`) have a separate `build.yaml` / `ci.yml` that runs on every push to a feature branch and on every PR, with `cargo build --workspace --release` + `cargo test --workspace`. **Scope:** - Add `.forgejo/workflows/build.yaml` mirroring [hero_agent's build.yaml](https://forge.ourworld.tf/lhumina_code/hero_agent/blob/development/.forgejo/workflows/build.yaml) shape. - Run `cargo fmt --check`, `cargo clippy --workspace --all-targets -D warnings`, `cargo build --workspace --release`, `cargo test --workspace` on push to non-main and on PR. - Decide whether to keep `hero_collab_app` in `--workspace` for the test job or scope it out: it currently fails its host-linux compile against the latest `hero_archipelagos` `development` (`use_focus_poll` rename + `IslandContext` field drift). Either fix the archipelago drift first (preferred) or scope the test job to `-p hero_collab_server -p hero_collab_ui -p hero_collab` to match the release workflow. **Why deferred:** session 67 was scoped to closing Bucket C item 3 of [home#212](https://forge.ourworld.tf/lhumina_code/home/issues/212) (`--download` rollout). The release pipeline alone is the home#212 deliverable; PR-time test CI is independent infrastructure work that benefits from being repeated cleanly across the remaining Bucket C repos in one batch. **Refs:** PR #51, [home#212](https://forge.ourworld.tf/lhumina_code/home/issues/212)
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lhumina_code/hero_collab#52
No description provided.