Keep test-shard timing governance aligned with the current workspace and workflow seams. - Add a safe timing-snapshot pruning mode with coverage. - Align Todo plugin Vitest isolation and Docker dependency manifests. - Refresh workflow reliability evidence and remove deleted test timings. Files changed: Dockerfile | 7 ++- docs/testing.md | 9 ++- plugins/fusion-plugin-todos/vitest.config.ts | 26 ++++++-- scripts/__tests__/ci-test-shard-timings.test.mjs | 71 ++++++++++++++++++++++ scripts/ci-test-shard.mjs | 65 ++++++++++++++++++-- .../lib/workflow-reliability-release-check.json | 22 +++---- scripts/test-timings.json | 21 ------- 7 files changed, 175 insertions(+), 46 deletions(-) Fusion-Task-Id: FN-8951 Fusion-Task-Lineage: fbf7e79f-4cb2-43e2-9982-09f3f94de70d Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
103 lines
4.3 KiB
JSON
103 lines
4.3 KiB
JSON
{
|
|
"version": 1,
|
|
"_comment": "FNXC:CustomWorkflowReliability 2026-08-10-18:03: 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. FN-8951 repointed deleted pre-cutover seams to live tests that cover definitions and route validation, selection dispatch, REVISE completion, interpreter recovery, and restart durability.",
|
|
"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__/postgres/workflow-definitions.pg.test.ts"
|
|
},
|
|
{
|
|
"package": "@fusion/dashboard",
|
|
"file": "packages/dashboard/src/routes/__tests__/workflow-validate-route.test.ts"
|
|
},
|
|
{
|
|
"package": "@fusion/dashboard",
|
|
"file": "packages/dashboard/src/routes/__tests__/workflow-setting-attribution.test.ts"
|
|
},
|
|
{
|
|
"package": "@fusion/core",
|
|
"file": "packages/core/src/__tests__/workflow-ir-selection-cache.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__/custom-v1-workflow-dispatch.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-task-done-revise-verdict-guard.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__/interpreter-merge-seam.test.ts"
|
|
},
|
|
{
|
|
"package": "@fusion/engine",
|
|
"file": "packages/engine/src/__tests__/workflow-step-results-self-healing-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__/postgres/workflow-continuation-slot.pg.test.ts"
|
|
},
|
|
{
|
|
"package": "@fusion/engine",
|
|
"file": "packages/engine/src/__tests__/restart-recovery-coordinator.test.ts"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"manual": []
|
|
}
|