The script imported prisma_client and general_settings from proxy_server,
but both are only populated during the async proxy startup path, so a
standalone invocation exited early with an empty result. Rewritten to
construct its own PrismaClient from DATABASE_URL, connect it, and pass
force=True to run_ptu_reservation_rollup so backfill runs regardless of
whether the config flag is on. Adds a force kwarg on the rollup entry
point (default False keeps the scheduler contract intact). 8 new tests:
6 CLI-side, 2 rollup-side for the force branch.