J476: added host details show server hardware in production #485

Open
opened 2026-11-10 14:48:57 +00:00 by kayg · 10 comments
Owner

Production 92d2f2e9f: compute01 details show the server VM hardware instead of the physical host. Related: #410 (J329 fix for J320 findings), #305 (J320/J325 evidence). Start branch t3/remote-host-facts, base 678b8019f7. Plan (~3 hours): trace host-facts routing and prior fix; red regression for distinct hosts and unknown/offline facts; implement host-scoped reads; prove production build with a systemd server and separate root-added guest; attach screenshots; run verify quick and verify fast on compute01; push branch only. No merge or deployment.

Production 92d2f2e9f: compute01 details show the server VM hardware instead of the physical host. Related: #410 (J329 fix for J320 findings), #305 (J320/J325 evidence). Start branch t3/remote-host-facts, base 678b8019f739b5631abf570f031e4258585d7465. Plan (~3 hours): trace host-facts routing and prior fix; red regression for distinct hosts and unknown/offline facts; implement host-scoped reads; prove production build with a systemd server and separate root-added guest; attach screenshots; run verify quick and verify fast on compute01; push branch only. No merge or deployment.
Author
Owner

Finding: unscoped host.facts.read in details-live.on-demand.ts reads the embedded infraternal agent for every terminal window. The host-facts plugin correctly collects local OS/proc facts; the caller selects the wrong machine. Earlier fix #410 remains unmerged on fix-host-details-410 (6ddbe4a2c); reusing it, with fresh red/green and connected root-host proof. Red on current code: 2 pass, 2 fail; remote host incorrectly issued host.facts.read and unknown System was empty. Artifact: compute01 ~/.cache/codex-scratch/J476/evidence/red.log. Updated branch base after rebase: 3956fb32ca70e760020e06f99c34627dc76c7e0f (includes pre-existing #480 commit).

Finding: unscoped host.facts.read in details-live.on-demand.ts reads the embedded infraternal agent for every terminal window. The host-facts plugin correctly collects local OS/proc facts; the caller selects the wrong machine. Earlier fix #410 remains unmerged on fix-host-details-410 (6ddbe4a2c); reusing it, with fresh red/green and connected root-host proof. Red on current code: 2 pass, 2 fail; remote host incorrectly issued host.facts.read and unknown System was empty. Artifact: compute01 ~/.cache/codex-scratch/J476/evidence/red.log. Updated branch base after rebase: 3956fb32ca70e760020e06f99c34627dc76c7e0f (includes pre-existing #480 commit).
Author
Owner

Branch correction: fix/j476-host-facts starts directly at origin/dev d7b2e4dc1b. The initial T3 branch contained an unrelated #480 performance commit, preserved on t3/remote-host-facts; it is excluded from this fix. The first quick precheck rejected that pre-existing file for missing doc comments; no unrelated file is changed to satisfy the gate.

Branch correction: fix/j476-host-facts starts directly at origin/dev d7b2e4dc1bf767787b05e4ce287d885841f7aa5f. The initial T3 branch contained an unrelated #480 performance commit, preserved on t3/remote-host-facts; it is excluded from this fix. The first quick precheck rejected that pre-existing file for missing doc comments; no unrelated file is changed to satisfy the gate.
Author
Owner

Further history: full #410 comments show J329 eventually completed the online proof on test.ssh.kayg.org (Ubuntu ARM guest vs AlmaLinux x86 server) and ran fast with one independently reproduced proxy flake. Thus this is an unmerged fix, not a demonstrated recurrence after merge. Current fresh red/green: 2 pass/2 fail before, 4 pass/0 fail after, 23 assertions (compute01 evidence/red.log and green.log). The current job still supplies new root-host/systemd production-shaped proof and a fresh full gate.

Further history: full #410 comments show J329 eventually completed the online proof on test.ssh.kayg.org (Ubuntu ARM guest vs AlmaLinux x86 server) and ran fast with one independently reproduced proxy flake. Thus this is an unmerged fix, not a demonstrated recurrence after merge. Current fresh red/green: 2 pass/2 fail before, 4 pass/0 fail after, 23 assertions (compute01 evidence/red.log and green.log). The current job still supplies new root-host/systemd production-shaped proof and a fresh full gate.
Author
Owner

