Compare commits

...
3 changed files with 73 additions and 31 deletions
@@ -1,7 +1,7 @@
{
"contract_commit": "cbe33ecab8e9794ba5f318bea43aeaf447a56fbc",
"created_at": "2026-07-18T04:58:00+00:00",
"schema_version": 2,
"created_at": "2026-07-18T09:37:00+00:00",
"schema_version": 3,
"state_writer": "gateway",
"work_units": [
{
@@ -70,7 +70,25 @@
"depends_on": "Q2-FAILOVER-HEALTHCHECK",
"quorum": "requires_gpt_plus_one_executor",
"required_scenarios": 16,
"may_mark_pass_without_live_evidence": false
"may_mark_pass_without_live_evidence": false,
"scenarios": [
"GPT+OpenClaw-healthy-Codex-stopped-two-cycles",
"GPT+Codex-healthy-OpenClaw-stopped-two-cycles",
"Both-healthy-route-by-workload",
"Active-stops-standby-auto-failover-no-duplicates",
"Standby-alone-stopped-no-block",
"GPT-stopped-block-even-with-both-executors",
"GPT-healthy-both-executors-stopped-block",
"UNKNOWN-never-counts-as-healthy",
"HTTP-failure-then-file-polling-recovery",
"Webhook-missed-then-git-ref-polling-recovery",
"Gateway-restart-recovers-event-lease-outbox",
"Same-event-id-no-redispatch",
"Same-blocker-threshold-dead-letter",
"Workspace-Agent-fallback-to-Responses-with-valid-credentials",
"OpenClaw-offline-Codex-lifecycle-persisted",
"Codex-offline-OpenClaw-lifecycle-persisted"
]
}
]
}
@@ -59,8 +59,15 @@
"health_definition": {
"live_probe_required": true,
"workspace_agent_validated_live_or_responses_validated_live": true,
"required_real_channels": true,
"rejects": [
"dummy_acceptance_key",
"config_presence_only",
"credential_presence_only"
],
"configuration_or_credential_presence_is_insufficient": true,
"unknown_is_not_healthy": true
"unknown_is_not_healthy": true,
"no_health_without_channel": true
},
"independent_review": {
"single_executor_mode": true,
@@ -73,7 +80,9 @@
"worktree_bare_gitea_oid",
"live_runtime_evidence"
],
"model_judgment_insufficient": true
"model_judgment_insufficient": true,
"both_executors_healthy_extra_reviewer_available": true,
"extra_reviewer_not_mandatory_gate": true
}
},
"contract_id": "V2R1-PERSONAL-WEIXIN-PRODUCTION-EXECUTION-CONTRACT",
@@ -93,18 +102,6 @@
"GPT_OR_SOLE_EXECUTOR_UNKNOWN"
]
},
"automation_closed_success_conditions": [
"CENTRAL_GPT_HEALTH=PASS",
"EXECUTOR_QUORUM=PASS",
"ACTIVE_EXECUTOR=openclaw|codex",
"EVENT_TRIGGER=PASS",
"POLLING=PASS",
"FAILOVER=PASS",
"LIFECYCLE_SYNC=PASS",
"TWO_CYCLE_UNATTENDED_LOOP=PASS",
"RESTART_RECOVERY=PASS",
"AUTOMATION_CLOSED=PASS"
],
"gateway_lifecycle_events": [
"TASK_DISPATCHED",
"TASK_STARTED",
@@ -145,7 +142,7 @@
"reuse_accident_worktree",
"delete_live_worktree_to_clear_collision"
],
"generated_at": "2026-07-18T04:58:00+00:00",
"generated_at": "2026-07-18T09:37:00+00:00",
"handoff": {
"ack": "CONTRACT_ACK=<full_contract_commit_oid>",
"advance": "independent_verification_required",
@@ -244,5 +241,29 @@
"live_rollback"
]
}
},
"automation_closed": {
"success_criteria": {
"CENTRAL_GPT_HEALTH": "PASS",
"EXECUTOR_QUORUM": "PASS",
"ACTIVE_EXECUTOR": "openclaw|codex",
"EVENT_TRIGGER": "PASS",
"POLLING": "PASS",
"FAILOVER": "PASS",
"LIFECYCLE_SYNC": "PASS",
"TWO_CYCLE_UNATTENDED_LOOP": "PASS",
"RESTART_RECOVERY": "PASS",
"AUTOMATION_CLOSED": "PASS"
},
"no_longer_require": [
"OPENCLAW_AUTO_CLAIM=PASS",
"CODEX_AUTO_CLAIM=PASS"
],
"only_current_active_executor_claim_required": true
},
"lifecycle_ownership": {
"authoritative_persister": "gateway",
"openclaw_online_mirror": true,
"openclaw_offline_behavior": "gateway_persists_directly"
}
}
@@ -6,7 +6,10 @@
"contract_commit": "cbe33ecab8e9794ba5f318bea43aeaf447a56fbc",
"dispatch_commit": null,
"executor_quorum": {
"candidates": ["openclaw", "codex"],
"candidates": [
"openclaw",
"codex"
],
"minimum_healthy": 1,
"openclaw": "UNKNOWN",
"codex": "UNKNOWN"
@@ -15,15 +18,15 @@
"standby_executor": null,
"central_gpt": "UNKNOWN",
"automation_closed": {
"central_gpt_health": "UNKNOWN",
"executor_quorum": "UNKNOWN",
"active_executor": null,
"event_trigger": "UNKNOWN",
"polling": "UNKNOWN",
"failover": "UNKNOWN",
"lifecycle_sync": "UNKNOWN",
"two_cycle_unattended_loop": "UNKNOWN",
"restart_recovery": "UNKNOWN",
"CENTRAL_GPT_HEALTH": "UNKNOWN",
"EXECUTOR_QUORUM": "UNKNOWN",
"ACTIVE_EXECUTOR": null,
"EVENT_TRIGGER": "UNKNOWN",
"POLLING": "UNKNOWN",
"FAILOVER": "UNKNOWN",
"LIFECYCLE_SYNC": "UNKNOWN",
"TWO_CYCLE_UNATTENDED_LOOP": "UNKNOWN",
"RESTART_RECOVERY": "UNKNOWN",
"result": "NOT_STARTED"
},
"lifecycle_events": [],
@@ -31,14 +34,14 @@
"release": "paused",
"repair3": "PASS_CANDIDATE_PREPARED",
"runner": "BLOCKED_GATEWAY_SECRET_REF_UNAVAILABLE",
"schema_version": 2,
"schema_version": 3,
"single_state_writer": "gateway",
"single_state_writer_lease_required": true,
"quorum_controller": {
"implementation": "CODE_COMMITTED_TESTED_PENDING_LIVE_ACCEPTANCE",
"live_acceptance": "NOT_STARTED",
"health_source": "ROOT_OWNED_METADATA_ONLY_LIVE_PROBE_RECEIPTS",
"unknown_counts_as_healthy": false
},
"updated_at": "2026-07-18T04:58:00+00:00"
"updated_at": "2026-07-18T09:37:00+00:00",
"gateway_persists_authoritative_state": true
}