docs(spec): describe tool selection by row key, not name

`v2_ux_interfaces.md` and `v2_storage.md` still prescribed `selectedName` /
`selectedToolName` and `tools.find(t => t.name === …)` — the exact shape that
made a duplicated tool name uninspectable. Point them at `toolRowKey` /
`findToolByRowKey` and note the split between UI identity (the row key,
carried by `onSelectTool`) and wire identity (the protocol name, carried by
`onCallTool`).

Follow-up to #2001 review feedback.

Signed-off-by: cliffhall <cliff@futurescale.com>
This commit is contained in:
cliffhall 2026-08-17 00:23:26 -04:00
commit 3b995f6658

View file

@ -304,7 +304,9 @@ interface LogsDisplayActions {
```typescript
interface ExecutionFormState {
// Tools
selectedToolName: string | null;
// The selected row's `toolRowKey` (`index:name`), not the tool's name — a
// `tools/list` may repeat a name (#2001).
selectedToolKey: string | null;
toolFormValues: Record<string, unknown>;
lastToolResult: ToolResult | null;