openstack/mistral · Week of 2026-08-22

openstack/mistral — 2026-08-22

22 merges · 2 contributors · 3027 lines changed

Engine and scheduler. A dedicated periodic server now handles cron triggers, splitting that work off the main engine loop (~440 lines in 1001403). Engine memory is now bounded to contain runaway expression evaluation, the heartbeat checker keeps its admin context across a batch instead of re-deriving it per row, and a full Keystone context is now built only for actually-running jobs.

Security hardening. The dominant theme of the week. An outbound egress policy landed for std.http and the webhook notifier (~480 lines), and operators can now disable expression languages outright. Secret redaction was tightened in several places: action, RPC and notifier logs and errors; API resource logging; the serialized security context in ORM repr; osprofiler DB traces; and expression errors no longer leak the evaluation context. On the API, XML request bodies are now rejected, yaml_parse routes through the anchor-hardened loader, and RBAC is now enforced on the report and sub-execution endpoints.

Database stability. READ COMMITTED isolation is now applied reliably, backported across four branches in identical form.

API surface. List pagination is capped at [api] max_limit, the fields query parameter is validated on single-resource GETs, and the WSGI entry point now sets up logging. Elsewhere, PostgreSQL references were pulled from the docs.