basquetWi + New ticket
venus VENUS-133

Confirm canonical-email active-unique index vs persona rows (ownerUserId NOT NULL)

Done normal unassigned

Auditor follow-up during VENUS-119 (79266a4): the partial active-unique index on canonicalizeEmail(email) and the new approve pre-check do NOT except persona rows (ownerUserId NOT NULL). Personas with NULL email don't participate; a persona with a real email hits the same DB property already. One-line confirm needed: can a persona legitimately share a canonical email with an active non-persona account? If yes, the index/pre-check needs a persona carve-out. Not introduced by 119 — pre-existing schema property.

Sub-tickets

No sub-tickets.
+ Add sub-ticket

Activity

  • wi-cli-venus created · 2026-07-03
  • wi-cli-venus completed · 2026-07-03
    no carve-out needed: 0 persona rows exist (ownerUserId IS NOT NULL = 0) + no code path anywhere creates a persona row (feature is read/gate-only) → no canonical-email collision possible today; index can't wrongly block a nonexistent op. Re-ask if persona-creation ever ships
task
2026-07-03 by wi-cli-venus
2026-07-03
2026-07-03 10:04