# Testing and evidence

Tests are evidence only for the behavior and boundary they actually exercise.
One keeps them with the owner of the claim.

## Evidence by responsibility

| Evidence | Owning location |
| --- | --- |
| Unit, property, fuzz, compile, negative | owning crate |
| Reusable provider and adapter laws | owning system's conformance packages |
| Cross-system behavior | narrowest deliberate integration fixture |
| External or privileged service | explicit opt-in bounded fixture |
| Performance claim | affected package's opt-in harness |

Root CI aggregates owner checks. It does not recreate the architecture as a
second executable registry.

## Conformance is not existence

A trait implementation, matching function name, successful build, provider
package, or passing syntax check does not prove semantic realization.

Conformance evidence names the exact contract, implementation, profile,
target, test suite, inputs, environment, result, and limitations.

## Test failure and recovery

Effectful and distributed behavior needs evidence for:

- cancellation and deadline races;
- backpressure, overflow, and admission;
- retryable, terminal, and unknown outcomes;
- duplicate delivery and deduplication scope;
- crash points around intent, dispatch, confirmation, and checkpoint;
- compensation and reconciliation failure;
- history replay and compatibility.

## Deterministic reuse

Caches are disposable generated material. A cache hit is accepted only after
verifying the complete canonical input key, schema, artifact bytes, bounds, and
validation policy.

Source-unit positions and editor mappings can refresh without invalidating
canonical semantic or analysis evidence when the exact section and dependency
closure are unchanged.

## Performance claims are bounded

A performance claim names workload, target, configuration, guarantees, and
comparison. Static dispatch is the default; erased, remote, converted, or
isolated paths expose their allocation, copy, latency, throughput, and cost.

Canonical verification rules:
[repository contract](https://github.com/muijf/one/blob/main/AGENTS.md).
