Repository navigation
feat(workspace): read-only editor frame (split tree | editor, tabs, diff toggle, full screen), Shiki CodeSurface, TraceWorkspace (0.138.0) - #452
Merged
Conversation
…itives ./primitives re-exports
…series primitives from ./primitives and the root
…o the cohort ui 11.42.0's hover-card uses
…ffView uses CodeSurface renders through @pierre/diffs' File, the same Shiki highlighter and theme as DiffView, so every Shiki language highlights and each grammar loads on first use. CodeView adds copy, a wrap toggle and go to line (Ctrl/Cmd+G); both follow the host theme. react-syntax-highlighter, BRAND_PRISM_THEME and resolveLanguage leave the package.
CatalogLight/Dark, DetailLight/Dark and DiffView DarkTheme/LightTheme set globals.sandboxTheme, which outranks the URL global, so their opposite-theme runs failed the page-theme assertion on main as well.
… stories Full run at ca4d29e on beelink2 with --update-snapshots=changed: 51 changed (ui 11.42.0 primitives: status-chip glyph, IntegrationsPanel collapses behind Show all 28, input and button borders) and 8 missing (AgentProfilePicker host-editor and save-recovery). Samples compared against main's baselines before committing.
…with a resizable, keyboard-operable sidebar From 640 px of the pane's own width the tree and the open file sit side by side; the divider is an ARIA separator (drag, arrows, Shift for larger steps, Home/End, double-click resets to 280 px), clamped to 200 px .. half the pane and remembered per viewer under expansionKey. The viewer fills the rest with its own scroll and a sticky path header. Narrower, or with layout="stack", the preview replaces the tree until Back.
…ndbox-ui into feat/files-split-view
…acked-consumer check
… cursor, on the per-agent message stream
…en); TraceWorkspace transcript drawer with lifted selection
# Conflicts: # src/index.ts # src/primitives/index.ts
…, not on a loaded selectedPath
…l peer, changesets folded into the changelog
…act-syntax-highlighter
tangletools
previously approved these changes
Oct 26, 2026
tangletools
left a comment
Contributor
There was a problem hiding this comment.
✅ Auto-approved PR — 8f6889b6
Blanket team auto-approval is intentional. This is not a code review.
No automated review runs on this PR. This approval rests on the rule above alone.
tangletools · auto-approval · reason: blanket_auto_approve · 2026-10-26T05:00:12Z
… split layout labels tabs by filename, path in the tooltip and the tree)
tangletools
approved these changes
Oct 26, 2026
tangletools
left a comment
Contributor
There was a problem hiding this comment.
✅ Auto-approved PR — ad042900
Blanket team auto-approval is intentional. This is not a code review.
No automated review runs on this PR. This approval rests on the rule above alone.
tangletools · auto-approval · reason: blanket_auto_approve · 2026-10-26T05:35:18Z
This was referenced Oct 26, 2026
drewstone
added a commit
that referenced
this pull request
Oct 27, 2026
fix(deps): adopt @tangle-network/ui 11.46.0 (1.1.5) Consumers such as agent-record load `@tangle-network/sandbox-ui/styles`, which is compiled from the kit's sources at this package's build time. A kit release therefore reaches their pages only after this package rebuilds. @tangle-network/ui 11.46.0 changes two things: The row SegmentedControl is a compact well with a raised selected thumb instead of three stacked rings, and it sits inside a 44px toolbar (brand #450). RunRowShell keeps its description on a phone (brand #452). Run ID: run_c9c3fa4d167d8e14a2fd554bc4730081
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.
CodeSurfaceandCodeViewhighlight with the Shiki highlighter thatDiffViewalready uses (through@pierre/diffs), so Rust, TOML, Go, C and C++, Solidity, SQL, shell, Dockerfile and every other Shiki language render highlighted; each grammar loads on first use.CodeViewadds copy, a wrap toggle and go to line (Ctrl/Cmd+G), and both follow the host's light or dark theme unlessthemeTypeis set.react-syntax-highlighterleaves the package.BRAND_PRISM_THEMEandresolveLanguageare removed (no consumers);CODE_THEMEnames the shared theme.WorkspaceFilesPanekeeps the tree and the open file side by side by default (layout="split") from 640 px of the pane's width, with a resizable sidebar: an ARIA separator you drag or move with the arrow keys (Shift for larger steps, Home/End), double-click resets it to 280 px, it stays between 200 px and half the pane, and it is remembered per viewer underexpansionKey. The viewer fills the rest with its own scroll and a sticky path header. Narrower, or withlayout="stack", the preview replaces the tree until Back.preview.compareadds a File | Diff toggle (such as against the previous release), and a full-screen toggle returns on Escape (tabs,expandable, both on by default). TraceWorkspace opens the selected agent's transcript in a right-hand drawer (close button or Escape clears the selection, andonSelectAgentreceivesundefined), lifts that agent in the waterfall and dims its peers, and gives the code workspace the full width at no less than 70% of the viewport; the scoreboard renders only when given. WorkspaceFilesPane moves focus to Back only when the reader opened the file from the tree; a preview that arrives from an initial or loadedselectedPathleaves focus where it was../runaddsTraceWorkspace: the agent timeline and span waterfall (TraceWaterfall, charts FlowWaterfall with Sandbox UI's brand marks) beside the selected agent's live conversation, streamed from a per-agent Server-Sent Events URL (streamUrl(agentId); rows, reset and end events, reconnecting with?after=lastSeq) and rendered withAgentTimeline(text merges into the turn, tool calls are rows their results complete, reasoning stays collapsed). The panel follows new output unless the reader scrolled up, then shows a "New output" pill. Scrubbing is time travel:onTimeChange(t | null)reports the cursor, events draw as an event track (click or N/P), the conversation shows what had been said byt, and the page'sfilesandscoreboardslots render as of the cursor or say "not time-indexed".useAgentStreamandfoldAgentRowsare exported for hosts that render the stream elsewhere.@tangle-network/sandbox-ui/workbench/diffexportsDiffViewalone, so an artifact-only consumer loads the diff without the terminal workspace (xterm). The packed-artifact smoke builds a clean consumer of both focused entries and checks for one shared UI directory and no xterm../runneeds@tangle-network/charts^0.20.3, an optional peer: onlyTraceWaterfallandTraceWorkspaceload it.Why now. The run page's layout gate 3 (disco-ui-review REVIEW, 04:20Z) needs the [tree | editor] frame at 70vh with tabs and a diff toggle; agent-record adopts it once this publishes.
Supersedes #443 (its focused
./workbench/diffentry and packed-consumer check are folded in).Release. The package.json bump to 0.138.0 fires Auto Release.
Run ID: run_369e8dcc6188e337ad6eda9097f3a5e9