推进 INI 面板 workflow overview embedding DOM readiness

This commit is contained in:
2026-06-15 18:28:58 +08:00
parent 3cfd4b371e
commit 6856721695
12 changed files with 236 additions and 9 deletions

View File

@@ -107,6 +107,7 @@
!launchApi?.getWorkflowOverviewEmbeddingDisplayViewModel ||
!launchApi?.getWorkflowOverviewEmbeddingRenderState ||
!launchApi?.getWorkflowOverviewEmbeddingDomContract ||
!launchApi?.getWorkflowOverviewEmbeddingDomReadiness ||
!launchApi?.isSupportedShellSessionHandoffPackage ||
!launchApi?.getLauncherLinks ||
!launchApi?.getControlPageApiMethods
@@ -635,7 +636,8 @@
!workflowOverviewApi?.getWorkflowOverviewEmbeddingReport ||
!workflowOverviewApi?.getWorkflowOverviewEmbeddingDisplayViewModel ||
!workflowOverviewApi?.getWorkflowOverviewEmbeddingRenderState ||
!workflowOverviewApi?.getWorkflowOverviewEmbeddingDomContract
!workflowOverviewApi?.getWorkflowOverviewEmbeddingDomContract ||
!workflowOverviewApi?.getWorkflowOverviewEmbeddingDomReadiness
) {
throw new Error("workflow overview API namespace did not expose shell helpers");
}
@@ -655,6 +657,10 @@
workflowOverviewEmbeddingDisplay,
);
const workflowOverviewEmbeddingDomContract = launchApi.getWorkflowOverviewEmbeddingDomContract();
const workflowOverviewEmbeddingDomReadiness = launchApi.getWorkflowOverviewEmbeddingDomReadiness({
documentRef: workflowOverviewDoc,
contract: workflowOverviewEmbeddingDomContract,
});
assertEqual(workflowOverviewApi.getWorkflowOverviewContract().pageHref, "./workflow-overview.html", "workflow overview page contract");
assertEqual(workflowOverviewReadiness.ready, true, "workflow overview readiness");
assertEqual(workflowOverviewReadiness.missing.join(","), "", "workflow overview readiness missing");
@@ -677,10 +683,12 @@
assertEqual(workflowOverviewEmbeddingRenderState.dataset.handoffScope, "workflow-overview-embedding", "workflow overview embedding render-state scope");
assertEqual(workflowOverviewEmbeddingDomContract.selectors.mount, "[data-workflow-overview-embedding]", "workflow overview embedding DOM contract mount");
assertEqual(workflowOverviewEmbeddingDomContract.rowDatasetKeys.detail[0], "workflowOverviewEmbeddingValue", "workflow overview embedding DOM contract row key");
assertEqual(workflowOverviewEmbeddingDomReadiness.ready, false, "workflow overview embedding DOM readiness");
assertEqual(workflowOverviewEmbeddingDomReadiness.missing.join(","), "mount,status,rows", "workflow overview embedding DOM readiness missing");
assertEqual(
workflowOverviewApi.getWorkflowOverviewEmbeddingDomContract().selectors.mount,
workflowOverviewEmbeddingDomContract.selectors.mount,
"workflow overview self embedding DOM contract",
workflowOverviewApi.getWorkflowOverviewEmbeddingDomReadiness().ready,
false,
"workflow overview self embedding DOM readiness",
);
status.textContent = "browser_ini_launch_smoke=ok";
console.log("browser_ini_launch_smoke=ok");