Consumer finding
BandScope #970/#962 needs Windows-native Project Persistence integration evidence (cargo test --manifest-path apps/desktop/src-tauri/Cargo.toml --no-default-features --tests) on every persistence contract/input change. The repository currently owns .github/workflows/project-persistence-windows.yml as a standalone workflow because the central workflow inventory does not expose an obvious reusable Windows Rust integration-test primitive.
CWL policy requires model/quality CI infrastructure to converge on .github reusable workflows with thin exact-SHA callers rather than repository-local workflow duplication. This is therefore a canonical .github owner gap, not a reason to copy more runner/bootstrap logic into BandScope.
Requested reusable contract
Provide a reusable workflow suitable for Rust desktop/native integration suites with:
workflow_call inputs for manifest path, toolchain, cargo args/test selector, and an optional compile-only frontend fixture command/path needed by Tauri;
- Windows hosted runner selection controlled by the canonical owner, not arbitrary consumer YAML;
- checkout/action refs pinned by the canonical owner and least-privilege
contents: read;
- no provider/model logic and no paid-model fallback;
- consumer caller reducible to an exact-SHA
uses: ContextualWisdomLab/.github/.github/workflows/<workflow>@<immutable-sha> plus bounded inputs;
- timeout/cancellation semantics compatible with long native compilation and no elapsed-time-only false termination;
- evidence that a consumer path-filter change cannot silently suppress the native suite.
BandScope acceptance evidence
Current consumer command is intentionally narrow and product-owned:
cargo +1.97.1 test --manifest-path apps/desktop/src-tauri/Cargo.toml --no-default-features --tests
BandScope RED becb11c0a75059fdf5889b8181c962a58de468e8 proved the Windows lane previously failed to trigger when core DTO/fixture or Tauri manifest/entry inputs changed; consumer fix 5b397ce9cc8bf5aa8bb1cb61a826a2f0091587b9 expands those trigger paths without changing the test command.
After a released/immutable central reusable workflow exists, BandScope should replace the standalone implementation with a thin exact-SHA caller and keep only BandScope-specific path filters/inputs. Do not weaken current protected gates while migrating.
Consumer finding
BandScope #970/#962 needs Windows-native Project Persistence integration evidence (
cargo test --manifest-path apps/desktop/src-tauri/Cargo.toml --no-default-features --tests) on every persistence contract/input change. The repository currently owns.github/workflows/project-persistence-windows.ymlas a standalone workflow because the central workflow inventory does not expose an obvious reusable Windows Rust integration-test primitive.CWL policy requires model/quality CI infrastructure to converge on
.githubreusable workflows with thin exact-SHA callers rather than repository-local workflow duplication. This is therefore a canonical.githubowner gap, not a reason to copy more runner/bootstrap logic into BandScope.Requested reusable contract
Provide a reusable workflow suitable for Rust desktop/native integration suites with:
workflow_callinputs for manifest path, toolchain, cargo args/test selector, and an optional compile-only frontend fixture command/path needed by Tauri;contents: read;uses: ContextualWisdomLab/.github/.github/workflows/<workflow>@<immutable-sha>plus bounded inputs;BandScope acceptance evidence
Current consumer command is intentionally narrow and product-owned:
cargo +1.97.1 test --manifest-path apps/desktop/src-tauri/Cargo.toml --no-default-features --testsBandScope RED
becb11c0a75059fdf5889b8181c962a58de468e8proved the Windows lane previously failed to trigger when core DTO/fixture or Tauri manifest/entry inputs changed; consumer fix5b397ce9cc8bf5aa8bb1cb61a826a2f0091587b9expands those trigger paths without changing the test command.After a released/immutable central reusable workflow exists, BandScope should replace the standalone implementation with a thin exact-SHA caller and keep only BandScope-specific path filters/inputs. Do not weaken current protected gates while migrating.