Skip to content

v3.1.7-rc.9

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 19 Aug 22:12
· 93 commits to staging since this release
009840a

Pre-release v3.1.7-rc.9

Target release: v3.1.7 (patch bump)
Branch: staging
Commit: 009840a

Commits since v3.1.6

  • Redact bnk_config from the instance-wide global cluster list (#174)
  • test: hold the Login loading-state request open without a live timer (#163)
  • fix: give every MCP tool result one universal outcome key (ok) (#66) (#173)
  • Surface backend error code/details as JSON fields, not a Python repr (#166)
  • f5spkegress create template emits the current snatType/pseudoCNIConfig shape (#171)
  • fix: warn (per-project) when sync deactivates a still-pinned module version (#170)
  • Mount DriftDetailPanel in the drift-check dialog so Reconcile is reachable (#169)
  • test: reset the reachability circuit-breaker registry between tests (#168)
  • Scope KubernetesCluster name uniqueness to (project_id, name) (#167)
  • fix: skip blueprint auto-sync when the linked blueprint source is inactive (#165)
  • fix: record the failure cause as the state-transition reason (#164)
  • Make the staging auto-close parser accept the PR template's own form (#158)
  • Resolve the registry-host allowlist fail-closed at runtime, same as ingest (#162)
  • Container-runner hardening remainder: cluster ownership, mount_path, route hygiene (#161)
  • Make container (and every engine's) step output discoverable from the module (#159)
  • RunModuleActionDialog: submit re-guard, reports invalidation on completion, escaping guards (#160)
  • Set secret-file mode via fchmod on the open descriptor, not chmod by path (#157)
  • Restore @pytest.mark.unit on TestRootUserGate; guard this file against it recurring (#156)
  • Derive container time limits from the canonical step-set (#155)
  • Stop SSOAuthDialog updating state after unmount; mock the real endpoint (#152)
  • Never delete an interrupted-apply module without attempting a destroy (#151)
  • Verify TLS on SSH-tunnelled clusters via tls-server-name (#150)
  • Require an agent-class token on the benchmark ingest/register endpoints (#149)
  • Bind the benchmark agent WS token to the agent identity (#41 F5) (#142)
  • Report the flashed DPU's allocated tmfifo address, not a constant (#147)
  • Resolve path-only module references through one canonical ordering (#146)
  • Reset modules stuck in a transient state when their worker dies (#145)
  • Release the helm advisory lock even from an aborted transaction (#144)
  • Contain a failed initial blueprint sync in a SAVEPOINT (#143)
  • Enforce risk_class at runtime for destructive MCP tools (#141)
  • Destroy cli-bnkctl modules from the applied config, not the current form (#140)
  • Pair the dist proxy conf with an unprivileged container port mapping (#139)
  • Package the dist tarball from the tracked set, not the working tree (#138)
  • Refuse project deletion while modules still own cloud resources (#129)
  • Narrow the dist/nginx un-ignore rule to the two tracked confs (#132)
  • Run the 746 integration tests CI never executed (#131)
  • Container runner hardening: non-root gate bypass, outputs_file traversal, secret leaks, destroy/action time limits (#2)
  • Merge pull request #126 from f5devcentral/fix/v2152-regression-test
  • Merge pull request #123 from f5devcentral/fix/container-runner-hardening-2
  • Merge pull request #1 from f5devcentral/fix/module-lifecycle-control