• v5.7.0 792146977c

    v5.7.0
    Some checks failed
    release / build (./scripts/build_linux.sh, false, Linux-x86_64, ubuntu-latest, x86_64-unknown-linux-gnu, x86_64-unknown-linux-gnu) (push) Successful in 12m7s
    release / build (./scripts/build_linux.sh, true, Linux-aarch64, ubuntu-latest, aarch64-unknown-linux-gnu, aarch64-unknown-linux-gnu) (push) Failing after 10m59s
    release / build (./scripts/build_mac.sh, false, macOS-universal, mac-arm64, , aarch64-apple-darwin,x86_64-apple-darwin) (push) Has been cancelled
    release / build (./scripts/build_windows.sh, false, Windows-x86_64, windows-latest, x86_64-pc-windows-msvc, x86_64-pc-windows-msvc) (push) Has been cancelled
    release / build (./scripts/build_windows.sh, true, Windows-aarch64, windows-latest, aarch64-pc-windows-msvc, aarch64-pc-windows-msvc) (push) Has been cancelled
    release / release (push) Has been cancelled
    Stable

    admin_ekaii released this 2026-08-14 00:34:49 +00:00 | 6 commits to master since this release

    v5.7.0 — full control-API catalog + network mode + security hardening

    Completes the control-API feature catalog and adds an opt-in authenticated
    network transport, then closes every confirmed finding from an adversarial
    security review of the new surface.

    New command waves

    • Dev-loop: instances.crash_reports, diagnostics.analyze, logs.tail, instances.diff, content.dev_link, content.bisect_start/bisect_step.
    • IaC / state: state.export, instances.manifest, content.resolve, launcher.plan, instances.snapshot/restore/snapshots.
    • Streamer / management: servers.status, instances.sessions/screenshots, worlds.backup/restore/duplicate/delete, servers.set, hooks.register/list/delete, and the game.exited event.

    Network mode (opt-in)

    • TCP + a hand-rolled RFC6455 WebSocket transport on the same port (EKAII_API_TCP=host:port, EKAII_API_WS=1).
    • Capability-scoped bearer tokens (auth.mint_token — local-socket only — plus auth.bearer/prove/list_tokens/revoke_token/whoami, net.status). Scopes: read/write/accounts/settings/*, with write implying read.
    • Path jail (EKAII_API_PATH_ALLOW) confines every path parameter; local socket / named-pipe connections stay fully trusted and unrestricted.

    Security hardening (adversarial review: 19 findings, all fixed)

    • Execution-vector fields (wrapper_command, linux_wrapper, system_libraries, jvm_binary, jvm_flags) are refused on any network command, closing an RCE laundered through instances.ensure.
    • Per-command read-only scope allowlist (was per-domain): a read token can no longer register webhooks, self-update, quit, or trigger outbound fetches.
    • launcher.quit/install_update, hooks.register/delete, and servers.status are local-socket only.
    • Bounded/off-thread file reads and image decoding; snapshot/restore and world restore are now atomic (stage-then-swap) and report errors; WebSocket handshake is permit-gated and time-bounded.

    Structured error codes now include unauthorized, forbidden, and path_denied. See docs/API.md.

    Downloads