LabKit MATLAB Workbench

history

DIC and Gait project validation ownership

id: LK-20260716-dic-gait-project-validation-ownership
date: 2026-07-16
sequence: 120
type: refactor
compatibility: compatible
component: `labkit_DICPostprocess_app` | `1.4.4 -> 1.4.5`
component: `labkit_DICPreprocess_app` | `1.5.5 -> 1.5.6`
component: `labkit_GaitAnalysis_app` | `2.0.5 -> 2.0.6`
scope: DIC and Gait project schemas
scope: App maintenance cost

Context

DIC Postprocess, DIC Preprocess, and Gait repeated Runtime's canonical project and source-record shape checks around their real domain constraints. The duplication made it harder to see which saved fields these Apps actually own.

Decision and rationale

Retain each App's required source collection and domain schema while relying on Runtime for canonical bucket structs and source-record internals. DIC continues to own alignment, crop, mask, summary, and parameter fields; Gait continues to own pose-analysis options, numeric limits, and result structure.

Changes

User and data impact

Valid DIC and Gait projects, migrations, calculations, and exports are unchanged. Malformed framework structures still fail in Runtime and malformed domain fields still fail in the owning App.

Compatibility and migration

No payload format changed and no migration is required. Supported older projects continue through the same App-owned migration callbacks.

Validation

Focused project-spec tests cover default acceptance and missing-source rejection. Hidden GUI workflows cover representative DIC load/edit/analysis and Gait project load/step-analysis behavior.

Evidence

Known limitations and follow-up

This boundary cleanup does not change the scientific gait analysis or image registration algorithms. Their domain complexity remains App-owned.