solvi.report¶
Human-readable reports of one decision or a period of stored decisions (data, Markdown, HTML).
Human-readable reports for an auditor or a customer: of one decision (res.report()) and of a period of stored decisions
(store.report()), as Markdown, self-contained HTML (no external assets, every value escaped) or data.
A decision: each answer with what it rests on (given inputs, computed facts, quotes with their offsets — highlighted in the source text —, model decisions, learned parts, checks, the rule), the safeguards that fired, the guarantee line (what the model thresholds behind the answer promise, or that no model decided it), the models' fingerprints, the trace's hashes and the replay status.
A period: counts by answer, status and safeguard per question, the escalation rate (abstentions: handed to a person), the guarantee coverage of the answers a model took part in, changes of the catalog's and the models' fingerprints over the period, and example decisions (their stored ids) for each answer, escalation and safeguard.
decision ¶
The report of one response as data (a dict of plain values). question: one question or a list (default: all). system: the System that answered (default: the one recorded on the response) — for the replay and answer heads. replay: "trusted" (default: deterministic steps re-run, model outputs verified from the record — no model is called), "full" (models re-run too) or False.
period ¶
The report of a period of stored decisions as data. since / until: as TraceStorage.query (seconds, a datetime, a
date or an ISO string; since <= time < until); question: only this question (and decisions that asked it); other
filters go to query (status, safeguard, model, catalog). examples: stored ids shown per answer, escalation reason and
safeguard. system: a System (or Catalog) to load the stored responses with (default: the store's).
render ¶
Report data (decision() / period()) → Markdown or HTML text; format="data" returns the data.
md ¶
Text escaped for Markdown, where Markdown (or HTML in it) would act: \ * [ ] < > # | ~` anywhere; "_" unless it
is inside a word ("known_customer" stays); "!" before "["; a leading "-", "+", "=" or "1." / "1)" (a list item, a
heading rule). Brackets after an escaped "]" are inert, so "0 mismatch(es)" and "1970-01-01" stay as written.
Newlines are spaces (table cells and list items stay on one line).
highlight ¶
A source text as escaped HTML with the spans ({"start", "end", "label", "ok"}) in (overlapping spans are
split at every boundary); a text longer than max_text is cut to excerpts context characters around the spans.