# Validation Ruleset Card

## Purpose

Use this card to keep local preflight and support-side receiving validation on the same rule version.

## Ruleset

- ruleset_id: orbisagent.customer_evidence
- ruleset_version:
- ruleset_hash:
- field_dictionary_version:
- preflight_tool_version:
- codex_contract_version: orbisagent.customer_evidence.v1
- effective_from:
- prepared_by:
- reviewed_by:

## Required Packet Fields

- contract_version
- packet_id
- ruleset_id
- ruleset_version
- ruleset_hash
- reviewed_by_human
- privacy_check
- agent_platform
- agent_source
- agent_name
- workflow
- runs

## Receiving Result

- codex_validation_status: not_submitted / accepted / rejected / schema_mismatch / needs_retry
- validation_failure_reason:
- exception_queue_id:
- next_retry_due_at:

## Rule

If ruleset_hash or field_dictionary_version does not match the current support-side rule, do not treat the packet as a Trace, Eval, or Finding source. Put it into the exception queue as schema_mismatch.
