AI Contract Pack Audit

This appendix keeps the minimum-field checklist for the generated Circle AI contract pack. The AI Contract Suite page teaches the contract pattern; this page is for downstream implementers who need the exact consumer schema.

These fields are deterministic evidence fields in a generated JSON pack. They are not proof terms and not model-quality, speed, context-length, memory-saving, deployment-safety, or ASI claims. The proof status comes from the cited theorem ids and Lean declarations in the generated manifest.

Source Of Truth

The source of truth is:

site/data/generated/circle_ai_contract_pack.json
site/data/generated/circle_ai_contract_pack.schema.json
site/data/generated/circle_ai_contract_acceptance_policy.schema.json
site/data/generated/circle_ai_contract_acceptance_policy_report.schema.json
site/data/generated/circle_ai_contract_acceptance_receipt.schema.json
site/data/generated/circle_ai_downstream_rejection_report.schema.json
site/data/generated/circle_ai_contract_request.schema.json
site/data/generated/circle_ai_contract_request_validation.schema.json
site/data/generated/circle_ai_contract_receipt.schema.json
site/data/generated/circle_ai_contract_compact_receipt.schema.json
site/data/generated/circle_ai_contract_runner_check.schema.json
site/data/generated/circle_ai_contract_receipt_file_check.schema.json
site/data/generated/circle_ai_contract_receipt_replay_check.schema.json
site/data/generated/circle_ai_contract_certification_bundle.schema.json
site/data/generated/circle_ai_contract_certification_bundle_file_check.schema.json
site/data/generated/circle_ai_contract_artifact_manifest.schema.json
site/data/generated/circle_ai_contract_artifact_manifest_file_check.schema.json
contract_schema.minimum_fields_by_kind
contract_schema.minimum_field_catalog_by_kind
contract_schema.planner_recommendation_keys
planner_recommendation_index
acceptance_policy

The table below is checked by scripts/check_circle_ai_contract_docs.py, which fails if this page omits any generated minimum consumer field. The generated pack schema sidecar gives external validators the public JSON shape, site/data/generated/circle_ai_contract_acceptance_policy.schema.json gives them the pinned-policy lockfile shape, site/data/generated/circle_ai_contract_acceptance_policy_report.schema.json gives them the accepted multi-contract report shape, site/data/generated/circle_ai_contract_acceptance_receipt.schema.json gives them the individual strict-receipt shape, site/data/generated/circle_ai_downstream_rejection_report.schema.json gives them the standalone CI rejection shape, and the runner request/validation/full-receipt/compact-receipt/check/bundle/artifact-manifest schemas give them the parameterized certifier surface without importing Python. The generated field catalog adds each minimum field’s description, JSON value kind, and proof role for downstream consumers that do not import the Python helpers. Optional planner_recommendations records summarize copy-safe repair or audit actions over those fields and theorem ids; they do not upgrade a fixture into a performance claim. The top-level planner_recommendation_index is a generated lookup table over those same records, not a second source of truth. The top-level acceptance_policy block names the default lockfile, the first-party and standalone checkers, policy schema id circle_calculus.ai_contract_acceptance_policy.v0, report schema id circle_calculus.ai_contract_acceptance_policy_report.v0, receipt schema id circle_calculus.ai_contract_acceptance_receipt.v0, rejection report schema id circle_calculus.downstream_ci_rejection_report.v0, policy schema path site/data/generated/circle_ai_contract_acceptance_policy.schema.json, report schema path site/data/generated/circle_ai_contract_acceptance_policy_report.schema.json, receipt schema path site/data/generated/circle_ai_contract_acceptance_receipt.schema.json, rejection report schema path site/data/generated/circle_ai_downstream_rejection_report.schema.json, the fingerprint refresh command, and the requirement keys that remain pinned in downstream CI receipts.

Minimum Consumer Fields

