Every claim is linked back to the verbatim text, the source that produced it and the
timestamp that source carried when it was ingested. No claim without evidence.
1 · Capture
Continuous radio capture across ten Barbadian FM stations.
VOB 92.9, CBC 94.7, LIFE 97.5, HOTT 95.3,
98.1 The One, Q 100.7, Slam 101.1,
Y103.3, The Beat 104.1, Radio Bimshire 106.1.
Parallel text, web, RSS, TikTok, Instagram, YouTube and corpus adapters share the
same pipeline.
2 · Transcription & extraction
Three audio passes per chunk, then typed extraction.
Fast local transcription for triage, Nemotron Speech Streaming for the canonical
transcript, then a stage-2 typed extraction with HIGHRISE as a bounded
fallback. A spend tracker enforces the model budget. On social video, BimOmni
(a Qwen3-Omni LoRA tuned on the Barbados newspaper archive) recovers proper nouns
like “Kidscape Barbados” instead of “Kids Cake”.
3 · Ingest crew
Curator proposes a Changeset. Reviewer approves or rejects.
Stage 2 emits a typed extraction. The Curator agent (CrewAI) resolves
mentions and proposes a Changeset of ChangeOp values. The
optional Reviewer approves or rejects each op. Tools gate unsafe operations and
validate searched entity IDs. Every kickoff emits its full event stream (LLM calls,
tool usage, task boundaries) into the persisted agent_trace_event table.
4 · Deterministic Applier
One transaction. No abandoned batches. Durable evidence handles.
The Applier is the only code that mutates the graph, and it writes in one transaction.
Invalid ops are rejected without abandoning the rest of the batch. Source-ledger
writes are persisted before any graph mutation, so every claim has a durable handle
back to the verbatim evidence and the agent run that proposed it.
5 · Ask side, bounded agent retrieval
One bounded agent loop, then one bounded composer call.
5 steps, 18K tokens, 18s wallclock. The agent drives eleven typed tools (entity
resolution, lexical + vector search, claim query, graph walk, expansion, evidence
retrieval). Tool calls dispatch in parallel within a turn. A watchdog stops runaway
loops. p50 4.5s · p95 13.2s on the 33-query canonical suite.
6 · Three read surfaces
The same graph, three ways to read it.
The deployed web app (app.pulsebarbados.com), the read-only MCP server
(mcp.pulsebarbados.com) and the JSON API (/api/health,
/api/feed, /api/ask) all read from the same graph. The
chatbot is one view; any third-party agent can read the same evidence.