[P1] Real-Time Entity Approval Queue #91

Closed
opened 2026-06-10 03:32:30 +00:00 by Mark · 0 comments
Owner

Problem

During autonomous investigations, the LLM discovers many entities (people, orgs, emails, etc.). Currently:

  • Entities are created automatically without review
  • No way to approve/reject entities mid-investigation
  • No visibility into pending entities
  • Entity deduplication is manual

Proposed Solution

Create a real-time entity approval system:

Backend Changes

  1. Add entity approval status to database
  2. Create pending entity queue endpoint
  3. Add endpoints to approve/reject entities
  4. Emit events when new entities are discovered

Frontend Changes

  1. EntityApprovalQueue component

    • Shows pending entities from investigation
    • Real-time updates via SSE
    • Approve/Reject/Skip buttons
    • Shows entity details and evidence attribution
  2. Toast notifications for new entities

    • Push notification when entity discovered
    • Click to review immediately
  3. Entity merge UI

    • Detect duplicate entities
    • Merge interface for combining duplicates

Files to Create/Modify

  • backend/app/models.py - add approval_status field
  • backend/app/routers/entities.py - add queue endpoints
  • frontend/src/components/EntityApprovalQueue.jsx (new)
  • frontend/src/components/EntityMergeModal.jsx (new)
  • frontend/src/components/ToastNotifications.jsx (new)

Acceptance Criteria

  • Pending entities appear in real-time during investigation
  • User can approve/reject/skip entities
  • Toast notifications alert on new entity discovery
  • Duplicate entities can be detected and merged
  • Approved entities are linked to investigation

Effort

Medium - 1-2 weeks

## Problem During autonomous investigations, the LLM discovers many entities (people, orgs, emails, etc.). Currently: - Entities are created automatically without review - No way to approve/reject entities mid-investigation - No visibility into pending entities - Entity deduplication is manual ## Proposed Solution Create a real-time entity approval system: ### Backend Changes 1. Add entity approval status to database 2. Create pending entity queue endpoint 3. Add endpoints to approve/reject entities 4. Emit events when new entities are discovered ### Frontend Changes 1. EntityApprovalQueue component - Shows pending entities from investigation - Real-time updates via SSE - Approve/Reject/Skip buttons - Shows entity details and evidence attribution 2. Toast notifications for new entities - Push notification when entity discovered - Click to review immediately 3. Entity merge UI - Detect duplicate entities - Merge interface for combining duplicates ### Files to Create/Modify - backend/app/models.py - add approval_status field - backend/app/routers/entities.py - add queue endpoints - frontend/src/components/EntityApprovalQueue.jsx (new) - frontend/src/components/EntityMergeModal.jsx (new) - frontend/src/components/ToastNotifications.jsx (new) ## Acceptance Criteria - Pending entities appear in real-time during investigation - User can approve/reject/skip entities - Toast notifications alert on new entity discovery - Duplicate entities can be detected and merged - Approved entities are linked to investigation ## Effort Medium - 1-2 weeks
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Mark/osint-hub#91
No description provided.