You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by GitBox <gi...@apache.org> on 2026/10/09 19:43:40 UTC
[GH] (rocketmq-dashboard/fix/ai-capability-flags): Workflow run "CI" failed!
The GitHub Actions job "CI" on rocketmq-dashboard.git/fix/ai-capability-flags has failed.
Run started by GitHub user unbridled-41 (triggered by unbridled-41).
Head commit for run:
e8b92810fa32c07f5ff726711077a21f0fae5963 / unbridled-41 <17...@users.noreply.github.com>
fix(ai): use the probed engine and tool capabilities instead of only rmqctl
GetAgentCapabilities answers five flags and documents why:
/** all five fields are required booleans, never null, so the UI can grey out engines and tool
* tiers that are absent instead of guessing */
// mcpEnabled/l3ToolsAllowed "exist so the UI can explain a refusal instead of showing a mystery
// error ... facts the composer has no other way to learn"
Only `rmqctlAvailable` was consumed. So the composer offered "Claude Code" and "Qoder" even when
the server's probe had found the binary missing (the run then fails), and a server with
`spring.ai.mcp.server.enabled=false` or `studio.ai.allow-l3-tools=false` refused tool calls with no
notice anywhere - exactly the mystery error the fields were added to prevent.
Return the whole probe (keeping the documented unknown-state discipline: every flag defaults to
true and a failed request does not turn a capability "missing"), disable the engine options the
probe reported absent, and render a neutral notice for a disabled MCP channel and for disabled L3
tools.
Tests (web/):
npx vitest run src/pages/ai/components/__tests__/Composer.test.tsx
src/pages/ai/hooks/useAgentCapabilities.test.ts src/pages/ai/__tests__/AiPage.test.tsx
-> Test Files 3 passed, Tests 40 passed.
- new Composer case "disables an engine the server probed as absent" fails before this change (the
option keeps its enabled class) and passes after it; "keeps every engine selectable when the
probe has not answered" guards the unknown state.
- new AiPage cases pin the MCP-disabled and L3-disabled notices (and that each is absent on its own).
- the hook case pins that all five flags come from the probe.
- AiPage's capability fixture now models a fully capable server (l3ToolsAllowed was false there,
which no test depended on).
- npx eslint reports no errors; npx tsc -b passes.
Report URL: https://github.com/apache/rocketmq-dashboard/actions/runs/37981522991
With regards,
GitHub Actions via GitBox