Summary
The generated dev-api target runs cd host && uv run uvicorn main:app --reload --port 8000. uvicorn's reloader only watches the working dir (host/), so changes to in-repo module packages under modules/* (installed editable) do not trigger a reload — new routes, endpoints, and locale changes silently don't take effect until a manual restart.
Environment
- Framework checkout:
v0.0.17-5-g2b079c9; smpy / published simple_module_* / @simple-module-py/*: 0.0.17 - Python 3.12.3, uv 0.11.7, node v24.15.0, Linux (Ubuntu)
Found while building a real consumer app (Invoice Manager) on the framework.
Repro
With make dev running, add a new route to a modules/<name>/.../endpoints/api.py; it does not appear (/openapi.json lacks it, requests 404) until the server is restarted. Confirmed in this build (a new PDF endpoint wasn't served until restart).
Impact / suggestion
Hurts the core dev loop for the framework's main use case (authoring modules). Suggest the scaffold pass --reload-dir ../modules --reload-dir . (or run uv run --project host uvicorn host.main:app --reload --reload-dir modules) so module edits reload.
Summary
The generated
dev-apitarget runscd host && uv run uvicorn main:app --reload --port 8000. uvicorn's reloader only watches the working dir (host/), so changes to in-repo module packages undermodules/*(installed editable) do not trigger a reload — new routes, endpoints, and locale changes silently don't take effect until a manual restart.Environment
v0.0.17-5-g2b079c9;smpy/ publishedsimple_module_*/@simple-module-py/*: 0.0.17Found while building a real consumer app (Invoice Manager) on the framework.
Repro
With
make devrunning, add a new route to amodules/<name>/.../endpoints/api.py; it does not appear (/openapi.jsonlacks it, requests 404) until the server is restarted. Confirmed in this build (a new PDF endpoint wasn't served until restart).Impact / suggestion
Hurts the core dev loop for the framework's main use case (authoring modules). Suggest the scaffold pass
--reload-dir ../modules --reload-dir .(or runuv run --project host uvicorn host.main:app --reload --reload-dir modules) so module edits reload.