Skip to content

Commit 26ae4e9

Browse files
authored
Merge pull request #100 from AdaWorldAPI/claude/medcare-bridge-lance-graph-wmx76z
docs(OGAR): consumer best-practices guide + classid-is-address precision
2 parents 273fa78 + d0806bd commit 26ae4e9

4 files changed

Lines changed: 458 additions & 0 deletions

File tree

CLAUDE.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,15 @@ alignment costs. Until measured: 3×4 stands.
189189
Operational pre-flight: `docs/SURREAL-AST-TRAP-PREFLIGHT.md` (the
190190
spellbook — five questions, 90 seconds, MANDATORY before any
191191
producer→IR / transcode / codegen / `.surql` authoring session).
192+
8. `docs/OGAR-CONSUMER-BEST-PRACTICES.md` — the muscle-memory guide
193+
for every consumer-side session (medcare-rs, woa-rs, smb-office-rs,
194+
odoo-rs, openproject-nexgen-rs, q2). One-line invariant: **the
195+
classid is pure address; the magic is what it resolves to.** Drilled
196+
with worked examples across every PortSpec, the four canonical
197+
patterns (pull classid · compose render · authorize · migrate), and
198+
an anti-pattern catalogue paired with the right shapes. MANDATORY
199+
before authoring any consumer call site that mentions `class_id`,
200+
`APP_PREFIX`, `PortSpec`, `ClassView`, or any `*Bridge`/`UnifiedBridge`.
192201
8. `docs/ARCHITECTURAL-DECISIONS-2026-06-04.md` — ADR-001..025
193202
(ADR-026 pending).
194203
9. `.claude/agents/` — the 5+3 hardening pattern (5 research savants +
@@ -207,6 +216,15 @@ alignment costs. Until measured: 3×4 stands.
207216
… THEN …` carrying lifecycle is the "negative-beauty hijack"
208217
`SURREAL-AST-AS-ADAPTER.md` §0 rejects. Behavior flows producer →
209218
OGAR `Class`+`ActionDef` → adapter; never producer → DDL.
219+
- **Consumer call sites: classid is address, magic is at the
220+
resolution target:** before authoring consumer code that pulls a
221+
classid, composes a render address, authorizes, or migrates off a
222+
bridge, read `docs/OGAR-CONSUMER-BEST-PRACTICES.md` (the muscle-
223+
memory guide). The hi u16 chooses **render** skin (per-app
224+
ClassView/template), the lo u16 names the **shared concept** (RBAC +
225+
ontology); **neither half carries behavior** — class-magic
226+
(`ActionDef`+`KausalSpec`) is a property of the Core node the
227+
address resolves to, never of the address.
210228
- **PII:** never emit German PII labels (medcare-rs leaf-rename at the
211229
adapter is the guarantee). Word-boundary abort-guard before commit.
212230
- **No model identifier** in any committed artifact (chat only).

docs/APP-CLASS-CODEBOOK-LAYOUT.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,13 @@
99
> prefix** and pins the rule that keeps "classid is shared currency"
1010
> intact.
1111
>
12+
> **Read together with** `docs/OGAR-CONSUMER-BEST-PRACTICES.md` — the
13+
> muscle-memory guide with worked examples across every consumer. **The
14+
> classid is pure address (both halves)**; behavior lives at the
15+
> resolution target (ClassView for the skin / `Class`+`ActionDef` for
16+
> the canonical shape and magic). Hi u16 selects **render** magic, NOT
17+
> class magic; class magic is the Core's, never the address's.
18+
>
1219
> **The goal it serves (§3.5–3.7):** every renderable thing — strings,
1320
> text, media, online sources — is rendered by **key-value resolution**
1421
> against typed content stores, so **no serialization exists in the hot

0 commit comments

Comments
 (0)