From 328e9658e6872e0ab488a40cd881476f3d52e9f7 Mon Sep 17 00:00:00 2001 From: Aaron Trowbridge Date: Mon, 14 Sep 2026 00:10:56 +0200 Subject: [PATCH] amico-vault: land the vault-path reference doctrine in its owner MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit One section in the mount rules of the vault constitution: reference mounts by role (personal by role, team by kind, ops tree as $AMICO_OPS), never by name or raw home path — the 2026-08-21 personal-vault rename is the proof case. Notes the skills lint's [vpath] rule as the mechanical enforcement of the error class. F28 vault half (lint half rides #1100). --- packages/extension/skills/amico-vault/SKILL.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/packages/extension/skills/amico-vault/SKILL.md b/packages/extension/skills/amico-vault/SKILL.md index 5694e5861..1ae07cc98 100644 --- a/packages/extension/skills/amico-vault/SKILL.md +++ b/packages/extension/skills/amico-vault/SKILL.md @@ -98,6 +98,17 @@ Route every note-write by intent: **`route_intent` fallback:** if the routed target isn't mounted on this machine (no engagement vault here; not a member of the project vault), write to the **personal** vault and stamp frontmatter `route_intent: ` so it can be re-homed later. Never silently drop a write or write to the wrong tier. +### Vault-path references (role, not name) + +How vault paths are written down — in notes, specs, skills, and examples — is a rule of record, not a style preference: **reference mounts by role, never by name.** + +- The **personal** mount by **role** — "the personal vault", resolved from the mount stack — never by its directory or marker name. +- The **team** mount by **kind** — "the team mount". A concrete instance (`armonissima`) may appear in an example, labeled as an instance — never as the identifier. +- The ops tree only ever as `$AMICO_OPS/…`. +- **Never a raw home path embedding a vault or repo name** in prose or examples — those are the ones that rot on renames. Proof case: the 2026-08-21 personal-vault rename (`vault-aaron` → `armonia-aaron-trowbridge`), whose aftermath — clients silently riding the rename redirect — is exactly the silent rot this rule exists to prevent. + +The skills lint's `[vpath]` rule (`lint-skills.mjs`, #1100) flags the known-rotted shapes mechanically; this section is the doctrine it serves. + ### Visibility and the two-note authoring pattern `visibility: local | team | public` (default `local`). Visibility is the federation gate: **only `team`/`public` notes are eligible for promotion to the company vault; `local` notes never leave their mount.**