Skip to content

docs(rack): buy a temperature probe for the UPS card, a switched PDU and eight accessories - #1202

Merged
Gerrrt merged 3 commits into
mainfrom
worktree-pdu-and-probe
Oct 16, 2026
Merged

Gerrrt merged 3 commits into
mainfrom
worktree-pdu-and-probe

Conversation

@Gerrrt

@Gerrrt Gerrrt commented Oct 16, 2026

Copy link
Copy Markdown
Owner

What changed

Docs only, no change to the running lab. Two purchases and eight accessories join Everything still to buy, decided by the operator on 2026-10-16: an APC AP9335T temperature probe for the UPS's AP9641 card, and a switched, SNMP-managed 1U PDU of the APC AP7900B class to replace the 10-outlet strip. Eight accessories join as well, one row each: a serial console cable for the CRS326, labels, a rack light, a bonding strap, a cable tester, power-side cable management, levelling feet and a tenkeyless keyboard for the 10.8" drawer. Ten rows become twenty and README's count follows; the move runbook says none of the accessories gates the window. hardware.md's console-and-power section says the outlet map is the strip's and is redrawn when the switched PDU is placed, and that the PDU's segment and hardening are an ADR before it is cabled. Changelog entry dated 2026-10-16.

Rebased onto main after #1200 merged; the branch carries only these two commits.

Why

Refs #919. Nothing measures rack ambient, and the card has the port for it. Four hosts have no BMC (morpheus, trinity, ifrit, smaug), so a hung one needs someone at the rack; a switched PDU is the remote power path the KVM cannot give. Eight outlets suffice once the screen's brick and the KVM move to the UPS's own outlets. The roadmap's rule is that a purchase enters only on the operator's decision, in the PR that records it.

Blast radius

None: documentation only. The PDU itself is a later change with its own ADR.

  • No change to network segmentation or firewall rules
  • No new port published to a VLAN that could not already reach the service
  • No credential added outside secrets/*.sops.yaml

Verification

  • python3 scripts/check_docs.py: docs OK — 158 Prometheus + 20 Loki rules, 8 dashboards, 156 panels, 12 assertions (the purchase count is among the assertions).

  • ./scripts/lint.sh: every check PASS.

  • make validate: all checks passed (5 skipped — NOT run, not verified) on the second run. The first run failed lab: promtool check config while promtool itself printed success, the known local flake under a busy shared docker daemon; the rerun was clean. The five skips are the worktree ones: the offsite path refusal (CI covers it), unit syntax, installed timers, the sensitive stack's timers and the homelab-* units, none of which this checkout serves. Lint ran without --require-all; CI runs the hardened boots, the secret scan and the close-keyword check too.

  • python3 scripts/check_close_keywords.py --text on this body: clean.

  • make validate passes

  • Deployed to the lab and confirmed working (nothing to deploy)

  • Docs updated (docs/, service README, or docs/roadmap.md)

🤖 Generated with Claude Code

Gerrrt and others added 2 commits October 16, 2026 05:27
Decided by the operator on 2026-10-16. The AP9641 card has a sensor
port and nothing measures rack ambient, so an APC AP9335T probe joins
Everything still to buy; the existing SNMP job polls the card, and a
generator change follows the purchase. The 10-outlet strip gives way to
a switched, SNMP-managed PDU of the APC AP7900B class, because four
hosts have no BMC and a hung one needs someone at the rack. Eight
outlets suffice once the screen's brick and the KVM move to the UPS's
own outlets. The PDU is a management-plane device: its segment and
hardening are an ADR before it is cabled, and hardware.md says the
outlet map is the strip's until then. Ten rows become twelve, README
follows.

Refs #919.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Decided by the operator on 2026-10-16, one row each so each leaves as
it arrives: a USB-to-RJ45 console cable for the CRS326, labels for
every lead and port, a stick-on rack light, a bonding strap for the
frame, a basic cable tester, power-side cable management, levelling
feet if the floor needs them, and a tenkeyless keyboard that fits the
10.8" drawer. None gates the move; the runbook fits whichever have
arrived. Twelve rows become twenty, README follows.

Refs #919.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Copilot AI balanced review requested due to automatic review settings October 16, 2026 05:29

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The documentation-only changes have no blocking issues; the remaining timing clarification is minor.

1 open finding
What changed in this PR

Records ten planned purchases for the rack upgrade, without changing the running lab.

Changes:

  • Adds a temperature probe, switched PDU and eight accessories.
  • Updates the purchase count from 10 to 20.
  • Documents optional accessory installation and the PDU’s prerequisite architecture decision.
File Description
README.md Updates the outstanding purchase count.
docs/​runbooks/​move-into-the-32u-rack.md States accessories do not gate the move.
docs/​roadmap.md Adds ten purchase rows and timing.
docs/​hardware.md Describes probe and PDU plans.
docs/​changelog.md Records the purchase decisions.

🧠 Review effort: Balanced


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread docs/roadmap.md Outdated
Review on #1202: seven accessory rows said "Before the #919 window",
the wording the gating shelves and rails use, while the move runbook
says none of them gates the move. They now say so themselves.

Refs #919.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@Gerrrt
Gerrrt merged commit 267f5a3 into main Oct 16, 2026
8 checks passed
@Gerrrt
Gerrrt deleted the worktree-pdu-and-probe branch October 16, 2026 14:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants