Appearance
SystemsLab 154.0.0
Added
- TOML experiment specs now accept
--param/-poverrides like jsonnet specs do. Each override replaces (or adds) the matching[params]entry and pins the matching[matrix]dimension to that value, so a pinned dimension no longer expands into multiple variants; CLI overrides take precedence over static params and matrix values. A reserved[matrix].context_namekey names the context that groups matrix variants on submit, with precedence--name>[matrix].context_name> generated default. The MCPsubmittool gains equivalentparamsandcontext_namefields. - A
scripts/install.shcurl-to-bash installer sets up the public SystemsLab package repository for the host distro (Ubuntu jammy/noble, Debian trixie, Amazon Linux 2023) and installssystemslab-clivia apt or dnf. HonorsSYSTEMSLAB_CHANNEL=nightlyand a dry-run mode. - Experiment and context terminal-state browser notifications now survive navigating away from the watched page: an app-level service worker owns the notification and its click routing, so a notification still fires (and focuses the right tab) after you leave the entity's page.
Changed
- The homepage context status column now renders as a colored badge (pending / success / failure / error / cancelled) instead of plain text, matching how experiment statuses are shown.
- The homepage and context pages now update in place from server change events — new contexts appear, and per-context state counters and experiment states refresh live — without a manual page reload.
- Wide tables (e.g. KPI summaries with many columns) now scroll horizontally within their own section instead of scrolling the whole page sideways.
Fixed
- Fixed a race in the scheduler that could leave an experiment stuck in
scheduledforever: theExperimentScheduledwakeup was sent on a separate connection from the transaction writingrun.host_id, so a woken workflow could read NULL hosts and skip launching those jobs, stalling the experiment while it held its hosts and deadlocking everything queued behind it. The wakeup is now enqueued inside the assignment transaction so it cannot become visible before the host writes commit. systemslab sweepnow uploads its jsonnet spec and sweepfile as context-level artifacts, so a swept context can be reconstructed from its captured spec; previously onlysubmitdid this despite the docs claiming both did.- A stalled artifact upload or other server request can no longer hang a runner job indefinitely; runner-to-server requests are now bounded by a timeout.
- Fixed
systemslab configure(the nss integration) leaving/etc/nsswitch.confreadable only by root, which made glibc silently fall back tofiles dnsand break name resolution for non-root users; the rewritten file now preserves the original permissions.