feat: progressive multi-round face matching + pending person API
- Identity agent: per-face max matching, multi-round with derived seeds from high-confidence faces, angle diversity filter (cosine sim < 0.90) - Pending person API: POST /file/:file_uuid/pending-person + GET /file/:file_uuid/pending-persons with status=pending, source=manual - Update API docs (07_identity.md)
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
#!/usr/bin/env python3
|
||||
"""
|
||||
Fix existing monitor_jobs records to include ASRX in processors list.
|
||||
|
||||
This script adds 'asrx' to processors array for all monitor_jobs records
|
||||
that don't have it yet.
|
||||
"""
|
||||
|
||||
import os
|
||||
import psycopg2
|
||||
|
||||
def fix_processors():
|
||||
schema = os.environ.get('DATABASE_SCHEMA', 'public')
|
||||
|
||||
conn = psycopg2.connect(os.environ.get('DATABASE_URL', 'postgres://accusys@localhost:5432/momentry'))
|
||||
cur = conn.cursor()
|
||||
|
||||
# Check current state
|
||||
cur.execute(f"""
|
||||
SELECT COUNT(*) FROM {schema}.monitor_jobs
|
||||
WHERE processors IS NOT NULL
|
||||
AND NOT ('asrx' = ANY(processors))
|
||||
""")
|
||||
missing_asrx = cur.fetchone()[0]
|
||||
|
||||
print(f"Found {missing_asrx} jobs missing ASRX in processors")
|
||||
|
||||
if missing_asrx > 0:
|
||||
# Add ASRX to processors array
|
||||
cur.execute(f"""
|
||||
UPDATE {schema}.monitor_jobs
|
||||
SET processors = array_append(processors, 'asrx')
|
||||
WHERE processors IS NOT NULL
|
||||
AND NOT ('asrx' = ANY(processors))
|
||||
""")
|
||||
|
||||
updated = cur.rowcount
|
||||
conn.commit()
|
||||
|
||||
print(f"Updated {updated} jobs to include ASRX")
|
||||
|
||||
# Verify
|
||||
cur.execute(f"""
|
||||
SELECT uuid, processors FROM {schema}.monitor_jobs
|
||||
WHERE processors IS NOT NULL
|
||||
AND 'asrx' = ANY(processors)
|
||||
ORDER BY created_at DESC LIMIT 5
|
||||
""")
|
||||
|
||||
for row in cur.fetchall():
|
||||
print(f"UUID: {row[0]}, Processors: {row[1]}")
|
||||
else:
|
||||
print("All jobs already have ASRX in processors")
|
||||
|
||||
conn.close()
|
||||
|
||||
if __name__ == '__main__':
|
||||
fix_processors()
|
||||
Reference in New Issue
Block a user