Files
esh-pfi-infrastructure/docs
vh ffb7fba346 docs: give the ESH IPv6 naming scheme a home, and make it real on one host
The scheme has existed since August as a single line of persistent
memory, which a snapshot then deleted. It is a naming convention
rather than temporal state, so it now lives in docs/pfi as a proper
document, and the memory entry is reduced to a pointer at it. The
document carries the full table, the address structure, the reasoning
about which slots can and cannot hold a name, and the recipe for
applying one to a host.

It also corrects the conclusion the original note ended on. That note
held that these names could never appear on the wire, which is true
of everything UniFi is able to assign but not of what a host can
assign to itself, and the distinction is the whole difference between
a joke and an address.

AdGuard on esh-docker-vm now holds the esh-server name, at
2607:73c0:402:1d02:4411:b105:50:45, where the segment identity and the
IPv4 address are both legible. It is applied by an if-up.d hook that
derives the prefix at runtime rather than hardcoding it, backgrounds
itself with a retry so it cannot stall interface bring-up, and adds
nothing to the existing interface configuration.

This is load-bearing rather than decorative. The gateway advertises an
IPv6 resolver to clients, macOS prefers it over the IPv4 one, and it
previously pointed at an address derived from that host's MAC.
2026-08-23 22:31:13 -07:00
..

docs/

Navigation map for the documentation tree. New session? Read orientation.md first — it's the narrative overview of the fleet, backup architecture, governing principles, and gotchas, and it points at everything else.

Tree

docs/
├── orientation.md            # start here — fleet overview + where-to-look guide
├── runbooks/                 # ops runbooks (recovery, deployment phases)
│   ├── disaster-recovery.md
│   ├── nh3-prune-ritual.md
│   └── pbs-deployment.md
└── pfi/                      # PFI-specific reference (services, models, VMs)
    ├── docker-stack.md
    ├── model-list.md
    ├── proxmox-vms.md
    ├── recommended-model-settings.md
    ├── vm-102-matrix-appservice.md
    └── vm-102-matrix-synapse.md

What goes where

  • runbooks/ — step-by-step ops procedures. Anything you'd reach for during an incident or while standing up new infrastructure. Examples: disaster recovery (blast-radius tiers + restoration steps), PBS deployment (9-phase rollout). New runbook → new file here.
  • pfi/ — PFI-specific reference material that's too narrow for the top-level CLAUDE.md but doesn't change incident response. AI model inventory, recommended inference settings, Matrix bridge config, Proxmox VM map. New stable reference → new file here.
  • Top-level (docs/orientation.md, docs/README.md) — narrative guides about the workspace itself, not about specific infra.

Cross-references

  • Fleet topology + servers table: top-level CLAUDE.md.
  • Open work + recent milestones: top-level STATUS.md.
  • Durable cross-session facts: ~/.claude/projects/-home-lkraven-development-eshpfi-management/memory/.

Conventions

  • Markdown, GitHub-flavored. CommonMark renders fine in most viewers.
  • File names are lowercase-kebab-case, descriptive. No dates in filenames — git history covers that.
  • One topic per file. If a file grows past ~500 lines, look for a natural split before adding more.
  • No checked-in binaries or checksums. Build/release artifacts belong in a build pipeline or tools/, not docs/.