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 jsonReading Rule
Use this page when wiring another project to the generated pack. Use the individual lessons when learning what each contract means: