mirror of
https://github.com/penpot/penpot.git
synced 2026-10-29 22:10:34 +00:00
The params schema of the ::revocation-watcher key named :app.nitrate/client as a bare keyword. Inside [:map ...] a bare keyword is not a key but a schema property, so malli resolved it as a registry lookup. Nothing had registered that keyword, and compiling the schema raised :malli.core/invalid-schema, which took down the whole system build instead of one assertion. Nothing caught it because the assertion only runs when PENPOT_FLAGS carries enable-backend-asserts, so the suite passed with the schema broken. With the flag the backend died before a single test ran. The client is declared as an explicit pair, the way auth.oidc/schema:routes-params already does. It is optional because init-key yields nil when the :admin-console flag is off, and a required key would fail the assert on a normal boot. The new test compiles the schema and pins both halves of that contract, following the pattern already used for the three worker schemas in backend-tests.worker-test. AI-assisted-by: space-bunny-free