2026.09.3 — 2026-09-06
Added
- Settings changes no longer need a restart, and there are far more of them. The Settings screen now covers 25 operational keys instead of 5: broker connect/read timeouts, the request-reply deadline, payload capture cap, sweep and sampler cadences, alerting dispatch interval, retry attempts and backoff, the broker-event flush interval and buffer size, the SSE heartbeat, the bulk-operation safety cap, and every retention window plus the cron each reaper runs on. All apply on the next use or the next fire — none require a restart, and
Resetputs a key back to the packaged default. - Deploy-time configuration can live in Postgres. A new
studio_config_propertytable is read during startup and contributes to the application's configuration, keyed by application / profile / label. It ships empty, and an unreachable or not-yet-migrated database is a warning rather than a failed start. SetARTEMIS_STUDIO_CONFIG_ENCRYPT_KEYto store a value as{cipher}…and have it decrypted at startup. This is a different key fromARTEMIS_STUDIO_SECRET_KEY, which still exclusively seals broker credentials — do not set them to the same value. See ADR-0047. POST /actuator/refreshre-reads configuration into the running application. It requires thesettings:writepermission. Note that it does not rebind most components — for anything an operator changes, use Settings, which does.
Changed
- The Settings screen is now generated from the server's own description of each key, so its labels and hints cannot drift from what the settings actually do.
Fixed
- Changing a setting is now recorded in the audit trail, with the old and new value, in the same transaction as the change. Settings writes were previously the one mutating path that wrote no audit event.
artemis-studio.rr.sweep-intervalnow does something. The request-reply deadline sweep and the sampler both hardcoded a 5-second cadence and ignored the configured value entirely. If you had set this property and observed no effect, that was why — it now applies, so check the value you set.- The Settings screen no longer claims scrape cadence changes "take effect on restart". They have applied immediately since ADR-0025; only the caption was out of date.
safety.bulk-cap,events.retention-hoursandevents.buffer-sizewere reachable over the API but missing from the Settings screen. They are now shown.
Security
POST /actuator/refreshis gated onsettings:write. Other non-health actuator endpoints (/actuator/prometheus,/actuator/metrics,/actuator/info) remain reachable without authentication, as before — bind Studio behind a proxy if that matters to you.