From 7b77fedd081fd3cfb8519a23506ea0db5f985c5d Mon Sep 17 00:00:00 2001 From: Meta Vens Date: Thu, 9 Jul 2026 11:54:16 +0100 Subject: [PATCH] Clarify independent nested plugins --- docs/plugin-architecture.md | 8 +++++++- web/fixtures/sai-vn-surface.conformance.json | 2 +- web/fixtures/sai-vn.provider-advertisement.json | 2 +- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/docs/plugin-architecture.md b/docs/plugin-architecture.md index ed38f1f..9d4b1ca 100644 --- a/docs/plugin-architecture.md +++ b/docs/plugin-architecture.md @@ -624,6 +624,11 @@ For Sai VN: - ABI fixture proving `describe`, `validate`, `project`, `lower`, `measure`, and `apply` publish the expected contract shape without direct imports. +The Norn and TeX slots are composition evidence, not Sai-owned plugin +semantics. A Sai surface may reserve space for `embed.norn` or `embed.tex` when +those plugin advertisements are available, but Norn and TeX keep their own ABI, +capability claims, conformance packs, and owner repos. + The parity manifest should be extended so runtimes declare plugin support: ```json @@ -661,4 +666,5 @@ Recommended path: Absorbing Sai into Eve is the fallback if the plugin boundary fails. It should not be the first move. The cleaner machine is Eve as kernel, Sai as VN plugin, -Aetheria as provider, and renderer clients as separate bodies. +Norn and TeX as independent plugins, Aetheria as provider, and renderer clients +as separate bodies. diff --git a/web/fixtures/sai-vn-surface.conformance.json b/web/fixtures/sai-vn-surface.conformance.json index adefb60..4f8d2e6 100644 --- a/web/fixtures/sai-vn-surface.conformance.json +++ b/web/fixtures/sai-vn-surface.conformance.json @@ -8,7 +8,7 @@ "transport": "local-json", "path": "web/fixtures/sai-vn-surface.json" }, - "purpose": "Proves Sai visual-novel semantics with Norn and TeX embedded plugin surfaces before the plugins graduate.", + "purpose": "Proves Sai visual-novel semantics and optional nested placement of independently-owned Norn and TeX plugin surfaces before the plugins graduate.", "exitCriteria": "Move to Sai when VN/Ink story state, story commands, projection fixtures, and plugin ABI cases stabilize.", "asserts": [ "vn.stage component", diff --git a/web/fixtures/sai-vn.provider-advertisement.json b/web/fixtures/sai-vn.provider-advertisement.json index 5e42166..1b6e315 100644 --- a/web/fixtures/sai-vn.provider-advertisement.json +++ b/web/fixtures/sai-vn.provider-advertisement.json @@ -27,7 +27,7 @@ { "kind": "plugin-fixture", "ref": "web/fixtures/sai-vn-surface.json", - "summary": "Advertisement-shaped provider entry for the Sai/Norn/TeX plugin conformance fixture." + "summary": "Advertisement-shaped provider entry for a Sai VN fixture that may nest independently-owned Norn and TeX plugin surfaces." }, { "kind": "owner-repo",