Skip to content

v2.44.0

Choose a tag to compare

@samuelgursky samuelgursky released this 10 Jun 16:00

Cross-clip entities + bin briefing v2 — Phase D of the analysis + edit-engine program. Recurring people/places/props found by clustering the visual embeddings, confirmed with one vision call per cluster.

Added

  • Schema v11 (entities + entity_appearances) and src/utils/entities.py: union-find clustering over the CLIP frame vectors, representative-frame selection, ghost pruning across re-runs (labeled entities persist), and a detection-state stash so entity_index resolves against the exact ordering the payload was issued with.
  • media_analysis actions: detect_entities (clusters + deferred one-frame-per-cluster confirmation payload, caps pre-checked), commit_entities (conservative labels; merge_with collapses duplicates), list_entities, prepare_bin_briefing (text-only), commit_bin_summary (host-synthesized briefing above the v2.0 aggregate in memory/bin_summary.md).
  • Panel: "Recurring across this bin" card on Review (/api/entities).

Validation

  • Full offline suite: 1105 tests (10 new); 3 known live-Resolve environmental failures only.
  • Live on the real sample root: 3 clusters from 16 CLIP vectors; host-chat confirmation labeled the shattered-windshield POV and the white rental sedan and merged the sedan's duplicate cluster; bin briefing synthesized and committed; panel card verified; screenshots regenerated.