Skip to content

fathom.AuditRecord

fathom.AuditRecord

Bases: BaseModel

Immutable audit record written to the audit sink after evaluation.

Source code in src/fathom/models.py
class AuditRecord(BaseModel):
    """Immutable audit record written to the audit sink after evaluation."""

    timestamp: str
    session_id: str
    input_facts: list[dict[str, Any]] | None = None
    modules_traversed: list[str]
    rules_fired: list[str]
    decision: str | None
    reason: str | None
    duration_us: int
    metadata: dict[str, str] = Field(default_factory=dict)
    asserted_facts: list[AssertedFact] | None = None
    #: Per-firing match basis, carried through from the evaluation result.
    #: ``None`` on an engine built without ``match_evidence=True``.
    match_evidence: list[MatchEvidence] | None = None
    #: The evaluation's attestation JWT, when the engine was given an
    #: attestation service. Carried on the record so an exported line can be
    #: verified on its own; ``None`` on an engine that does not sign.
    attestation_token: str | None = None