ditdash U-K1/K2/K3: federation discovery, link custody, remote rendering #9
Loading…
Reference in a new issue
No description provided.
Delete branch "ditdash-u-k"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
K1: the discovery document + guarded fetch (private-range refusals). K2 (sensitive): the sealed link-state cookie, rotation and revocation, storage-scope zero-remote-bytes, the WS-0 pulled-blocks convention. K3: remote rendering + JWT validation (the DIT-SES-004 zone rule) + the frozen degradation vocabulary (critic-fixed: unreachable lines render only for the unreachable state, mutation-proven). Critic: PASS-WITH-FINDINGS, fixed.
The linked-msp render space: /msp/{m}/… renders live from the remote's /api/v1 twins with the sealed cookie's token, and /api/v1/… gains the forward-auth-bypassed bearer arm (E-6 §D8) — the same Identity value the proxy-header path builds, so every existing denial applies unchanged. - src/remote.rs: issuer discovery is zone-checked (DIT-SES-004 shape, the jwks_uri must sit inside the issuer's own zone), a stale JWKS refetches once, exp/iss/aud checked; one guarded request per resource, zero cache; envelope passthrough with links.ui rebased under the local /msp/{m} space. - Degradation vocabulary frozen: 401/403 = the remote refused this request — re-verify your access at <remote>; 404 = the remote's own absence; unreachable = probe failed at <now> + unreachable since <browser-recorded last contact> (no prior contact recorded when none); never a cached-green paint. - tests/remote.rs: the stub remote self-hosts K3's own bearer arm with a fixture JWKS + signed fixture JWTs; the U-K2 storage-scope walk rides the remote render (zero remote bytes at rest). Assisted-by: worker:synthetic/hf:deepseek-ai/DeepSeek-V4.1-Flash