Skip to content

SystemsLab 148.0.0 ​

Added ​

  • Experiments can now be submitted with a scheduling priority. The spec format gains an Experiment.priority field (i32, default 0) and the submit and sweep commands accept a --priority <i32> flag that overrides the spec value. Within a scheduler class, candidates are now ordered by priority descending, with the oldest queued_at timestamp as a tie-break.
  • Contexts can now be paused. POST /api/v1/context/{id}/pause and POST /api/v1/context/{id}/unpause halt and resume scheduling of an experiment context; queued experiments leave the scheduling queue until the context is resumed, while already-running jobs are not affected. Pauses do not consume retry slots, the calls are idempotent in both directions, and contexts in terminal states return 409. The new paused_at field is exposed on the GraphQL ContextCore type and on Context<'_> in the client SDK.
  • The context page now has an Artifacts section listing context-level artifacts (those attached directly to a context rather than an individual experiment), mirroring the layout used on the experiment page. A new artifact(name, tag, type) field is exposed on the Context GraphQL type.
  • The submit and sweep commands now upload the experiment spec file as an artifact attached to the resulting experiment or context, so the exact submitted spec is available alongside the run. Specs read from stdin are skipped.
  • The vLLM metrics dashboard now surfaces additional metrics from the vLLM artifact viewer.
  • The context page parameter summary now includes a "Swept" row listing the names of all varying parameters. Previously the swept params only appeared as column headers in the KPI table, with no standalone summary identifying which parameters were swept. The constant-params block is now shown whenever there are either swept or constant params.
  • The mcp command now runs a full MCP server with experiment-workflow tools rather than the previous stdio-to-HTTP proxy stub. New tools include list_actions, validate_spec, list_hosts, get_experiment, get_logs, submit_experiment, query_metrics, download_artifact, get_context_experiments, cancel_experiment, cancel_context, and get_context_status. Unknown tool names are forwarded to the upstream server MCP via an HTTP proxy session.

Changed ​

  • The MCP get_logs tool is now unpaginated by default: the hardcoded 500-event limit is gone, all log output is returned unless the caller explicitly sets limit, and a new offset parameter supports page-by-page navigation. Responses now include a total event count and has_more so clients can detect when more events are available.
  • The unpin button on pinned contexts now prompts for confirmation (showing the context name) before unpinning, and has a visible border. The previous small X button was easy to mis-click without feedback.