* feat(dev): add make local-dev targets wrapping run-local-dev.sh
`make local-dev` runs scripts/run-local-dev.sh so docker compose + the
LOCAL_DEV_MODE overlay are one keystroke away. `make local-dev-down`
and `make local-dev-logs` manage the same 3-file stack.
* fix(make): ensure .env exists before local-dev-down / local-dev-logs
docker-compose.yml declares `env_file: .env` for several services (extract,
telegram-bot, ws-gateway, …). Compose validates those paths during config
parsing even for profiled services that never start, so a missing .env
breaks `make local-dev-down` and `make local-dev-logs`. Add .env as a
file-target prerequisite — touched on demand, so no-op when already
present.
Addresses Devin review on #33.
Makefile simplified to four targets (test, dev, docker, lint) aligned
with the current FastAPI/Docker architecture. scripts/README.md rewritten
to list only the active and migration scripts that still exist.
The scheduler.py already supported "daily HH:MM,HH:MM,HH:MM" format
(commit 5f27d05), but config.py validation regex only accepted single
time "daily HH:MM", causing data-refresh to crash on startup.
Also adds:
- tests/test_config_sync_schedule.py (16 test cases)
- Makefile with validate-config target for CI/CD integration