feat(mcp): update thread metadata - #8690
Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Warning Your free Security trial is over. An organization admin can activate Security or dismiss this notice. Comment |
There was a problem hiding this comment.
Effect service conventions: one finding in the new ThreadMetadataMcpService module. Everything else (namespace imports of effect/*, ThreadMetadataMcpService.layer used as a namespace member in McpHttpServer.ts, dependencies acquired via yield* in make, no ManagedRuntime/runPromise at the service boundary) matches the conventions.
Posted via Macroscope — Effect Service Conventions
Thread transfer impact
This comment will update automatically after the next completed run. |
ApprovabilityVerdict: Not approved Macroscope's review found this PR not approvable — This adds a new MCP mutation tool that can rename threads, manage pull-request links, and trigger asynchronous title regeneration through durable orchestration. Its production wiring and multi-action behavior go beyond a small bounded additive change, so the new capability warrants human review. No code changes detected at You can add or adjust custom eligibility rules. Learn more. |
2ce13db to
4736cd6
Compare
a965fc4 to
13b1c0a
Compare
Problem
Provider agents can read thread history but cannot safely rename a thread, regenerate its title, or link and unlink a pull request through the app-owned MCP workflow.
Change
Add
t3_thread_updatewith a provider-compatible object-root schema and typed metadata actions. A focused service keeps updates in the current project, uses V2 commands and idempotent receipts, and returns committed title, title-regeneration, and linked-PR state. Thread list/read expose the corresponding read path; docs and tool presentation cover the user-visible behavior.Behavior
threadIddefaults to the calling thread. Rename requirestitle; link requires repository, number, and URL; regenerate and unlink take no action-specific payload. Branch and workspace mutations remain outside this tool.Validation
Dependency
Depends on #8689, which fixes V2 linked-pull-request persistence. Native stack #8709: #8689 → #8690, rooted at
agents/mcp-controls/base-490318a. It remains independent from thread organization stack #8708.Implemented by GPT-5.6-Sol via Codex in T3 Code.
Note
Add
t3_thread_updateMCP tool to update thread metadataThreadMetadataMcpServiceto handle thread metadata mutations (rename, regenerate title, link/unlink PR) and dispatch them viaThreadManagementService.t3_thread_updatetool in the orchestrator toolkit.linkedPullRequestandtitleRegenerationfields to theOrchestratorMcpThreadListItemandOrchestratorMcpThreadDetailschemas.linkedPullRequestandtitleRegenerationfields.Macroscope summarized 13b1c0a.
Note
Medium Risk
Introduces new mutable MCP surface on orchestration threads (titles and PR links) with project scoping and input validation, but incorrect authorization or command handling could affect durable thread metadata across clients.
Overview
Adds
t3_thread_updateso provider agents can mutate thread metadata through the app-owned orchestrator MCP toolkit: rename (withtitle), regenerate_title, link_pull_request (repository, number, HTTP(S) URL), and unlink_pull_request. OmittingthreadIdtargets the calling thread; updates stay within the caller’s project. Branch and workspace changes are explicitly out of scope.A dedicated
ThreadMetadataMcpServiceenforces orchestration capability checks, maps actions to durablethread.metadata.updatecommands viaThreadManagementService, and returns committed state (title,titleRegeneration,linkedPullRequest, command id, sequence).clientRequestIdstabilizes command ids for idempotent retries.t3_thread_listandt3_thread_readresponses now surfacelinkedPullRequest; thread detail also includestitleRegeneration. Contracts, toolkit schema validation, integration tests, docs, and UI tool presentation are updated for the new tool and fields.Reviewed by Cursor Bugbot for commit 13b1c0a. Bugbot is set up for automated code reviews on this repo. Configure here.