[ci] Fix hero_lib_rhai integration tests — tests.yaml red on every push #40

Open
opened 2026-04-28 12:21:42 +00:00 by mik-tf · 0 comments
Owner

Symptom

hero_lib_rhai/.forgejo/workflows/tests.yaml has been failing on every push to development for many commits, leaving the repo's overall CI permanently red even when lint and the library code itself are fine.

Why this issue exists separately from home#188

During the home#188 CI sweep, hero_lib_rhai PR #11 addressed the lint half (clippy + fmt — real fixes). The tests half is genuinely separate work — the failing test (crates/virt_rhai/tests/rhai/podman/01_container_operations.rhai) needs a working podman/container runtime that the runner image apparently can't consistently provide.

An earlier draft of PR #11 restricted tests.yaml triggers to workflow_dispatch + v* tag push to dodge the failure. That was rolled back as not honest enough — the tests really should run on every push, and a green badge that doesn't run them misrepresents what's checked.

So tests.yaml stays firing on push/PR (it's still red), and this issue tracks fixing it for real.

Repo-level issue

For day-to-day tracking by anyone working in hero_lib_rhai:
lhumina_code/hero_lib_rhai#12

This cross-repo issue mirrors that for visibility from the home tracker.

What needs to happen

  • Pull the actual log of a recent failed run to see what step in tests.yaml is failing — apt-install, the storage config, containerd startup, or the actual make test step?
  • If make test reaches the podman test and fails: investigate what the runner's container setup needs (storage driver? userns? specific kernel cap?)
  • If apt-install / setup fails earlier: which dep, why?
  • Either fix the test infra so the runner consistently provides a working podman setup, or rework 01_container_operations.rhai to mock the container runtime, or add an explicit PODMAN=available env-gated skip in the Rhai test with comment + link to this issue
  • Audit the other 14 currently-skipped tests — confirm they're skipping for the right reasons (backing service unavailable) vs masking a bug
  • Verify the green CI then sticks across multiple pushes (no flakiness)

Acceptance criteria

  • Fresh push to developmenttests.yaml run completes with status success
  • Fresh PR targeting developmenttests.yaml run completes with status success
  • Number of passing tests reported matches the number of tests with working backing infrastructure (skipped count documented if not zero)
  • hero_lib_rhai #12 closed via the same PR

Signed-off-by: mik-tf


Originally filed as home#189 on 2026-04-26 by mik-tf — moved to hero_demo as part of consolidating issue tracking.

## Symptom `hero_lib_rhai/.forgejo/workflows/tests.yaml` has been failing on every push to `development` for many commits, leaving the repo's overall CI permanently red even when lint and the library code itself are fine. ## Why this issue exists separately from home#188 During the [home#188](https://forge.ourworld.tf/lhumina_code/home/issues/188) CI sweep, [hero_lib_rhai PR #11](https://forge.ourworld.tf/lhumina_code/hero_lib_rhai/pulls/11) addressed the **lint** half (clippy + fmt — real fixes). The **tests** half is genuinely separate work — the failing test (`crates/virt_rhai/tests/rhai/podman/01_container_operations.rhai`) needs a working podman/container runtime that the runner image apparently can't consistently provide. An earlier draft of PR #11 restricted `tests.yaml` triggers to `workflow_dispatch` + `v*` tag push to dodge the failure. That was rolled back as not honest enough — the tests really should run on every push, and a green badge that doesn't run them misrepresents what's checked. So `tests.yaml` stays firing on push/PR (it's still red), and this issue tracks fixing it for real. ## Repo-level issue For day-to-day tracking by anyone working in `hero_lib_rhai`: https://forge.ourworld.tf/lhumina_code/hero_lib_rhai/issues/12 This cross-repo issue mirrors that for visibility from the home tracker. ## What needs to happen - [ ] Pull the actual log of a recent failed run to see what step in `tests.yaml` is failing — apt-install, the storage config, `containerd` startup, or the actual `make test` step? - [ ] If `make test` reaches the podman test and fails: investigate what the runner's container setup needs (storage driver? userns? specific kernel cap?) - [ ] If apt-install / setup fails earlier: which dep, why? - [ ] **Either** fix the test infra so the runner consistently provides a working podman setup, **or** rework `01_container_operations.rhai` to mock the container runtime, **or** add an explicit `PODMAN=available` env-gated skip in the Rhai test with comment + link to this issue - [ ] Audit the other 14 currently-skipped tests — confirm they're skipping for the right reasons (backing service unavailable) vs masking a bug - [ ] Verify the green CI then sticks across multiple pushes (no flakiness) ## Acceptance criteria - [ ] Fresh push to `development` → `tests.yaml` run completes with status `success` - [ ] Fresh PR targeting `development` → `tests.yaml` run completes with status `success` - [ ] Number of passing tests reported matches the number of tests with working backing infrastructure (skipped count documented if not zero) - [ ] [hero_lib_rhai #12](https://forge.ourworld.tf/lhumina_code/hero_lib_rhai/issues/12) closed via the same PR ## Related - Parent CI sweep tracker: [home#188](https://forge.ourworld.tf/lhumina_code/home/issues/188) - Repo-level issue: [hero_lib_rhai#12](https://forge.ourworld.tf/lhumina_code/hero_lib_rhai/issues/12) - The lint side: [hero_lib_rhai PR #11](https://forge.ourworld.tf/lhumina_code/hero_lib_rhai/pulls/11) Signed-off-by: mik-tf --- *Originally filed as [home#189](https://forge.ourworld.tf/lhumina_code/home/issues/189) on 2026-04-26 by mik-tf — moved to hero_demo as part of consolidating issue tracking.*
Sign in to join this conversation.
No labels
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_demo#40
No description provided.