Loading
fix(docker): copy the rule method modules into the image
The 0.4.2 image does not contain serve_api/methods/. That directory holds every publication and reference method, and load_methods() in src/serve.py reads it at startup. Without it, no method loads:
- every
/rules/…ID returns{"error": "No supported publication repository use identifiers with the format of the given Ruleset Id."}; /refreturns500 Internal Server Error.
This was the state of production and acceptance from the 0.4.2 deployment on 2 October until 10 October.
The change adds one COPY methods/ ./methods/ to serve_api/Dockerfile, with a comment.
Verified
- Locally: an image built from this branch loads 12 method modules, and
/rules/BWBR0015703returns the full RuleSet (about 800 KB). - Live (10 October): an image built from this Dockerfile now runs on
cprmv.open-regels.nl,cprmv.open-rules.euandacc.cprmv.open-regels.nl. On all three:/rules/BWBR0015703and/rules/CVDR712517return RuleSets;/ref?reference=jci1.31:c:BWBR0015703&artikel=1answers 307 to/rules/BWBR0015703_2026-10-10_latest,Artikel 1, which returns 200.
Why this should merge soon
Until it is merged, the next build of main pushes a :latest without methods/ again, and a routine docker compose pull brings the outage back.
Not in this change
/mcpstill returns 404.FastMCP.from_fastapi(app)andcombined_appare created (serve.py:95-108) before any route is registered, so the MCP server has no tools. The container also servesapp, notcombined_app.- Nothing in CI exercises the image. 0661a0d8 commented out 10 of the 13 tests. A smoke test that runs the built image and calls
/rules/BWBR0015703would have caught this.
Both will be raised in a separate issue.