Files
sub2api/backend/migrations/225_backfill_codex_fingerprint_seed.sql
T

22 lines
796 B
SQL
Raw Normal View History

-- Backfill system-managed Codex fingerprint seeds for enabled OpenAI OAuth accounts.
-- Idempotent: valid canonical seeds are preserved on rerun.
UPDATE accounts
SET extra = jsonb_set(
COALESCE(extra, '{}'::jsonb),
'{codex_fingerprint_seed}',
to_jsonb(gen_random_uuid()::text),
true
)
WHERE deleted_at IS NULL
AND platform = 'openai'
AND type = 'oauth'
AND COALESCE(extra->>'codex_fingerprint_mode', '') IN ('device', 'session', 'full')
AND (
extra->>'codex_fingerprint_seed' IS NULL
OR btrim(extra->>'codex_fingerprint_seed') = ''
OR NOT (
extra->>'codex_fingerprint_seed' ~ '^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$'
AND extra->>'codex_fingerprint_seed' <> '00000000-0000-0000-0000-000000000000'
)
);