diff --git a/PRIMER.md b/PRIMER.md index 238e7f8..dbf229b 100644 --- a/PRIMER.md +++ b/PRIMER.md @@ -48,11 +48,17 @@ Four required files: **`IDENTITY.md`** — the machine-readable identity record. Name, pronouns, creature type, Coven membership (if any), emoji. Minimal structured data that a validator can check. +<<<<<<< Updated upstream **`MEMORY.md`** — the familiar's persistent memory surface. It is required for structural conformance and must also appear on the Ward's protected surface. **`ward.toml`** — the governance document. Protected files, editable files, approval tiers. This is what tells the self-improvement loop what it cannot touch. See [`schemas/ward.schema.json`](schemas/ward.schema.json). Start from [`examples/minimal/`](examples/minimal/) — that's the floor. [`examples/sage/`](examples/sage/) shows a richer structurally conformant familiar directory. Sage's runtime enforcement lives outside this repo fixture. +======= +**`ward.toml`** — the governance document. Protected files, editable files, approval tiers. This is what tells the self-improvement loop what it cannot touch. See [`schemas/ward.schema.json`](schemas/ward.schema.json). + +Start from [`examples/minimal/`](examples/minimal/) — that's the floor. [`examples/sage/`](examples/sage/) shows a full compliant familiar (Sage is a real familiar running on OpenCoven's infrastructure). +>>>>>>> Stashed changes --- @@ -94,10 +100,18 @@ You do not need to use OpenCoven's infrastructure to implement familiar-contract ## Where to go next +<<<<<<< Updated upstream - [`rfcs/RFC-0001-familiar-contract.md`](rfcs/RFC-0001-familiar-contract.md) — the normative specification (v0.7.0) - [`examples/minimal/`](examples/minimal/) — the minimal structurally conformant familiar directory (Lumen) - [`examples/sage/`](examples/sage/) — a richer structurally conformant familiar directory (Sage) - `node validators/validate.js ./your-directory` — validate your claimant directory - `bash tests/conformance/run-conformance.sh` — verify the bundled reference validator + fixtures for the same contract version - [`docs/faq.md`](docs/faq.md) — common questions +======= +- [`SPEC.md`](SPEC.md) — the normative specification +- [`examples/minimal/`](examples/minimal/) — the minimal compliant familiar (Lumen) +- [`examples/sage/`](examples/sage/) — a full compliant familiar (Sage) +- `node validators/validate.js ./your-directory` — validate your familiar +- [`FAQ.md`](FAQ.md) — common questions +>>>>>>> Stashed changes - [`docs/comparison.md`](docs/comparison.md) — how this relates to other approaches diff --git a/schemas/role.schema.json b/schemas/role.schema.json index 1899669..606a373 100644 --- a/schemas/role.schema.json +++ b/schemas/role.schema.json @@ -69,11 +69,5 @@ } }, "additionalProperties": true, - "notes": [ - "Roles are additive. A familiar with a role satisfies all five Familiar Contract properties as its baseline; the role adds narrowing constraints.", - "A role cannot override or weaken the familiar's core identity (SOUL.md, IDENTITY.md).", - "A role cannot expand authority — only restrict it.", - "Roles are scoped to a project or context. They are not permanent identity changes.", - "For the full Roles Architecture, see the OpenCoven roles specification." - ] + "$comment": "Roles are additive. A familiar with a role satisfies all five Familiar Contract properties as its baseline; the role adds narrowing constraints. A role cannot override or weaken SOUL.md or IDENTITY.md, cannot expand authority, and is scoped to a project or context rather than a permanent identity change." }