Skip to content

v0.4.3 — first-run friction, and flags on either side

Latest

Choose a tag to compare

@github-actions github-actions released this 21 Oct 03:58
· 39 commits to main since this release
bcef844

The papercuts a first run hits — commands that accept their flags wherever you type them, console buttons that name the surface they open, install documentation that works as written on every distribution — rebuilt on today's Go security release. v0.4.2 was tagged but never released; this release carries its changes.

  • Rebuilt on Go 1.26.10 (#207). Today's Go security release (CVE-2026-111943) distrusts eight compromised public intermediate certificates in crypto/x509. Innerwall anchors every steady-state verification to the operator's own signing authority, where those chains cannot appear; enrollment run without --bootstrap-ca checks the control plane's certificate against the system trust store, and there the update is a real fix. Both binaries and the container image are built on the fixed toolchain.
  • Flags parse on either side of arguments (#132). Every innerwall and innerwall-agent subcommand reads its flags before or after its positional arguments, so flows list <workload-id> --since 1h works as naturally as the documented order; -- still ends flag parsing. One command gets stricter instead of looser: ruleset update with -f before the ruleset name refuses anything after the name, with an error listing the arguments earlier versions silently ignored — a previously accepted invocation may now error, but none changes meaning. Usage lines show flags first, and the top-level usage lists flows gaps.
  • The console's empty states open the surface they name (#164). The "Open enrollment" buttons on the simulation review and the flow map read "Open provisioning tokens" and land on Workloads → Provisioning tokens, the tab their own instructions point at.
  • The mint dialog's enroll command works as printed (#184). It reads sudo /usr/local/bin/innerwall-agent enroll …, matching the documentation: enrollment writes to a root-owned state directory, and the full path works on distributions whose sudo secure_path omits /usr/local/bin.
  • The deploy page runs the agent as root (#183). Its enroll, daemon, and kill-switch examples take the quickstart's form; the page said observation needs root while its own commands ran without it.
  • Install documentation (#152, #165, #175, #174). Every sudo invocation of the agent uses the full installed path; the deploy README names the CA certificate ca.crt, like every other page; the multi-host guide tells a same-machine VM lab which address to use — the VM network's gateway, from ip route show default, set before the first start; and the compose file's missing-variable error names both remedies, the quickstart's .env line and INNERWALL_IMAGE=innerwall:dev for a development checkout.
  • The automated ADR review posts again, and a failure shows red (#185, #187). Its credential exchange had failed silently on every run since the review changed triggers, behind a green check; the review now posts with the workflow token as one comment it finds and updates by its marker, and a failed review attempt on a pull request from this repository fails its check. The development docs describe the review as it runs.

Upgrading

No migrations, no API change, no agent-contract change. Both binaries are drop-in replacements; agents and control plane may be upgraded in either order.