Repository navigation
Conversation
saphid
force-pushed
the
feat/plugin-thread-status-20261110
branch
3 times, most recently
from
November 11, 2026 03:43
2fc5b13 to
1a77beb
Compare
…ithout a fork A plugin is a folder with a t3-plugin.json that a user drops onto Settings → Plugins. It installs turned off on one environment, and can ship themes and styles, a server half (RPC methods and channels, storage, settings with secrets in the secret store, and MCP tools for agents) and a web half that loads with T3's own React and UI kit (right panels, commands, a settings panel, assets, and redrawing the composer's control row, the sidebar and the Settings frame). @t3tools/plugin-sdk types both halves and builds a web half. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… and JSON settings
saphid
force-pushed
the
feat/plugin-thread-status-20261110
branch
from
November 11, 2026 10:02
1a77beb to
5ca4cbf
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stacked follow-up to #33606; draft until the platform lands. The upstream Files changed view includes the platform prerequisite, which is not on upstream main yet.
Server plugins can expose tools and panels, but cannot show a short status on a thread. This recovers that use case from #16061 on the active plugin platform.
Server API version 2 adds keyed
threads.setStatusandthreads.clearStatus. Statuses are attributed to their plugin and delivered to web/desktop and native mobile through an environment read subscription. They are bounded, validate the target thread, and clear before deactivation cleanup; an old activation cannot restore them. Pi extension statuses retain their existing behavior.This PR’s own addition is one unchanged commit. Review only this addition. The prerequisite includes the author’s latest platform head, replayed onto main 996b43f01b. The upstream artwork/composer fixes are preserved, including revealing the folded composer when terminal context is inserted. The shared conflict resolution retains main’s diff-selection and older-settled regression tests alongside the platform region tests. The SDK lockfile keeps main’s existing Playwright peer snapshot.
Current CI: the previous published head passed CI. Fresh CI is required after this main refresh.
On the refreshed head,
CI=true vp run check:changed 19f1ed228c4…passed 144 tests across 11 files, 38 package typechecks, nine React compiler checks, format, lint, knip and GraphQL. The focused lifecycle service tests also passed 3/3.Independent Claude Opus 5.5 integration review (high reasoning, Claude Code harness) approved frozen head
5ca4cbf4290with no actionable findings and independently passed 62 host/auth/status tests. It verified main’s mobile file-link props and web diff-selection changes remain intact. Shared prerequisite integration on sibling events head3fca3d9cb51passed the complete required check: 1,080 tests in 81 files, 42 package typechecks and 62 React compiler checks. Its first run had three browser-click timeouts; all 32 tests in those files and the complete rerun passed with one worker, with no assertion or timeout changes. CanonicalTMPDIRavoids the previously recorded unchanged-main macOS temp-path fixture mismatch. The status feature patch is identical to its previously approved version.Draft: real-client proof remains incomplete. Prior clean-base and candidate browser automation timed out after pairing. The fallback could not expose a DevTools endpoint, and the designated iOS simulator failed to boot (
launchd failed to respond). No screenshot, recording or successful client observation was produced. Status display, disable/re-enable cleanup, thread isolation and comparable before/after media remain unverified. Android Emulator is unavailable. Passing CI does not make this ready for merge.Tracked in saphid/personal-ops#128. Left open and unmerged.
Reviewed with sol-loop: the feature received GPT-6.1 Sol review on high reasoning, approved with no actionable findings.
Created with GPT-6.1 Sol in the Codex harness, with initial contract/RPC plumbing by Claude Opus 5.5 in the Claude Code harness. Client proof attempted by GPT-6 Astra in Codex.