Skip to content

chore(workbench): sync upstream and preserve fork isolation - #106

Merged
filipgutica merged 161 commits into
mainfrom
fix/upstream-sync-20261005
Oct 6, 2026
Merged

filipgutica merged 161 commits into
mainfrom
fix/upstream-sync-20261005

Conversation

@filipgutica

@filipgutica filipgutica commented Oct 6, 2026 •

Copy link
Copy Markdown
Owner

Summary

Sync upstream T3 Code through 204a6390967b14311d40ab9205e062302a0c195a, including in-thread HTML visualizations from upstream #15968 and the subsequent inline-frame scrolling fix. Resolve the merge while preserving Workbench identity, native Thread ownership, and package boundaries.

Changes

  • Carry the upstream implementations for orchestration, PR tools, attachments, and visualizations, removing fork duplicates that upstream now covers.
  • Adapt fork-owned modules to Effect 4.0.1 and advance the verified upstream CI baseline.
  • Follow upstream's canonical single-file service modules in Workbench composition and existing SQLite tests. Add the two missing fixture explanations required by upstream's new suppression-reason lint rule.
  • Preserve Workbench worktree cleanup ownership across upstream's multiple managed roots and retain the cross-environment PR context guard.
  • Import legacy desktop storage from Workbench's own profile through the existing distribution helper; preserve native T3 profile selection and test the real LevelDB reader.
  • Declare the vendored Git links at the repository root so credential-free CI checkout succeeds. Permit the existing desktop smoke job on manually dispatched sync branches, where large vendored diffs can bypass GitHub's path filters.

The branch contains a two-parent merge commit. Merge this PR with Create a merge commit to retain upstream ancestry.

Verification

  • Mapped application typechecks, lint/formatting, Workbench quality and package boundary checks passed. Packaging checks passed (103 tests).

  • After the final upstream update, mapped typechecks and lint/formatting passed; the affected SQLite suites passed 166 tests, and 14 focused native/authentication/cache/HTML/storage suites passed 427 tests.

  • Focused Workbench, desktop, orchestration/provider, storage-cleanup, attachment, and visualization suites passed. The desktop migration regression fails on the uncorrected upstream implementation and passes with the correction.

  • Independent adversarial review and Claude Opus 5.5's second review found no actionable findings on the integrated product at b79e3d526659dce3dae52851a787dc0a66facfe2. Independent review also cleared both CI corrections through e42f43a3c9.

  • Independent adversarial review of the final added scope through 7bff8481232e442d9fdeb574164b11dc579451f4 found no actionable issues and verified the package boundary.

  • Exact base/head sync previews against the same upstream SHA report 25 conflicts before synchronization and zero on the final head.

  • Hosted feature CI, Workbench quality, desktop smoke, and the exact-head native image/bundle preview passed on 7bff848. All three manually dispatched browser/Jira regression shards also passed on that head. The Docker context probe retained the native source while excluding five credential and state fixtures; its controller correction landed in prerequisite #107.

  • In an isolated real client, the HTML fixture rendered inline, its button changed the value from 1 to 2, and the document opened in the panel. To reproduce the regression checks:

    vp test run apps/desktop/src/workbench/legacyLocalStorage.test.ts apps/server/src/storageCleanup.test.ts
    vp run --filter @t3tools/workbench typecheck
    node scripts/workbench-ci.ts --check
  • On final head 7bff848, keyboard activation changed the synthetic fixture from Value 1 to 2, the inline frame grew from 207px to the page's reported 590px, and native thread scrolling moved from 173px to 0px.

Screenshots

The first two images use disposable state. The first shows the client before the synthetic visualization fixture was seeded; the second shows inline and panel rendering on the initial merged build. These are fixture states, not a provider-executed conversation.

Before the visualization fixture
Inline visualization and document panel

The final-head fixture adds expanded content to verify that the inline frame grows with the page and the thread remains scrollable.

Expanded visualization on the final head

Brief frame-resize recording

Limits

  • Four opt-in real headless-browser tests were skipped locally; the isolated client check uses a schema-encoded projection fixture. No provider turn was started.
  • Final-head remote CI passed. The signed release build matrix must pass before publication. Native installer and mobile UI checks were not run locally.
  • Both local amd64 container and relocated-bundle smoke checks on an ARM Mac stopped at OpenCode's four-second version probe; a separate probe returned the pinned version in 6.2 seconds. Pairing and crash recovery remain unverified locally; this PR's final hosted image and bundle smoke passed.
  • Ticket workspaces retain their existing Workbench directory policy; upstream's new configurable native worktree directory does not change it in this sync.

Implemented with GPT-6.1 Sol in Codex through T3 Code; reviewed with GPT-6.1 Sol and Claude Opus 5.5.

flamboh and others added 30 commits October 3, 2026 22:39
…dotgg#15457)

Signed-off-by: Yordis Prieto <yordis.prieto@gmail.com>
… generated string (pingdotgg#15463)

Signed-off-by: Yordis Prieto <yordis.prieto@gmail.com>
…otgg#14759)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
…, not a generated string (pingdotgg#15480)

Signed-off-by: Yordis Prieto <yordis.prieto@gmail.com>
…nerated string (pingdotgg#15483)

Signed-off-by: Yordis Prieto <yordis.prieto@gmail.com>
…erated string (pingdotgg#15484)

Signed-off-by: Yordis Prieto <yordis.prieto@gmail.com>
pingdotgg#15391)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…, not a generated string (pingdotgg#15479)

Signed-off-by: Yordis Prieto <yordis.prieto@gmail.com>
…pill (pingdotgg#15502)

Co-authored-by: Bil0000 <62337003+Bil0000@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
pingdotgg#15470)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…gg#15427)

Co-authored-by: maria-rcks <254055478+maria-rcks@users.noreply.github.com>
…15504)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…tements (pingdotgg#15411)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ailing (pingdotgg#15488)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
… wake (pingdotgg#15418)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
t3dotgg and others added 6 commits October 5, 2026 18:10
…ingdotgg#16280)

Takes over pingdotgg#13841. A PR query refreshes on the server's refresh signal only while something reads it, and the server shares detail, activity, and preview for 60 seconds, or 10 minutes once merged.

Co-authored-by: Wout Stiens <71498452+StiensWout@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…rvice (pingdotgg#16265)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…gdotgg#16283)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XXL labels Oct 6, 2026
juliusmarminge and others added 10 commits October 5, 2026 19:50
Co-authored-by: Lakshmi Tanmay <lakshmi@voltcrash.com>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…3563)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…pingdotgg#13565)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…et (pingdotgg#13566)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…13567)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…#13568)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 6, 2026

Copy link
Copy Markdown

Workbench demo

Open the private 20-minute demo. Sign in to Vercel, then choose Open demo. Reopening this link in the same browser resumes its running demo; Start new demo creates a fresh one. Jira starts disconnected.

Application, runtime startup, fixtures, and native smoke: PR 7bff8481232e442d9fdeb574164b11dc579451f4. Dockerfile, build configuration, bundle export, publisher, and protected launcher: main 23f8d9df923e32536761c3a7c6de08a84e2776df.

Expired? Return to this link and launch again. Use synthetic content with the free OpenCode model.

@filipgutica
filipgutica merged commit 8bf0563 into main Oct 6, 2026
23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XXL vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.