[CI] test_server_rpc_methods fails because hero_db is not running in build.yaml #58
Labels
No labels
prio_critical
prio_low
type_bug
type_contact
type_issue
type_lead
type_question
type_story
type_task
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
lhumina_code/hero_aibroker#58
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
test_server_rpc_methodsincrates/hero_aibroker_examples/tests/integration.rs:99fails on every CI run because it spawnshero_aibroker_server, which requires a runninghero_dbsocket at/root/hero/var/sockets/hero_db/rpc.sock. CI does not bringhero_dbup, so the spawned server exits and the test panics with"hero_aibroker_server did not become healthy within 10s".This breaks
build.yaml'smake check test fmt-check lintstep on every push todevelopment/mainand on every PR.Failure mode (excerpt from CI run 17712)
This blocks
build.yamlonly —release.yamldoes not runmake test, so tagged releases are not affected (verified: v0.1.1 was published cleanly whilebuild.yamlwas red).Two ways to fix
Option A — exclude the test from default CI (cheapest, mechanical)
Mark the test as ignored unless an env var is set, so the body still compiles and gets caught by
cargo check, but is skipped under the defaultmake test:…or just
#[ignore]it unconditionally and run withcargo test -- --ignoredin a separate "live integration" job.Pros: one line, no infra change. Documents the dependency in source.
Cons: loses signal — the test never runs in CI. Anyone wanting to validate it has to remember the ignored flag locally.
Option B — start
hero_dbin the CI job beforemake test(closest to reality)Add a "Start hero_db" step in
build.yamlbeforemake testruns. Two flavours:hero_dbvia theservice_dbnu module + hero_proc — closest to production, but pulls hero_proc + nu + hero_skills into the CI image.hero_db_serverbinary directly in the background:Pros: the test runs for real on every push.
Cons: ~30-60 s added to every CI run, plus the test now depends on hero_db's source repo (build container needs to clone it). The integration test promise is "this is realistic", and that promise is only valuable if it's enforceable.
Recommendation
Start with Option A to unred the build immediately, file Option B as a follow-up if/when the CI image has all Hero deps available (which fits naturally if
build.yamlever standardises to useservice_*install scripts — same shape as the--from-cirollout in hero_demo#54).Out of scope for this issue
--from-ciconsumer wiring on hero_skills (separate PR, blocked on this only insofar as the release pipeline confidence story).hero_aibroker_examples.Found while cutting v0.1.1 for the
--from-cirollout. The release itself was unblocked by the gate fix in #57.Signed-off-by: mik-tf