新增 INI 面板 shell API surface inventory
This commit is contained in:
@@ -100,6 +100,7 @@
|
||||
!launchApi?.getShellSessionHandoffPackageMountDisplayViewModel ||
|
||||
!launchApi?.getShellSessionHandoffPackageMountRenderState ||
|
||||
!launchApi?.getShellSessionReadinessWorkflowReport ||
|
||||
!launchApi?.getShellApiSurfaceInventory ||
|
||||
!launchApi?.renderShellSessionHandoffMountState ||
|
||||
!launchApi?.getWorkflowOverviewContract ||
|
||||
!launchApi?.getWorkflowOverviewReadiness ||
|
||||
@@ -180,6 +181,7 @@
|
||||
const shellSessionHandoffPackageMountDisplayViewModel = launchApi.getShellSessionHandoffPackageMountDisplayViewModel();
|
||||
const shellSessionHandoffPackageMountRenderState = launchApi.getShellSessionHandoffPackageMountRenderState();
|
||||
const shellSessionReadinessWorkflowReport = launchApi.getShellSessionReadinessWorkflowReport();
|
||||
const shellApiSurfaceInventory = launchApi.getShellApiSurfaceInventory();
|
||||
const workflowOverviewContract = launchApi.getWorkflowOverviewContract();
|
||||
assertEqual(
|
||||
shellIntegrationSchema.manifestVersion,
|
||||
@@ -436,6 +438,16 @@
|
||||
3,
|
||||
"shell session readiness workflow report rows",
|
||||
);
|
||||
assertEqual(
|
||||
shellApiSurfaceInventory.apiName,
|
||||
"ini-panel-shell-api-surface-inventory",
|
||||
"shell API surface inventory API",
|
||||
);
|
||||
assertEqual(
|
||||
shellApiSurfaceInventory.counts.sessionReadinessRows,
|
||||
3,
|
||||
"shell API surface inventory session readiness rows",
|
||||
);
|
||||
assertEqual(
|
||||
workflowOverviewContract.pageHref,
|
||||
"./workflow-overview.html",
|
||||
|
||||
@@ -101,6 +101,7 @@ TOOL_TABLE = browser-shell-tool.tbl
|
||||
!launchApi?.readShellSessionHandoffStatusFromControlPage ||
|
||||
!launchApi?.getShellSessionHandoffWorkflowSummary ||
|
||||
!launchApi?.getShellSessionReadinessWorkflowReport ||
|
||||
!launchApi?.getShellApiSurfaceInventory ||
|
||||
!launchApi?.getShellSessionHandoffWorkflowDisplayViewModel ||
|
||||
!launchApi?.getShellSessionHandoffWorkflowRenderState ||
|
||||
!launchApi?.getShellSessionHandoffWorkflowDomContract ||
|
||||
@@ -515,6 +516,9 @@ TOOL_TABLE = browser-shell-tool.tbl
|
||||
const sessionReadinessWorkflowReport = launchApi.getShellSessionReadinessWorkflowReport({
|
||||
workflowSummary: workflowSummaryResult,
|
||||
});
|
||||
const shellApiSurfaceInventory = launchApi.getShellApiSurfaceInventory({
|
||||
sessionReadinessWorkflowReport,
|
||||
});
|
||||
const workflowDisplayResult = launchApi.getShellSessionHandoffWorkflowDisplayViewModel(
|
||||
workflowSummaryResult,
|
||||
);
|
||||
@@ -562,6 +566,16 @@ TOOL_TABLE = browser-shell-tool.tbl
|
||||
3,
|
||||
"shell handoff session readiness workflow report rows",
|
||||
);
|
||||
assertEqual(
|
||||
shellApiSurfaceInventory.ready,
|
||||
true,
|
||||
"shell handoff API surface inventory readiness",
|
||||
);
|
||||
assertEqual(
|
||||
shellApiSurfaceInventory.counts.sessionReadinessRows,
|
||||
3,
|
||||
"shell handoff API surface inventory session readiness rows",
|
||||
);
|
||||
assertEqual(
|
||||
workflowSummaryResult.sessionReadiness.ready,
|
||||
true,
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
!workflowApi?.getWorkflowOverviewDisplayViewModel ||
|
||||
!workflowApi?.getWorkflowOverviewSummary ||
|
||||
!workflowApi?.getWorkflowOverviewSessionReadinessReport ||
|
||||
!workflowApi?.getWorkflowOverviewApiSurfaceInventory ||
|
||||
!workflowApi?.getWorkflowOverviewDomContract ||
|
||||
!workflowApi?.getWorkflowOverviewDomReadiness ||
|
||||
!workflowApi?.renderWorkflowOverview ||
|
||||
@@ -58,6 +59,7 @@
|
||||
const displayViewModel = workflowApi.getWorkflowOverviewDisplayViewModel();
|
||||
const summary = workflowApi.getWorkflowOverviewSummary();
|
||||
const sessionReadinessReport = workflowApi.getWorkflowOverviewSessionReadinessReport();
|
||||
const apiSurfaceInventory = workflowApi.getWorkflowOverviewApiSurfaceInventory();
|
||||
const domContract = workflowApi.getWorkflowOverviewDomContract();
|
||||
const domReadiness = workflowApi.getWorkflowOverviewDomReadiness();
|
||||
const renderResult = workflowApi.renderWorkflowOverview();
|
||||
@@ -86,6 +88,12 @@
|
||||
"workflow overview session readiness report API name",
|
||||
);
|
||||
assertEqual(sessionReadinessReport.rows.length, 3, "workflow overview session readiness report rows");
|
||||
assertEqual(
|
||||
apiSurfaceInventory.apiName,
|
||||
"ini-panel-shell-api-surface-inventory",
|
||||
"workflow overview API surface inventory API name",
|
||||
);
|
||||
assertEqual(apiSurfaceInventory.rows.length, 5, "workflow overview API surface inventory rows");
|
||||
assertEqual(displayViewModel.title, "Shell handoff workflow", "workflow overview display title");
|
||||
assertEqual(renderState.renderStateVersion, 1, "workflow overview render-state version");
|
||||
assertEqual(renderState.dataset.handoffScope, "workflow", "workflow overview render-state scope");
|
||||
|
||||
@@ -31,6 +31,7 @@ for (const phrase of [
|
||||
"docs/drift-report.md",
|
||||
"PROJECT_COMPLETION_TRACKER.md",
|
||||
"runtime/sdk/src/index.js",
|
||||
"createIniPanelShellApiSurfaceInventory()",
|
||||
"createIniPanelShellSessionReadinessWorkflowReport()",
|
||||
"workflow overview embedding mount DOM",
|
||||
"verify_no_standalone_cnc_semantics.sh",
|
||||
@@ -81,6 +82,7 @@ for (const phrase of [
|
||||
for (const phrase of [
|
||||
"OPFS/session persistence exports",
|
||||
"INI panel shell handoff exports",
|
||||
"createIniPanelShellApiSurfaceInventory()",
|
||||
"createIniPanelShellSessionReadinessWorkflowReport()",
|
||||
]) {
|
||||
assert.match(sdkReadmeText, literalRegExp(phrase));
|
||||
|
||||
@@ -6,6 +6,7 @@ import { fileURLToPath } from "node:url";
|
||||
import {
|
||||
analyzeIniRuntimeBoundaries,
|
||||
createIniPanelLaunchApiManifest,
|
||||
createIniPanelShellApiSurfaceInventory,
|
||||
createIniPanelShellSessionReadinessWorkflowReport,
|
||||
createIniPanelShellViewModel,
|
||||
createIniPanelShellWorkflowOverviewEmbeddingMountDomContract,
|
||||
@@ -82,6 +83,7 @@ const requiredExports = [
|
||||
["createIniPanelLaunchApiManifest", createIniPanelLaunchApiManifest],
|
||||
["isSupportedIniPanelLaunchApiManifest", isSupportedIniPanelLaunchApiManifest],
|
||||
["createIniPanelShellViewModel", createIniPanelShellViewModel],
|
||||
["createIniPanelShellApiSurfaceInventory", createIniPanelShellApiSurfaceInventory],
|
||||
["createIniPanelShellSessionReadinessWorkflowReport", createIniPanelShellSessionReadinessWorkflowReport],
|
||||
[
|
||||
"createIniPanelShellWorkflowOverviewEmbeddingMountDomContract",
|
||||
@@ -134,6 +136,10 @@ assert.equal(
|
||||
createIniPanelShellSessionReadinessWorkflowReport().apiName,
|
||||
"ini-panel-shell-session-readiness-workflow-report",
|
||||
);
|
||||
assert.equal(
|
||||
createIniPanelShellApiSurfaceInventory().apiName,
|
||||
"ini-panel-shell-api-surface-inventory",
|
||||
);
|
||||
assert.equal(
|
||||
shellViewModel.mountWorkflowOverviewEmbeddingMountState,
|
||||
mountIniPanelShellWorkflowOverviewEmbeddingMountState,
|
||||
|
||||
@@ -71,6 +71,7 @@ assert.deepEqual(manifest, {
|
||||
"readShellSessionHandoffStatusFromControlPage",
|
||||
"getShellSessionHandoffWorkflowSummary",
|
||||
"getShellSessionReadinessWorkflowReport",
|
||||
"getShellApiSurfaceInventory",
|
||||
"getShellSessionHandoffWorkflowDisplayViewModel",
|
||||
"getShellSessionHandoffWorkflowRenderState",
|
||||
"getShellSessionHandoffWorkflowDomContract",
|
||||
@@ -228,6 +229,7 @@ assert.match(launchText, /\bmountShellSessionHandoffFromControlPage\b/);
|
||||
assert.match(launchText, /\breadShellSessionHandoffStatusFromControlPage\b/);
|
||||
assert.match(launchText, /\bgetShellSessionHandoffWorkflowSummary\b/);
|
||||
assert.match(launchText, /\bgetShellSessionReadinessWorkflowReport\b/);
|
||||
assert.match(launchText, /\bgetShellApiSurfaceInventory\b/);
|
||||
assert.match(launchText, /\bgetShellSessionHandoffWorkflowDisplayViewModel\b/);
|
||||
assert.match(launchText, /\bgetShellSessionHandoffWorkflowRenderState\b/);
|
||||
assert.match(launchText, /\bgetShellSessionHandoffWorkflowDomContract\b/);
|
||||
|
||||
@@ -30,6 +30,7 @@ import {
|
||||
readIniPanelShellSessionHandoffStatusFromControlPage,
|
||||
createIniPanelShellSessionHandoffWorkflowSummary,
|
||||
createIniPanelShellSessionReadinessWorkflowReport,
|
||||
createIniPanelShellApiSurfaceInventory,
|
||||
createIniPanelShellSessionHandoffWorkflowDisplayViewModel,
|
||||
createIniPanelShellSessionHandoffWorkflowRenderState,
|
||||
createIniPanelShellSessionHandoffWorkflowDomContract,
|
||||
@@ -178,7 +179,7 @@ assert.deepEqual(readiness, {
|
||||
counts: {
|
||||
pages: 3,
|
||||
launcherLinks: 3,
|
||||
launchMethods: 56,
|
||||
launchMethods: 57,
|
||||
controlPageMethods: 11,
|
||||
persistenceCapabilities: 3,
|
||||
},
|
||||
@@ -241,7 +242,7 @@ assert.deepEqual(handoffSummary, {
|
||||
counts: {
|
||||
pages: 3,
|
||||
launcherLinks: 3,
|
||||
launchMethods: 56,
|
||||
launchMethods: 57,
|
||||
controlPageMethods: 11,
|
||||
persistenceCapabilities: 3,
|
||||
},
|
||||
@@ -747,6 +748,7 @@ assert.equal(
|
||||
"blocked",
|
||||
);
|
||||
assert.equal(createIniPanelShellSessionReadinessWorkflowReport().phase, "blocked");
|
||||
assert.equal(createIniPanelShellApiSurfaceInventory().phase, "ready");
|
||||
assert.equal(
|
||||
createIniPanelShellSessionHandoffWorkflowDisplayViewModel().phase,
|
||||
"blocked",
|
||||
@@ -776,6 +778,7 @@ assert.deepEqual(createIniPanelShellWorkflowOverviewContract(), {
|
||||
"getWorkflowOverviewDisplayViewModel",
|
||||
"getWorkflowOverviewSummary",
|
||||
"getWorkflowOverviewSessionReadinessReport",
|
||||
"getWorkflowOverviewApiSurfaceInventory",
|
||||
"getWorkflowOverviewDomContract",
|
||||
"getWorkflowOverviewDomReadiness",
|
||||
"renderWorkflowOverview",
|
||||
@@ -818,6 +821,7 @@ assert.deepEqual(
|
||||
overviewApi: {
|
||||
getWorkflowOverviewRenderState: () => handoffPackageRenderState,
|
||||
getWorkflowOverviewSessionReadinessReport: () => createIniPanelShellSessionReadinessWorkflowReport(),
|
||||
getWorkflowOverviewApiSurfaceInventory: () => createIniPanelShellApiSurfaceInventory(),
|
||||
},
|
||||
}).missing,
|
||||
[
|
||||
@@ -1242,7 +1246,7 @@ assert.deepEqual(createIniPanelShellIntegrationReadiness(blockedManifest), {
|
||||
counts: {
|
||||
pages: 3,
|
||||
launcherLinks: 3,
|
||||
launchMethods: 56,
|
||||
launchMethods: 57,
|
||||
controlPageMethods: 11,
|
||||
persistenceCapabilities: 3,
|
||||
},
|
||||
@@ -1418,6 +1422,7 @@ assert.match(shellText, /\bexport function mountIniPanelShellSessionHandoffFromC
|
||||
assert.match(shellText, /\bexport function readIniPanelShellSessionHandoffStatusFromControlPage\b/);
|
||||
assert.match(shellText, /\bexport function createIniPanelShellSessionHandoffWorkflowSummary\b/);
|
||||
assert.match(shellText, /\bexport function createIniPanelShellSessionReadinessWorkflowReport\b/);
|
||||
assert.match(shellText, /\bexport function createIniPanelShellApiSurfaceInventory\b/);
|
||||
assert.match(shellText, /\bexport function createIniPanelShellSessionHandoffWorkflowDisplayViewModel\b/);
|
||||
assert.match(shellText, /\bexport function createIniPanelShellSessionHandoffWorkflowRenderState\b/);
|
||||
assert.match(shellText, /\bexport function createIniPanelShellSessionHandoffWorkflowDomContract\b/);
|
||||
|
||||
@@ -30,6 +30,7 @@ import {
|
||||
readIniPanelShellSessionHandoffStatusFromControlPage,
|
||||
createIniPanelShellSessionHandoffWorkflowSummary,
|
||||
createIniPanelShellSessionReadinessWorkflowReport,
|
||||
createIniPanelShellApiSurfaceInventory,
|
||||
createIniPanelShellSessionHandoffWorkflowDisplayViewModel,
|
||||
createIniPanelShellSessionHandoffWorkflowRenderState,
|
||||
createIniPanelShellSessionHandoffWorkflowDomContract,
|
||||
@@ -118,6 +119,7 @@ assert.equal(typeof createIniPanelShellIntegrationWorkflowPlan, "function");
|
||||
assert.equal(typeof createIniPanelShellSessionHandoffActionPlan, "function");
|
||||
assert.equal(typeof createIniPanelShellSessionHandoffChecklist, "function");
|
||||
assert.equal(typeof createIniPanelShellSessionHandoffCompatibilityReport, "function");
|
||||
assert.equal(typeof createIniPanelShellApiSurfaceInventory, "function");
|
||||
assert.equal(typeof createIniPanelShellSessionHandoffDisplayViewModel, "function");
|
||||
assert.equal(typeof createIniPanelShellSessionHandoffPackage, "function");
|
||||
assert.equal(typeof createIniPanelShellSessionHandoffPackageDisplayViewModel, "function");
|
||||
@@ -664,6 +666,7 @@ assert.deepEqual(shellViewModel.shellWorkflowOverviewContract, {
|
||||
"getWorkflowOverviewDisplayViewModel",
|
||||
"getWorkflowOverviewSummary",
|
||||
"getWorkflowOverviewSessionReadinessReport",
|
||||
"getWorkflowOverviewApiSurfaceInventory",
|
||||
"getWorkflowOverviewDomContract",
|
||||
"getWorkflowOverviewDomReadiness",
|
||||
"renderWorkflowOverview",
|
||||
@@ -796,6 +799,7 @@ assert.equal(
|
||||
shellViewModel.createShellSessionReadinessWorkflowReport,
|
||||
createIniPanelShellSessionReadinessWorkflowReport,
|
||||
);
|
||||
assert.equal(shellViewModel.createShellApiSurfaceInventory, createIniPanelShellApiSurfaceInventory);
|
||||
assert.equal(
|
||||
shellViewModel.createShellSessionHandoffWorkflowDisplayViewModel,
|
||||
createIniPanelShellSessionHandoffWorkflowDisplayViewModel,
|
||||
@@ -1130,6 +1134,10 @@ assert.equal(sessionReadinessWorkflowReport.rows.length, 3);
|
||||
assert.equal(sessionReadinessWorkflowReport.rows[0].value, "ready");
|
||||
assert.equal(shellViewModel.shellSessionReadinessWorkflowReport.ready, false);
|
||||
assert.equal(shellViewModel.shellSessionReadinessWorkflowReport.rows.length, 3);
|
||||
assert.equal(shellViewModel.shellApiSurfaceInventory.apiName, "ini-panel-shell-api-surface-inventory");
|
||||
assert.equal(shellViewModel.shellApiSurfaceInventory.ready, true);
|
||||
assert.equal(shellViewModel.shellApiSurfaceInventory.counts.sessionReadinessRows, 3);
|
||||
assert.equal(shellViewModel.shellApiSurfaceInventory.rows.length, 5);
|
||||
const readyWorkflowSummaryResult = createIniPanelShellSessionHandoffWorkflowSummary({
|
||||
mountWorkflow: {
|
||||
phase: "ready",
|
||||
@@ -1250,6 +1258,7 @@ const workflowOverviewApi = {
|
||||
getWorkflowOverviewDisplayViewModel: () => workflowDisplayViewModel,
|
||||
getWorkflowOverviewSummary: () => workflowSummaryResult,
|
||||
getWorkflowOverviewSessionReadinessReport: () => sessionReadinessWorkflowReport,
|
||||
getWorkflowOverviewApiSurfaceInventory: () => shellViewModel.shellApiSurfaceInventory,
|
||||
getWorkflowOverviewDomContract: createIniPanelShellSessionHandoffWorkflowDomContract,
|
||||
getWorkflowOverviewDomReadiness: createIniPanelShellSessionHandoffWorkflowDomReadiness,
|
||||
renderWorkflowOverview: renderIniPanelShellSessionHandoffWorkflowState,
|
||||
|
||||
Reference in New Issue
Block a user