Contract kind Minimum fields to read
rope_position_distinguishability certificate_schema_id, exact_discrete_pass, common_collision_gap, total_bank_collision_pair_count, real_phase_margin_pass, worst_margin_radians, real_phase_nearest_integer_certificate_bridge, real_phase_dirichlet_witness_guardrail, real_phase_margin_ceiling_guardrail, real_phase_exact_weakest_margin_ceiling_guardrail, d19_context_range_min_exclusive, d19_context_range_max_inclusive, d19_proved_request_status, d19_proved_request_theorem_backed_classification, d19_impossible_request_status, d19_impossible_request_theorem_backed_classification, d19_undecided_request_status, d19_undecided_margin_open_gap, d19_undecided_margin_interval_width, d19_undecided_request_relation, d19_margin_thresholds_ordered, d19_proved_impossible_branches_disjoint, d19_margin_status_exhaustive, d19_in_range_semantic_trichotomy, d19_proved_first_channel_bank_transfer, d19_proved_first_channel_bank_shape, d19_proved_first_channel_pair_scope, d19_proved_first_channel_context_wide_contract, d19_proved_first_channel_radian_bank_form, d19_proved_first_channel_bank_tolerance_rule, proof_layers
kv_cache_ring_buffer certificate_schema_id, adapter_request_pass, stale_requested_count, pass_iff_stale_count_zero_under_nonfuture_nodup, stale_probe_requested_tokens, stale_probe_requested_slots, stale_probe_pass, stale_probe_first_stale_token, stale_probe_first_stale_next_overwrite_token, stale_probe_stale_requested_count, stale_probe_stale_member_blocks_pass, stale_probe_pass_iff_stale_count_zero_under_nonfuture_nodup, stale_probe_fail_iff_stale_count_positive_under_nonfuture_nodup, sink_window_exact_policy, sink_window_tokens_distinct, sink_window_token_count, sink_window_token_count_bound, sink_window_token_count_le_sink_plus_cache, sink_window_disjoint_exact_token_count, sink_window_token_count_eq_sink_plus_live_window_when_disjoint, sink_prefix_disjoint_from_live_window, sink_rolling_tokens_retained, sink_tokens_are_seen_prefix, sink_tokens_non_future, sink_tokens_retained_by_policy, sink_tokens_outside_ordinary_rolling_window
sparse_attention_coverage certificate_schema_id, coverage_complete, covered_lag_count, uncovered_lag_count, uncovered_lag_intervals, first_uncovered_lag, first_uncovered_interval_start, first_uncovered_interval_stop, first_uncovered_interval_length, local_window_needed_to_cover_first_uncovered_interval, first_uncovered_interval_additional_local_slots, first_uncovered_interval_repair_reaches_interval, first_interval_repair_next_uncovered_lag, first_interval_repair_still_has_gap, first_interval_repair_covers_context, largest_uncovered_interval_start, largest_uncovered_interval_stop, largest_uncovered_interval_length, local_window_needed_to_cover_largest_uncovered_interval, largest_uncovered_interval_additional_local_slots, largest_uncovered_interval_repair_reaches_interval, largest_interval_repair_next_uncovered_lag, largest_interval_repair_still_has_gap, largest_interval_repair_covers_context, largest_uncovered_interval_is_tail, first_gap_local_window_shortfall, local_window_needed_to_cover_first_gap, current_window_below_first_gap, first_gap_repair_window_reaches, first_gap_repair_window_covers_context, first_gap_repair_window_is_final_positive_lag, first_gap_repair_threshold_matches_final_lag, local_window_complete_coverage_threshold, local_window_complete_coverage_shortfall, local_window_reaches_complete_coverage_threshold, local_window_threshold_certifies_complete, local_window_complete_threshold_is_exact_local_minimum, complete_repair_window, complete_repair_window_additional_local_slots, complete_repair_window_covers_context, complete_repair_window_uses_dense_threshold, complete_repair_window_minimal_for_declared_stride_family, complete_repair_window_minimal_witness_lag, interval_repair_plan, interval_repair_plan_step_count, interval_repair_plan_final_window, interval_repair_plan_covers_context, interval_repair_plan_strictly_progresses, first_gap_repair_window_reaches_complete_threshold, raw_budget_shortfall_certifies_incomplete, lag_unique_plus_loss_eq_raw, query_unique_plus_loss_eq_raw, lag_collision_pair_count, query_collision_pair_count, lag_collision_pair_count_zero_iff_no_collision, lag_collision_pair_count_positive_iff_collision, lag_collision_pair_count_bounds_dedup_loss, lag_collision_pair_count_excess_over_dedup_loss, query_collision_pair_count_zero_iff_no_collision, query_collision_pair_count_positive_iff_collision, query_collision_pair_count_bounds_dedup_loss, query_collision_pair_count_excess_over_dedup_loss
strided_candidate_fanout context_length, stride, candidate_budget, unique_candidate_count, effective_candidate_budget, duplicate_count, candidate_budget_accounting, effective_budget_matches_unique_candidates, candidate_budget_shortfall, effective_budget_reaches_predicted_reach, full_coverage, predicted_reach
recurrence_schedule required_steps, exit_step, loop_period, overthinking_boundary, active_step_one_is_full_range, first_step_active_token_count, first_step_inactive_token_count, first_step_inactive_count_zero, work_count_step, work_step_active_token_count, work_step_inactive_token_count, work_step_active_inactive_count_eq_token_count, post_period_active_empty, post_period_active_token_count, post_period_inactive_token_count, post_period_inactive_count_eq_token_count, active_token_sets_descend, active_token_lists_nodup, active_token_counts_bounded, active_token_counts_descend, inactive_token_counts_ascend, total_work_horizon_steps, active_token_count_trace, inactive_token_count_trace, active_token_count_trace_sum, inactive_token_count_trace_sum, active_token_count_trace_sum_matches_total, inactive_token_count_trace_sum_matches_total, first_inactive_steps, first_inactive_steps_match_budget_successor, total_active_token_work, total_inactive_token_work, full_loop_token_work, scheduled_work_saving, scheduled_work_saving_accounting, active_inactive_work_accounting, scheduled_work_saving_matches_inactive_work, scheduled_work_saving_positive, active_work_below_full_loop_work, scheduled_work_saving_positive_iff_active_work_shortfall, scheduled_work_saving_zero, active_work_equals_full_loop_work, scheduled_work_saving_zero_iff_no_active_work_shortfall, public_fixture_4_8_2_active_token_count, public_fixture_4_8_2_inactive_token_count, public_fixture_4_8_2_accounting_eq_token_count, public_fixture_4_8_4_total_active_token_work, public_fixture_4_8_4_total_inactive_token_work, public_fixture_8_4_full_loop_token_work, public_fixture_4_8_4_scheduled_work_saving, public_fixture_4_8_4_work_saving_accounting, public_fixture_4_8_4_active_inactive_work_accounting, public_fixture_4_8_4_work_saving_matches_inactive_work, public_fixture_4_8_4_scheduled_work_saving_positive, public_fixture_4_8_4_active_work_below_full_loop_work, public_fixture_4_8_4_positive_saving_iff_active_work_shortfall, public_fixture_4_8_4_scheduled_work_saving_zero, public_fixture_4_8_4_active_work_equals_full_loop_work, public_fixture_4_8_4_zero_saving_iff_no_active_work_shortfall, default_fixture_5_8_5_total_active_token_work, default_fixture_5_8_5_total_inactive_token_work, default_fixture_8_5_full_loop_token_work, default_fixture_5_8_5_scheduled_work_saving, default_fixture_5_8_5_work_saving_accounting, default_fixture_5_8_5_active_inactive_work_accounting, default_fixture_5_8_5_work_saving_matches_inactive_work, post_period_extension_horizon_steps, post_period_extension_total_active_token_work, post_period_extension_total_inactive_token_work, post_period_extension_full_loop_token_work, post_period_extension_scheduled_work_saving, post_period_extension_active_work_unchanged, post_period_extension_inactive_work_added_token_count, post_period_extension_saving_added_token_count, default_fixture_5_8_6_total_active_token_work, default_fixture_5_8_6_scheduled_work_saving, default_fixture_5_8_6_active_work_unchanged, default_fixture_5_8_6_saving_added_token_count, post_period_extra_steps, post_period_multi_extension_horizon_steps, post_period_multi_extension_total_active_token_work, post_period_multi_extension_total_inactive_token_work, post_period_multi_extension_full_loop_token_work, post_period_multi_extension_scheduled_work_saving, post_period_multi_extension_active_work_unchanged, post_period_multi_extension_inactive_work_added_extra_token_count, post_period_multi_extension_saving_added_extra_token_count, default_fixture_5_8_8_total_active_token_work, default_fixture_5_8_8_scheduled_work_saving, default_fixture_5_8_8_active_work_unchanged, default_fixture_5_8_8_saving_added_extra_token_count, periodic_shift_base_token, periodic_shift_passes, periodic_shift_amount, periodic_shifted_token, periodic_shift_required_steps_invariant, periodic_shift_recurrence_budget_invariant, periodic_shift_training_free_budget_invariant, periodic_shift_exit_step_invariant, periodic_shift_overthinking_boundary_invariant, periodic_shift_active_step, periodic_shift_active_at_step_invariant
cyclic_memory_residue_winding bank_size, event_count, residue_slot, winding, same_residue_events, same_residue_windings, max_alias_load
multicoil_phase_feature periods, position, phase_tuple, shifted_position, shifted_phase_tuple, joint_repeat_horizon, relative_period
circulant_block_cyclic_mixer period, input_values, kernel_values, circulant_output, dense_output, max_abs_dense_delta, dense_parameters, circulant_parameters, circulant_parameter_ratio
seed_rule_exact_regeneration artifact_id, fixture_n, seed, rules, generated_object, regenerated_object, exact_regeneration, explicit_length, generator_length, storage_saving, storage_saving_positive, generator_shorter, generator_shorter_iff_positive_saving, storage_saving_add_generator_length_eq_explicit_length, bounded_search_id, bounded_search_finite_search_space, bounded_search_candidate_count, bounded_search_exact_candidate_count, bounded_search_exact_candidate_count_le_candidate_count, bounded_search_has_best_exact, bounded_search_best_exact_exists_iff_exact_count_positive, bounded_search_best_exact_implies_candidate_count_positive, bounded_search_best_exact_artifact_id, bounded_search_best_exact_candidate_id, bounded_search_best_exact_regenerates, bounded_search_has_best_shorter, bounded_search_best_shorter_artifact_id, bounded_search_best_shorter_candidate_id, bounded_search_best_shorter_generator_shorter, bounded_search_candidates, bounded_search_candidate_ids_by_generator_length, bounded_search_exact_candidate_ids_by_generator_length, bounded_search_shorter_candidate_ids_by_generator_length, closure_condition

Audit Commands

make circle-ai-contracts-check
python scripts/check_circle_ai_contract_docs.py
python scripts/example_validate_circle_ai_contract_pack_schema.py --summary
python scripts/circle_ai_contract_ready.py --list-kinds
python scripts/circle_ai_contract_ready.py --list-recommendations
python scripts/circle_ai_contract_ready.py --acceptance-policy
python scripts/circle_ai_contract_ready.py --print-refreshed-policy
python scripts/circle_ai_contract_ready.py --acceptance-policy-report --format json
python scripts/check_circle_ai_contract_acceptance_policy.py --format json

Reading Rule

Use this page when wiring another project to the generated pack. Use the individual lessons when learning what each contract means: