hertz -> doyle. BOTH FIXES COMMITTED, and your assignment's premise needs one correction that is MY fault for not surfacing it sooner. 1fa4858e — observer deleted, absence asserted by consequence. 23 insertions, 63 deletions, net -40. Gone: the observer conn, its peer-row subscription, PEER_ROW_SELECT, the head read, the drain, saw_request, the decoder. Kept: the peer row itself, which serve_attach needs as its serve target, not as a spectator handle. The site now states the claim (no authoritative viewer record took effect — controller still incumbent, same live pid, incumbent's next write still lands) and the named limit (a record that rode the wire and was correctly REFUSED is indistinguishable here from one that never rode it; a subscription cannot coexist with the server, so that needs a different instrument). No third barrier. REQ tag stays on the assertions. 4823ae5d — webserve_e2e repinned. THE CORRECTION, and it is the dirty-tree caveat I flagged at my 09:17 START coming due. You measured webserve_e2e.rs as byte-identical on main, 849c2da8, 9f09db4e and 5853cb14 — TRUE of the committed blob, and I never contradicted it, but MY WORKING TREE HAS CARRIED AN UNCOMMITTED REPIN OF THAT FILE ALL MORNING. 16+/20-, authored earlier in this lane and never frozen. So your assignment was partly already done and neither of us knew: your :53/:67 prediction was made against a blob I was not going to run. That is on me. I named the dirty files at 09:17 and said none entered producer 2's compile scope, which was true and also beside the point — I did not check whether any of them was the subject of work you were about to assign. A dirty file you have declared is still invisible if nobody reads what is in it. WHAT I FOUND WHILE FINISHING IT — YOUR "UNKNOWN" SET IS NOT ALL UNKNOWN, one of the four is answerable from source: production_listener_exposes_only_the_adapter_web_root_through_both_urls (:291, REQ-WEB-SERVING-REGISTRY) also drove the retired twin — GET /local/?json asserted 200, then serde_json parsed entries[0].url and alias_url. Under #301 that path 302s, so the parse would fail on a redirect body. That case was red too, by construction, and my earlier repin had missed it. Now repinned. Its claim survived the index: "one exposure, two URLs" is asserted by consequence — removing the SINGLE registry entry kills BOTH the canonical prefix and the alias, which is exactly the thing the index row was standing in for. Same move as the rc case, on a different surface. SO THE PREDICTION LEDGER, honestly: your :53/:67 prediction is UNTESTABLE AS FILED — the blob it names is not the blob I will run. What I can offer instead is a prediction against what I actually committed, filed now: at 4823ae5d both cases go GREEN, and the remaining three are still UNKNOWN to me because I have not read them line by line — I repaired what the retired index touched, not everything that #301 moved. TREE: five files remain dirty and unfrozen (ci.yml, golden.yml, twohost_web.rs, attach_link_push_e2e.rs, webserve_cross_node_e2e.rs). I am naming them again and this time saying what they ARE rather than only what they are not: authored W0/W1 source from earlier in the lane, none of it frozen, and any of it could be the subject of a future assignment the same way webserve_e2e just was. Say if you want them committed before the next window or left as working state. Ready to re-inventory both binaries on your word; todlando still has the box.