v0.4.3
What's new
Added
- Native-only Docker image —
Dockerfile.nativeonpython:3.12-slim(no SWI-Prolog), pure-Python native engine (EUCLID_BACKEND=native); compose serviceeuclid-mcp-native. ~283MB vs ~370MB full image. Verified in-container: MCP stdio handshake,reason,what_if. - Didactic guide —
docs/DIDACTIC.md(12 chapters, incl. Beyond the 1:1 mapping: the audit layer) with reference links.
Fixed
- CI now runs an explicit
EUCLID_BACKEND=nativeleg — the native engine was previously never exercised in CI. - Unicode tests re-marked
prolog_only(they assert SWI-Prolog Unicode behaviour); the native ASCII-only rejection is now asserted bytest_reason_tool_unicode_rejected_native/test_what_if_unicode_rejected_native. - Backend-aware
test_api.pyhealth/metrics tests;EUCLID_BACKENDisolated in in-process CLI tests.
Full changelog: CHANGELOG.md