# Evidence Integrity Report — Evidence-Locked DFIR Agent

## Integrity Approach

The local agent treats `findevil/case_data/` as read-only input. It writes only derived outputs under `findevil/reports/`, `findevil/prototype/`, and `findevil/media/`.

Architectural guardrails:

- Source artifacts are loaded through typed readers, not shell mutation commands.
- A claim cannot be `supported` unless it carries evidence IDs.
- Unsupported execution certainty is downgraded to `not_supported_by_current_evidence`.
- Endpoint isolation remains behind a human approval gate.
- Source hashes are recorded in `source-hash-manifest.json` for judge review.

## Current Score

- Claims total: `5`
- Exact status accuracy: `1.0`
- False confident supported claims: `0`
- Unsupported claims blocked: `1`

## Prompt vs Architecture Boundary

The public prototype does not rely only on a prompt saying 'do not hallucinate.' The verifier enforces evidence IDs and expected statuses in code. If a future model-generated draft ignores the rule, the unsupported claim still fails the evidence-lock check before it becomes the analyst report.

## Case Hashes

| File | SHA-256 |
|---|---|
| `findevil/case_data/email_headers.txt` | `a022fc44326ecb090f9d8fb5bfec53eb9b3b9d968de273f65d9715c04ac425d8` |
| `findevil/case_data/attachment_hashes.csv` | `11576fc8d2db0fa2fac75df8a54d22e4f31da5e0663ce2a216afbaf4ebde39c9` |
| `findevil/case_data/browser_timeline.csv` | `4ffcd9feb76ff1746a62aada15e494e499e808d0bf866a605b3eda7fac3cb920` |
| `findevil/case_data/endpoint_processes.csv` | `dcdca9f96fa69a57e61c9cff6548c1ef5c47a1d12720273cb8366a0aab03ee57` |
| `findevil/case_data/network_observations.log` | `bc12b61d19711c09640c916b29b6042d066cac9d55cf73338bab83fc6ef0f1e3` |
| `findevil/case_data/ground_truth.json` | `0e38f19b1413309548b4349142a664cddf910498a024e10cca77422ba00d814b` |
