fix(web): show authoritative P0 focus
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 1m13s
CD Pipeline / post-deploy-checks (push) Has been cancelled
CD Pipeline / build-and-deploy (push) Has been cancelled

This commit is contained in:
ogt
2026-07-10 22:19:12 +08:00
parent aceef51c87
commit 3fc1f8d263

View File

@@ -1200,6 +1200,8 @@ type CurrentP0ExecutionFocus = {
autostart_check_mode_ready?: boolean | null;
service_data_backup_closed?: boolean | null;
operation_boundaries?: {
low_medium_high_controlled_apply_allowed?: boolean | null;
critical_break_glass_required?: boolean | null;
secret_value_read?: boolean | null;
host_reboot?: boolean | null;
vm_power_change?: boolean | null;
@@ -11619,7 +11621,9 @@ function MainlineWorkProgressStrip({
programSummary?.completion_percent ??
(total > 0 ? Math.round((done / total) * 100) : 0)
);
const readiness = toCount(summary?.active_p0_readiness_percent);
const readiness = toCount(
focus?.readiness_percent ?? summary?.active_p0_readiness_percent
);
const nextId =
programSummary?.next_work_item_id ??
summary?.commander_inserted_requirement_next_id ??
@@ -11635,9 +11639,12 @@ function MainlineWorkProgressStrip({
summary?.commander_inserted_requirement_next_action ??
items[0]?.next_action ??
"--";
const currentP0 = summary?.active_p0_workplan_id ?? "--";
const currentState = summary?.active_p0_state ?? "--";
const currentP0 = focus?.workplan_id ?? summary?.active_p0_workplan_id ?? "--";
const currentState = focus?.state ?? summary?.active_p0_state ?? "--";
const activeBlockers = summary?.active_p0_live_active_blockers ?? [];
const activeBlockerCount = toCount(
focus?.active_blocker_count ?? activeBlockers.length
);
const primaryBlocker =
focus?.primary_blocker ??
summary?.active_p0_primary_blocker ??
@@ -11664,7 +11671,7 @@ function MainlineWorkProgressStrip({
summary?.current_p0_execution_focus_no_secret_verifier_ready ??
false;
const boundary = focus?.operation_boundaries;
const boundaryClosed =
const legacyBoundaryClosed =
boundary &&
boundary.secret_value_read === false &&
boundary.host_reboot === false &&
@@ -11672,6 +11679,14 @@ function MainlineWorkProgressStrip({
boundary.remote_write === false &&
boundary.database_write === false &&
boundary.github_api === false;
const controlledBoundaryReady =
boundary?.low_medium_high_controlled_apply_allowed === true &&
boundary?.critical_break_glass_required === true &&
boundary.secret_value_read === false &&
boundary.host_reboot === false &&
boundary.vm_power_change === false &&
boundary.github_api === false;
const boundaryClosed = legacyBoundaryClosed || controlledBoundaryReady;
const visibleItems = pickMainlineVisibleWorkItems(items, nextId, 6);
const statusMetrics = [
{
@@ -11844,7 +11859,7 @@ function MainlineWorkProgressStrip({
{t("primaryBlocker")}
</div>
<span className="font-mono text-[11px] font-semibold text-[#5f5b52]">
{t("blockerCount", { count: activeBlockers.length })}
{t("blockerCount", { count: activeBlockerCount })}
</span>
</div>
<div className="mt-2 truncate text-xs font-semibold text-[#141413]">