Repository navigation
v1.0.9
Added
-
The HTTP contract is now checked, not assumed. The
/statusfields this bridge
reads were declared nowhere, so a daemon-side rename failed a live agent with a
confusing 500 instead of this repo's CI.test/contract-fields.mjsdeclares the fields;test/contract.test.mjsasserts
the mock serves them and starts the real daemon and checks its live/status
against the same list. CI installs the daemon for that, which is whyastral-sh/setup-uv
now appears here — the daemon is not a runtime dependency of this repo.The honest limit, documented in the test and in
AGENTS.md: CI installs the daemon
from PyPI, so a rename is caught once it is published, not at the moment it is
merged. When the daemon is absent the live half is skipped, because a missing
binary is an environment problem rather than a contract violation — and a check
that fails for the wrong reason gets disabled.