docs(proposals): note engine-imposed hide-existence consumer constraint (Worldtree #347)
Worldtree accepted the primitive as design item #347 (Worldtree-owned). Locked constraint: Heimdall-gated with hide-existence — ungranted tenants get 404 (not 403), no advertised capability. Ratatoskr consumer side must tolerate per-tenant absence: treat 404 as feature-absent -> graceful fallback, never capability-probe.
This commit is contained in:
@@ -154,6 +154,21 @@ in the web surface + debug seed in the CLI. We commit to validating the
|
||||
primitive — including the event-silence contract and the `seeded` phase —
|
||||
end-to-end against the reference planes.
|
||||
|
||||
## Consumer integration constraint (engine-imposed — Worldtree #347)
|
||||
|
||||
The primitive is **Heimdall-gated with hide-existence** (a per-tenant policy
|
||||
decision — some tenants are never granted it, not a rollout stage). Ratatoskr's
|
||||
consumer side MUST tolerate per-tenant absence:
|
||||
|
||||
- A granted tenant gets the sub-resource; an **ungranted tenant sees `404` (not
|
||||
`403`)** — as if the feature never existed.
|
||||
- Treat `404` on the authored-history-write sub-resource as **"feature absent
|
||||
for this tenant"** → fall back gracefully (no authored first-message; the
|
||||
model-generated greeting), never surface it as an error or "denied."
|
||||
- **Do NOT capability-probe or advertise-detect** — the feature is deliberately
|
||||
undiscoverable in `/capabilities` for ungranted tenants (same hide-existence
|
||||
posture as the R27-V1A cross-owner pattern).
|
||||
|
||||
---
|
||||
|
||||
*This brief was cold-read-pressure-tested by a cross-frontier panel (Grok /
|
||||
|
||||
Reference in New Issue
Block a user