Skip to main content

Release 0.5.62 — Scheduler Access Control & Skills Catalog Fixes

Released: 2026-07-26 Chart: oci://ghcr.io/cnoe-io/charts/ai-platform-engineering:0.5.62 Previous release: 0.5.61

Highlights

0.5.62 gives admins finer control over who can see and edit the Scheduler agent, fixes several skills-catalog authorization bugs that were dropping skills for API-key and JWT callers, and stops the Webex bot from dropping messages during reconnect storms. It also changes the default AgentGateway authorization posture for the scheduler MCP server — see Breaking Changes below.

What's New

Scheduler admin access controls

  • Admins can now change the default schedule-editor agent from Admin Settings instead of it being fixed at deploy time.
  • The Scheduler tab correctly hides itself for normal users when admin-only access is enabled — previously it stayed visible even when the underlying access was restricted.
  • Scheduler documentation was updated to match. (#2292)

Bug Fixes

  • skills: the skills catalog API key and local skills JWT paths returned a session with no subject, which silently dropped every skill for programmatic callers (caipe-skills.py, install.sh, update-caipe-skills). Both paths now resolve a subject correctly.
  • skills: once the subject was fixed, the catalog API key path still filtered out hub and global agent_skills, returning only default filesystem skills — it now returns the full set of globally-visible skills.
  • skills: the OpenFGA subject-match bypass for the catalog API key compared against the raw subject instead of the user:-prefixed value the route handler actually sends, so the bypass never fired — global skills were still filtered out for CLI callers. Fixed and covered by regression tests.
  • webex-wdm: the Webex bot now refreshes its WDM device registration on both graceful (ConnectionClosedOK) and abnormal (ConnectionClosedError) WebSocket closes from Mercury, instead of only the abnormal case — closing a gap where a clean-but-expired webSocketUrl caused a drop-reconnect-drop loop and missed messages.
  • rag: sitemap ingestion now recurses into sitemap index files (<sitemapindex>) instead of treating each child sitemap URL as a page, fixing sites that split their sitemap into multiple files silently ingesting zero content.

Security

AgentGateway restrictedMcpServers default changed from [scheduler] to []. Caller-level mcp_server:<id>#can_invoke authorization is no longer enforced for the scheduler MCP target by default — restricting it is now opt-in via Helm values instead of baked into the chart default. See Breaking Changes for the upgrade action.

Breaking Changes

Affected key: agentgateway.authz.restrictedMcpServers (exact path depends on your chart layout — check your rendered values)

Before (0.5.61):

authz:
restrictedMcpServers:
- scheduler

After (0.5.62):

authz:
restrictedMcpServers: []

Action: If you rely on the scheduler MCP target requiring per-caller can_invoke authorization, set restrictedMcpServers: [scheduler] explicitly in your values.yaml before upgrading. Left unset, any caller with general MCP gateway access can invoke the scheduler MCP target — use the Scheduler admin-only UI toggle (see What's New) as your access control instead, or restore the old Helm-level restriction.

Known Issues

None known at this time.


Upgrade Guide: 0.5.61 → 0.5.62

Overview

Not a drop-in upgrade if you depend on the previous restrictedMcpServers: [scheduler] default — see Breaking Changes. Otherwise no other values.yaml edits required.

Helm Values Changes

Breaking Changes

See above: restrictedMcpServers default changed from [scheduler] to [].

Upgrade Runbook

1. Update values.yaml if needed

authz:
restrictedMcpServers:
- scheduler

Add this only if you want to keep enforcing caller-level authorization on the scheduler MCP target the way 0.5.61 and earlier did by default.

2. Update chart version

helm upgrade ai-platform-engineering \
oci://ghcr.io/cnoe-io/charts/ai-platform-engineering \
--version 0.5.62 \
-f your-values.yaml

3. Verify

kubectl get pods -n <namespace>

If your Scheduler is set to admin-only access in Admin Settings, confirm the Scheduler tab is now correctly hidden for a non-admin test user.

Personal Impact Analysis

If your values.yaml does not set restrictedMcpServers explicitly, scheduler MCP access control now depends entirely on the Scheduler admin-only UI toggle rather than the AgentGateway default — review which one your deployment actually needs before upgrading.

Full Values Diff

Raw diff (0.5.61 → 0.5.62)
--- 0.5.61
+++ 0.5.62
@@ -1490,9 +1490,8 @@
algorithms:
- RS256
# Require caller-level `mcp_server:<id>#can_invoke` authorization only for
- # these AgentGateway MCP targets.
- restrictedMcpServers:
- - scheduler
+ # these AgentGateway MCP targets. Empty by default; restrictions are opt-in.
+ restrictedMcpServers: []
audit:
enabled: true
serviceUrl: ""