Skip to content

fix(web): show a Decision's places by their marks and a hidden place as hidden - #2573

Merged
zfy0701 merged 3 commits into
mainfrom
claude/decision-places-marks
Sep 27, 2026
Merged

zfy0701 merged 3 commits into
mainfrom
claude/decision-places-marks

Conversation

@zfy0701

@zfy0701 zfy0701 commented Sep 27, 2026

Copy link
Copy Markdown
Contributor

Summary

Three rough edges on the Decision page's places card (#2561), seen on a real Decision in the test environment:

  • Place marks. A channel gate showed a hash glyph beside a label that already starts with # (# #bot-test · …), and every other kind a generic glyph. The editor now passes a markFor beside hrefFor, so each tab and each row's source shows the gate's integration platform, the shared bot's platform, the code host (GitHub, GitLab, Gitea), or the agent's own icon for model selection and agent tools. The kind glyph remains the fallback while console data has not loaded.
  • A place the viewer cannot read is not a failure. The conversation evaluations list answers 404 when the conversation's audience refuses the caller (for example, a channel whose newest session is external and not visible to them). The card showed that as "Could not load evaluations from this source. Retry", and under All as "1 place could not be loaded", though retrying can never succeed. A 404 now marks the place hidden: its tab has no count, selecting it says "You cannot see this place's evaluations.", and All neither counts nor flags it. Other failures keep the error and Retry.
  • Expired rows say so. A row whose bodies retention stripped has no title or answer, and showed a bare —. It now reads Details expired in the tertiary tone, reusing the drawer's copy.

Testing

  • DecisionRecentEvaluations: a 404 place raises no alert, keeps All's rows, has no count, and shows the hidden note; a tab renders the mark markFor returns; an expired row reads Details expired
  • DecisionEditorView and the Decision component suites (112); web typecheck and lint
  • The 404 and the other two issues were diagnosed on the test console; the mock console has no bot list, so the platform mark itself was checked through the unit test rather than a screenshot

🤖 Generated with Claude Code . Claude Opus 5.5

…as hidden

The places card drew a channel gate with a hash icon beside a label that
already starts with #, and every other kind with a generic glyph. Each
place now shows its integration's or bot's platform mark, its code host,
or its agent's own icon, falling back to the kind glyph only when the
console has not loaded one.

A place whose conversation the viewer cannot read answers 404 by design,
and the card reported it as a failed load with a Retry that could never
work. It is now a neutral note on its own tab and is not counted among
places that failed.

Rows whose bodies retention already stripped read Details expired
instead of a bare dash.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@agentconnect-md-test agentconnect-md-test Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved. The 404 handling matches the conversation evaluation endpoint’s access response, keeps other places’ rows visible, and the new marks and expired-details copy are wired through the card. One minor follow-up: an agent with no custom icon can show a blank mark until the ACP runtime icon registry loads, because AgentIconView may render null after markFor has suppressed the kind glyph fallback. I could not run the focused tests here because this checkout has no installed dependencies.

sent by review-bot (Codex · gpt-6-sol) · open in session

Comment thread packages/web/src/components/console/views/DecisionEditorView.tsx
An agent without a custom icon draws its runtime's mark, which renders
nothing until the runtime registry loads or if it fails. Returning that
element left the place's mark slot blank. The editor now returns an
agent mark only when the agent has an icon or the registry has its
runtime's, so the card's kind glyph shows in the meantime.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@agentconnect-md-test agentconnect-md-test Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved at fc589b6. The added registry check restores the kind glyph while a null-icon agent’s runtime mark is unavailable, and the other reviewed behavior remains unchanged. One minor fallback case remains: an explicit { kind: 'runtime' } icon is truthy here but also renders through AgentMark, so its mark slot can still be blank until the registry loads. I could not run tests in this checkout because dependencies are not installed.

sent by review-bot (Codex · gpt-6-sol) · open in session

Comment thread packages/web/src/components/console/views/DecisionEditorView.tsx Outdated
An agent whose icon is explicitly the runtime's draws through the same
registry mark as one with no icon, so it could still leave the place's
mark slot blank while the registry loads. Only a glyph or an image with
a URL now skips the registry check.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@agentconnect-md-test agentconnect-md-test Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved at 967646f. The new drawn check covers both null and explicit runtime icons: while the ACP registry has no mark, the Decision card receives no agent mark and keeps its kind glyph; glyph and image icons still render directly. The rest of this PR remains as previously reviewed. Tests could not run in this checkout because dependencies are not installed.

sent by review-bot (Codex · gpt-6-sol) · open in session

@zfy0701
zfy0701 enabled auto-merge (squash) September 27, 2026 04:58
@zfy0701
zfy0701 merged commit 6e6ec30 into main Sep 27, 2026
2 checks passed
@zfy0701
zfy0701 deleted the claude/decision-places-marks branch September 27, 2026 05:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant