Skip to content

Highlights: ask for a number, and the best that many are chosen from all the picks - #67

Merged
pallaoro merged 2 commits into
mainfrom
highlights-wanted
Oct 12, 2026
Merged

pallaoro merged 2 commits into
mainfrom
highlights-wanted

Conversation

@pallaoro

Copy link
Copy Markdown
Member

Why

A count written in the brief ("max 25 clips") never held. Each reading sees a dozen clips of one folder, so the count applied to each dozen, and two cameras on one moment were never compared.

What

  • A project says how many highlights it wants: wanted, 1 to 200, or none (every pick worth a look, as before).
  • Every clip is still read as before. Once none is left, one more model call reads all the picks and orders them for the brief:
    • first, the best set of that many: the mix the brief asks for, one clip may give most of it, never the same moment twice;
    • then stand-ins;
    • then the rest by score.
  • pick=best in the list and the export. Kept picks count first; when more are kept than wanted, the best of the kept.
  • Dropping one of the best brings in the next with no model call.
  • A new number orders them again at once. Picks from clips read later do too, at most every 15 minutes while footage is still coming in.
  • The review page asks how many, opens on the best, shows where choosing stands, and exports the best.
  • The AI editor marks and prefers them.
  • agent.md and the README describe it.

New state: edit_projects.highlights_wanted and the ordering's status, error and claim time, plus footage_highlights.rank.

Checks

  • pnpm test: 210 pass.
  • pnpm test:e2e: ALL OK. New scenarios 11h to 11h4:
    • the best are chosen in one call on a delivery, never on a read, in the model's order rather than by score;
    • a drop brings in the next with no call;
    • the export and filters take the best;
    • a new number orders them again;
    • busy waits, and a refusal says why and waits;
    • footage still coming in waits a while, but a person's number never waits;
    • no number means no best.
  • pnpm typecheck and pnpm build pass.

…all the picks

A count written in the brief never held: each reading sees a dozen clips of
one folder, so it applied to each dozen, and two cameras on one moment were
never compared. A project now says how many highlights it wants. Every clip is
still read as before; once none is left, one more model call reads all the
picks and puts them in order for the brief: the best set of that many first
(the mix the brief asks for, one clip may give most of it, never the same
moment twice), then stand-ins, then the rest by score.

- PUT /api/projects/{id}/highlights/wanted, and `wanted` on asking; pick=best
  in the list and the export. Kept picks count first.
- Dropping one of the best brings in the next with no model call. A new number
  orders them again at once; picks from clips read later do too, at most every
  15 minutes while footage is still coming in.
- The review page asks how many, opens on the best, and exports them; the AI
  editor prefers them.
@pallaoro
pallaoro merged commit 40992a1 into main Oct 12, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant