feat(core): consolide le chainage type metier d'exercice -> strategie Health Services -> payload montre -> consommation Kotlin

Finalise #183 : modele/persistance des types metier d'exercice, mapping vers la strategie Health Services, propagation du payload dans le contrat watch bridge et consommation cote Kotlin montre. Perimetre complet QA vert.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-30 16:17:31 +02:00
parent 30e657a67f
commit 2ae716206a
10 changed files with 444 additions and 22 deletions

View File

@ -968,6 +968,16 @@ FROM pending_share_actions
"business_types_json TEXT NOT NULL DEFAULT '[]' "
'CHECK (json_valid(business_types_json))',
);
await _addColumnIfMissing(
tableName: 'program_exercises',
columnName: 'health_services_exercise_type_strategy_snapshot_json',
definition:
'health_services_exercise_type_strategy_snapshot_json TEXT NOT NULL '
"DEFAULT '[\"RUNNING\",\"WALKING\","
"\"HIGH_INTENSITY_INTERVAL_TRAINING\",\"WORKOUT\"]' "
'CHECK (json_valid('
'health_services_exercise_type_strategy_snapshot_json))',
);
}
Future<void> _backfillWorkoutHistorySetSourceExerciseIds() async {