---
schema: formation.doc/v0.1
kind: doc
visibility: public
canonical_url: https://topologyindex.com/docs/schemas/evidence/v0.1.md
document_kind: evidence
document_schema: formation.evidence/v0.1
max_document_bytes: 262144
path: /docs/schemas/evidence/v0.1.md
product_api_version: v1
schema_version: v0.1
title: formation.evidence/v0.1
---

# formation.evidence/v0.1

Frontmatter fields of a `evidence` document. Every security-, cost- and execution-relevant
value is a typed field; prose in the body can explain a rule but never override it. Undeclared
fields are rejected.

## Fields

- `schema` (required): exactly `formation.evidence/v0.1`
- `kind` (required): exactly `evidence`
- `created_at` (required): ISO 8601 UTC timestamp, pattern `^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})(?:\.(\d{1,9}))?Z$`, at most 30 characters
- `visibility` (required): one of `private`, `public`
- `job_id` (required): null or resource identifier, pattern `^[A-Za-z0-9][A-Za-z0-9_-]{0,127}$`, at most 128 characters
- `evaluation_plan` (required): null or sha256 digest, pattern `^sha256:[0-9a-f]{64}$`, at most 71 characters
- `analysis_version` (required): version label, pattern `^[a-z0-9][a-z0-9._/-]{0,63}$`, at most 64 characters
- `evidence_stage` (required): one of `exploratory`, `confirmatory`
- `synthetic` (required): boolean
- `included_reports` (required): array of 0 to 1024 items, each sha256 digest, pattern `^sha256:[0-9a-f]{64}$`, at most 71 characters
- `excluded_reports` (required): array of 0 to 1024 items, each map (fields listed below)
- `excluded_reports[].report` (required): sha256 digest, pattern `^sha256:[0-9a-f]{64}$`, at most 71 characters
- `excluded_reports[].reason` (required): one of `superseded_by_correction`, `stale_fencing_generation`, `outside_plan_scope`, `environment_mismatch`, `identity_unverified`, `duplicate_report`, `synthetic_fixture`, `provenance_not_established`, `execution_source_mismatch`, `assignment_mismatch`
- `membership_manifests` (required): array of 0 to 256 items, each sha256 digest, pattern `^sha256:[0-9a-f]{64}$`, at most 71 characters
- `cohorts` (required): array of 0 to 16 items, each map (fields listed below)
- `cohorts[].execution_lock` (required): sha256 digest, pattern `^sha256:[0-9a-f]{64}$`, at most 71 characters
- `cohorts[].roles` (required): array of 1 to 3 items, each one of `baseline`, `single_agent_reference`, `candidate`
- `cohorts[].assigned_episodes` (required): integer from 0 to 1000000000
- `cohorts[].completed_episodes` (required): integer from 0 to 1000000000
- `cohorts[].missing_episodes` (required): integer from 0 to 1000000000
- `cohorts[].unique_tasks` (required): integer from 0 to 1000000000
- `cohorts[].repetitions` (required): integer from 1 to 100
- `cohorts[].passed_episodes` (required): integer from 0 to 1000000000
- `cohorts[].failed_episodes` (required): integer from 0 to 1000000000
- `cohorts[].inconclusive_episodes` (required): integer from 0 to 1000000000
- `cohorts[].attempts` (required): integer from 0 to 1000000000
- `cohorts[].total_cost_usd_micros` (required): null or integer from 0 to 1000000000000000
- `cohorts[].failed_attempt_cost_usd_micros` (required): null or integer from 0 to 1000000000000000
- `cohorts[].mean_episode_cost_usd_micros` (required): null or integer from 0 to 1000000000000000
- `cohorts[].cost_per_accepted_task_usd_micros` (required): null or integer from 0 to 1000000000000000
- `cohorts[].success_rate` (required): null or number from 0 to 1
- `cohorts[].p95_latency_seconds` (required): null or number from 0 to 2678400
- `cohorts[].latency_qualification` (required): one of `stable`, `unstable`, `unqualified`
- `comparisons` (required): array of 0 to 64 items, each map (fields listed below)
- `comparisons[].baseline_execution_lock` (required): sha256 digest, pattern `^sha256:[0-9a-f]{64}$`, at most 71 characters
- `comparisons[].candidate_execution_lock` (required): sha256 digest, pattern `^sha256:[0-9a-f]{64}$`, at most 71 characters
- `comparisons[].paired_unique_tasks` (required): integer from 0 to 1000000000
- `comparisons[].task_clusters` (required): integer from 0 to 1000000000
- `comparisons[].success_rate_difference` (required): map (fields listed below)
- `comparisons[].success_rate_difference.point` (required): null or number from -1 to 1
- `comparisons[].success_rate_difference.interval` (required): null or map (fields listed below)
- `comparisons[].episode_cost_difference` (required): map (fields listed below)
- `comparisons[].episode_cost_difference.point_usd_micros` (required): null or integer from -1000000000000000 to 1000000000000000
- `comparisons[].episode_cost_difference.interval` (required): null or map (fields listed below)
- `dimensions` (required): map (fields listed below)
- `dimensions.execution_source` (required): one of `registry_controlled`, `customer_controlled`, `self_reported`
- `dimensions.assignment_design` (required): one of `controlled_comparison`, `observational`, `unknown`
- `dimensions.validator_provenance` (required): one of `registered_deterministic_validator`, `registered_rubric`, `self_asserted`, `unknown`
- `dimensions.identity_verification` (required): one of `signature_verified`, `authenticated_only`, `unverified`
- `dimensions.environment_conformance` (required): one of `matched`, `deviated`, `unknown`
- `dimensions.publication_consent` (required): one of `not_granted`, `granted`
- `dimensions.tenant_scope` (required): one of `tenant_private`, `cross_tenant_consented`, `public`
- `uncertainty` (required): map (fields listed below)
- `uncertainty.method` (required): null or one of `task_cluster_bootstrap`, `repository_cluster_bootstrap`, `binomial_wilson`
- `uncertainty.confidence_level` (required): null or number from 0.5 to 0.9999
- `uncertainty.bootstrap_resamples` (required): null or integer from 1 to 1000000
- `uncertainty.bootstrap_seed` (required): null or integer from 0 to 9007199254740991
- `environment_differences` (required): array of 0 to 32 items, each identifier, pattern `^[a-z][a-z0-9_]{0,63}$`, at most 64 characters
- `limitations` (required): array of 0 to 32 items, each identifier, pattern `^[a-z][a-z0-9_]{0,63}$`, at most 64 characters
