推进 INI 面板 workflow overview embedding report
This commit is contained in:
@@ -39,6 +39,7 @@ import {
|
||||
createIniPanelShellSessionHandoffWorkflowDomReadiness,
|
||||
createIniPanelShellWorkflowOverviewContract,
|
||||
createIniPanelShellWorkflowOverviewReadiness,
|
||||
createIniPanelShellWorkflowOverviewEmbeddingReport,
|
||||
mountIniPanelShellWorkflowOverviewEmbedding,
|
||||
renderIniPanelShellSessionHandoffWorkflowState,
|
||||
mountIniPanelShellSessionHandoffWorkflow,
|
||||
@@ -120,6 +121,7 @@ const requiredShellExports = [
|
||||
"createIniPanelShellSessionHandoffWorkflowDomReadiness",
|
||||
"createIniPanelShellWorkflowOverviewContract",
|
||||
"createIniPanelShellWorkflowOverviewReadiness",
|
||||
"createIniPanelShellWorkflowOverviewEmbeddingReport",
|
||||
"mountIniPanelShellWorkflowOverviewEmbedding",
|
||||
"renderIniPanelShellSessionHandoffWorkflowState",
|
||||
"mountIniPanelShellSessionHandoffWorkflow",
|
||||
@@ -420,6 +422,7 @@ assert.match(shellText, /\bexport function createIniPanelShellSessionHandoffRend
|
||||
assert.match(shellText, /\bexport function createIniPanelShellSessionHandoffSnapshot\b/);
|
||||
assert.match(shellText, /\bexport function createIniPanelShellSessionHandoffSummary\b/);
|
||||
assert.match(shellText, /\bexport function createIniPanelShellSessionHandoffSummarySchema\b/);
|
||||
assert.match(shellText, /\bexport function createIniPanelShellWorkflowOverviewEmbeddingReport\b/);
|
||||
assert.match(shellText, /\bexport function isSupportedIniPanelControlPageApiManifest\b/);
|
||||
assert.match(shellText, /\bexport function isSupportedIniPanelLaunchApiManifest\b/);
|
||||
assert.match(shellText, /\bexport function isSupportedIniPanelShellIntegrationManifest\b/);
|
||||
@@ -448,6 +451,7 @@ assert.match(launchText, /\bgetShellSessionHandoffChecklist\b/);
|
||||
assert.match(launchText, /\bgetShellSessionHandoffPackageSchema\b/);
|
||||
assert.match(launchText, /\bgetShellSessionHandoffPackage\b/);
|
||||
assert.match(launchText, /\bgetShellSessionHandoffPackageReport\b/);
|
||||
assert.match(launchText, /\bgetWorkflowOverviewEmbeddingReport\b/);
|
||||
assert.match(launchText, /\bisSupportedShellSessionHandoffPackage\b/);
|
||||
assert.match(launchText, /\bdata-handoff-shell\b/);
|
||||
assert.match(launchText, /\bdata-handoff-status\b/);
|
||||
@@ -481,6 +485,7 @@ assert.match(docText, /\bcreateIniPanelShellSessionHandoffRenderState\b/);
|
||||
assert.match(docText, /\bcreateIniPanelShellSessionHandoffSnapshot\b/);
|
||||
assert.match(docText, /\bcreateIniPanelShellSessionHandoffSummary\b/);
|
||||
assert.match(docText, /\bcreateIniPanelShellSessionHandoffSummarySchema\b/);
|
||||
assert.match(docText, /\bcreateIniPanelShellWorkflowOverviewEmbeddingReport\b/);
|
||||
assert.match(docText, /\bisSupportedIniPanelControlPageApiManifest\b/);
|
||||
assert.match(docText, /\bisSupportedIniPanelLaunchApiManifest\b/);
|
||||
assert.match(docText, /\bisSupportedIniPanelShellIntegrationManifest\b/);
|
||||
@@ -504,6 +509,7 @@ assert.match(docText, /\blinuxCncIniPanelLaunchApi\.getShellSessionHandoffCheckl
|
||||
assert.match(docText, /\blinuxCncIniPanelLaunchApi\.getShellSessionHandoffPackageSchema\b/);
|
||||
assert.match(docText, /\blinuxCncIniPanelLaunchApi\.getShellSessionHandoffPackage\b/);
|
||||
assert.match(docText, /\blinuxCncIniPanelLaunchApi\.getShellSessionHandoffPackageReport\b/);
|
||||
assert.match(docText, /\blinuxCncIniPanelLaunchApi\.getWorkflowOverviewEmbeddingReport\b/);
|
||||
assert.match(docText, /\blinuxCncIniPanelLaunchApi\.isSupportedShellSessionHandoffPackage\b/);
|
||||
assert.match(docText, /\bdata-handoff-shell\b/);
|
||||
assert.match(docText, /\bdata-handoff-status\b/);
|
||||
@@ -551,6 +557,7 @@ assert.match(shellIntegrationWorkflowSmokeText, /\bgetShellSessionHandoffWorkflo
|
||||
assert.match(shellIntegrationWorkflowSmokeText, /\bgetShellSessionHandoffWorkflowDomReadiness\b/);
|
||||
assert.match(shellIntegrationWorkflowSmokeText, /\brenderShellSessionHandoffWorkflowState\b/);
|
||||
assert.match(shellIntegrationWorkflowSmokeText, /\bmountShellSessionHandoffWorkflow\b/);
|
||||
assert.match(shellIntegrationWorkflowSmokeText, /\bgetWorkflowOverviewEmbeddingReport\b/);
|
||||
assert.match(shellIntegrationWorkflowSmokeText, /\brenderShellSessionHandoffMountState\b/);
|
||||
assert.match(shellIntegrationWorkflowSmokeText, /\bdata-external-shell-mount\b/);
|
||||
assert.match(shellIntegrationWorkflowSmokeText, /\bdata-external-mount-value\b/);
|
||||
|
||||
@@ -79,6 +79,7 @@ assert.deepEqual(manifest, {
|
||||
"getWorkflowOverviewContract",
|
||||
"getWorkflowOverviewReadiness",
|
||||
"mountWorkflowOverviewEmbedding",
|
||||
"getWorkflowOverviewEmbeddingReport",
|
||||
"isSupportedShellSessionHandoffPackage",
|
||||
"getLauncherLinks",
|
||||
"getControlPageApiMethods",
|
||||
@@ -222,6 +223,7 @@ assert.match(launchText, /\bmountShellSessionHandoffWorkflow\b/);
|
||||
assert.match(launchText, /\bgetWorkflowOverviewContract\b/);
|
||||
assert.match(launchText, /\bgetWorkflowOverviewReadiness\b/);
|
||||
assert.match(launchText, /\bmountWorkflowOverviewEmbedding\b/);
|
||||
assert.match(launchText, /\bgetWorkflowOverviewEmbeddingReport\b/);
|
||||
assert.match(launchText, /\bisSupportedShellSessionHandoffPackage\b/);
|
||||
assert.match(launchText, /\bdata-handoff-workflow\b/);
|
||||
assert.match(launchText, /\bdata-handoff-workflow-status\b/);
|
||||
|
||||
@@ -35,6 +35,7 @@ import {
|
||||
createIniPanelShellSessionHandoffWorkflowDomReadiness,
|
||||
createIniPanelShellWorkflowOverviewContract,
|
||||
createIniPanelShellWorkflowOverviewReadiness,
|
||||
createIniPanelShellWorkflowOverviewEmbeddingReport,
|
||||
mountIniPanelShellWorkflowOverviewEmbedding,
|
||||
renderIniPanelShellSessionHandoffWorkflowState,
|
||||
mountIniPanelShellSessionHandoffWorkflow,
|
||||
@@ -164,7 +165,7 @@ assert.deepEqual(readiness, {
|
||||
counts: {
|
||||
pages: 3,
|
||||
launcherLinks: 3,
|
||||
launchMethods: 42,
|
||||
launchMethods: 43,
|
||||
controlPageMethods: 11,
|
||||
persistenceCapabilities: 3,
|
||||
},
|
||||
@@ -226,7 +227,7 @@ assert.deepEqual(handoffSummary, {
|
||||
counts: {
|
||||
pages: 3,
|
||||
launcherLinks: 3,
|
||||
launchMethods: 42,
|
||||
launchMethods: 43,
|
||||
controlPageMethods: 11,
|
||||
persistenceCapabilities: 3,
|
||||
},
|
||||
@@ -766,6 +767,8 @@ assert.deepEqual(createIniPanelShellWorkflowOverviewContract(), {
|
||||
],
|
||||
});
|
||||
assert.equal(createIniPanelShellWorkflowOverviewReadiness().ready, false);
|
||||
assert.equal(createIniPanelShellWorkflowOverviewEmbeddingReport().ready, false);
|
||||
assert.equal(createIniPanelShellWorkflowOverviewEmbeddingReport().rows.length, 6);
|
||||
assert.deepEqual(
|
||||
createIniPanelShellWorkflowOverviewReadiness({
|
||||
overviewApi: {
|
||||
@@ -1194,7 +1197,7 @@ assert.deepEqual(createIniPanelShellIntegrationReadiness(blockedManifest), {
|
||||
counts: {
|
||||
pages: 3,
|
||||
launcherLinks: 3,
|
||||
launchMethods: 42,
|
||||
launchMethods: 43,
|
||||
controlPageMethods: 11,
|
||||
persistenceCapabilities: 3,
|
||||
},
|
||||
@@ -1376,6 +1379,7 @@ assert.match(shellText, /\bexport function createIniPanelShellSessionHandoffWork
|
||||
assert.match(shellText, /\bexport function renderIniPanelShellSessionHandoffWorkflowState\b/);
|
||||
assert.match(shellText, /\bexport function mountIniPanelShellSessionHandoffWorkflow\b/);
|
||||
assert.match(shellText, /\bexport function createIniPanelShellSessionHandoffPackageReport\b/);
|
||||
assert.match(shellText, /\bexport function createIniPanelShellWorkflowOverviewEmbeddingReport\b/);
|
||||
assert.match(shellText, /\bexport function createIniPanelShellSessionHandoffPackageRenderState\b/);
|
||||
assert.match(shellText, /\bexport function createIniPanelShellSessionHandoffPackageSchema\b/);
|
||||
assert.match(shellText, /\bexport function createIniPanelShellSessionHandoffRenderState\b/);
|
||||
@@ -1413,6 +1417,7 @@ assert.match(docText, /\bcreateIniPanelShellSessionHandoffWorkflowDomReadiness\b
|
||||
assert.match(docText, /\brenderIniPanelShellSessionHandoffWorkflowState\b/);
|
||||
assert.match(docText, /\bmountIniPanelShellSessionHandoffWorkflow\b/);
|
||||
assert.match(docText, /\bcreateIniPanelShellSessionHandoffPackageReport\b/);
|
||||
assert.match(docText, /\bcreateIniPanelShellWorkflowOverviewEmbeddingReport\b/);
|
||||
assert.match(docText, /\bcreateIniPanelShellSessionHandoffPackageRenderState\b/);
|
||||
assert.match(docText, /\bcreateIniPanelShellSessionHandoffPackageSchema\b/);
|
||||
assert.match(docText, /\bcreateIniPanelShellSessionHandoffRenderState\b/);
|
||||
|
||||
@@ -35,6 +35,7 @@ import {
|
||||
createIniPanelShellSessionHandoffWorkflowDomReadiness,
|
||||
createIniPanelShellWorkflowOverviewContract,
|
||||
createIniPanelShellWorkflowOverviewReadiness,
|
||||
createIniPanelShellWorkflowOverviewEmbeddingReport,
|
||||
mountIniPanelShellWorkflowOverviewEmbedding,
|
||||
renderIniPanelShellSessionHandoffWorkflowState,
|
||||
mountIniPanelShellSessionHandoffWorkflow,
|
||||
@@ -121,6 +122,7 @@ assert.equal(typeof createIniPanelShellSessionHandoffWorkflowDomContract, "funct
|
||||
assert.equal(typeof createIniPanelShellSessionHandoffWorkflowDomReadiness, "function");
|
||||
assert.equal(typeof createIniPanelShellWorkflowOverviewContract, "function");
|
||||
assert.equal(typeof createIniPanelShellWorkflowOverviewReadiness, "function");
|
||||
assert.equal(typeof createIniPanelShellWorkflowOverviewEmbeddingReport, "function");
|
||||
assert.equal(typeof mountIniPanelShellWorkflowOverviewEmbedding, "function");
|
||||
assert.equal(typeof renderIniPanelShellSessionHandoffWorkflowState, "function");
|
||||
assert.equal(typeof mountIniPanelShellSessionHandoffWorkflow, "function");
|
||||
@@ -790,6 +792,7 @@ assert.equal(
|
||||
assert.equal(shellViewModel.createWorkflowOverviewContract, createIniPanelShellWorkflowOverviewContract);
|
||||
assert.equal(shellViewModel.createWorkflowOverviewReadiness, createIniPanelShellWorkflowOverviewReadiness);
|
||||
assert.equal(shellViewModel.mountWorkflowOverviewEmbedding, mountIniPanelShellWorkflowOverviewEmbedding);
|
||||
assert.equal(shellViewModel.createWorkflowOverviewEmbeddingReport, createIniPanelShellWorkflowOverviewEmbeddingReport);
|
||||
assert.equal(shellViewModel.createShellSessionHandoffPackageReport, createIniPanelShellSessionHandoffPackageReport);
|
||||
assert.equal(shellViewModel.createShellSessionHandoffPackageSchema, createIniPanelShellSessionHandoffPackageSchema);
|
||||
assert.equal(shellViewModel.isSupportedShellSessionHandoffPackage, isSupportedIniPanelShellSessionHandoffPackage);
|
||||
@@ -1176,19 +1179,74 @@ assert.equal(workflowOverviewEmbedding.ready, false);
|
||||
assert.equal(workflowOverviewEmbedding.renderState.statusLine, "Blocked: mount:blocked");
|
||||
assert.equal(workflowOverviewEmbedding.mountResult.renderResult.rowCount, 5);
|
||||
assert.equal(workflowOverviewEmbedding.error, null);
|
||||
assert.deepEqual(createIniPanelShellWorkflowOverviewEmbeddingReport(workflowOverviewEmbedding), {
|
||||
apiName: "ini-panel-shell-workflow-overview-embedding-report",
|
||||
reportVersion: 1,
|
||||
phase: "blocked",
|
||||
ready: false,
|
||||
overviewReady: true,
|
||||
embeddingReady: false,
|
||||
mountReady: false,
|
||||
statusLine: "Blocked: embedding:blocked, mount:blocked",
|
||||
pageHref: "./workflow-overview.html",
|
||||
contract: shellViewModel.shellWorkflowOverviewContract,
|
||||
missingMethods: [],
|
||||
mountPhase: "blocked",
|
||||
renderRowCount: 5,
|
||||
error: null,
|
||||
blockingReasons: ["embedding:blocked", "mount:blocked"],
|
||||
rows: [
|
||||
{
|
||||
id: "overview-api",
|
||||
label: "Overview API",
|
||||
value: "ready",
|
||||
},
|
||||
{
|
||||
id: "missing-methods",
|
||||
label: "Missing methods",
|
||||
value: "none",
|
||||
},
|
||||
{
|
||||
id: "embedding-ready",
|
||||
label: "Embedding readiness",
|
||||
value: "blocked",
|
||||
},
|
||||
{
|
||||
id: "mount-phase",
|
||||
label: "Mount phase",
|
||||
value: "blocked",
|
||||
},
|
||||
{
|
||||
id: "render-row-count",
|
||||
label: "Render row count",
|
||||
value: "5",
|
||||
},
|
||||
{
|
||||
id: "error",
|
||||
label: "Error",
|
||||
value: "none",
|
||||
},
|
||||
],
|
||||
});
|
||||
assert.deepEqual(
|
||||
mountIniPanelShellWorkflowOverviewEmbedding({ overviewApi: null }).readiness.missing,
|
||||
shellViewModel.shellWorkflowOverviewContract.methodNames,
|
||||
);
|
||||
assert.deepEqual(
|
||||
createIniPanelShellWorkflowOverviewEmbeddingReport(
|
||||
mountIniPanelShellWorkflowOverviewEmbedding({ overviewApi: null }),
|
||||
).missingMethods,
|
||||
shellViewModel.shellWorkflowOverviewContract.methodNames,
|
||||
);
|
||||
assert.equal(
|
||||
mountIniPanelShellWorkflowOverviewEmbedding({
|
||||
createIniPanelShellWorkflowOverviewEmbeddingReport(mountIniPanelShellWorkflowOverviewEmbedding({
|
||||
overviewApi: {
|
||||
...workflowOverviewApi,
|
||||
mountWorkflowOverview: () => {
|
||||
throw new Error("mount failed");
|
||||
},
|
||||
},
|
||||
}).error,
|
||||
})).error,
|
||||
"mount failed",
|
||||
);
|
||||
assert.equal(
|
||||
|
||||
Reference in New Issue
Block a user