/home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114840:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114840:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114840:464: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114840:466: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114840:467: getJson("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114840:468: getJson("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114840:469: getJson("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114840:497: openJson("host_runtime.json", state.hostRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114840:500: openJson("docker_runtime.json", state.dockerRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114840:503: openJson("runtime_status.json", state.runtimeStatus); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:224: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:529: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:530: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:535: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:542: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:549: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:793: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:1059: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:1074: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:1075: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:1076: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:1077: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:1082: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:1083: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:1084: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:1120: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:1123: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:1126: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_matrix_purge_20260407_105807:1169: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163606:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163606:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163606:491: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163606:506: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163606:508: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163606:513: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163606:514: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163606:515: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163606:544: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163606:547: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163606:550: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:483: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:484: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:489: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:496: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:503: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:759: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:1055: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:1070: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:1071: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:1072: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:1074: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:1079: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:1080: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:1081: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:1117: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:1120: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:1123: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_after_nav_patch_20260405_144740:1166: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-093703:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-093703:61: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-093703:446: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-093703:448: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-093703:449: getJson("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-093703:450: getJson("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-093703:451: getJson("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-093703:479: openJson("host_runtime.json", state.hostRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-093703:482: openJson("docker_runtime.json", state.dockerRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-093703:485: openJson("runtime_status.json", state.runtimeStatus); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:218: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:523: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:524: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:529: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:536: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:543: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:763: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:1029: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:1055: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:1056: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:1057: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:1058: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:1063: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:1064: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:1065: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:1097: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:1100: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:1103: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.refactor_ui_20260409_081202:1146: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:405: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:406: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:411: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:418: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:425: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:919: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:934: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:935: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:936: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:938: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:943: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:944: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:945: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:981: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:984: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:987: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160922:1030: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:505: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:506: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:511: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:518: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:525: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:782: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:1048: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:1063: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:1064: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:1065: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:1067: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:1072: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:1073: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:1074: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:1110: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:1113: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:1116: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_snapshot_boundary_20260405_164823:1159: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:374: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:375: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:380: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:387: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:394: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:885: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:900: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:901: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:902: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:904: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:909: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:910: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:911: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:947: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:950: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:953: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.target_section_fix2_20260403_032033:996: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162550:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162550:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162550:492: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162550:507: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162550:509: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162550:514: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162550:515: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162550:516: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162550:545: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162550:548: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162550:551: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:218: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:523: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:524: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:529: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:536: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:543: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:787: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:1053: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:1068: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:1069: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:1070: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:1071: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:1076: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:1077: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:1078: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:1114: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:1117: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:1120: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_20260407_112808:1163: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:453: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:454: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:459: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:466: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:473: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:729: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:987: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:1002: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:1003: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:1004: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:1006: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:1011: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:1012: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:1013: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:1049: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:1052: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:1055: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_nav_real_20260404_134045:1098: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_161436:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_161436:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_161436:494: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_161436:509: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_161436:511: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_161436:516: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_161436:517: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_161436:518: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_161436:547: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_161436:550: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_161436:553: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_162514:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_162514:85: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_162514:706: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_162514:721: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_162514:723: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_162514:728: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_162514:729: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_162514:730: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_162514:763: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_162514:766: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_162514:769: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260328_205825:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260328_205825:82: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260328_205825:637: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260328_205825:652: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260328_205825:654: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260328_205825:659: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260328_205825:660: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260328_205825:661: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260328_205825:690: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260328_205825:693: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260328_205825:696: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:483: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:484: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:489: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:496: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:503: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:759: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:1017: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:1032: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:1033: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:1034: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:1036: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:1041: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:1042: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:1043: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:1079: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:1082: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:1085: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.helper_safe_20260405_162249:1128: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js:286: const res = await fetch(DATA_BASE + name, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js:291: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js:355: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js:394: const gp = state.projectProgress && state.projectProgress.global_project_progress; /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js:586: els.selectedStageDesc.textContent = "Stage completion is read from runtime_status stage_rollup.progress_pct."; /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js:629: getJsonOptional("panel_manifest.json"), /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js:630: getJsonOptional("hub_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js:631: getJsonOptional("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js:632: getJsonOptional("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js:633: getJsonOptional("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js:634: getJsonOptional("project_progress.json"), /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js:635: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js:636: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js:637: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_132530:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_132530:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_132530:821: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_132530:836: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_132530:837: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_132530:838: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_132530:840: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_132530:845: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_132530:846: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_132530:847: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_132530:883: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_132530:886: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_132530:889: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_132530:932: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260326_093658:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260326_093658:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260326_093658:523: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260326_093658:538: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260326_093658:540: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260326_093658:545: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260326_093658:546: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260326_093658:547: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260326_093658:576: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260326_093658:579: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260326_093658:582: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_181123:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_181123:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_181123:282: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_181123:297: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_181123:299: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_181123:304: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_181123:305: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_181123:306: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_181123:323: sourceHashes["16_host_runtime.json"], /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_181123:324: sourceHashes["17_docker_runtime.json"], /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_181123:325: sourceHashes["18_runtime_status.json"] /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_181123:360: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_181123:363: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_181123:366: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:453: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:454: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:459: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:466: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:473: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:969: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:984: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:985: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:986: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:988: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:993: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:994: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:995: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:1031: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:1034: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:1037: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step5_selected_stage_20260403_173603:1080: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:217: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:514: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:515: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:520: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:527: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:534: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:791: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:1057: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:1072: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:1073: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:1074: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:1076: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:1081: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:1082: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:1083: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:1119: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:1122: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:1125: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_pending_20260406_165048:1168: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:405: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:406: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:411: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:418: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:425: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:919: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:934: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:935: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:936: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:938: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:943: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:944: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:945: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:981: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:984: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:987: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_20260403_160243:1030: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:505: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:506: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:511: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:518: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:525: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:782: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:1049: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:1064: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:1065: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:1066: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:1068: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:1073: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:1074: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:1075: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:1111: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:1114: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:1117: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_all_smoke_autocalls_20260405_165322:1160: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:483: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:484: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:489: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:496: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:503: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:759: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:1017: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:1032: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:1033: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:1034: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:1036: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:1041: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:1042: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:1043: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:1079: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:1082: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:1085: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_rows_family_20260405_134057:1128: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:505: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:506: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:511: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:518: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:525: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:782: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:1049: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:1064: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:1065: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:1066: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:1068: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:1073: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:1074: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:1075: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:1111: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:1114: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:1117: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.kill_smoke_loop_20260405_165153:1160: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_170918:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_170918:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_170918:218: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_170918:233: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_170918:235: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_170918:240: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_170918:241: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_170918:242: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_170918:259: sourceHashes["16_host_runtime.json"], /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_170918:260: sourceHashes["17_docker_runtime.json"], /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_170918:261: sourceHashes["18_runtime_status.json"] /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_170918:296: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_170918:299: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_170918:302: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150842:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150842:82: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150842:649: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150842:664: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150842:666: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150842:671: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150842:672: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150842:673: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150842:706: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150842:709: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150842:712: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:505: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:506: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:511: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:518: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:525: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:782: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:1041: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:1056: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:1057: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:1058: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:1060: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:1065: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:1066: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:1067: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:1103: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:1106: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:1109: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.renderrows_final_by_range_20260405_162954:1152: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:218: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:523: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:524: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:529: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:536: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:543: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:787: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:1053: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:1068: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:1069: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:1070: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:1071: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:1076: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:1077: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:1078: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:1114: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:1117: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:1120: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.zone_shell_finalize_fix2_20260407_113434:1163: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_151518:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_151518:84: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_151518:681: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_151518:696: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_151518:698: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_151518:703: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_151518:704: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_151518:705: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_151518:738: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_151518:741: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_151518:744: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120843:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120843:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120843:511: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120843:513: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120843:514: getJson("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120843:515: getJson("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120843:516: getJson("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120843:544: openJson("host_runtime.json", state.hostRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120843:547: openJson("docker_runtime.json", state.dockerRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120843:550: openJson("runtime_status.json", state.runtimeStatus); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160847:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160847:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160847:523: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160847:538: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160847:540: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160847:545: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160847:546: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160847:547: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160847:576: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160847:579: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160847:582: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:219: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:516: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:517: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:522: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:529: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:536: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:798: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:1064: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:1079: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:1080: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:1081: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:1083: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:1088: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:1089: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:1090: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:1126: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:1129: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:1132: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore_20260406_192019:1175: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:218: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:523: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:524: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:529: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:536: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:543: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:774: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:1040: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:1055: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:1056: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:1057: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:1058: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:1063: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:1064: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:1065: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:1096: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:1099: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:1102: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.select_stage_safe_20260407_224205:1145: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:453: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:454: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:459: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:466: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:473: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:729: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:987: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:1002: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:1003: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:1004: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:1006: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:1008: getJson("hub_index.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:1012: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:1013: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:1014: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:1051: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:1054: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:1057: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_overlay_20260404_191056:1100: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120320:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120320:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120320:513: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120320:515: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120320:516: getJson("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120320:517: getJson("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120320:518: getJson("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120320:546: openJson("host_runtime.json", state.hostRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120320:549: openJson("docker_runtime.json", state.dockerRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-120320:552: openJson("runtime_status.json", state.runtimeStatus); /home/yeff/public_html/devon/panel/assets/js/panel.js.smoke_insert_line.20260326_114355.bak:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.smoke_insert_line.20260326_114355.bak:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.smoke_insert_line.20260326_114355.bak:523: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.smoke_insert_line.20260326_114355.bak:538: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.smoke_insert_line.20260326_114355.bak:540: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.smoke_insert_line.20260326_114355.bak:545: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.smoke_insert_line.20260326_114355.bak:546: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.smoke_insert_line.20260326_114355.bak:547: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.smoke_insert_line.20260326_114355.bak:576: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.smoke_insert_line.20260326_114355.bak:579: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.smoke_insert_line.20260326_114355.bak:582: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:483: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:484: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:489: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:496: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:503: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:759: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:1058: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:1073: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:1074: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:1075: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:1077: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:1082: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:1083: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:1084: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:1120: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:1123: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:1126: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.broken_20260405_141825:1169: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_155940:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_155940:84: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_155940:694: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_155940:709: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_155940:711: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_155940:716: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_155940:717: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_155940:718: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_155940:751: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_155940:754: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_155940:757: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:217: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:522: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:523: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:528: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:535: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:542: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:799: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:1065: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:1080: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:1081: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:1082: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:1084: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:1089: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:1090: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:1091: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:1127: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:1130: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:1133: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_getRowsForStage_to_stageRows_20260405_170818:1176: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:368: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:369: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:374: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:381: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:388: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:879: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:894: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:895: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:896: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:898: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:903: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:904: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:905: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:941: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:944: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:947: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_fake_observed_donuts_20260402_202142:990: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.layer_runtime_split_20260331_214743:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.layer_runtime_split_20260331_214743:88: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.layer_runtime_split_20260331_214743:752: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.layer_runtime_split_20260331_214743:767: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.layer_runtime_split_20260331_214743:769: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.layer_runtime_split_20260331_214743:774: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.layer_runtime_split_20260331_214743:775: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.layer_runtime_split_20260331_214743:776: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.layer_runtime_split_20260331_214743:810: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.layer_runtime_split_20260331_214743:813: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.layer_runtime_split_20260331_214743:816: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.layer_runtime_split_20260331_214743:859: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:453: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:454: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:459: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:466: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:473: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:729: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:987: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:1002: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:1003: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:1004: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:1006: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:1011: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:1012: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:1013: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:1049: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:1052: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:1055: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_20260404_131247:1098: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore.20260325_171858:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore.20260325_171858:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore.20260325_171858:282: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore.20260325_171858:297: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore.20260325_171858:299: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore.20260325_171858:304: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore.20260325_171858:305: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore.20260325_171858:306: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore.20260325_171858:323: sourceHashes["16_host_runtime.json"], /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore.20260325_171858:324: sourceHashes["17_docker_runtime.json"], /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore.20260325_171858:325: sourceHashes["18_runtime_status.json"] /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore.20260325_171858:360: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore.20260325_171858:363: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_restore.20260325_171858:366: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:217: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:514: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:515: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:520: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:527: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:534: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:791: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:1057: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:1072: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:1073: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:1074: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:1076: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:1081: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:1082: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:1083: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:1119: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:1122: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:1125: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_global_project_progress_typo_20260406_161906:1168: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162130:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162130:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162130:494: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162130:509: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162130:511: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162130:516: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162130:517: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162130:518: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162130:547: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162130:550: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_162130:553: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:218: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:523: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:524: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:529: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:536: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:543: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:774: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:1040: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:1084: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:1085: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:1086: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:1087: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:1092: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:1093: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:1094: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:1126: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:1129: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:1132: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.recover_render_20260408_034351:1175: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.fix_20260325_191531.bak:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.fix_20260325_191531.bak:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.fix_20260325_191531.bak:523: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.fix_20260325_191531.bak:538: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.fix_20260325_191531.bak:540: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.fix_20260325_191531.bak:545: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.fix_20260325_191531.bak:546: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.fix_20260325_191531.bak:547: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.fix_20260325_191531.bak:576: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.fix_20260325_191531.bak:579: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.fix_20260325_191531.bak:582: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160029:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160029:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160029:520: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160029:535: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160029:537: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160029:542: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160029:543: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160029:544: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160029:573: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160029:576: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_160029:579: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.restore_fix.20260326_095220.bak:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.restore_fix.20260326_095220.bak:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.restore_fix.20260326_095220.bak:524: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.restore_fix.20260326_095220.bak:539: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.restore_fix.20260326_095220.bak:541: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.restore_fix.20260326_095220.bak:546: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.restore_fix.20260326_095220.bak:547: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.restore_fix.20260326_095220.bak:548: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.restore_fix.20260326_095220.bak:577: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.restore_fix.20260326_095220.bak:580: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.restore_fix.20260326_095220.bak:583: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_141005:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_141005:82: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_141005:649: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_141005:664: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_141005:666: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_141005:671: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_141005:672: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_141005:673: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_141005:703: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_141005:706: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_141005:709: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_130515:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_130515:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_130515:622: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_130515:637: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_130515:639: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_130515:644: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_130515:645: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_130515:646: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_130515:675: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_130515:678: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_130515:681: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_160314:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_160314:84: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_160314:698: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_160314:713: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_160314:715: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_160314:720: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_160314:721: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_160314:722: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_160314:755: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_160314:758: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_160314:761: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_164946:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_164946:88: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_164946:748: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_164946:763: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_164946:765: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_164946:770: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_164946:771: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_164946:772: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_164946:806: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_164946:809: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_164946:812: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:405: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:406: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:411: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:418: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:425: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:919: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:934: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:935: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:936: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:938: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:943: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:944: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:945: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:981: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:984: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:987: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.donut_family_standard_20260403_034532:1030: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:14: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:103: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:465: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:466: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:471: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:478: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:485: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:741: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:1004: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:1019: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:1020: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:1021: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:1023: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:1025: getJson("hub_index.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:1029: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:1030: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:1031: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:1068: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:1071: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:1074: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.safe_overlay_20260404_191211:1117: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js.bak.pipeline_section_20260408_045050:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js.bak.pipeline_section_20260408_045050:79: const res = await fetch(DATA_BASE + name, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js.bak.pipeline_section_20260408_045050:84: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js.bak.pipeline_section_20260408_045050:148: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js.bak.pipeline_section_20260408_045050:187: const gp = state.projectProgress && state.projectProgress.global_project_progress; /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js.bak.pipeline_section_20260408_045050:338: els.selectedStageDesc.textContent = "Stage completion is read from runtime_status stage_rollup.progress_pct."; /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js.bak.pipeline_section_20260408_045050:380: getJsonOptional("panel_manifest.json"), /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js.bak.pipeline_section_20260408_045050:381: getJsonOptional("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js.bak.pipeline_section_20260408_045050:382: getJsonOptional("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js.bak.pipeline_section_20260408_045050:383: getJsonOptional("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js.bak.pipeline_section_20260408_045050:384: getJsonOptional("project_progress.json"), /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js.bak.pipeline_section_20260408_045050:385: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js.bak.pipeline_section_20260408_045050:386: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.runtime.fix.20260408_1.js.bak.pipeline_section_20260408_045050:387: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:217: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:514: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:515: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:520: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:527: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:534: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:796: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:1062: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:1077: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:1078: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:1079: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:1081: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:1086: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:1087: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:1088: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:1124: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:1127: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:1130: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtime_donut_regex_20260406_185219:1173: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:483: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:484: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:489: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:496: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:503: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:759: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:1017: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:1032: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:1033: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:1034: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:1036: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:1041: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:1042: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:1043: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:1079: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:1082: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:1085: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_minimal_runtime_swap_20260405_145532:1128: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_donut_revert_20260402_135806:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_donut_revert_20260402_135806:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_donut_revert_20260402_135806:841: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_donut_revert_20260402_135806:856: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_donut_revert_20260402_135806:857: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_donut_revert_20260402_135806:858: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_donut_revert_20260402_135806:860: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_donut_revert_20260402_135806:865: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_donut_revert_20260402_135806:866: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_donut_revert_20260402_135806:867: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_donut_revert_20260402_135806:903: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_donut_revert_20260402_135806:906: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_donut_revert_20260402_135806:909: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_donut_revert_20260402_135806:952: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:218: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:523: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:524: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:529: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:536: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:543: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:774: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:1040: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:1055: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:1056: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:1057: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:1058: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:1063: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:1064: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:1065: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:1096: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:1099: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:1102: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_20260408_033908:1145: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:218: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:523: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:524: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:529: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:536: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:543: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:774: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:1040: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:1055: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:1056: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:1057: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:1058: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:1063: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:1064: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:1065: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:1096: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:1099: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:1102: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_render_flow_20260407_231046:1145: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_missing_20260402_144534:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_missing_20260402_144534:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_missing_20260402_144534:841: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_missing_20260402_144534:856: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_missing_20260402_144534:857: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_missing_20260402_144534:858: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_missing_20260402_144534:860: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_missing_20260402_144534:865: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_missing_20260402_144534:866: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_missing_20260402_144534:867: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_missing_20260402_144534:903: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_missing_20260402_144534:906: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_missing_20260402_144534:909: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_missing_20260402_144534:952: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:453: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:454: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:459: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:466: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:473: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:972: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:987: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:988: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:989: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:991: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:996: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:997: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:998: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:1034: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:1037: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:1040: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_20260403_173833:1083: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.before_restore_20260325_180102.bak:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.before_restore_20260325_180102.bak:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.before_restore_20260325_180102.bak:523: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.before_restore_20260325_180102.bak:538: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.before_restore_20260325_180102.bak:540: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.before_restore_20260325_180102.bak:545: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.before_restore_20260325_180102.bak:546: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.before_restore_20260325_180102.bak:547: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.before_restore_20260325_180102.bak:576: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.before_restore_20260325_180102.bak:579: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.before_restore_20260325_180102.bak:582: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.viewer_linefix.20260326_124337.bak:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.viewer_linefix.20260326_124337.bak:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.viewer_linefix.20260326_124337.bak:614: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.viewer_linefix.20260326_124337.bak:629: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.viewer_linefix.20260326_124337.bak:631: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.viewer_linefix.20260326_124337.bak:636: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.viewer_linefix.20260326_124337.bak:637: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.viewer_linefix.20260326_124337.bak:638: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.viewer_linefix.20260326_124337.bak:667: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.viewer_linefix.20260326_124337.bak:670: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.viewer_linefix.20260326_124337.bak:673: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:216: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:513: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:514: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:519: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:526: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:533: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:795: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:1061: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:1076: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:1077: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:1078: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:1080: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:1085: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:1086: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:1087: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:1123: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:1126: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:1129: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_docker_runtime_eligibility_20260406_190255:1172: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:453: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:454: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:459: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:466: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:473: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:967: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:982: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:983: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:984: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:986: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:991: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:992: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:993: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:1029: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:1032: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:1035: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step4_pipeline_board_20260403_173439:1078: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:453: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:454: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:459: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:466: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:473: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:970: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:985: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:986: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:987: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:989: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:994: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:995: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:996: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:1032: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:1035: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:1038: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_rollup_ui_fix_20260403_192916:1081: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_020905:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_020905:82: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_020905:637: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_020905:652: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_020905:654: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_020905:659: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_020905:660: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_020905:661: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_020905:691: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_020905:694: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_020905:697: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:218: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:523: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:524: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:529: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:536: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:543: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:774: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:1040: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:1055: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:1056: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:1057: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:1058: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:1063: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:1064: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:1065: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:1096: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:1099: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:1102: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.stage_render_20260407_223344:1145: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_021259:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_021259:82: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_021259:637: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_021259:652: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_021259:654: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_021259:659: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_021259:660: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_021259:661: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_021259:691: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_021259:694: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260329_021259:697: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:374: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:375: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:380: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:387: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:394: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:885: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:900: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:901: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:902: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:904: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:909: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:910: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:911: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:947: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:950: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:953: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_group_fix_20260403_033813:996: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:222: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:527: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:528: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:533: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:540: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:547: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:804: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:1070: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:1085: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:1086: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:1087: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:1088: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:1093: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:1094: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:1095: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:1131: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:1134: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:1137: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_canon_coverage_call_20260407_105524:1180: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:453: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:454: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:459: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:466: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:473: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:972: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:987: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:988: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:989: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:991: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:996: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:997: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:998: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:1034: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:1037: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:1040: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step6_subcategories_20260403_173716:1083: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150241:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150241:82: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150241:649: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150241:664: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150241:666: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150241:671: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150241:672: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150241:673: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150241:706: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150241:709: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_150241:712: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-115532:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-115532:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-115532:464: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-115532:466: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-115532:467: getJson("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-115532:468: getJson("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-115532:469: getJson("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-115532:497: openJson("host_runtime.json", state.hostRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-115532:500: openJson("docker_runtime.json", state.dockerRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-115532:503: openJson("runtime_status.json", state.runtimeStatus); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:218: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:523: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:524: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:529: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:536: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:543: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:774: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:1051: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:1066: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:1067: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:1068: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:1069: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:1074: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:1075: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:1076: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:1107: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:1110: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:1113: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.remove_selectedStageCard_20260407_224651:1156: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:457: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:458: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:463: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:470: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:477: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:971: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:986: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:987: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:988: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:990: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:995: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:996: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:997: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:1033: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:1036: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:1039: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step3_render_global_20260403_173028:1082: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:405: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:406: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:411: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:418: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:425: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:919: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:934: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:935: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:936: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:938: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:943: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:944: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:945: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:981: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:984: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:987: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_linepatch_20260403_161605:1030: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:217: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:514: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:515: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:520: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:527: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:534: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:796: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:1062: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:1077: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:1078: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:1079: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:1081: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:1086: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:1087: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:1088: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:1124: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:1127: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:1130: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.pre_full_rollback_20260406_192312:1173: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:217: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:522: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:523: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:528: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:535: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:542: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:799: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:1065: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:1080: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:1081: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:1082: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:1084: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:1089: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:1090: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:1091: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:1127: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:1130: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:1133: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.repoint_contract_v2_20260407_095825:1176: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:504: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:505: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:510: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:517: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:524: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:781: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:1047: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:1062: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:1063: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:1064: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:1066: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:1071: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:1072: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:1073: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:1109: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:1112: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:1115: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_runtimeRowStatus_and_snapshot_order_20260405_170611:1158: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:453: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:454: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:459: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:466: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:473: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:972: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:987: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:988: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:989: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:991: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:996: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:997: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:998: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:1034: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:1037: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:1040: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.step7_navcount_fix_20260403_174002:1083: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111505:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111505:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111505:464: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111505:466: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111505:467: getJson("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111505:468: getJson("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111505:469: getJson("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111505:497: openJson("host_runtime.json", state.hostRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111505:500: openJson("docker_runtime.json", state.dockerRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111505:503: openJson("runtime_status.json", state.runtimeStatus); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_135721:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_135721:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_135721:524: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_135721:526: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_135721:527: getJson("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_135721:528: getJson("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_135721:529: getJson("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_135721:557: openJson("host_runtime.json", state.hostRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_135721:560: openJson("docker_runtime.json", state.dockerRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_135721:563: openJson("runtime_status.json", state.runtimeStatus); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:405: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:406: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:411: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:418: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:425: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:919: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:934: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:935: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:936: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:938: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:943: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:944: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:945: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:981: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:984: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:987: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.semantic_contract_ui_final_20260403_162853:1030: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:453: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:454: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:459: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:466: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:473: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:729: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:987: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:1002: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:1003: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:1004: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:1006: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:1011: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:1012: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:1013: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:1049: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:1052: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:1055: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hub_mirror_phase1_fix_20260404_131929:1098: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_124133:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_124133:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_124133:622: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_124133:637: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_124133:639: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_124133:644: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_124133:645: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_124133:646: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_124133:675: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_124133:678: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_124133:681: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_from_devon_20260402_152041:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_from_devon_20260402_152041:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_from_devon_20260402_152041:839: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_from_devon_20260402_152041:854: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_from_devon_20260402_152041:855: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_from_devon_20260402_152041:856: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_from_devon_20260402_152041:858: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_from_devon_20260402_152041:863: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_from_devon_20260402_152041:864: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_from_devon_20260402_152041:865: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_from_devon_20260402_152041:901: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_from_devon_20260402_152041:904: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_from_devon_20260402_152041:907: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.project_progress_from_devon_20260402_152041:950: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_133922:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_133922:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_133922:821: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_133922:836: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_133922:837: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_133922:838: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_133922:840: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_133922:845: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_133922:846: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_133922:847: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_133922:883: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_133922:886: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_133922:889: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.security_runtime_render_20260402_133922:932: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:483: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:484: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:489: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:496: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:503: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:759: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:1017: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:1032: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:1033: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:1034: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:1036: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:1041: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:1042: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:1043: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:1079: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:1082: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:1085: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.runtime_family_swap_20260405_162124:1128: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.required_steps_force_break_20260331_233336:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.required_steps_force_break_20260331_233336:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.required_steps_force_break_20260331_233336:821: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.required_steps_force_break_20260331_233336:836: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.required_steps_force_break_20260331_233336:837: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.required_steps_force_break_20260331_233336:838: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.required_steps_force_break_20260331_233336:840: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.required_steps_force_break_20260331_233336:845: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.required_steps_force_break_20260331_233336:846: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.required_steps_force_break_20260331_233336:847: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.required_steps_force_break_20260331_233336:883: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.required_steps_force_break_20260331_233336:886: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.required_steps_force_break_20260331_233336:889: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.required_steps_force_break_20260331_233336:932: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:218: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:523: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:524: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:529: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:536: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:543: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:787: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:1053: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:1068: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:1069: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:1070: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:1071: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:1076: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:1077: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:1078: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:1109: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:1112: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:1115: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.clean_nav_replace_20260407_210512:1158: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_152324:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_152324:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_152324:524: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_152324:526: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_152324:527: getJson("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_152324:528: getJson("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_152324:529: getJson("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_152324:557: openJson("host_runtime.json", state.hostRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_152324:560: openJson("docker_runtime.json", state.dockerRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_152324:563: openJson("runtime_status.json", state.runtimeStatus); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_123609:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_123609:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_123609:622: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_123609:637: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_123609:639: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_123609:644: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_123609:645: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_123609:646: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_123609:675: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_123609:678: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260327_123609:681: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114209:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114209:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114209:464: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114209:466: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114209:467: getJson("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114209:468: getJson("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114209:469: getJson("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114209:497: openJson("host_runtime.json", state.hostRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114209:500: openJson("docker_runtime.json", state.dockerRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-114209:503: openJson("runtime_status.json", state.runtimeStatus); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:217: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:522: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:523: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:528: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:535: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:542: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:799: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:1065: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:1080: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:1081: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:1082: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:1083: getJsonOptional("legacy/models/canonical_matrix_v1.20260407_095425.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:1084: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:1089: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:1090: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:1091: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:1127: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:1130: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:1133: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.matrix_soft_disable_20260407_101438:1176: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.rollback_20260325_181248.bak:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.rollback_20260325_181248.bak:80: "host_runtime.json": ["panel_host_runtime.json"], /home/yeff/public_html/devon/panel/assets/js/panel.js.rollback_20260325_181248.bak:81: "docker_runtime.json": ["panel_docker_runtime.json"], /home/yeff/public_html/devon/panel/assets/js/panel.js.rollback_20260325_181248.bak:82: "runtime_status.json": ["panel_pipeline_runtime.json", "panel_runtime_status.json"] /home/yeff/public_html/devon/panel/assets/js/panel.js.rollback_20260325_181248.bak:90: out.push(DATA_BASE + name); /home/yeff/public_html/devon/panel/assets/js/panel.js.rollback_20260325_181248.bak:102: const res = await fetch(url, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.rollback_20260325_181248.bak:127: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.rollback_20260325_181248.bak:142: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.rollback_20260325_181248.bak:144: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.rollback_20260325_181248.bak:149: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.rollback_20260325_181248.bak:150: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.rollback_20260325_181248.bak:151: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.rollback_20260325_181248.bak:168: sourceHashes["16_host_runtime.json"], /home/yeff/public_html/devon/panel/assets/js/panel.js.rollback_20260325_181248.bak:169: sourceHashes["17_docker_runtime.json"], /home/yeff/public_html/devon/panel/assets/js/panel.js.rollback_20260325_181248.bak:170: sourceHashes["18_runtime_status.json"] /home/yeff/public_html/devon/panel/assets/js/panel.js.rollback_20260325_181248.bak:205: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.rollback_20260325_181248.bak:208: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.rollback_20260325_181248.bak:211: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:218: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:523: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:524: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:529: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:536: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:543: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:769: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:1035: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:1050: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:1051: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:1052: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:1053: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:1058: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:1059: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:1060: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:1091: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:1094: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:1097: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.active_state_20260407_221114:1140: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:217: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:514: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:515: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:520: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:527: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:534: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:796: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:1062: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:1077: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:1078: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:1079: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:1081: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:1086: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:1087: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:1088: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:1124: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:1127: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:1130: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_markup_project_progress_20260406_172131:1173: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:483: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:484: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:489: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:496: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:503: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:759: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:1017: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:1032: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:1033: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:1034: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:1036: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:1041: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:1042: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:1043: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:1079: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:1082: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:1085: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.final_runtime_family_20260405_145300:1128: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111245:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111245:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111245:464: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111245:466: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111245:467: getJson("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111245:468: getJson("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111245:469: getJson("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111245:497: openJson("host_runtime.json", state.hostRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111245:500: openJson("docker_runtime.json", state.dockerRuntime); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325-111245:503: openJson("runtime_status.json", state.runtimeStatus); /home/yeff/public_html/devon/panel/assets/js/panel.js.selectstage_hook.20260326_101748.bak:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.selectstage_hook.20260326_101748.bak:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.selectstage_hook.20260326_101748.bak:522: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.selectstage_hook.20260326_101748.bak:537: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.selectstage_hook.20260326_101748.bak:539: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.selectstage_hook.20260326_101748.bak:544: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.selectstage_hook.20260326_101748.bak:545: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.selectstage_hook.20260326_101748.bak:546: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.selectstage_hook.20260326_101748.bak:575: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.selectstage_hook.20260326_101748.bak:578: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.selectstage_hook.20260326_101748.bak:581: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163146:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163146:81: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163146:494: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163146:509: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163146:511: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163146:516: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163146:517: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163146:518: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163146:547: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163146:550: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260325_163146:553: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:217: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:514: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:515: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:520: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:527: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:534: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:796: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:1062: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:1077: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:1078: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:1079: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:1081: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:1086: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:1087: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:1088: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:1124: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:1127: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:1130: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_donut_pct_logic_20260406_172842:1173: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:218: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:523: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:524: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:529: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:536: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:543: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:772: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:1038: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:1064: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:1065: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:1066: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:1067: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:1072: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:1073: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:1074: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:1106: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:1109: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:1112: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.hardfix_20260408_035328:1155: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:91: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:217: row.runtime_status ?? /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:514: const projectProgress = state.projectProgress && state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:515: ? state.projectProgress.global_project_progress /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:520: getJson("project_progress.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:527: global_project_progress: { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:534: reason_if_missing: "project_progress.json could not be loaded", /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:791: els.selectedStageDesc.textContent = "Stage Completion % comes from the sovereign stage_rollup.progress_pct emitted by runtime_status.json. The UI must read the stage rollup, not infer completion from visible row counts."; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:1057: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:1072: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:1073: getJson("panel_navigation_spec.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:1074: getJson("panel_canonical_tree.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:1076: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:1081: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:1082: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:1083: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:1119: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:1122: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:1125: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.fix_project_donut_runtime_20260406_165903:1168: return fetch(RUNTIME_ENDPOINT) /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_135015:2: const DATA_BASE = "data/"; /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_135015:82: const res = await fetch(DATA_BASE + file, { cache: "no-store" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_135015:649: async function getJsonOptional(name) { /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_135015:664: getJson("panel_content_index.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_135015:666: getJson("subcategory_pipelines.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_135015:671: getJsonOptional("host_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_135015:672: getJsonOptional("docker_runtime.json"), /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_135015:673: getJsonOptional("runtime_status.json") /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_135015:703: openJson("host_runtime.json", state.hostRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_135015:706: openJson("docker_runtime.json", state.dockerRuntime || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js.bak.20260330_135015:709: openJson("runtime_status.json", state.runtimeStatus || { status: "MISSING", reason: "runtime export not present on panel" }); /home/yeff/public_html/devon/panel/assets/js/panel.js:46: fetch('data/hub_index.json').then(r => r.json()), /home/yeff/public_html/devon/panel/assets/js/panel.js:47: fetch('data/panel_content_index.json').then(r => r.json()), /home/yeff/public_html/devon/panel/assets/js/panel.js:48: fetch('data/panel_canonical_tree.json').then(r => r.json()), /home/yeff/public_html/devon/panel/assets/js/panel.js:49: fetch('data/panel_component_contract.json').then(r => r.json()), /home/yeff/public_html/devon/panel/assets/js/panel.js:50: fetch('data/host_runtime.json').then(r => r.json()).catch(() => null), /home/yeff/public_html/devon/panel/assets/js/panel.js:51: fetch('data/docker_runtime.json').then(r => r.json()).catch(() => null), /home/yeff/public_html/devon/panel/assets/js/panel.js:52: fetch('data/runtime_status.json').then(r => r.json()).catch(() => null), /home/yeff/public_html/devon/panel/assets/js/panel.js:53: fetch('data/project_progress.json').then(r => r.json()).catch(() => null) /home/yeff/public_html/devon/panel/assets/js/panel.js:100: const s = String(hit.status || hit.runtime_status || '').toUpperCase(); /home/yeff/public_html/devon/panel/assets/js/panel.js:108: const s = String(r.status || r.runtime_status || 'MISSING').toUpperCase(); /home/yeff/public_html/devon/panel/assets/js/panel.js:318: