fix(awooop): advance parallel mainline during p0 wait
Some checks failed
CD Pipeline / workflow-shape (push) Successful in 0s
CD Pipeline / cancel-stale-cd (push) Has been skipped
CD Pipeline / tests (push) Successful in 57s
CD Pipeline / build-and-deploy (push) Successful in 8m0s
CD Pipeline / post-deploy-checks (push) Has been cancelled
Some checks failed
CD Pipeline / workflow-shape (push) Successful in 0s
CD Pipeline / cancel-stale-cd (push) Has been skipped
CD Pipeline / tests (push) Successful in 57s
CD Pipeline / build-and-deploy (push) Successful in 8m0s
CD Pipeline / post-deploy-checks (push) Has been cancelled
This commit is contained in:
@@ -1368,6 +1368,37 @@ def test_awoooi_priority_work_order_readback_routes_stockplatform_data_dependenc
|
||||
][0]
|
||||
|
||||
|
||||
def test_awoooi_priority_work_order_readback_allows_parallel_mainline_on_stockplatform_external_wait():
|
||||
payload = load_latest_awoooi_priority_work_order_readback()
|
||||
runtime = _stockplatform_runtime_source_contract_blocked()
|
||||
preflight = load_latest_stockplatform_public_api_controlled_recovery_preflight(
|
||||
runtime_readback=runtime
|
||||
)
|
||||
|
||||
apply_stockplatform_public_api_runtime_readback(payload, runtime)
|
||||
apply_stockplatform_public_api_controlled_recovery_preflight(payload, preflight)
|
||||
|
||||
parallel = payload["mainline_parallel_execution"]
|
||||
state = payload["mainline_execution_state"]
|
||||
assert parallel["enabled"] is True
|
||||
assert parallel["current_p0_wait_state"] == (
|
||||
"external_stockplatform_data_retry_wait"
|
||||
)
|
||||
assert parallel["retry_readback_at"]
|
||||
assert parallel["parallel_work_item"]["id"] == "CIR-P0-001"
|
||||
assert parallel["parallel_work_item"]["priority"] == "P0"
|
||||
assert parallel["report_contract"]["current_p0"] == "P0-006"
|
||||
assert "fake_stockplatform_freshness_marker" in parallel["forbidden_actions"]
|
||||
assert "db_write_or_restore_from_this_wait_lane" in parallel["forbidden_actions"]
|
||||
assert state["parallel_mainline_execution_enabled"] is True
|
||||
assert state["parallel_mainline_work_item_id"] == "CIR-P0-001"
|
||||
assert payload["summary"]["parallel_mainline_execution_enabled"] is True
|
||||
assert payload["summary"]["parallel_mainline_work_item_id"] == "CIR-P0-001"
|
||||
assert payload["summary"]["parallel_mainline_work_item_priority"] == "P0"
|
||||
assert payload["rollups"]["parallel_mainline_execution_enabled"] is True
|
||||
assert payload["rollups"]["parallel_mainline_work_item_id"] == "CIR-P0-001"
|
||||
|
||||
|
||||
def test_awoooi_priority_work_order_readback_normalizes_runtime_source_truth(
|
||||
monkeypatch: pytest.MonkeyPatch,
|
||||
):
|
||||
@@ -1780,6 +1811,72 @@ def _stockplatform_runtime_data_dependency_blocked() -> dict:
|
||||
}
|
||||
|
||||
|
||||
def _stockplatform_runtime_source_contract_blocked() -> dict:
|
||||
payload = _stockplatform_runtime_data_dependency_blocked()
|
||||
payload["safe_next_step"] = (
|
||||
"run_stockplatform_data_dependency_source_contract_readback_then_"
|
||||
"rerun_public_api_verifier"
|
||||
)
|
||||
payload["active_blockers"] = [
|
||||
"stockplatform_freshness_core_margin_short_daily_missing",
|
||||
"stockplatform_freshness_ai_recommendations_stale",
|
||||
"stockplatform_ingestion_core.margin_short_daily_incomplete",
|
||||
"stockplatform_post_apply_public_api_verifier_not_green",
|
||||
]
|
||||
payload["readback"]["data_dependency_classification"] = (
|
||||
"freshness_or_ingestion_not_ready"
|
||||
)
|
||||
payload["readback"]["postgres_not_ready"] = False
|
||||
payload["rollups"]["data_dependency_classification"] = (
|
||||
"freshness_or_ingestion_not_ready"
|
||||
)
|
||||
payload["rollups"]["postgres_not_ready"] = False
|
||||
payload["data_readiness_control_readback"] = {
|
||||
"schema_version": "stockplatform_postgres_readiness_or_data_source_readback_v1",
|
||||
"receipt_key": "stockplatform_postgres_readiness_or_data_source_readback",
|
||||
"status": "blocked_stockplatform_data_dependency_not_ready",
|
||||
"readback_present": True,
|
||||
"receipt_provided": True,
|
||||
"postgres_ready": False,
|
||||
"postgres_not_ready": False,
|
||||
}
|
||||
payload["source_contract_control_readback"] = {
|
||||
"schema_version": "stockplatform_source_contract_control_readback_v1",
|
||||
"receipt_key": "stockplatform_source_contract_readback",
|
||||
"status": "blocked_stockplatform_source_contract_not_ready",
|
||||
"readback_present": True,
|
||||
"receipt_provided": True,
|
||||
"source_contract_ready": False,
|
||||
"non_ok_source_count": 3,
|
||||
"active_blockers": [
|
||||
"stockplatform_freshness_core_margin_short_daily_missing",
|
||||
"stockplatform_freshness_ai_recommendations_stale",
|
||||
"stockplatform_ingestion_core.margin_short_daily_incomplete",
|
||||
],
|
||||
"blocking_sources": [
|
||||
{
|
||||
"source": "raw.source_quality_observations.unit_sanity",
|
||||
"category": "freshness",
|
||||
"status": "warning",
|
||||
"classification": "freshness_source_non_ok",
|
||||
},
|
||||
{
|
||||
"source": "core.margin_short_daily",
|
||||
"category": "freshness",
|
||||
"status": "missing",
|
||||
"classification": "freshness_source_non_ok",
|
||||
},
|
||||
{
|
||||
"source": "ai.recommendations",
|
||||
"category": "freshness",
|
||||
"status": "stale",
|
||||
"classification": "freshness_source_non_ok",
|
||||
},
|
||||
],
|
||||
}
|
||||
return payload
|
||||
|
||||
|
||||
def _harbor_registry_ready() -> dict:
|
||||
return {
|
||||
"schema_version": "harbor_registry_controlled_recovery_preflight_v1",
|
||||
|
||||
Reference in New Issue
Block a user