Story-1715 - EPIC-1646 Agentic Interaction substrate - pramaan-docs - docs only - RFD-AGT-002 D-6

Lock the Surface Operator vocabulary: glossary.md

RFD-AGT-002 ratified one primitive (the SurfaceCapabilityContract / Page Card) and a closed verb universe for Atlas. Decision D-6 requires that vocabulary be locked in one canonical glossary before the build stories fork — so product prose, code symbols, and schema never drift to a third name.

What this Story is

A documentation-only deliverable: a new canonical glossary that locks the two name layers for the agentic-interaction substrate — the product layer (Page Card, Page Context, Product Catalog, Surface Operator, Agent Dock) versus the code layer (SurfaceCapabilityContract, ListingSurface/DetailSurface/SummarySurface, navigate_to/set_view/propose_operation) — plus the closed banned-alias list (assistant, bot, Orient, Atlas Presence Bar, app CCB, and the retired primitive/state/catalog names).

Why it matters

A naming substrate with three words for one concept becomes a second authority map. RFD-AGT-002 D-1 ratified exactly one primitive; D-6 locks its names so the check:terms lint (a separate Chore) can reject zombie aliases in code and schema, not just prose. This glossary is the lint's data — it names concepts, it does not grant permissions or routes (those stay with the backend and the generated Page Cards).

Domain entity terms (firm, member, matter, client) remain owned by pramaan-docs ADR-001. This glossary covers only the agentic layer on top and explicitly defers to ADR-001 rather than re-freezing those terms.

What changed

FileChange
docs/system/agentic-interaction/glossary.mdNew. The canonical glossary: product layer, code layer, product↔code mapping, the closed 5-family AtlasCapability universe (Answer · Navigate · View · ProposeOperation · Guardrail; Orient = input, not a verb), the real-vs-fiction permission strings (matters:write/clients:write/settings:write real; firm:manage fiction), the banned-alias reject set, and the enforcement note.
CANON-INDEX.mdAdded a canonical-area row pointing to the glossary so it is discoverable as the naming authority for the substrate.
docs/system/index.mdAdded the glossary to the system "Read next" list (its local directory index).

Acceptance criteria

Not in scope

No code, no runtime, no ADRs. The check:terms lint itself is a separate Chore under RFD-AGT-002 D-6 and is not built here — this Story delivers only the glossary it will read. RFD-AGT-002 remains a draft desk packet; it is cited, not promoted to docs/rfds/ by this Story.