mirror of
https://github.com/kuhyx/diet-guard.git
synced 2026-11-10 20:27:11 +01:00
Meal-slot checkpoints move from whole hours to minute-of-day ints
(0..1439) in the pure model and slot arithmetic of both languages:
MealSchedule(first_minute, last_minute, count) / (firstMinute:,
lastMinute:, count:), interior slots snapped to the 15-minute grid,
endpoints exact, integer-only. New: nearest_slot, satisfied_slots,
slot_fields / entry_slot_minute (additive "slot_min" wire field) and
schedule_to_wire / schedule_from_wire ("fm"/"lm" only when off the hour,
so whole-hour data stays byte-identical), parse_hhmm.
tests/fixtures/meal_schedule_vectors.json (scripts/
build_meal_schedule_fixture.py) is read by both suites; kuchnia_day.json
slot values regenerated as minutes.
Consumers (CLI, gate, storage, sync, app screens, kuchnia, notifications)
are intentionally broken until phase 2. patch-targets skipped: it fails
only because diet_guard._gatelock no longer imports.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015npsYVB2PdtWkG7MPAi4tn
|
||
|---|---|---|
| .. | ||
| build_body_fixture.py | ||
| build_kuchnia_credential_fixture.py | ||
| build_kuchnia_fixture.py | ||
| build_meal_schedule_fixture.py | ||
| bump_patch_version.sh | ||
| check_dependency_freshness.sh | ||
| check_file_length.sh | ||
| check_gate_stamp.sh | ||
| check_md_naming.sh | ||
| check_no_crdt_sync_override.sh | ||
| check_patch_targets.py | ||
| check_repo_contract.sh | ||
| check_requirements_sync.py | ||
| ci_mirror.sh | ||
| meal_schedule_cases.py | ||
| probe_kuchnia_auth.py | ||
| probe_kuchnia_details.py | ||
| probe_kuchnia_shape.py | ||
| probe_kuchnia.py | ||
| setup_mcp.sh | ||
| sync_freshness.py | ||
| test_changed.sh | ||