> node --test test-server.mjs
✔ assigned visit list excludes unassigned records (48.825647ms)
✔ commit increments exactly one version and stores operation (19.823913ms)
✔ response loss retry returns original outcome without another update (23.457107ms)
✔ reusing operation ID with changed content is rejected (20.526757ms)
✔ two-device edit retains first change and returns explicit conflict (17.939605ms)
✔ explicit conflict resolution commits against reviewed version (22.037948ms)
✔ conflict replay returns same snapshot even after newer updates (21.776995ms)
✔ revoked assignment rejects write without mutating record (15.815465ms)
✔ expired credentials reject sync (14.519251ms)
✔ technician cannot alter assignments (18.554431ms)
✔ invalid checklist is rejected before transaction (10.861362ms)
✔ malformed JSON and oversize note fail clearly (13.822052ms)
✔ cross-origin request is rejected (14.247408ms)
✔ unknown token cannot read assigned records (20.156964ms)
✔ unknown static path is not served (11.532171ms)
ℹ tests 15
ℹ suites 0
ℹ pass 15
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 379.180512


> node complete.mjs
39/39 extended checks matched


