orca/tests/e2e
Jinjing 5106e33947
fix(changes-tab): prevent freeze and stale highlights when staging/unstaging (#6229)
* fix(changes-tab): prevent freeze and stale highlights when staging/unstaging

When files are staged/unstaged while the Changes tab is open, the
diff viewer was re-rendering all sections, causing UI freezes and
highlight flickering.

- Add resolveCombinedUncommittedSnapshotEntries() to reconcile
  snapshot entries with live git status without destroying existing
  loaded diff content.
- Track retainedResolvedSnapshotEntries from current sections to
  preserve area state when live git status temporarily loses entries.
- Use Map-based O(snapshot + live) algorithm instead of nested loops.
- Add unit tests for the resolver logic.
- Add e2e test with performance measurement for stale unstaged diffs.

Co-authored-by: Orca <help@stably.ai>

* Prevent duplicate entries in uncommitted snapshot resolution

Track resolved snapshot entries using composite area and path keys to
ensure staged and unstaged sections remain distinct and do not duplicate
when live Git status changes or disappears.

Additionally, switch the retained entries from a Map to a list to support
multiple areas per path, and update CombinedDiffViewer to avoid rebuilding
the snapshot list on row load state changes.

* test: add test coverage for duplicate-path snapshot remapping

- Add unit test verifying that duplicate-path snapshots do not remap
  to a retained fallback area.
- Robustify E2E large diff freeze repro test by ensuring interval
  timers are always cleared in a finally block.
- Standardize path utilities in large diff fixtures to ensure cross-platform
  compatibility.

---------

Co-authored-by: Orca <help@stably.ai>
2026-06-23 22:16:20 -07:00
..
fixtures Fix terminal table rendering after workspace restore (#4877) 2026-06-08 03:25:55 -07:00
helpers Make PR comments sidebar easier to triage and read (#5996) 2026-06-21 23:49:43 -07:00
AGENTS.md Expose E2E store via build mode 2026-06-10 17:23:12 -07:00
activity-agent-pane-isolation.spec.ts test: stabilize release e2e checks (#5212) 2026-06-11 12:46:43 -07:00
add-project-default-checkout.spec.ts Stabilize main for v1.4.51 release (#4841) 2026-06-07 17:10:45 -07:00
agent-session-quit-resume.spec.ts Persist agent provider sessions at quit and resume them on cold restore (#5240) 2026-06-11 20:17:23 -07:00
app-menu-paste-ownership.spec.ts Fix paste ownership, input bounds, and IPC validation 2026-06-19 17:14:55 -07:00
artificial-opencode-active-terminal-scroll.ts test: stabilize release e2e checks (#5212) 2026-06-11 12:46:43 -07:00
artificial-opencode-hidden-pressure-scenario.ts test(e2e): stabilize release-cut e2e failures (#4942) 2026-06-08 20:30:05 -07:00
artificial-opencode-main-pressure-scenario.ts Improve release validation reliability (#5643) 2026-06-17 20:05:55 -07:00
artificial-opencode-scroll-measurement.ts Make terminal scroll pressure benchmark diagnose responsive paths (#4846) 2026-06-07 18:16:53 -07:00
artificial-opencode-scroll-scenario.ts Make terminal scroll pressure benchmark diagnose responsive paths (#4846) 2026-06-07 18:16:53 -07:00
artificial-opencode-synthetic-injection.ts Stabilize OpenCode terminal rendering before release (#4850) 2026-06-08 01:00:29 -07:00
artificial-opencode-terminal-load.spec.ts Fix flaky e2e tests (#5680) 2026-06-18 00:11:32 -07:00
browser-tab.spec.ts Keep browser tabs mounted while switching 2026-06-02 15:28:34 -07:00
capture-opencode-tui-repro.mjs test: reproduce terminal TUI and git polling regressions (#4581) 2026-06-03 13:34:27 -07:00
combined-diff-scroll-restore.spec.ts Fix diff view scrolling using virtualized scroll anchors (#6190) 2026-06-23 15:57:29 -07:00
computer-linux.e2e.ts Harden computer use runtime and CLI (#4705) 2026-06-07 17:49:01 -07:00
computer-mac-safari.e2e.ts Harden computer use runtime and CLI (#4705) 2026-06-07 17:49:01 -07:00
computer-mac.e2e.ts Harden computer use runtime and CLI (#4705) 2026-06-07 17:49:01 -07:00
computer-windows-store.e2e.ts Improve release validation reliability (#5643) 2026-06-17 20:05:55 -07:00
computer-windows.e2e.ts Improve release validation reliability (#5643) 2026-06-17 20:05:55 -07:00
daemon-live-session-preservation.spec.ts Preserve live daemon PTYs across app updates (#4330) 2026-05-31 17:21:03 -07:00
daemon-slow-health-check-preservation.spec.ts Remove startup PTY spawn health probe and guard daemon replacement with live-session check (#5230) 2026-06-11 19:00:44 -07:00
daemon-slow-init-pty-gate.spec.ts Keep restored terminals on daemon PTYs when startup is slow (#5234) 2026-06-11 20:17:15 -07:00
dead-terminal-repro.spec.ts
dead-terminal-stress.spec.ts
diff-note-delete.spec.ts Fix current e2e failures (#3973) 2026-05-30 22:46:38 -07:00
diff-note-edit.spec.ts Fix current e2e failures (#3973) 2026-05-30 22:46:38 -07:00
droid-notification.spec.ts Fix inactive Codex completion notifications (#4361) 2026-05-31 22:37:02 -07:00
editable-context-paste-ownership.spec.ts Fix paste ownership, input bounds, and IPC validation 2026-06-19 17:14:55 -07:00
feature-wall.spec.ts test: fix release e2e drift 2026-05-25 22:21:39 -07:00
file-open.spec.ts
floating-mobile-emulator-tab.spec.ts Fix blank/unclosable mobile emulator tab in floating workspace (#6042) 2026-06-22 16:27:33 -07:00
floating-workspace-reopen-webgl-recovery.spec.ts Suspend floating workspace terminal WebGL while the panel is closed (#5073) 2026-06-09 20:57:43 -07:00
floating-workspace-shared-glyph-atlas.spec.ts Reset WebGL glyph atlases globally to stop cross-terminal glyph corruption (#5122) 2026-06-10 13:41:05 -07:00
folder-setup-shallow-priority.spec.ts fix: reword folder grouping prompt away from "monorepo" 2026-06-23 21:03:13 -07:00
folder-setup.spec.ts fix: reword folder grouping prompt away from "monorepo" 2026-06-23 21:03:13 -07:00
git-no-upstream-polling-churn.spec.ts Simplify support diagnostics settings (#5554) 2026-06-16 23:11:27 -07:00
github-cli-stall-repro.spec.ts fix: bound gh cli detail calls (#5413) 2026-06-15 13:37:50 -07:00
global-setup.ts Expose E2E store via build mode 2026-06-10 17:23:12 -07:00
global-teardown.ts
golden-core-flows.spec.ts Stabilize terminal rendering release checks (#5533) 2026-06-16 15:45:02 -07:00
large-diff-freeze-repro.spec.ts fix(changes-tab): prevent freeze and stale highlights when staging/unstaging (#6229) 2026-06-23 22:16:20 -07:00
large-diff-repro-fixtures.ts fix(changes-tab): prevent freeze and stale highlights when staging/unstaging (#6229) 2026-06-23 22:16:20 -07:00
markdown-ordered-list-exit.spec.ts test: cover markdown ordered list exits (#2805) 2026-05-25 16:43:22 -07:00
mobile-banner.spec.ts fix: refit after single terminal restore (#6089) 2026-06-22 12:29:18 -07:00
notification-settings.spec.ts Fix agent completion notification dedupe (#2304) 2026-05-19 00:28:55 -07:00
onboarding.spec.ts Add Windows terminal onboarding step (#5488) 2026-06-16 14:07:26 -07:00
pr-comments-sidebar-cards.spec.ts Add visible PR comment queue action (#6057) 2026-06-21 23:59:29 -07:00
resource-usage-warm-reattach.spec.ts
right-sidebar-windows-titlebar.spec.ts Move Windows sidebar tabs out of titlebar (#2481) 2026-05-21 01:19:49 -04:00
settings-agent-awake.spec.ts Fix e2e flakes from run 26118992268 2026-05-19 13:46:56 -07:00
settings-display-name-ime.spec.ts Fix flaky e2e tests (#5680) 2026-06-18 00:11:32 -07:00
settings-search-responsiveness.spec.ts Fix settings search fan-out (#5452) 2026-06-15 20:52:06 -07:00
settings-skill-detection.spec.ts test: stabilize e2e expectations (#4544) 2026-06-02 22:31:57 -07:00
setup-guide-sidebar.spec.ts Stabilize main for v1.4.51 release (#4841) 2026-06-07 17:10:45 -07:00
setup-script-import.spec.ts Default agent launches to yolo permissions mode (#5145) 2026-06-10 21:14:53 -07:00
source-control-commit-draft-persistence.spec.ts fix: preserve source control commit drafts across remounts (#6120) 2026-06-22 22:45:00 -07:00
source-control-commit-message-ai.spec.ts
source-control-create-pr.spec.ts Unify pull request draft title resolution (#5943) 2026-06-20 18:47:39 -07:00
source-control-discard-confirmation.spec.ts Refactor Source Control header toolbar (#5553) 2026-06-16 18:56:52 -07:00
source-control-pr-generation-switch.spec.ts Persist AI PR generation state across worktree switches (#5952) 2026-06-20 18:16:50 -07:00
ssh-codex-display-artifacts-repro.spec.ts Fix SSH terminal replay artifacts 2026-06-22 16:42:20 -07:00
ssh-codex-real-remote.ts Fix SSH terminal replay artifacts 2026-06-22 16:42:20 -07:00
ssh-codex-reconnect-replay-driver.ts Fix SSH terminal replay artifacts 2026-06-22 16:42:20 -07:00
ssh-codex-repro-remote-fixtures.ts Fix SSH terminal replay artifacts 2026-06-22 16:42:20 -07:00
ssh-codex-terminal-observers.ts Fix SSH terminal replay artifacts 2026-06-22 16:42:20 -07:00
ssh-docker-relay-perf.spec.ts Fix remote runtime tab and agent status UX (#5341) 2026-06-14 01:48:26 -07:00
ssh-localhost.spec.ts Use managed Pi and OMP extensions (#5681) 2026-06-17 23:28:54 -07:00
tab-close-navigation.spec.ts test: stabilize release e2e checks (#5212) 2026-06-11 12:46:43 -07:00
tab-rename-paste-ownership.spec.ts Fix paste ownership, input bounds, and IPC validation 2026-06-19 17:14:55 -07:00
tab-rename.spec.ts Default agent launches to yolo permissions mode (#5145) 2026-06-10 21:14:53 -07:00
tab-sidebar-closed-overlap.spec.ts Fix collapsed sidebar titlebar control overlap (#2087) 2026-05-16 11:50:26 -07:00
tabs.spec.ts test: stabilize release e2e checks (#5212) 2026-06-11 12:46:43 -07:00
tasks-page.spec.ts Fix flaky e2e tests (#5680) 2026-06-18 00:11:32 -07:00
terminal-attention.spec.ts Fix flaky e2e tests (#5680) 2026-06-18 00:11:32 -07:00
terminal-codex-cursor-jitter-repro.spec.ts Fix native Windows Codex cursor flicker (#4907) 2026-06-08 21:11:18 -04:00
terminal-codex-home.spec.ts Isolate Codex hooks in Orca runtime home (#2350) 2026-05-25 15:07:40 -07:00
terminal-codex-local-typing-latency.spec.ts Stabilize OpenCode terminal rendering before release (#4850) 2026-06-08 01:00:29 -07:00
terminal-column-probes.ts Fix Windows ConPTY probe failures by removing startup control bytes (#5893) 2026-06-20 02:03:24 -07:00
terminal-cursor-inactive-style.spec.ts Default agent launches to yolo permissions mode (#5145) 2026-06-10 21:14:53 -07:00
terminal-cursor-raster-probe.ts fix: stabilize release terminal e2e (#5869) 2026-06-19 19:43:42 -07:00
terminal-document-visibility-webgl-recovery.spec.ts Keep terminal text painted after app resume (#5565) 2026-06-17 10:49:41 -07:00
terminal-foreground-redraw-freeze.spec.ts Stabilize main for v1.4.51 release (#4841) 2026-06-07 17:10:45 -07:00
terminal-hidden-tui-visual-restore.spec.ts Default agent launches to yolo permissions mode (#5145) 2026-06-10 21:14:53 -07:00
terminal-history-size-typing-latency.spec.ts fix: replace per-5s full-buffer terminal checkpoints with an incremental log (#5292) 2026-06-12 16:31:24 -07:00
terminal-image-paste-webgl-recovery.spec.ts Recover corrupted terminal WebGL atlases (#5042) 2026-06-09 13:52:58 -07:00
terminal-large-paste-responsiveness.spec.ts Fix paste ownership, input bounds, and IPC validation 2026-06-19 17:14:55 -07:00
terminal-long-table-scroll-restore.spec.ts Use runner Node executable and platform quoting in terminal E2E tests (#5890) 2026-06-20 01:27:41 -07:00
terminal-node-command.ts Use runner Node executable and platform quoting in terminal E2E tests (#5890) 2026-06-20 01:27:41 -07:00
terminal-opencode-emoji-table-rendering.spec.ts Use runner Node executable and platform quoting in terminal E2E tests (#5890) 2026-06-20 01:27:41 -07:00
terminal-output-scheduler.spec.ts Default agent launches to yolo permissions mode (#5145) 2026-06-10 21:14:53 -07:00
terminal-panes.spec.ts feat(tabs): redesign tab splits and terminal pane discoverability (#5927) 2026-06-21 23:09:01 -07:00
terminal-paste-ownership.spec.ts Fix terminal paste cancellation on transient blur (#6232) 2026-06-23 21:24:13 -07:00
terminal-probe-input-sequence.ts Fix Windows ConPTY probe failures by removing startup control bytes (#5893) 2026-06-20 02:03:24 -07:00
terminal-probe-input-sequence.unit.test.ts Fix Windows ConPTY probe failures by removing startup control bytes (#5893) 2026-06-20 02:03:24 -07:00
terminal-pty-readiness.ts Fix Windows ConPTY probe failures by removing startup control bytes (#5893) 2026-06-20 02:03:24 -07:00
terminal-raster-artifact-analysis.ts Fix SSH terminal replay artifacts 2026-06-22 16:42:20 -07:00
terminal-raw-emoji-table-scroll-restore.spec.ts Use runner Node executable and platform quoting in terminal E2E tests (#5890) 2026-06-20 01:27:41 -07:00
terminal-repro-evidence.ts Fix SSH terminal replay artifacts 2026-06-22 16:42:20 -07:00
terminal-restart-persistence.spec.ts test: harden flaky e2e assertions (#2564) 2026-05-21 15:46:09 -07:00
terminal-screenshot-diff.ts Fix terminal tab switch resume rendering (#6041) 2026-06-23 00:23:34 -07:00
terminal-shortcuts.spec.ts fix: handle macOS terminal command arrow scrolling (#5846) 2026-06-19 15:48:03 -07:00
terminal-split-pane-paste-ownership.spec.ts Fix paste ownership, input bounds, and IPC validation 2026-06-19 17:14:55 -07:00
terminal-tab-screenshot.ts Fix terminal tab switch resume rendering (#6041) 2026-06-23 00:23:34 -07:00
terminal-tab-switch-sigwinch-restore.spec.ts Prevent redundant SIGWINCH signals on terminal tab restoration (#6177) 2026-06-23 10:15:06 -07:00
terminal-tab-switch-visual-restore.spec.ts Fix terminal tab switch resume rendering (#6041) 2026-06-23 00:23:34 -07:00
terminal-typing-latency.spec.ts fix: replace per-5s full-buffer terminal checkpoints with an incremental log (#5292) 2026-06-12 16:31:24 -07:00
terminal-webgl-reset-capture.ts Fix SSH terminal replay artifacts 2026-06-22 16:42:20 -07:00
terminal-windows-shell-paste-ownership.spec.ts Fix paste ownership, input bounds, and IPC validation 2026-06-19 17:14:55 -07:00
usage-overview.spec.ts ci: shard electron e2e workflow (#2070) 2026-05-15 23:52:37 -07:00
vitest.config.ts Harden computer use runtime and CLI (#4705) 2026-06-07 17:49:01 -07:00
windows-project-runtime-smoke.spec.ts Add project Windows runtime selection (#5519) 2026-06-17 16:08:14 -07:00
windows-terminal-env-icons.spec.ts Fix Windows dev terminal PATH and shell icons (#2152) 2026-05-17 15:43:53 -04:00
workspace-back-forward-navigation.spec.ts Fix flaky e2e tests (#5680) 2026-06-18 00:11:32 -07:00
workspace-space-git-status.spec.ts Remove package manager cache cleanup (#2550) 2026-05-21 13:22:37 -07:00
worktree-lifecycle.spec.ts
worktree-lineage-state.ts fix: stabilize worktree lineage e2e seed (#2508) 2026-05-21 01:33:53 -07:00
worktree-lineage.spec.ts Fix flaky e2e tests (#5680) 2026-06-18 00:11:32 -07:00
worktree-recent-sort.spec.ts
worktree-row-locators.ts Fix flaky e2e tests (#5680) 2026-06-18 00:11:32 -07:00
worktree-scroll-to-current.spec.ts Fix flaky e2e tests (#5680) 2026-06-18 00:11:32 -07:00
worktree-smart-sort.spec.ts Fix flaky e2e tests (#5680) 2026-06-18 00:11:32 -07:00
worktree-switch-responsiveness.spec.ts Fix flaky e2e tests (#5680) 2026-06-18 00:11:32 -07:00
worktree.spec.ts Focus workspace name field initially in new workspace dialog (#5456) 2026-06-16 00:19:42 -07:00