cliffhall
03bf9ece42
fix(web): resolve the replay tool from the draft, and say why a draft is stuck
...
Copilot's ninth pass, three comments, two of them consequences of round 8.
- The coercion check resolved the tool from the *entry's* name while the modal
lets `name` be edited, so retargeting an `echo` replay at `add` validated
against `echo`. The modal now takes the whole tool list and resolves from the
draft's current name, which is the one the dispatch will look up.
- `IMPRECISE_INTEGER_ERROR` (was `ROUNDED_INTEGER_ERROR`) no longer names the
safe-integer range, because the range is not the rule: a whole number past
±(2^53 − 1) that is exactly representable round-trips and is accepted. It
talks about exact representability instead, and its doc links the helper that
actually exists.
- `SchemaJsonField` carries the parser's reason instead of flattening every
case to "Not valid JSON", which misdiagnosed a document that parses fine and
holds a number this client cannot send — leaving the user reading about
syntax while looking at syntactically fine JSON.
The last one had a bug the gate caught rather than the tests: empty text is not
a *problem*, so routing the value through the reason check let `JSON.parse("")`
throw out of the change handler. It surfaced as five unhandled errors across
four suites with every assertion still green, which is why `npm run ci` and not
`npm run test` is the gate. Excluded explicitly, with a regression test.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UL9retfvAXRgvi6EWk4SY4
Signed-off-by: cliffhall <cliff@futurescale.com>
2026-08-27 05:16:23 -04:00
..
toasts
chore(web): move App.tsx's module-level block into files ( #2127 )
2026-08-26 18:07:40 -04:00
correlateTransportErrors.test.ts
Network: modern Mcp-* headers, new error codes, cancellation-as-abort ( #1628 ) ( #1722 )
2026-07-18 17:32:05 -04:00
correlateTransportErrors.ts
Network: modern Mcp-* headers, new error codes, cancellation-as-abort ( #1628 ) ( #1722 )
2026-07-18 17:32:05 -04:00
customHeaders.test.ts
refactor(web): sharpen the src/lib vs src/utils rule and move misfiled modules ( #1784 )
2026-07-25 22:24:30 -04:00
customHeaders.ts
refactor(web): sharpen the src/lib vs src/utils rule and move misfiled modules ( #1784 )
2026-07-25 22:24:30 -04:00
deepLink.test.ts
web: deep-link auto-connect + machine-readable connection status ( #1576 )
2026-07-11 22:48:28 -04:00
deepLink.ts
web: deep-link auto-connect + machine-readable connection status ( #1576 )
2026-07-11 22:48:28 -04:00
errorFormat.test.ts
chore(web): move App.tsx's module-level block into files ( #2127 )
2026-08-26 18:07:40 -04:00
errorFormat.ts
chore(web): move App.tsx's module-level block into files ( #2127 )
2026-08-26 18:07:40 -04:00
inspectorTabs.test.ts
refactor(web): rename "History" tab/feature to "Protocol" ( #1623 )
2026-07-09 19:04:54 -04:00
inspectorTabs.ts
refactor(web): rename "History" tab/feature to "Protocol" ( #1623 )
2026-07-09 19:04:54 -04:00
jsonObjectDraft.test.ts
fix(web): read the literal, not the parsed number; project cursors and tool args
2026-08-27 04:56:22 -04:00
jsonObjectDraft.ts
fix(web): resolve the replay tool from the draft, and say why a draft is stuck
2026-08-27 05:16:23 -04:00
jsonUtils.test.ts
fix: address Copilot review round 41 — const does not demand a property, required-only branches
2026-08-26 16:08:24 -04:00
jsonUtils.ts
fix: address Copilot review round 41 — const does not demand a property, required-only branches
2026-08-26 16:08:24 -04:00
malformedListReport.test.ts
fix: return the era-parsed tool, and hide aggregate reports in paginated mode ( #1909 )
2026-08-15 20:08:03 -04:00
malformedListReport.ts
fix: return the era-parsed tool, and hide aggregate reports in paginated mode ( #1909 )
2026-08-15 20:08:03 -04:00
maskSecrets.test.ts
feat(network): show auth response bodies with masked secrets + reveal toggle ( #1386 ) ( #1387 )
2026-05-31 08:52:13 -04:00
maskSecrets.ts
feat(network): show auth response bodies with masked secrets + reveal toggle ( #1386 ) ( #1387 )
2026-05-31 08:52:13 -04:00
mcpNetworkHeaders.test.ts
Network: modern Mcp-* headers, new error codes, cancellation-as-abort ( #1628 ) ( #1722 )
2026-07-18 17:32:05 -04:00
mcpNetworkHeaders.ts
Network: modern Mcp-* headers, new error codes, cancellation-as-abort ( #1628 ) ( #1722 )
2026-07-18 17:32:05 -04:00
oauthFlow.test.ts
Auth hardening CI gaps + SDK consolidation: EMA leg 2 / scopes ( #1527 ) ( #1725 )
2026-07-19 22:36:21 -04:00
oauthFlow.ts
Guided-auth removal, OAuth smoke testing, and TUI/CLI support ( #1531 )
2026-06-29 15:35:51 -04:00
oauthNetworkPhase.test.ts
OAuth: re-key store to (server, issuer) + SEP-837/2350/2352 auth UX ( #1694 )
2026-07-16 16:52:53 -04:00
oauthNetworkPhase.ts
OAuth: re-key store to (server, issuer) + SEP-837/2350/2352 auth UX ( #1694 )
2026-07-16 16:52:53 -04:00
oauthUx.test.ts
All of the mid-session and step-up auth work
2026-07-02 16:35:31 -07:00
oauthUx.ts
fix(auth): explicit re-authorize when the OAuth callback state was lost ( #1808 ) ( #1810 )
2026-07-27 18:08:31 -04:00
pendingReauth.test.ts
All of the mid-session and step-up auth work
2026-07-02 16:35:31 -07:00
pendingReauth.ts
refactor(web): sharpen the src/lib vs src/utils rule and move misfiled modules ( #1784 )
2026-07-25 22:24:30 -04:00
replayableProtocolMethods.test.ts
chore(web): address Copilot review on #2127
2026-08-26 18:24:09 -04:00
replayableProtocolMethods.ts
chore(web): address Copilot review on #2127
2026-08-26 18:24:09 -04:00
sandbox-csp.test.ts
fix(web): state the expected shape when dropping a CSP source ( #2064 )
2026-08-24 01:02:02 -04:00
sandbox-csp.ts
docs(web): describe the accepted subset, not "parses as a source expression"
2026-08-24 01:20:18 -04:00
schemaUtils.test.ts
fix: centralize the nullable-union collapse in core and apply it in the TUI
2026-08-15 16:59:37 -04:00
schemaUtils.ts
fix: centralize the nullable-union collapse in core and apply it in the TUI
2026-08-15 16:59:37 -04:00
serverSettingsDefaults.test.ts
chore(web): move App.tsx's module-level block into files ( #2127 )
2026-08-26 18:07:40 -04:00
serverSettingsDefaults.ts
chore(web): move App.tsx's module-level block into files ( #2127 )
2026-08-26 18:07:40 -04:00
stepUp.test.ts
chore(web): move App.tsx's module-level block into files ( #2127 )
2026-08-26 18:07:40 -04:00
stepUp.ts
chore(web): collapse App.tsx's six session refs into useSessionRef ( #2129 )
2026-08-26 20:43:29 -04:00
toolUtils.test.ts
fix: address Copilot review round 40 — a required name counts as a field
2026-08-26 15:49:54 -04:00
toolUtils.ts
fix: address Copilot review round 3 — conjunctive keywords, unflattenable allOf, branch inference
2026-08-26 02:01:44 -04:00
uriTemplate.test.ts
fix: scope the value ceiling to the names a template references
2026-08-17 01:54:37 -04:00
uriTemplate.ts
fix: scope the value ceiling to the names a template references
2026-08-17 01:54:37 -04:00