Progress: fix/j476-host-facts pushed at 161fe94bd. Workspace clippy completed successfully; quick is now building/running the changed Rust packages. TS details tests: 12 pass, 0 fail, 57 assertions (compute01 ~/.cache/codex-scratch/J476/evidence/green.log). One target directory: /home/claude/worktrees/J476/target. New browser regression also measures label/value alignment. Next: finish quick, fast on compute01, production-build root Add host/systemd proof and screenshots. Full gate and live proof are not yet complete.

Progress: fix/j476-host-facts pushed at 161fe94bd. Workspace clippy completed successfully; quick is now building/running the changed Rust packages. TS details tests: 12 pass, 0 fail, 57 assertions (compute01 ~/.cache/codex-scratch/J476/evidence/green.log). One target directory: /home/claude/worktrees/J476/target. New browser regression also measures label/value alignment. Next: finish quick, fast on compute01, production-build root Add host/systemd proof and screenshots. Full gate and live proof are not yet complete.
Author
Owner

J476 progress: rebased the single fix commit onto latest origin/dev 4889dfaf16 (decision-only change). Pushed head 426dc2ed63 on fix/j476-host-facts.

Production-build browser regression: 4 passed (desktop/phone × ink/paper), including remote-vs-local identity, offline state and ±0.5px row alignment. Evidence on compute01: /home/claude/.cache/codex-scratch/J476/evidence/browser.log and mock/host-details-410/*.png.

Quick: workspace clippy and repository checks PASS; broad changed-package unit tests hit the default 1500s timeout (exit 124), no assertion failure reported. Full raw log: /home/claude/.cache/codex-scratch/J476/evidence/quick.log. This is not a passing gate claim. scripts/verify fast is now running on compute01, logging to evidence/fast.log, target /home/claude/worktrees/J476/target. Live systemd + root-added ARM guest proof follows with its shipping binaries.

J476 progress: rebased the single fix commit onto latest origin/dev 4889dfaf16a95203882f745187bcb99368ca1a54 (decision-only change). Pushed head 426dc2ed63a2806eb23c68d05f1b72772f2812cc on fix/j476-host-facts. Production-build browser regression: 4 passed (desktop/phone × ink/paper), including remote-vs-local identity, offline state and ±0.5px row alignment. Evidence on compute01: /home/claude/.cache/codex-scratch/J476/evidence/browser.log and mock/host-details-410/*.png. Quick: workspace clippy and repository checks PASS; broad changed-package unit tests hit the default 1500s timeout (exit 124), no assertion failure reported. Full raw log: /home/claude/.cache/codex-scratch/J476/evidence/quick.log. This is not a passing gate claim. scripts/verify fast is now running on compute01, logging to evidence/fast.log, target /home/claude/worktrees/J476/target. Live systemd + root-added ARM guest proof follows with its shipping binaries.
Author
Owner

J476 browser regression receipts, production tracer build against controlled facts: 4 passed (1.4m), desktop/phone × ink/paper. These verify per-window routing and offline presentation; they are not the real-host proof. Attached the raw browser log and representative remote/offline phone captures. Full 12 captures retained at /home/claude/.cache/codex-scratch/J476/evidence/mock/host-details-410 on compute01. Quick timeout log attached separately for the record.

J476 browser regression receipts, production tracer build against controlled facts: 4 passed (1.4m), desktop/phone × ink/paper. These verify per-window routing and offline presentation; they are not the real-host proof. Attached the raw browser log and representative remote/offline phone captures. Full 12 captures retained at /home/claude/.cache/codex-scratch/J476/evidence/mock/host-details-410 on compute01. Quick timeout log attached separately for the record.
Author
Owner

J476 gate progress: scripts/verify fast continues on compute01, head 426dc2ed63. Nix inputs, fmt/migrations, CLI compile-out, clippy, helper/fixture checks and release-publication checks completed successfully. Workspace tests are running; no assertion failure reported so far. Currently executing the existing previous_attempt_shell ownership oracle. No live mesh claim held while building. Gate log remains /home/claude/.cache/codex-scratch/J476/evidence/fast.log; the sole target remains /home/claude/worktrees/J476/target.

Saved independent hardware receipts for the later real-host proof: server x86_64 / 16 CPUs / 41009960 kB, guest aarch64 / 10 CPUs / 32794456 kB. The production-shaped harness will also record the active private systemd unit. The real-host proof and shipping binary sizes are still pending; no completion claim.

J476 gate progress: scripts/verify fast continues on compute01, head 426dc2ed63a2806eb23c68d05f1b72772f2812cc. Nix inputs, fmt/migrations, CLI compile-out, clippy, helper/fixture checks and release-publication checks completed successfully. Workspace tests are running; no assertion failure reported so far. Currently executing the existing previous_attempt_shell ownership oracle. No live mesh claim held while building. Gate log remains /home/claude/.cache/codex-scratch/J476/evidence/fast.log; the sole target remains /home/claude/worktrees/J476/target. Saved independent hardware receipts for the later real-host proof: server x86_64 / 16 CPUs / 41009960 kB, guest aarch64 / 10 CPUs / 32794456 kB. The production-shaped harness will also record the active private systemd unit. The real-host proof and shipping binary sizes are still pending; no completion claim.
Author
Owner

J476 red/green receipts: the original implementation failed both per-host routing/identity and unknown-facts regressions (2 pass / 2 fail). With the fix, details-live and details-facts have 12 pass / 0 fail / 57 assertions. Raw logs attached.

Full compute01 gate progress: workspace test row PASS (2589s); server suite within it: 969 passed, 0 failed, 57 ignored. SSH inode reuse PASS (18s). Process-per-user shim build is now running. Static shipping builds and live root-host proof remain pending.

J476 red/green receipts: the original implementation failed both per-host routing/identity and unknown-facts regressions (2 pass / 2 fail). With the fix, details-live and details-facts have 12 pass / 0 fail / 57 assertions. Raw logs attached. Full compute01 gate progress: workspace test row PASS (2589s); server suite within it: 969 passed, 0 failed, 57 ignored. SSH inode reuse PASS (18s). Process-per-user shim build is now running. Static shipping builds and live root-host proof remain pending.
Author
Owner

J476 gate progress at pushed head 426dc2ed63: all completed fast rows PASS, including workspace tests, process-per-user shim, cargo-deny, architecture/docs/waits, privileged integration, release probe exclusion and nightly reporters. Static shipping builds are now compiling. Full raw log: /home/claude/.cache/codex-scratch/J476/evidence/fast.log; sole target: /home/claude/worktrees/J476/target. No mesh claim held during the build. Systemd server + separate root-added guest proof follows these shipping binaries. No merge or deployment performed.

J476 gate progress at pushed head 426dc2ed63a2806eb23c68d05f1b72772f2812cc: all completed fast rows PASS, including workspace tests, process-per-user shim, cargo-deny, architecture/docs/waits, privileged integration, release probe exclusion and nightly reporters. Static shipping builds are now compiling. Full raw log: /home/claude/.cache/codex-scratch/J476/evidence/fast.log; sole target: /home/claude/worktrees/J476/target. No mesh claim held during the build. Systemd server + separate root-added guest proof follows these shipping binaries. No merge or deployment performed.
Author
Owner

Historical link confirmed: J320’s original release-test report is in #305, headed “J320 release test on https://test.ssh.kayg.org (37c93637e)”, finding A. It records the added Debian host showing AlmaLinux 10.2, Intel N100, Address test.ssh.kayg.org and Embedded · user. J325’s follow-up in that same issue reproduced it on both then-current test and production builds. The later fix is #410, still unmerged into dev when J476 began. This matches the current wrong-call routing diagnosis.

Historical link confirmed: J320’s original release-test report is in https://git.kayg.org/kayg/infraternal/issues/305, headed “J320 release test on https://test.ssh.kayg.org (37c93637e)”, finding A. It records the added Debian host showing AlmaLinux 10.2, Intel N100, Address test.ssh.kayg.org and Embedded · user. J325’s follow-up in that same issue reproduced it on both then-current test and production builds. The later fix is #410, still unmerged into dev when J476 began. This matches the current wrong-call routing diagnosis.
Sign in to join this conversation.
No labels
launch-qa
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
kayg/infraternal#485
No description provided.