01
What it is
The client is a US production company receiving dozens of briefs a week. The task is not “write a summary” — any model can summarise. The task is to reproduce a senior producer’s judgement: to see what the brief’s real contradiction is, which beat carries the whole idea, what the document is missing, and what should be asked out loud on the first call.
The core engineering idea is not in the prompt, it is in the gates.
Every claim the agent makes must carry verbatim quotes from the brief; the quotes are verified mechanically; unverifiable ones are dropped. If core claims fall out during that check, the agent is forced to abstain rather than invent. That is a rare property — a system that can say “I don’t know”.
02
capabilities
What it does
01
Brief reading
Audience target, central contradiction, load-bearing beat, flagged unsolved items and missing information — plus a draft in the client’s voice.
02
Back-channel plan
Project stage identified by a classifier, then what to learn, who to call, what to ask out loud and what to listen for.
03
Insight test
When a proposed angle is supplied, the agent stress-tests it through a dedicated procedure.
04
Any file accepted
Multi-file upload: PDF, pages, docx, audio and video — the latter routed to GPU transcription in a neighbouring system.
05
Method as a container
The client’s proprietary method is versioned in the database as separate sections. Until filled in, the system runs in scaffold mode and says so plainly.
06
Evaluation harness
Held-out briefs, six criteria, a versioned eval run: a prompt change shows up in numbers rather than in vibes.
03
architecture
How it works
01
Brief upload
02
Parsing and quote extraction
03
Evidence check and gates
04
Judgement or abstention
05
Deck and back-channel
Under the hood
- Python 3.14 + FastAPI, Postgres 18 with pgvector for nearest-exemplar retrieval.
- Strict JSON schemas on structured outputs: the model cannot return a shape nobody expects.
- The agent’s constitution lives in its own module with a prompt version — a change is recorded, not dissolved into history.
- Exactly one uvicorn worker: background tasks assume a single process, and that is written into the ops notes.
- After a restart, hung jobs are automatically marked failed — the queue never lies about its own state.
- Nothing leaves the system: confidentiality is a client requirement, stated in the interface itself.
04
scale
Numbers
0
claims without quotes
6
evaluation criteria
2
models: reading and auxiliary
NDA
data handling mode