Loading
docs(diagrams): align §28 claim/link sequences with the audited implementations
The claim-transaction note still described the pre-audit-#4 shape (SELECT EXISTS plus a quota pre-check outside the transaction); the implemented ClaimServer serializes on pg_advisory_xact_lock(user_id), takes the row FOR UPDATE and re-runs the four-dimension gate inside the same transaction — the diagram's QuotaAvailable step is only a fast path. The link flow now selects the code FOR UPDATE, treats a same-user re-verify as idempotent, and lets a live caller take over a retired (soft-deleted) owner's link — the 409 is only for a different, live user. Both re-read from internal/api/pgrepo.go and the handler mappings.