rhi

Coordinated trade for connected markets
git clone https://radroots.dev/git/rhi.git
Log | Files | Refs | README | LICENSE

reconciliation_finalization_commit.v1.json (3014B)


      1 {
      2   "schema": "radroots.rhi.reconciliation-finalization-commit",
      3   "schema_version": 1,
      4   "contract_version": 1,
      5   "authority": "sealed_signed_attestation_plus_exact_config_derived_publication_authority",
      6   "input": {
      7     "attestation": "borrowed_sealed_step_196_signed_attestation",
      8     "publication": "same_normalized_configuration_as_open_state_host",
      9     "time": "caller_injected_integer_utc_milliseconds",
     10     "network": false
     11   },
     12   "transaction": {
     13     "count": 1,
     14     "boundary": "one_short_service_sqlite_transaction",
     15     "reconcile_exact_prior_success_before_consumed_lease_validation": true,
     16     "fences_before_first_write": [
     17       "exact_live_lease",
     18       "exact_dirty_generation",
     19       "exact_evidence_policy_digest",
     20       "exact_committed_attempt",
     21       "exact_manifest_source_inventory",
     22       "every_advanced_checkpoint",
     23       "exact_superseded_statement_and_event_pair",
     24       "configured_publication_queue_capacity"
     25     ],
     26     "atomic_writes": [
     27       "canonical_manifest",
     28       "projection",
     29       "canonical_report",
     30       "exact_verified_signed_event_bytes",
     31       "explicit_supersession",
     32       "required_publication_outbox",
     33       "immutable_ordered_publication_targets",
     34       "completed_reconciliation_job"
     35     ]
     36   },
     37   "publication": {
     38     "required": "one_pending_outbox_plus_exact_configured_target_inventory",
     39     "disabled": "no_outbox_and_no_target_rows",
     40     "outbox_identity": "sha256_domain_plus_event_id_plus_authority_digest_plus_target_set_digest",
     41     "relay_io": false,
     42     "claim_or_submission": false
     43   },
     44   "idempotency": {
     45     "identity": "exact_attestation_and_publication_immutable_footprint",
     46     "exact_retry": "created_false_even_after_lease_consumption_or_expiry",
     47     "later_checkpoint_or_outbox_progress": "does_not_change_immutable_success_reconciliation",
     48     "mismatch": "conflict",
     49     "commit_acknowledgement_loss": "commit_outcome_unknown_then_exact_retry"
     50   },
     51   "result": {
     52     "created": "true_for_first_commit_false_for_exact_reconciliation",
     53     "publication_mode": [
     54       "required",
     55       "disabled"
     56     ],
     57     "target_count": "exact_u8_or_zero_when_disabled",
     58     "debug": "mode_and_counts_only",
     59     "errors": "crate_owned_source_free_redacted"
     60   },
     61   "effects": {
     62     "sqlite_read": true,
     63     "sqlite_write": true,
     64     "filesystem": false,
     65     "source_or_relay": false,
     66     "network": false,
     67     "task_spawn": false,
     68     "ambient_clock": false,
     69     "ambient_entropy": false
     70   },
     71   "forbidden": [
     72     "manifest_or_projection_recomputation",
     73     "report_or_signed_event_reserialization",
     74     "stale_lease_or_generation_commit",
     75     "partial_finalization_inventory",
     76     "publication_from_a_different_configuration",
     77     "implicit_publication_when_disabled",
     78     "relay_io_inside_transaction",
     79     "checkpoint_advance",
     80     "raw_sqlx_authority_escape"
     81   ],
     82   "deferred": [
     83     "publication_claims",
     84     "relay_submission",
     85     "publication_result_recording",
     86     "retry_and_terminal_outbox_state",
     87     "integration_wave_qualification"
     88   ]
     89 }