Files
felhom.eu/.claude/rules/docs.md
T
admin a29ee9dd33
gates / gates (push) Successful in 2m38s
Decisions 149-150 recorded; instruction files kept true; R-890, R-891, R-644 closed, R-469 narrowed (142 -> 139)
Decision 150 (operator 13:25): sessions correct stale facts in instruction files themselves,
naming each edit; never loosen a rule. Added to unprompted-work.md §5 (all copies) and
PROMPT-TEMPLATE.md §9. CLAUDE.md gates paragraph (R-891), architecture pointer, docs/website
rules, the doubled R-286 sentence in the workspace CLAUDE.md.
Decision 149: vaultwarden's step proven on bench 9401 and box 9202 (evidence here).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
2026-10-06 13:52:28 +02:00

2.3 KiB

paths
paths
documentation/**

Documentation — routing and register discipline

documentation/ is the authoritative design home for the whole Felhom system, not just this repo. Sibling repos point here; this is where the pointed-at thing must actually be.

Where a fact goes — one home each

Fact Home
the locked design architecture/01..11-*.md
capability status + its evidence architecture/00-capability-map.md
host addresses, routes, node names, break-glass, what is provisioned operations/nodes.md
Tailscale topology, accept-dns/accept-routes operations/tailscale.md
which box may be broken, and what may be done to it runbooks/target-selection.md
an operational procedure runbooks/RUNBOOK-*.md
logging levels and phrasing runbooks/logging-conventions.md
a spike or campaign result audits/
every open finding backlog/OPEN-ITEMS.md
every finished finding, compressed backlog/CLOSED-ITEMS.md
finished notes and history moved out of a register archive/
the operator's one-screen view root STATUS.md

Do not restate a fact that has a home — point at it. Re-check an address rather than trusting one written down.

Register discipline

The end-of-session register rules (OPEN-ITEMS.md first, STATUS.md is a view, nothing exists only in a report) are in the repo core CLAUDE.md deliberately — they apply to every session that ships or decides something, not only to sessions that touch documentation/, so they must load unconditionally. This file adds only the routing above.

The coupling rule

A recipe or contract section is a TWO-REPO change. If a document here defines something a sibling consumes — a DR recipe's producers, an allow-list, an event type — the consumer's code and this document move in the same session, or the hub silently drops what it does not recognise.

Version literals

No component version literal in any instruction file, and none in a doc that reads as current fleet state. Versions change several times a day and the fleet is not uniform. A historical citation ("fixed in hub v") is fine in an audit or an HTML comment beside the rule it justifies — it cannot go stale the way "this box currently runs agent v" can.