Use cases by industry
Use case: automated reports
The consulting deliverable is a report a client trusts: current numbers, defensible definitions, and the same thing every Monday without anyone assembling it by hand. This guide builds that pipeline end to end across the module slices: Conduit pulls today's numbers from live data with provenance, Warrant supplies the certified concept definitions those numbers are cited against, report generation freezes them into an as-of snapshot, a schedule renders it, Crucible benchmarks the quality, and the result is a reproducible PDF.
Prerequisites
- A workspace key with
data:read,data:run,reports:write,reports:read, andruns:read, exported as$ELI_KEY. See Getting started. - A configured data connector and at least one named query. See Data connectors & domain components.
- Some ingested, governed documents — a report over an empty KB is a report about an empty KB.
1 · Conduit — pull today's numbers, with provenance
A report's numbers should be live, not copied from a stale doc. Conduit runs governed named queries— reusable domain components bound onto entities — against live SQL or Snowflake. List what's available, then run one; every execution writes an append-only data_calls row and hands back a dataCallId — the [Dn] anchor you can cite later.
/api/v1/data/queriesBearer · data:readList named queries (domain components) available to run, with their parameter specs.
/api/v1/data/queries/{slug}/runBearer · data:runExecute a named query with validated params. Read-only, row-capped, timed, and provenance-logged. Params are bound, never interpolated. Returns a dataCallId — the [Dn] provenance anchor.
2 · Warrant — cite numbers against certified definitions
A number is only defensible if its definitionis. "ARR" means nothing in a client report unless everyone agrees what it counts. That agreement is a certified concept in Warrant — and because concepts are versioned, a report can cite the exact version of the definition in force when it was generated. The arr-by-segment query is bound to the ARR concept; when the report grounds that row, it references the concept at its current certified version. Confirm the definition is pinned before you schedule anything on top of it:
/api/v1/entities/{id}/certifyBearer · kb:writeOwner/admin sign-off on the concept definition the report will cite. Bumps the version and starts the review clock, so a scheduled report never quietly cites a definition that drifted.
Now a claim in the report — "Enterprise ARR is $4.21M [D1] as defined by ARR v5 [S1]" — carries both a [Dn] live-data provenance anchor and an [Sn] citation to the governed definition at a specific version. Fuse both in one grounded call by asking with includeData: true:
/api/v1/queryBearer · agents:runGrounded answer fusing the semantic and data layers: detected entities' bound queries run as governed [Dn] lookups, alongside document [Sn] citations. This is the narrative a report section wraps around the numbers.
3 · Generate the as-of snapshot
A report freezes the knowledge base as of a moment in time — coverage, KPIs, top entities, gaps, what to interview next — and persists it immutably. The numbers are stamped at generation, so a report you hand a client in July still reads the same in December, and re-rendering it is byte-for-byte identical because the layout version is stamped in.
/api/v1/reportsBearer · reports:writeGenerate an as-of report snapshot over the current KB. Returns the snapshot id and status immediately; the PDF renders asynchronously on a serialized queue.
4 · Schedule it
Automation is the point. Put the generation call on a schedule and the Monday-morning report is rendered before anyone opens their inbox. The cron substrate — recurring jobs, drift checks, and alerting on the same durable queue that runs syncs — is covered in Scheduling, drift & alerts. A scheduled run does exactly what the manual POST /api/v1/reportsabove does, on a cadence, under the same key and scopes. Because Conduit re-runs the bound queries at generation time, each weekly snapshot captures that week's live numbers — while the certified definitions they cite stay pinned until Warrant deliberately bumps them.
Every re-download is identical
data is available the instant generation finishes — you never wait on the PDF to consume the numbers — and every re-render of an old snapshot is byte-for-byte the same because its layout version is stamped in.5 · Crucible — benchmark the report's quality
A report a client relies on has to be right, and "right" must be measurable. The narrative sections are grounded answers, so the same evaluation framework that scores chat scores the report: build a golden set of the questions each section answers — "What is Enterprise ARR?", "Which segment grew fastest?" — and read faithfulness and abstention on a run. A regression here means a section would ship a wrong number; you catch it before the client does.
/api/v1/evals/runs/{id}/metricsBearer · kb:read or runs:readRetrieval, RAGAS, and abstention metrics for one run. Faithfulness is the report's ruler: are the stated numbers actually grounded in the cited data and definitions?
Gate the schedule on it: a nightly benchmark run that dips below your faithfulness floor is an alert, not a silent bad report. Compare a prompt or retrieval change behind a two-gate significance test in Measure & compare before it touches a client-facing deliverable.
6 · Fetch the PDF
Once the render lands, pdf.status is ready and the PDF streams from its own endpoint under the same reports:read scope. Stream it straight to disk, attach it to an email, or drop the link in Slack:
/api/v1/reports/{id}Bearer · reports:readFetch the snapshot: stamped metadata, the computed section data, and the PDF status/URL once rendered. The data is available immediately; the PDF follows.
/api/v1/reports/{id}/pdfBearer · reports:readDownload the rendered PDF (application/pdf). 409 while the render is still queued or in progress.
The leverage
One schedule turns the live state of an engagement into a frozen, reproducible, benchmarked deliverable — with every number carrying its [Dn] query provenance and every definition its [Sn] concept version. Conduit keeps the numbers current, Warrant keeps the definitions defensible, Crucible keeps the quality measured, and the PDF is the artifact the client pays for. Nobody assembled it by hand, and anyone can trace any figure back to the exact query and definition behind it.
Related