presence_desired_state.v1.json (3011B)
1 { 2 "schema": "radroots.rhi.presence-desired-state", 3 "contract_version": 1, 4 "authority": { 5 "source": "complete_admitted_rhi_config_v1", 6 "modes": ["disabled", "enabled"], 7 "document_order": ["service_profile", "application_handler"], 8 "target_order": "configured_presence_target_relay_id_order", 9 "target_requiredness": "configured_relay_required_value", 10 "maximum_targets": 32, 11 "queue_capacity": { 12 "disabled": 0, 13 "enabled_minimum": 1, 14 "enabled_maximum": 4096 15 }, 16 "independent_validation": "exact_rederivation_from_same_complete_config" 17 }, 18 "target_set_digest": { 19 "hash": "sha256", 20 "domain_ascii_nul": "radroots.rhi.presence_target_set.v1\\0", 21 "framing": [ 22 "target_count_u32_be", 23 "for_each_target_in_order:ordinal_u32_be", 24 "relay_id_utf8_length_u64_be", 25 "relay_id_exact_utf8", 26 "required_u8" 27 ] 28 }, 29 "desired_state_digest": { 30 "hash": "sha256", 31 "domain_ascii_nul": "radroots.rhi.presence_desired_state.v1\\0", 32 "framing": [ 33 "mode_u8_disabled_0_enabled_1", 34 "document_count_u32_be", 35 "ordered_document_kind_u8_profile_0_application_handler_1", 36 "target_count_u32_be", 37 "for_each_target_same_framing_as_target_set", 38 "queue_capacity_u32_be", 39 "service_public_key_utf8_length_u64_be", 40 "service_public_key_exact_lowerhex_utf8" 41 ], 42 "excludes": [ 43 "configuration_fields_unrelated_to_presence", 44 "rendered_event", 45 "signature", 46 "authored_time", 47 "entropy", 48 "attempt", 49 "relay_url", 50 "network_outcome" 51 ] 52 }, 53 "durable_state": { 54 "table": "presence_desired_state", 55 "write_class": "compare_and_swap", 56 "rows": "exactly_zero_or_one", 57 "first_generation": 1, 58 "maximum_generation": 9223372036854775807, 59 "exact_replay": "no_mutation_same_generation", 60 "semantic_change": "single_cas_generation_increment", 61 "delete": "forbidden", 62 "current_config_binding": "required_before_commit", 63 "read_bounds": "at_most_two_rows_with_bounded_blob_and_text_projection" 64 }, 65 "commit_boundary": { 66 "before_rendering": true, 67 "before_signing": true, 68 "before_relay_io": true, 69 "commit_outcome_unknown": "typed_and_not_retried_as_uncommitted_without_reread" 70 }, 71 "separate_publication_authority": [ 72 "rendered_typed_events", 73 "exact_signed_bytes", 74 "per_document_target_state", 75 "delivery_attempts", 76 "retry_schedule", 77 "relay_io", 78 "observed_outcomes" 79 ], 80 "reference_vector": { 81 "config_fixture": "contracts/services_hardening/config.v1.example.toml", 82 "target_set_sha256": "959f04012841ae6e9bf3e109468b4f66cfa9d966aac1df36df09e45c1e1c48f9", 83 "desired_state_sha256": "7235f1e386e839427625dc364df7b51ee74d39d5f170e12b25cf2c42fd7731f0" 84 }, 85 "effects": { 86 "sqlite": "typed_repository_commit_and_read_only", 87 "clock": false, 88 "entropy": false, 89 "filesystem": false, 90 "task_spawn": false, 91 "network": false, 92 "relay_io": false 93 } 94 }