Skip to content

The audit trail

What FRA Flow records on every AI-written paragraph so a report can be defended years after sign-off.

By Richard Pryce·Last updated

The audit trail is what lets a reviewer sign an AI-assisted report with the same confidence as one written by hand. Every paragraph the AI produces carries enough metadata to reconstruct exactly what the AI was given, what the AI returned, and when. Years later, that record is still there.

What is captured per paragraph

For each AI-written paragraph in the report, FRA Flow stores:

  • The text the AI produced. The exact words. No post-processing, no silent edits.
  • Declared inputs. The list of observation IDs the orchestrator handed to the AI as the source set.
  • Cited evidence. The list of observation IDs the AI claimed to have referenced.
  • Author mode. AI draft, AI draft edited, or human authored.
  • Model fingerprint. Which AI was used (the model identifier at generation time) plus a fingerprint of the prompt template the AI was given.
  • Generated at. The exact timestamp.

Why each field matters

  • Declared inputs vs cited evidence is the heart of the source linking. A reviewer sees the divergence as the yellow and red flags. Years later, the same divergence is still computable from the stored data.
  • Model fingerprint answers the "which AI version wrote this" question. Models change. The fingerprint pins this paragraph to the specific AI behaviour at the time.
  • Prompt fingerprint answers "exactly what was the AI asked to do". The prompt text is stored against the fingerprint in a separate location-versioned record, so you can always reproduce the original prompt.
  • Mode + edit history says who actually wrote the words. Auditors care more about this than they care about which AI was used.
  • Generated at locks the timeline. Useful for change-of- ownership cases, insurance challenges, and standard-evolution questions.

Where the audit trail lives

Three places, all queryable years later:

  1. In the database. Every paragraph slot row has the metadata above attached. The signed report freezes these values so subsequent regenerates of the same paragraph for a different purpose do not overwrite history.
  2. In the final PDF. The audit metadata is embedded as a structured appendix at the end of the report, in a format that travels with the file even when the file leaves the workspace.
  3. In the report's version history. Each sign-off snapshots every paragraph's audit metadata. If a paragraph is revised after the first sign-off, the history retains the prior version.

What a challenge looks like

A typical year-three challenge:

"You signed off this assessment in 2026 and stated the lobby compartmentation was satisfactory. The 2029 compartmentation survey says it was not. Show me what you assessed in 2026."

With FRA Flow's audit trail you can answer:

  • Here is the lobby section paragraph as it was signed off.
  • Here are the seven observations the AI was given for that section, with their photos and locations.
  • Here are the four observations the AI cited in the paragraph.
  • Here is the model identifier and prompt fingerprint that produced the paragraph.

You cannot make the disagreement go away, but you can show that your evidence in 2026 was honestly assessed and faithfully reported. That is the defensibility bar.

Determinism guarantees

The system is set up so that re-running the AI on the same input set with the same prompt fingerprint produces the same paragraph text. This is not magic; it is achieved by configuring the AI to behave deterministically.

In practice this means:

  • An auditor can re-run any paragraph from the audit metadata and reproduce the original output.
  • A regeneration after a re-classification (an observation moved to a different section, say) will produce a new paragraph; the determinism only holds if the input set is identical.

What is NOT in the audit trail

By design, the audit trail does not include:

  • Drafts of paragraphs the user discarded. If a reviewer regenerated a paragraph three times before accepting one, the intermediate versions are not retained. Only the version carrying the assessor's name is.
  • Free-text edits made before save. If you typed and erased a description while capturing an observation, only the saved description is stored.
  • The reviewer's reasoning for accepting a flag. When a reviewer overrides a hallucination flag, the override is recorded but the reviewer's internal reasoning is not. The override-with-comment workflow is a future enhancement.

Where to go next