fix(priority): expose runtime readback freshness
All checks were successful
CD Pipeline / workflow-shape (push) Successful in 0s
CD Pipeline / cancel-stale-cd (push) Has been skipped
CD Pipeline / tests (push) Successful in 47s
CD Pipeline / build-and-deploy (push) Successful in 4m22s
CD Pipeline / post-deploy-checks (push) Successful in 1m44s
All checks were successful
CD Pipeline / workflow-shape (push) Successful in 0s
CD Pipeline / cancel-stale-cd (push) Has been skipped
CD Pipeline / tests (push) Successful in 47s
CD Pipeline / build-and-deploy (push) Successful in 4m22s
CD Pipeline / post-deploy-checks (push) Successful in 1m44s
This commit is contained in:
@@ -812,6 +812,7 @@ def load_latest_awoooi_priority_work_order_readback(
|
||||
_enrich_from_current_readbacks(payload)
|
||||
_require_mainline_consistency(payload, str(path))
|
||||
_apply_commander_inserted_requirement_work_items(payload)
|
||||
_mark_runtime_generated_at(payload)
|
||||
return payload
|
||||
|
||||
|
||||
@@ -960,6 +961,8 @@ def apply_controlled_cd_lane_live_metric_readback(
|
||||
active_blockers
|
||||
)
|
||||
|
||||
_mark_runtime_generated_at(payload)
|
||||
|
||||
|
||||
def apply_stockplatform_public_api_runtime_readback(
|
||||
payload: dict[str, Any],
|
||||
@@ -3329,6 +3332,27 @@ def _apply_commander_inserted_requirement_work_items(
|
||||
)
|
||||
|
||||
|
||||
def _mark_runtime_generated_at(payload: dict[str, Any]) -> None:
|
||||
snapshot_generated_at = str(
|
||||
payload.get("snapshot_generated_at") or payload.get("generated_at") or ""
|
||||
)
|
||||
runtime_generated_at = _taipei_now_iso()
|
||||
|
||||
if snapshot_generated_at:
|
||||
payload["snapshot_generated_at"] = snapshot_generated_at
|
||||
payload["generated_at"] = runtime_generated_at
|
||||
payload["runtime_readback_generated_at"] = runtime_generated_at
|
||||
|
||||
summary = _dict(payload.setdefault("summary", {}))
|
||||
if snapshot_generated_at:
|
||||
summary["snapshot_generated_at"] = snapshot_generated_at
|
||||
summary["generated_at"] = runtime_generated_at
|
||||
summary["runtime_readback_generated_at"] = runtime_generated_at
|
||||
|
||||
rollups = _dict(payload.setdefault("rollups", {}))
|
||||
rollups["runtime_readback_generated_at_present"] = True
|
||||
|
||||
|
||||
def _require_schema(payload: dict[str, Any], label: str) -> None:
|
||||
actual = payload.get("schema_version")
|
||||
if actual != _SCHEMA_VERSION:
|
||||
|
||||
@@ -43,6 +43,10 @@ def test_awoooi_priority_work_order_readback_loader_returns_mainline_order():
|
||||
payload = load_latest_awoooi_priority_work_order_readback()
|
||||
|
||||
assert payload["schema_version"] == "awoooi_priority_work_order_readback_v1"
|
||||
assert payload["snapshot_generated_at"] == "2026-06-29T23:50:52+08:00"
|
||||
assert payload["generated_at"] != payload["snapshot_generated_at"]
|
||||
assert payload["generated_at"].endswith("+08:00")
|
||||
assert payload["runtime_readback_generated_at"] == payload["generated_at"]
|
||||
assert payload["status"] == "p0_006_blocked_reboot_auto_recovery_slo_not_ready"
|
||||
assert payload["mainline_execution_state"]["active_p0_workplan_id"] == "P0-006"
|
||||
assert payload["mainline_execution_state"]["active_p0_state"] == (
|
||||
@@ -248,6 +252,12 @@ def test_awoooi_priority_work_order_readback_loader_returns_mainline_order():
|
||||
payload["summary"]["controlled_service_data_backup_readback_present"]
|
||||
is True
|
||||
)
|
||||
assert payload["summary"]["snapshot_generated_at"] == payload[
|
||||
"snapshot_generated_at"
|
||||
]
|
||||
assert payload["summary"]["runtime_readback_generated_at"] == payload[
|
||||
"runtime_readback_generated_at"
|
||||
]
|
||||
assert payload["summary"]["controlled_service_data_backup_blocker_count"] == 4
|
||||
assert payload["summary"][
|
||||
"controlled_service_data_backup_next_safe_action"
|
||||
@@ -373,6 +383,10 @@ def test_awoooi_priority_work_order_readback_endpoint_returns_snapshot(
|
||||
|
||||
assert response.status_code == 200
|
||||
data = response.json()
|
||||
assert data["snapshot_generated_at"] == "2026-06-29T23:50:52+08:00"
|
||||
assert data["generated_at"] != data["snapshot_generated_at"]
|
||||
assert data["runtime_readback_generated_at"] == data["generated_at"]
|
||||
assert data["summary"]["runtime_readback_generated_at"] == data["generated_at"]
|
||||
assert data["status"] == "p0_006_blocked_ai_loop_current_blocker_execution_queue"
|
||||
assert data["mainline_execution_state"]["active_p0_workplan_id"] == "P0-006"
|
||||
assert data["mainline_execution_state"]["active_p0_state"] == (
|
||||
|
||||
Reference in New Issue
Block a user