ADR 0054 (proposed) — a consumer's identity is bounded by the tightest backend

Sketches the options for issue 010: the mesh's identityLimit (63, postgres's) is not
the shortest among the backends the derived name reaches — S3's is 20 — so CheckIdentity
lets an over-long access key through and minio fails at provision time. Options: bound
by the true minimum and refuse at assignment (recommended, with a compact fallback held
in reserve), per-interface bounds, or a provider-generated identity (rejected — breaks
"the mesh says the identity once"). Links issue 010 to it.

Claude-Session: https://claude.ai/code/session_01LrgweAeERJYBg88c5cKDzF
This commit is contained in:
2026-09-05 02:17:46 +02:00
parent 75887d0bc5
commit 89b65dd4c0
2 changed files with 108 additions and 0 deletions
@@ -61,3 +61,7 @@ and those are not always the same string.
- Do redis/postgres actually want the long name, or did it only survive because they are
permissive? If nothing needs it long, the cheap fix is to cap it.
- Does this fold into the same decision as the data-provision return path, or is it separate?
The options are sketched in **ADR 0054 (proposed)** — bound the identity by the true minimum and
refuse early (recommended), a compact fallback for overflow, per-interface bounds, or a
provider-generated identity (rejected). Awaiting ratification.