You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* feat(spec,sharing): ADR-0056 D1 — canonical OWD vocabulary on object.sharingModel
Add the canonical OWD names (public_read / public_read_write) to the
object.sharingModel enum alongside the legacy read/read_write/full aliases
(non-breaking), and map them in the sharing runtime onto the three enforced
behaviours. Unknown values stay enum-rejected (authoring-time fail-closed).
Showcase announcement switched to canonical `public_read`, proven end-to-end.
sharing-service 32 tests (+4 D1); OWD dogfood proofs 8/8; liveness green.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XVdnfUAx85amkerym26vdx
* feat(rest): ADR-0056 D2 — surface fail-open anonymous posture (warn→enforce)
The data API's deny capability already exists (requireAuth=true → 401 for
anonymous; share-link / guest_portal / control-plane exempt) but the DEFAULT is
fail-open. Add a boot WARN when requireAuth is off so the insecure posture is
explicit, WITHOUT flipping the global default (release-gated; flipping would break
anonymous-dependent deployments). Proven by showcase-anonymous-deny (4/4):
anonymous read+write 401, authenticated 200, control-plane open.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XVdnfUAx85amkerym26vdx
---------
Co-authored-by: Claude <noreply@anthropic.com>
0 commit comments