Skip to content

Portal v0.40.0 — Large runbooks finish, and every result stays readable

Choose a tag to compare

@AndrewDryga AndrewDryga released this 13 Aug 21:44
· 605 commits to main since this release
Immutable release. Only release title and notes can be modified.
v0.40.0
3d794f5

Large runbooks can now finish without an arbitrary total-step ceiling. The real safety bounds remain: 16 stages, 256 resolved items, bounded targets, waits, arguments, and output.

When a terminal runbook result is too large for one MCP response, wait_for_run keeps the summary in the first response and returns an opaque continuation for ordered 64 KiB pages. Small executions still finish in one call.

Security and access

  • Runner, pack, action, approval, and audit discovery now follows the member's current runner and pack scope across the console and MCP.
  • Catalog rows require deployment on a runner the member can see, malformed cross-account associations fail closed, and open pages refresh after access or runner-group changes.
  • Phoenix LiveView is patched past the navigation open-redirect advisory.

Runner

  • Installer-managed runners can update themselves with emisar update. The runner verifies the release checksum and GitHub build attestation before using the installer's stop, swap, restart, and rollback transaction.
  • emisar pack update --json now emits its partial report before returning a post-update validation error, preserving machine-readable output for automation.

Packs and console

  • The catalog now carries 100 packs and 1,682 actions, adding JFrog Artifactory, Databricks, Sentry, Symbolicator, and NTPsec, with larger Cassandra and Cloudflare coverage.
  • MFA enrollment completed in another tab returns to the app cleanly.
  • Approval forms live-validate empty restricted pack selections.
  • Runbook lists show a loading state on the disconnected first render instead of flashing a false empty state.

The MCP bridge remains at v0.7.0; this release does not mint an unchanged bridge version.