Finish removing the override_env / HERO_X_SOCKET pattern (hero_proc + my_init reliance, then the macro option in hero_blueprint/hero_lib) #312
Labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
lhumina_code/home_lhumina#312
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?
Finish removing the deprecated
override_env/HERO_X_SOCKETpattern fromopenrpc_client!. A per-client env socket override is "possible but not good practice" (Kristof, 2026-06) — clients should fall back to the canonical default socket path, or useconnect_socket(path)when a non-default socket is genuinely needed.Already done
hero_skillsskills/blueprint/herolib_macros/herolib_openrpc.md(override_env removed from the docs, points toconnect_socket).development: the 16 no-reliance SDKs (my_compute_holo,hero_agent,hero_books,hero_cockpit,hero_code,hero_codescalers,hero_embedder_provider,hero_gpu,hero_logic,hero_matrixchat,hero_orchestrator,hero_os_tfgrid_deployer,hero_planner,hero_slides,hero_voice,hero_voice_provider) +hero_collab. (hero_shrimpwas a false positive —allow_override_envbudget field, unrelated.)Remaining — two reliance cases (need a deliberate replacement, NOT a blind removal)
These services actively set and rely on their socket env var (dev/test/deploy), so removing
override_envthere breaks real workflows. Replace withconnect_socket(path)+ an explicit--socket <path>flag.hero_proc→HERO_PROC_SOCKET— referenced incrates/hero_proc_admin/docs/{cli_reference,paths}.md, plus dev/test override flows (e.g. theai_direct_testfunctional test, troubleshooting "setHERO_PROC_SOCKET=<path>").my_init(geomind) →MY_INIT_SOCKET— heavier:README.md,docs/reference/paths.md,scripts/install.sh,tests/playground/run-tui.sh,tests/scripts/harness.sh.Last — remove the macro option itself (only AFTER the two above)
Remove the
override_envparse/emit from the macro + its runtime helper. Doing this earlier breaks any consumer still passingoverride_env("unknown optionoverride_env"):hero_blueprint/crates/derive/src/openrpc_client.rs(parse + emit)hero_lib/crates/macros/src/openrpc_client.rs(+lib.rs) (parse + emit)hero_lib/crates/core/src/base/paths.rs:224resolve_socket_path_with_override+hero_lib/crates/hero_lifecycle/src/base.rs:254(the two runtime fns it emits calls to) — drop, or keep the fn but stop emitting calls.Sequence / gate
hero_proc+my_init: migrate toconnect_socket(path)+--socketflag (owners' call on the exact UX).Owners: hero_proc / my_init for step 2; hero_lib + hero_blueprint maintainers for step 3.