# Photo coaching verification

2026-09-14. Authored coaching is stored in optional source-bound pair contexts, rather than hardcoded against session/pair IDs. Each review has an assessed direction, provenance, and one to three distinct title/detail points. Existing identity flags remain readable for file compatibility but no longer gate measurements or suggestions. Photo assessments supply direction when no user override exists; conflicting overrides withhold authored notes.

The import CLI validates every incoming source binding before merging photo coaching. It preserves joint evidence and existing context decisions and uses the standard optimistic revision check when saving. Private coaching content and review backups stay in ignored data directories and are excluded from commits.

Verification:

- New core tests first failed on the absent photo-review API. Tests now cover no-checklist coaching, direction assessment/override, source mismatch, duplicate pair rejection, unchanged frame evidence, and Codable round trips.
- Native model integration covers authored coaching in Single, Compare, another pair, and reopening.
- 39 tests pass: 31 core and 8 native model/layout tests.
- Native app inspection found three distinct authored points for every paired photo. Single subject view also showed the authored content, with no identity controls.
- Before import, all 12 source file hashes matched the review. After import, complete frame evidence and every pre-existing context decision matched the backup. Enum-keyed dictionary serialization order was normalized for that comparison.
- Manual source review checked merge boundaries, direction overrides, legacy optional-field decoding and UI state. Simplification replaced inactive buttons on whole-body notes with selectable text. Code review: skipped (ce-code-review unavailable), because the project's main-thread-only mapping prevents the required independent review pipeline; no independent receipt is claimed.

General technique wording was checked against [Yamaha Champions Riding School](https://ridelikeachampion.com/why-body-position-matters-at-the-track/) and [Honda](https://global.honda/en/motorcycle-aftersales/plusone/202312.html). Those sources do not validate these individual photo assessments or the reference-matching assumption. Camera perspective, motorcycle geometry, and unobserved cornering phase remain interpretation limits. New image pairs need their own photo review; this change does not implement automatic image classification.
