Repository navigation
argv dissolution: replace hand-typed id/hostname argv with typed builders (host_reach_identity_probe) - #13564
Closed
gunbai-bot[bot] wants to merge 1 commit into
Closed
gunbai-bot[bot] wants to merge 1 commit into
gunbai-bot[bot] wants to merge 1 commit into
Conversation
…ders - Add id_user_name_argv() to extdeps.tools.id producing ["id", "-u", "-n"] (equivalent to ["id", "-un"] for effective username) - Replace ["id", "-un"] with id_user_name_argv() in host_reach_identity_probe.dag - Replace ["hostname"] with hostname_short_read_argv() from extdeps.tools.hostname This eliminates opaque hand-typed flag strings in favor of typed builders where: - Flags become modeled axes (success semantics explicit in the builder) - argv is derived from the model, not the reverse - Typed argv executes directly via typed_argv_probe_over_ssh
briansrls
added this pull request to the merge queue
Oct 8, 2026
Contributor
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Replaces two hand-typed argv arrays in
gunbc.host.host_reach_identity_probewith typed builders fromextdeps.tools.*:["id", "-un"]id_user_name_argv()(new builder inextdeps.tools.id)["hostname"]hostname_short_read_argv()(existing builder inextdeps.tools.hostname)Changes
dag/extdeps/tools/id.dag: Added
id_user_name_argv()producing["id", "-u", "-n"]— the decomposed form equivalent to["id", "-un"]for printing the effective username (name, not number).dag/gunbc/host/host_reach_identity_probe.dag: Updated imports and both call sites to use the typed builders.
Why this matters (argv dissolution)
Per
transport_argv_anemia_dissolutionand DP-M2 roadmap item "Replace hand id/hostname argv with builders":typed_argv_probe_over_ssh— no re-joining into shell text that discards the checking the typing boughtid(1)/hostname(1)flag conventionsIntentional behavioral improvement
probe_ready_target_oncenow runshostname -sinstead of barehostname. This is intentional, not a refactor side-effect:ProbeReachable.observed_short_hostname— the field name asks for a short hostnamehostnameprints the full FQDN, the probe now correctly gets the short nameVerification
cargo check✅host_reach_identity_probe_witness_testpasses ✅