Problem
The SGProcessingManager build does not register a test subdirectory or test targets in its root CMake configuration, and code search found no processor/pass execution test suite. The planned changes to pass dispatch, named bindings, graph execution, Vulkan rendering, cancellation, and structured results need one common contract to prevent backend-specific drift.
Scope
Add unit, integration, and conformance tests for the SGProcessingManager public execution contract.
Test areas:
- Schema parsing and pass-specific validation.
- Pass/input indexing and optional-field safety.
- Named multi-input, multi-output, and intermediate bindings.
- Linear, branching, merging, disabled, invalid, and cyclic pass graphs.
- Executor selection by pass type and backend.
- Existing MNN processors, including current LLM/FP4 work when merged.
- Existing SuperGenius Vulkan compute and render integration, including the existing MoltenVK path.
- Output hashing, artifact metadata, persistence, and deterministic serialization.
- Cancellation, deadline, budget, progress, partial result, and cleanup behavior.
- Capability acceptance and rejection cases.
- Backward compatibility adapters during interface migration.
Tests should use small deterministic fixtures and avoid downloading large public models during normal CI.
Acceptance criteria
- CTest targets run from the standalone SGProcessingManager build and when consumed by
SuperGenius/develop.
- Each registered executor runs the same core conformance contract.
- Native Vulkan and the existing MoltenVK path run equivalent compute/render fixtures where CI hardware permits; unsupported CI environments skip with an explicit reason.
- Regression tests cover the concrete index mismatch, model-only assumption, output-buffer-zero fallback, and unsupported pass fallthrough bugs.
Tracks issues #7 through #14.
Base implementation and review work on the branch consumed by SuperGenius/develop.
Problem
The SGProcessingManager build does not register a test subdirectory or test targets in its root CMake configuration, and code search found no processor/pass execution test suite. The planned changes to pass dispatch, named bindings, graph execution, Vulkan rendering, cancellation, and structured results need one common contract to prevent backend-specific drift.
Scope
Add unit, integration, and conformance tests for the SGProcessingManager public execution contract.
Test areas:
Tests should use small deterministic fixtures and avoid downloading large public models during normal CI.
Acceptance criteria
SuperGenius/develop.Tracks issues #7 through #14.
Base implementation and review work on the branch consumed by
SuperGenius/develop.