No actionable comments were generated in the recent review.
External image Recent review info
-
External image Run configuration
- Source mode: Auto
- Repository: pingdotgg/t3code
- Branch: main
- File: .coderabbit.config.ts
- Commit: 9826dbb
- Layers: Repository TS config
- Review profile: CHILL
- Plan: Advanced
- Run ID:
e4cca9f1-36bd-4ee3-8736-9f034dcdcaca
External image Commits
Reviewing files that changed from the base of the PR and between 9826dbb9904b2591bfbf60d1317486b59132f56b and 611afa8b63bdf2be09407e8c78cb045fbc25a033.
External image Files selected for processing: 12
apps/server/src/cli/browser.tsapps/server/src/preview/PreviewBrowser.test.tsapps/server/src/preview/PreviewBrowser.tsapps/server/src/preview/PreviewBrowserHost.test.tsapps/server/src/preview/PreviewBrowserHost.tsapps/server/src/preview/ServerBrowser.test.tsapps/server/src/preview/ServerBrowser.tsapps/server/src/preview/ServerBrowserContexts.test.tsapps/server/src/preview/ServerBrowserContexts.tsapps/server/src/preview/ServerBrowserPage.tsdocs/user/html-renders.mddocs/user/remote-access.md
Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 9 remain after this review.
Walkthrough
The preview browser now installs Chrome for Testing. Persistent browser profiles can use a recorder extension to capture tab frames, while desktop tabs and unavailable tab capture use the CDP screencast path.
Changes: Browser preview and recording
Layer / File(s) Summary Install Chrome for Testing
apps/server/src/preview/PreviewBrowser.ts,apps/server/src/preview/PreviewBrowser.test.ts,apps/server/src/cli/browser.ts,apps/server/src/preview/PreviewBrowserHost.ts,apps/server/src/preview/PreviewBrowserHost.test.ts,docs/user/html-renders.md,docs/user/remote-access.mdDownloads, archive extraction, executable discovery, and host configuration now target Chrome for Testing. Extraction permits safe relative symlinks and installation removes the former headless-shell directory. Tests and browser download-size documentation are updated. Provision recorder extension
apps/server/src/preview/ServerBrowserContexts.ts,apps/server/src/preview/ServerBrowserContexts.test.ts,apps/server/src/preview/ServerBrowser.tsPersistent-profile contexts write and load the recorder extension and provide a recorder page. The browser context configuration supplies the extension directory. Tests cover extension setup and recorder-page navigation. Capture and encode tab frames
apps/server/src/preview/ServerBrowser.ts,apps/server/src/preview/ServerBrowserPage.ts,apps/server/src/preview/ServerBrowser.test.tsNon-desktop tabs use recorder-page capture when available. The encoder processes captured frames and updates its viewport after resize. Screencast recordings retain their own session cleanup, and tests cover capture constraints, resizing, and capture failure. Priority: External image Normal
Estimated code review effort: 4 (Complex) | ~45 minutes
Change: Bug fix
Sequence Diagram(s)
mermaid1 sequenceDiagram 2 participant ServerBrowser 3 participant ServerBrowserContexts 4 participant RecorderPage 5 participant TabCaptureAPI 6 participant MediaStreamTrackProcessor 7 participant Encoder 8 ServerBrowser->>ServerBrowserContexts: Request recorderPage for context 9 ServerBrowserContexts-->>ServerBrowser: Return recorder page 10 ServerBrowser->>RecorderPage: Start capture for target tab 11 RecorderPage->>TabCaptureAPI: Request stream for target tab 12 TabCaptureAPI-->>RecorderPage: Return video stream 13 RecorderPage->>MediaStreamTrackProcessor: Read video frames 14 MediaStreamTrackProcessor-->>RecorderPage: Provide frames 15 RecorderPage->>Encoder: Display frames and record Suggested labels:
bugfix,size:LSuggested reviewers:
juliusmarminge,maria-rcks,t3dotgg
Merge Risk: External image Minimal · up to 611af
No actionable merge-blocking issue was established; the change is ready for normal checks.
Pre-merge checks: Passed 3 · Failed 1
Failed Failed checks: 1 warning
Check name Status Explanation Resolution Description check Warning The description explains the problem, implementation, limitations, and verification in detail. However, the Scope and approval section states that issue #26683is not triaged and does not provide the …Add a link to the triaged issue or approval discussion, including the maintainer's explicit approval comment for the direction and scope. Update the description after triage or document the approved exception. Passed Passed checks: 3 passed
Check name Status Explanation Title check Passed The title clearly identifies the main change: server recordings capture tabs instead of re-encoding JPEG screencasts. Linked Issues check Passed Check skipped because no linked issues were found for this pull request. Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Description check
Explanation
The description explains the problem, implementation, limitations, and verification in detail. However, the Scope and approval section states that issue
#26683is not triaged and does not provide the required triage or explicit maintainer approval for this substantial browser-download and recording behavior change.Resolution
Add a link to the triaged issue or approval discussion, including the maintainer's explicit approval comment for the direction and scope. Update the description after triage or document the approved exception.
Finishing Touches
🧪 Generate unit tests (beta)
- Create a new PR
- Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Comment @coderabbitai help to get the list of available commands.