Thanks to visit codestin.com
Credit goes to github.com

Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: stablyai/orca
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v1.4.19
Choose a base ref
...
head repository: stablyai/orca
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v1.4.20
Choose a head ref
  • 14 commits
  • 111 files changed
  • 10 contributors

Commits on May 22, 2026

  1. Configuration menu
    Copy the full SHA
    9a41f5b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a509e6e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8d8d815 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    31859d4 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    81fcfea View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    4c9a2ed View commit details
    Browse the repository at this point in the history
  7. perf: Stabilize worktree sidebar activity inputs

    Squashed from PR #2611.
    nwparker authored May 22, 2026
    Configuration menu
    Copy the full SHA
    426272e View commit details
    Browse the repository at this point in the history
  8. fix(daemon): strip Electron node flag from PTYs

    Strip ELECTRON_RUN_AS_NODE from daemon-spawned PTY environments so user shells do not inherit Electron's internal Node-mode flag. Adds regression coverage for the daemon PTY env boundary.
    
    Fixes #2414.
    AIEPhoenix authored May 22, 2026
    Configuration menu
    Copy the full SHA
    bd61398 View commit details
    Browse the repository at this point in the history
  9. Cancel native middle-click paste on tab mouseup (#2518)

    On Linux with primary-selection paste enabled, middle-clicking a tab to
    close it triggered an unwanted primary-selection paste into whichever
    terminal became active after the close. The existing onMouseDown
    preventDefault on each tab blocks Chromium's middle-button auto-scroll
    but does not block the native paste pipeline, which is gated on
    mouseup. After the tab unmounts via onAuxClick → onClose, focus moves
    to xterm's hidden textarea on the newly active terminal, and the
    primary selection lands there.
    
    Add a small named helper preventMiddleButtonDefault and wire it as
    onMouseUp on SortableTab, BrowserTab, and EditorFileTab. Mirrors the
    preventDefault that usePrimarySelectionPaste's enabled=false branch
    already performs for non-tab surfaces. No platform branching: the
    mouseup cancel is a no-op on macOS and Windows because there is no
    native primary-selection paste pipeline to cancel.
    
    Fixes #2346
    BorjaLL authored May 22, 2026
    Configuration menu
    Copy the full SHA
    8ae292e View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    8d90dd4 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    41a2d7b View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    191c5b2 View commit details
    Browse the repository at this point in the history
  13. feat: surface dev-server URLs in the ports panel (#2534)

    * Surface dev-server URLs in workspace ports panel
    
    Why: the OS scanner only sees `127.0.0.1:3001`, so clicking a Vite
    port in the panel opens the wrong host/protocol when the dev server
    binds with a custom hostname or HTTPS (e.g. `https://local.getmontecarlo.com:3001/`).
    We now watch PTY output for advertised origins and prefer them at
    display, copy, and open time. Falls back to the OS-derived address.
    
    The watcher taps the central `runtime.onPtyData` path so it sees local,
    daemon-backed, and SSH PTYs uniformly. URL candidates are validated with
    `new URL()`, sanitized to origin only (no path/query/fragment/userinfo),
    and gated by listener-PID validation so stale entries get evicted when
    a different process reuses the port.
    
    SSH `DetectedPort` enrichment is out of scope here — that panel uses
    separate data shapes and port-forwarding may rewrite the local port,
    making naive URL reuse incorrect. Tracked as a follow-up.
    
    Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
    
    * Extend advertised-URL enrichment to SSH ports
    
    Why: the first cut only enriched the local workspace ports panel. SSH
    worktrees use a separate panel with `DetectedPort` and `PortForwardEntry`
    shapes scanned by the remote relay, so the same dev-server banners that
    flow through Orca's SSH PTYs were captured by the watcher but never
    surfaced.
    
    The renderer-side SSH scanner doesn't know which worktreeId the watcher
    keyed an entry under, so a small helper walks the store to find every
    worktree attached to a given connection and asks the watcher for the
    best match per port (custom DNS host > loopback > LAN IP, https and
    recency as tie-breakers). Enrichment runs at every broadcast and list
    site in src/main/ipc/ssh.ts.
    
    For a forwarded SSH port, the open action now uses
    `advertisedProtocol://customHost:localPort`. We deliberately reuse the
    local forward port — the remote port number is not reachable from the
    local machine — and we only reuse the host when it's a custom DNS name
    (IP literals and the remote's `localhost` get ignored, falling back to
    127.0.0.1 like before). Loopback advertisements from the remote box are
    a no-op because they don't translate to the local browser.
    
    Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
    
    * Address Codex review of advertised-URL enrichment
    
    Four findings from the post-implementation review:
    
    - Watcher rejects wildcard advertised hosts (`0.0.0.0`, `::`, `*`). The
      OS scanner already normalizes wildcards to localhost for the connect
      host; if a dev server prints `http://0.0.0.0:3000/` verbatim we keep
      that sensible default instead of letting the watcher overwrite it
      with a host the browser can't open.
    
    - Pre-bind pending buffer is now capped at 32 distinct PTY IDs with
      LRU eviction. Spawn-failure paths could otherwise leave never-bound
      entries forever — per-PTY 16 KiB bound was the only guard.
    
    - `clearProviderPtyState` now calls `advertisedUrlWatcher.unbindPty`.
      SSH reattach failures, `clearPtyOwnershipForConnection`, and daemon
      spawn-failure cleanup bypass `runtime.onPtyExit`; routing through the
      central provider teardown plugs those holes (and is idempotent with
      the existing `onPtyExit` hook for natural exits).
    
    - `lookupBest` accepts an optional current listener PID and runs the
      same pin-then-evict logic as `lookup`. `enrichSshDetectedPorts`
      threads `DetectedPort.pid` through so a stale advertised URL gets
      evicted on remote port reuse. Forward enrichment stays best-effort
      (forwards are persisted config, not observed listeners — detected
      enrichment is the eviction path).
    
    Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
    
    * fix: refresh SSH ports when advertised URLs change
    
    Co-authored-by: Orca <[email protected]>
    
    * fix: show advertised URLs in port rows
    
    Co-authored-by: Orca <[email protected]>
    
    * fix: address advertised URL review issues
    
    Co-authored-by: Orca <[email protected]>
    
    * fix: tighten advertised URL cache handling
    
    Co-authored-by: Orca <[email protected]>
    
    * fix: align advertised URL edge cases
    
    Co-authored-by: Orca <[email protected]>
    
    * fix: handle advertised URL cache invalidation
    
    Co-authored-by: Orca <[email protected]>
    
    * fix: show status port action tooltips
    
    Co-authored-by: Orca <[email protected]>
    
    * fix: keep port action tooltips above popover
    
    Co-authored-by: Orca <[email protected]>
    
    * fix: clear port action focus after click
    
    Co-authored-by: Orca <[email protected]>
    
    ---------
    
    Co-authored-by: Claude Opus 4.7 (1M context) <[email protected]>
    Co-authored-by: Jinwoo-H <[email protected]>
    Co-authored-by: Orca <[email protected]>
    4 people authored May 22, 2026
    Configuration menu
    Copy the full SHA
    5ca6828 View commit details
    Browse the repository at this point in the history
  14. release: v1.4.20

    github-actions[bot] committed May 22, 2026
    Configuration menu
    Copy the full SHA
    b926490 View commit details
    Browse the repository at this point in the history
Loading