fix(awooop): persist controlled apply receipt snapshots
This commit is contained in:
@@ -1092,12 +1092,45 @@ async def test_controlled_apply_result_receipt_marks_callback_reply_evidence(mon
|
||||
},
|
||||
}
|
||||
|
||||
async def fake_fetch_km_completion_summary(*, incident_id, project_id):
|
||||
assert incident_id == "INC-20260627-64472B"
|
||||
assert project_id == "awoooi"
|
||||
return {
|
||||
"schema_version": "km_stale_owner_review_completion_telegram_summary_v1",
|
||||
"status": "no_related_owner_review",
|
||||
"project_id": "awoooi",
|
||||
"incident_id": "INC-20260627-64472B",
|
||||
"missing_reason": "no_matching_completion_item",
|
||||
"ready_count": 10,
|
||||
"blocked_count": 0,
|
||||
"completed_count": 1,
|
||||
"failed_count": 0,
|
||||
"related_total": 0,
|
||||
"writes_on_read": False,
|
||||
"batch_writes_allowed": False,
|
||||
"manual_review_required": True,
|
||||
"triage": {
|
||||
"schema_version": "km_stale_callback_owner_review_triage_v1",
|
||||
"flow_stage": "callback_observed_owner_review_link_missing",
|
||||
"ai_lead_agent": "Hermes",
|
||||
"supporting_agents": ["OpenClaw"],
|
||||
"automation_state": "manual_owner_review_required",
|
||||
"safe_to_auto_repair": False,
|
||||
"blocking_reason": "no_matching_completion_item",
|
||||
"matching_strategy": "related_incident_id_exact_match",
|
||||
},
|
||||
}
|
||||
|
||||
monkeypatch.setattr(TelegramGateway, "alert_chat_id", property(lambda _self: "chat"))
|
||||
monkeypatch.setattr(gateway, "_send_request", fake_send_request)
|
||||
monkeypatch.setattr(
|
||||
"src.services.awooop_truth_chain_service.fetch_truth_chain",
|
||||
fake_fetch_truth_chain,
|
||||
)
|
||||
monkeypatch.setattr(
|
||||
"src.services.telegram_gateway._fetch_km_stale_completion_summary_for_incident",
|
||||
fake_fetch_km_completion_summary,
|
||||
)
|
||||
|
||||
result = await gateway.send_controlled_apply_result_receipt(
|
||||
incident_id="INC-20260627-64472B",
|
||||
@@ -1123,6 +1156,10 @@ async def test_controlled_apply_result_receipt_marks_callback_reply_evidence(mon
|
||||
assert source_extra["callback_reply"]["action"] == "controlled_apply_result"
|
||||
assert source_extra["callback_reply"]["status"] == "callback_reply_sent"
|
||||
assert source_extra["source_refs"]["incident_ids"] == ["INC-20260627-64472B"]
|
||||
km_snapshot = source_extra["km_stale_completion_summary"]
|
||||
assert km_snapshot["status"] == "no_related_owner_review"
|
||||
assert km_snapshot["ready_count"] == 10
|
||||
assert km_snapshot["triage"]["ai_lead_agent"] == "Hermes"
|
||||
snapshot = source_extra["awooop_status_chain"]
|
||||
assert snapshot["repair_state"] == "auto_repaired_verified"
|
||||
assert snapshot["operator_outcome"]["state"] == "completed_verified"
|
||||
|
||||
Reference in New Issue
Block a user