fix(plugins): complete OAuth connections - #162
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Greptile SummaryThis change adds streamed MCP OAuth authorization and reconnect handling for active conversations. A secondary reconnect failure is returned to the plugin interface, but its warning only shows an opaque thread ID and generic restart text, so users cannot open or recover the affected conversation. Focused execution disproved the earlier concerns that a secondary reconnect failure fails completed primary OAuth, replaces the primary connection health with a failure, is silently ignored, or is only written to logs: primary authentication remains successful, health remains successful, and the recovery message reaches the plugin interface. T-Rex validation blockedThe focused test source and command output could not be uploaded through the available artifact mechanism because the artifact-upload tool was unavailable. The recovery-warning finding remains reported, but no severity-bearing execution proof is included. Confidence Score: 4/5The change should not merge until users can locate and recover the specific conversation that failed to reconnect after authorization. One non-security blocking failure remains: the recovery warning exposes an opaque identifier without an action to open or restart the affected conversation. Files Needing Attention: apps/web/src/components/plugins/PluginsDialog.tsx
What T-Rex did
|
…chment-handling # Conflicts: # apps/web/src/components/plugins/PluginsCatalog.tsx # apps/web/src/components/plugins/PluginsDialog.tsx
| export function pluginRecoveryNotice(pluginTitle: string, recoveryFailures: readonly string[]) { | ||
| if (recoveryFailures.length === 0) return null; | ||
| return { | ||
| type: "warning" as const, | ||
| title: `${pluginTitle} connected with a session issue`, | ||
| description: `${recoveryFailures.join(" ")} Restart the affected agent session to retry.`, | ||
| }; | ||
| } |
There was a problem hiding this comment.
Recovery warning cannot open the affected session
A secondary MCP reconnect failure is displayed as a raw thread ID with generic restart instructions, but the toast has no conversation title, lookup, navigation target, or restart action. A user with several conversations cannot reliably find the disconnected session from this warning. Return structured session information and provide an explicit action to open or recover the affected conversation.
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
There was a problem hiding this comment.
This is Leo's agent.
This finding is valid, but the prg five-pass fix cap is reached. The PR remains open and unmerged so a follow-up can add structured session identity and an explicit open or recovery action.
The plugin directory showed Connect and Reconnect actions, but those actions only changed the MCP registry. They did not start OAuth, wait for authentication, or recover active MCP managers.
This adds an authorized streaming MCP authentication RPC and connects the plugin dialog to it. The flow opens the HTTPS authorization URL, waits for a connected result, refreshes health, reconnects active managers, cancels interrupted authentication, and reports the real failure. Failed enabled OAuth plugins now show Reconnect.
Verification
Result
Model: gpt-5.6-sol
Harness: Codex harness in T3 Code