Files
fusion/scripts/lib/workflow-reliability-release-check.json
gsxdsm 3383a095b7 FN-6694: add workflow reliability release-check harness
Add an on-demand executable release-check lane for custom workflow reliability signoff.

- Add a manifest-backed release-check runner with dry-run, JSON output, validation, and targeted Vitest command planning.
- Define the custom workflow reliability checklist seams and cover runner validation, planning, reporting, and failure behavior with node tests.
- Document the QA signoff command and manifest mapping while keeping the lane out of the merge gate.

Files changed:
 docs/custom-workflow-reliability-acceptance-map.md |  29 +-
 docs/testing.md                                    |   3 +
 package.json                                       |   1 +
 .../workflow-reliability-release-check.test.mjs    | 138 +++++++++
 .../lib/workflow-reliability-release-check.json    | 102 +++++++
 scripts/workflow-reliability-release-check.mjs     | 312 +++++++++++++++++++++
 6 files changed, 579 insertions(+), 6 deletions(-)

Fusion-Task-Id: FN-6694

Fusion-Task-Lineage: 21d45bb5-6c45-4cb7-8b29-9eaea8b29ad4
2026-06-19 05:13:39 -07:00

103 lines
4.1 KiB
JSON

{
"version": 1,
"_comment": "FNXC:CustomWorkflowReliability 2026-06-19-00:00: FN-6694 requires this manifest to encode goal G-MPW67VQR-0001-97S3's release-check checklist as objective, runnable seam evidence instead of prose-only QA signoff.",
"checklist": [
{
"id": "author-import-save-discover-reload",
"title": "Custom workflow authoring, import, invalid rejection, save, discovery, selection, and reload",
"journey": "A custom workflow can be authored/imported, rejected on invalid IR, saved, discovered, selected, and reloaded.",
"seams": [
{
"package": "@fusion/core",
"file": "packages/core/src/__tests__/workflow-definition-store.test.ts"
},
{
"package": "@fusion/dashboard",
"file": "packages/dashboard/src/routes/__tests__/workflow-import-export.test.ts"
},
{
"package": "@fusion/dashboard",
"file": "packages/dashboard/src/routes/__tests__/workflow-design-route.test.ts"
},
{
"package": "@fusion/core",
"file": "packages/core/src/__tests__/workflow-selection-store.test.ts"
}
]
},
{
"id": "selected-workflow-execution-fail-closed",
"title": "Selected workflow execution and fail-closed missing custom workflow IDs",
"journey": "A task can execute the selected workflow through runtime primitives, and explicit missing custom workflow IDs fail closed.",
"seams": [
{
"package": "@fusion/core",
"file": "packages/core/src/__tests__/workflow-selection-store.test.ts"
},
{
"package": "@fusion/engine",
"file": "packages/engine/src/__tests__/workflow-task-runtime.test.ts"
}
]
},
{
"id": "gate-advisory-readonly-revise-required-artifact",
"title": "Gate, advisory, readonly, REVISE, and required-artifact observability",
"journey": "Gate/advisory/readonly/REVISE/required-artifact behavior is observable in task state, workflow results, task documents, and logs.",
"seams": [
{
"package": "@fusion/engine",
"file": "packages/engine/src/__tests__/workflow-malformed-verdict-gate.test.ts"
},
{
"package": "@fusion/engine",
"file": "packages/engine/src/__tests__/workflow-required-artifact-gate.test.ts"
},
{
"package": "@fusion/engine",
"file": "packages/engine/src/__tests__/workflow-step-readonly-allowlist.test.ts"
},
{
"package": "@fusion/engine",
"file": "packages/engine/src/__tests__/executor-workflow-revision-scope.test.ts"
}
]
},
{
"id": "automerge-hard-cancel-file-scope-recovery",
"title": "autoMerge:false, hard-cancel, file-scope, and recovery invariants",
"journey": "autoMerge:false, hard-cancel, file-scope, and recovery invariants are preserved under custom workflow execution.",
"seams": [
{
"package": "@fusion/engine",
"file": "packages/engine/src/__tests__/reliability-interactions/workflow-and-file-scope.test.ts"
},
{
"package": "@fusion/engine",
"file": "packages/engine/src/__tests__/reliability-interactions/workflow-interpreter-cutover.test.ts"
},
{
"package": "@fusion/engine",
"file": "packages/engine/src/__tests__/self-healing-custom-workflow-recovery.test.ts"
}
]
},
{
"id": "restart-selection-progress-run-audit",
"title": "Restart durability for workflow selection, progress, and recovery evidence",
"journey": "Engine/scheduler restart preserves workflow selection and progress, and any recovery emits typed run-audit evidence instead of silent lifecycle mutation.",
"seams": [
{
"package": "@fusion/core",
"file": "packages/core/src/__tests__/workflow-restart-durability.test.ts"
},
{
"package": "@fusion/engine",
"file": "packages/engine/src/__tests__/self-healing-custom-workflow-recovery.test.ts"
}
]
}
],
"manual": []
}