Repository navigation
T128 — The interim answerer on a native host answers host.min.internal - #2985
norrietaylor merged 1 commit into
Conversation
The native interim answerer now answers host.min.internal at 127.0.0.1 ahead of the box registry, as the VM host daemon's answerer does, so a box named host cannot take the host's name. The interim start line lists the host row beside the registry's rows.
|
Important Review skippedBot user detected. To trigger a single review, invoke the
|
|
Approved: no findings at Nothing to do. Verdict APPROVE, posted as a comment: the App cannot review its own pull request; the check and the label carry it. Clobber: none seen. |
There was a problem hiding this comment.
arch-review: PASS · the full ruling
The interim answerer on a native host now answers host.min.internal at 127.0.0.1. This is the answer that design §7.1 lines 248 and 255 give on the host. The row comes before the registry, so a box named host cannot take the name. A non-A lookup is NODATA, and a lookup from off the machine gets no reply. The change mirrors the row in minvmd's answerer and uses the shared HOST_ROW_NAME. No condition is open.
Ruled at ecbce3b against gominimal/arch@7a86ec7bb3c0 by claude-opus-5-5.
There was a problem hiding this comment.
Reviewed ecbce3b4 against T128's plan block. The answerer holds host.min.internal at 127.0.0.1 ahead of the registry, so a box named host cannot take it, and it stays silent off the machine. interim_answerer_answers_host_min_internal_at_loopback pins all three, and arch-review passes on this head.
T128 — The interim answerer on a native host answers host.min.internal
slice: S22
kind: task
covers: NET-003
size: M
est: 30 code, 190 tests
executor: agent
difficulty: routine
model: standard
diagnostics: what a person reads is the lookup itself: from the host,
host.min.internalanswers 127.0.0.1 while the daemon hosts the interim answerer, as it does on macOS;min bugbundles carry the daemon log, whose interim start line lists the rows it holdsobservability: the interim answerer's start-up info line lists the host row beside the registry's rows
layers:
- answerer:
- crates/minimald/src/net/answerer.rs: the interim's
zone_viewholdshost.min.internalat 127.0.0.1 ahead of the registry's rows, as the VM host daemon's answerer does, so a box namedhostcannot take the host's nametest: cargo nextest run -p minimald interim_answerer_answers_host_min_internal_at_loopback
test: cargo nextest run -p minimald host_min_internal_resolves_to_host_reach_address_per_mode
test: cargo nextest run -p minimald host_ip_box_resolves_through_node_dns_layer
produces: none
consumes: none
depends on:
- blocked by #2940
proof: On a native Linux host, a lookup of
host.min.internalmade from the host answers 127.0.0.1, as it does on macOS.Proof
On a native Linux host, while minimald hosts the interim answerer, a lookup of host.min.internal made from the host answers 127.0.0.1, as it does on macOS. A box named host does not change that answer, and the interim start line in the daemon log names the host row.
Notes from the agent: The interim start line gets two fields: host_row (host.min.internal=127.0.0.1) and rows. The HostnameRegistry has no method that lists its names, so the rows field states the order of the rows and does not enumerate the registry. cargo fmt --check and cargo clippy -p minimald --all-targets are clean. The other two test lines already existed in net/provider.rs and pass without change.
Tests
cargo nextest run -p minimald interim_answerer_answers_host_min_internal_at_loopbackcargo nextest run -p minimald host_min_internal_resolves_to_host_reach_address_per_modecargo nextest run -p minimald host_ip_box_resolves_through_node_dns_layerVerify
min task run agent-verifypassed ([tasks.verify]).Closes #2947