- Refreshed bicep_modules_catalog.json from ACR (27 -> 32 modules): adds
elasticpool, managedidentity, signalr, testmodule, virtualnetworks.
- Corrected README/EDITOR_SETUP: production ilsp.nomad has no /data volume
mount (the Nomad client disables raw Docker bind mounts), so
scripts/push_catalogs.sh + POST /reload silently no-op in prod. Catalog
updates require commit + push (Gitea Actions rebuild + Nomad redeploy).
/data hot-reload still works for local dev via `make run-with-data`.
- Remove all DevOpsMCP/aiohttp runtime deps from BicepModuleCatalog
- BicepModuleCatalog.load() reads bicep_modules_catalog.json from disk at startup (sync)
- Fix _load_catalog: catalog uses dict {path: {versions, schema}} not a list
- server.py: call BicepModuleCatalog.load() synchronously, not via asyncio.gather
- Dockerfile: COPY bicep_modules_catalog.json into both builder + runtime stages
- Health endpoint now reports bicep_modules: 27
Verified locally: make run-quick → health returns pypi_packages:40 bicep_modules:27