View raw

1 (** Startup fixture for the single pre-seeded account. Temporary until public 2 registration returns; then this module goes with it. *) 3 4 val single_user : 5 Hito_persistence.Sqlite_repo.t -> 6 password:string -> 7 csv_path:string -> 8 unit Lwt.t 9 (** Register [blendux] with [password] and select the Ideal Routine, or reuse 10 the existing account. Then, when the account has no promoted import records, 11 import the Hevy export at [csv_path] as personal history. The import parses 12 the export, maps each exercise the curated catalog names, acknowledges 13 normal sets, and promotes the batch. The batch keeps a blocked workout for 14 review and never forces it. A drop set or an exercise outside the catalog 15 blocks a workout. When no file exists at [csv_path] the import is skipped, 16 so a deployment that ships no export still seeds the account and routine. 17 Exits the process on a malformed seed username or an import failure. *) 18 19 val development_user : Hito_persistence.Sqlite_repo.t -> unit Lwt.t 20 (** Seed the local development account [test] with password [test], the Ideal 21 Routine, and three months of native workout history. Existing native history 22 is left unchanged. *) 23