feat(hero_builder): forward [[bin]] required-features to cargo build #13

Merged
mik-tf merged 1 commit from development_mik_required_features into development 2026-05-09 04:38:33 +00:00
Owner

Read each binary target's required-features from cargo_metadata and merge into the per-target features set. Without this, hero_builder runs cargo build --bin without --features, and cargo silently declines to build any binary that declares required-features. s81 Class B root: hero_osis::hero_bot needs [ai, flow]; hero_lib::opencode_{demo,tester} need [opencode]. Verified: hero_bot now builds (--features ai,flow logged); opencode_demo invocation carries --features opencode (downstream herolib_clients source defect is separate). CLI features still apply, merged + deduped. Resolves s81 Class B: lhumina_code/home#230 (comment).

Read each binary target's required-features from cargo_metadata and merge into the per-target features set. Without this, hero_builder runs cargo build --bin <name> without --features, and cargo silently declines to build any binary that declares required-features. s81 Class B root: hero_osis::hero_bot needs [ai, flow]; hero_lib::opencode_{demo,tester} need [opencode]. Verified: hero_bot now builds (--features ai,flow logged); opencode_demo invocation carries --features opencode (downstream herolib_clients source defect is separate). CLI features still apply, merged + deduped. Resolves s81 Class B: https://forge.ourworld.tf/lhumina_code/home/issues/230#issuecomment-31194.
feat(hero_builder): forward [[bin]] required-features to cargo build
Some checks failed
Build and Test / build (pull_request) Failing after 2s
Tests / test (pull_request) Failing after 2s
528486125f
Read each binary target's `required-features` from cargo_metadata and
merge into the per-target features set. Without this, hero_builder runs
`cargo build --bin <name>` without `--features`, and cargo silently
declines to build any binary that declares required-features. The s81
sweep tagged this as the Class B failure root: hero_osis::hero_bot
needs `["ai", "flow"]`; hero_lib::opencode_{demo,tester} need
`["opencode"]`.

Verified live: hero_osis hero_bot now builds (1 discovered, 1 built),
opencode_demo's invocation now correctly carries `--features opencode`
(downstream herolib_clients source defect on `use redis::Commands` is
a separate hero_lib bug, not a hero_builder problem).

CLI-provided `--features` from RunOptions still applies and is merged
with required-features (deduped, CLI features kept first).

Resolves s81 Class B carry-over: lhumina_code/home#230 (comment)

Signed-off-by: mik-tf
mik-tf merged commit 634bc0627f into development 2026-05-09 04:38:33 +00:00
mik-tf deleted branch development_mik_required_features 2026-05-09 04:38:33 +00:00
Sign in to join this conversation.
No reviewers
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_code!13
No description provided.