Skip to content

Evidence

A FIT agent’s work survives the chat. The trail is on disk, in three forms: session logs, ADRs, and PRP evidence blocks.

If you cannot point to where the work lives after the session ends, the work did not happen. That rule is in every repo’s .agent/CONTEXT.md.

Every session ends with one file. No exceptions.

Location: private Vault agent-logs/YYYY-MM-DD-[repo]-[agent].md

Required frontmatter:

## AGENT SESSION LOG
created: YYYY-MM-DD
repo: [repo name]
agent: [quinn | sage | claude | codex]
session-result: [draft | proposed | accepted | implemented]

Then three sections only:

  • What was accomplished or figured out — facts, not narrative.
  • Pitfalls — what failed, what was unclear, what took too long.
  • Skill gaps — what context was missing that had to be manually provided.

No padding. One file per session. If the template does not exist yet, create the file with those three headings.

The point of skill gaps is that they get fixed. A pattern in skill gaps is the input to a new skill in fit-solutions/.agent/skills/ or a correction in .agent/CONTEXT.md. The session log is how the system learns.

An Architecture Decision Record. Lives in fit-solutions/decisions/. Numbered sequentially. Ten exist today.

ADRs are opened when a decision would affect more than one repo, or when the decision changes brand, registry, naming, or tier scope. Quinn drafts. John accepts.

Status lifecycle: draftproposedaccepted. An ADR with status accepted is binding on every agent in the org until superseded.

Required sections:

  • Context — what triggered the decision
  • Decision — what was decided, stated declaratively
  • Rationale — the reasoning, with alternatives considered
  • Consequences — what changes, what breaks, what migrates

The ADR catalog is the org’s decision history. Read it. Do not propose changes that contradict an accepted ADR without opening a new ADR that supersedes it.

Reference: fit-solutions/docs/DECISION-LOG-TEMPLATE.md.

Inside every PIV (the execution unit of a PRP), an evidence block is required before the PIV can move from in-progress to complete.

## Validation
- [x] npm run build → exit 0, 21 pages built
- [x] npm test → 47 passed, 0 failed
- [x] manual: load http://localhost:4705 → 200, hero renders
## Evidence Required
- [x] build log archived at .agent/prp/evidence/2026-05-14-build.log
- [x] screenshot of hero state at .agent/prp/evidence/2026-05-14-hero.png
- [x] git diff stat: 7 files changed, 312 insertions(+), 18 deletions(-)

Rules:

  • Every box that is checked has a paired artifact on disk in .agent/prp/evidence/.
  • “It worked” is not evidence. The command output is evidence.
  • If validation requires a human action, list it explicitly and leave the PIV in-progress until it is complete.

See PRP Workflow for where the evidence block sits in the larger PIV structure.

ArtifactCapturesLifetime
Session logWhat one agent did in one sessionPermanent record in the Vault
PRP evidence blockValidation for one bounded changeLives with the plan in .agent/prp/
ADRA decision that binds future agentsLives in fit-solutions/decisions/ until superseded

Session logs feed pattern recognition (skill gaps → new skills). PRP evidence backs each change. ADRs constrain the next decision.

Three commands:

Terminal window
# What did the agents do this week?
ls private Vault agent logs | tail -20
# What's been decided?
ls fit-solutions/decisions/
# What got built, and what was the proof?
ls .agent\prp\plans\completed\
ls .agent\prp\evidence\

The system is on disk. It is readable without permission, without a tour, without a demo.

  • Session log: lead with the three headings above. No template file needed — the convention is the template.
  • ADR: fit-solutions/docs/DECISION-LOG-TEMPLATE.md.
  • PIV: see PRP Workflow for the full skeleton.

If an agent finishes a session and there is no log, the session did not happen as far as the org is concerned. If a PIV is marked complete without an evidence block, the PIV did not happen. If a decision changes the registry without an ADR, the change is reversible and likely will be reversed.

That is what “tight ship” looks like in writing.