Skip to content

Report API-mutation grants in transcript and improve handling - #2712

Merged
esokullu merged 2 commits into
webbrain-one:mainfrom
esokullu:main
Aug 8, 2026
Merged

Report API-mutation grants in transcript and improve handling#2712
esokullu merged 2 commits into
webbrain-one:mainfrom
esokullu:main

Conversation

@esokullu

@esokullu esokullu commented Aug 8, 2026

Copy link
Copy Markdown
Collaborator

No description provided.

esokullu and others added 2 commits August 9, 2026 00:01
The composer badge used to be the standing signal that POST/PUT/PATCH/DELETE
were allowed for a tab. With it gone, the /allow-api parser was the only path
that told the user anything, and the retry button granted silently.

That mattered after a panel reopen: the in-memory apiMutationsAllowedByTab map
is wiped, but the cached transcript comes back with its retry buttons intact.
Clicking Retry re-enabled mutations for the whole tab conversation with nothing
on screen.

Both call sites now go through grantApiMutationsForTab(), which sets the flag
and emits the confirmation bubble together. A test pins the invariant: exactly
one direct setApiMutationsAllowedForTab(..., true) call per build, inside the
helper.

The bubble still lands in whichever transcript is rendered, so a slash command
aimed at a background tab reports into the wrong conversation. That predates
this change; the comment on the helper now says so instead of claiming an
invariant that does not hold.

Also guards two indexOf anchors in test/run.js that were used as slice bounds
without a -1 check, including one added here that passed vacuously in exactly
the case it was meant to catch.

The persistent alwaysAllowApiMutations setting still has no in-panel
indicator. Fixing that means either restoring a badge or accepting a stale,
misrouted transcript message, so it is left alone.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Report every API-mutation grant in the transcript
@vercel

vercel Bot commented Aug 8, 2026

Copy link
Copy Markdown

@esokullu is attempting to deploy a commit to the esokullu's projects Team on Vercel.

A member of the Team first needs to authorize it.

@esokullu
esokullu merged commit 03cc0f1 into webbrain-one:main Aug 8, 2026
1 of 2 checks passed
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