From 3f0fe5843583edc37dbe31555db0a0cb6d104a3a Mon Sep 17 00:00:00 2001 From: amoussa1229 <166072409+amoussa1229@users.noreply.github.com> Date: Mon, 17 Aug 2026 12:27:41 +0000 Subject: [PATCH] chore: sync upstream triage ledger --- docs/upstream-sync/triage.jsonl | 90 ++++++++++++++++++++++++++++++++- docs/upstream-sync/triage.md | 90 ++++++++++++++++++++++++++++++++- 2 files changed, 178 insertions(+), 2 deletions(-) diff --git a/docs/upstream-sync/triage.jsonl b/docs/upstream-sync/triage.jsonl index fbfbc0f6..bff4a4ad 100644 --- a/docs/upstream-sync/triage.jsonl +++ b/docs/upstream-sync/triage.jsonl @@ -1,4 +1,4 @@ -{"_meta": {"last_synced": "80e01ee6", "last_synced_date": "2026-08-10"}} +{"_meta": {"last_synced": "e95eff0c", "last_synced_date": "2026-08-17"}} {"sha": "0b76afdc", "pr": 1653, "subject": "reviews block agenda, sticky headers, diff scroll", "disposition": "landed", "reason": "", "branch": "cherry-pick-upstream", "local_sha": null, "updated": "2026-07-02T00:00:00Z"} {"sha": "7530653b", "pr": 1655, "subject": "ResizeObserver settle for review scroll-to", "disposition": "landed", "reason": "", "branch": "cherry-pick-upstream", "local_sha": null, "updated": "2026-07-02T00:00:00Z"} {"sha": "23bd4a63", "pr": 1660, "subject": "top padding to sticky review block header", "disposition": "landed", "reason": "", "branch": "cherry-pick-upstream", "local_sha": null, "updated": "2026-07-02T00:00:00Z"} @@ -222,3 +222,91 @@ {"sha": "458ed232", "pr": 1890, "subject": "fix: isolate desktop dev profile from installed app (#1890)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-10T12:33:10Z"} {"sha": "24da2a9f", "pr": 1861, "subject": "chore(deps-dev): bump electron (#1861)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-10T12:33:10Z"} {"sha": "80e01ee6", "pr": 1892, "subject": "style(web): format entire UI tree and enforce it in CI (#1892)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-10T12:33:10Z"} +{"sha": "46d64508", "pr": 1891, "subject": "fix: route desktop login through backend (#1891)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "83344ca5", "pr": 1895, "subject": "feat(open-swe): set the sandbox base snapshot at runtime (#1895)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "a9f07635", "pr": 1897, "subject": "fix: always include Slack loading tips (#1897)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "d479a6ec", "pr": 1896, "subject": "fix: keep queued messages visible during active runs (#1896)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "eb69d266", "pr": 1898, "subject": "fix: reconnect chat after plan decisions (#1898)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "c263bec5", "pr": 1899, "subject": "feat: make model picker selected-model first (#1899)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "c7fb16e0", "pr": 1900, "subject": "feat: add deployment-aware dashboard UI context (#1900)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "2407abc4", "pr": 1904, "subject": "fix: improve agents chat legibility and surface contrast (#1904)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "ff1ae2ea", "pr": 1902, "subject": "fix: auto-open plan panel instead of in-progress plan banner (#1902)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "ae0b1583", "pr": 1903, "subject": "feat: rebuild dashboard settings page (#1903)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "88375cdd", "pr": 1907, "subject": "ci: remove PR title linting (#1907)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "87afa826", "pr": 1908, "subject": "fix: even out chat composer gutters beside the git panel (#1908)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "a6933d44", "pr": 1906, "subject": "feat: add macOS release pipeline (#1906)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "9f4fbbed", "pr": 1905, "subject": "feat: git diff panel for desktop local mode sessions (#1905)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "ed9e058a", "pr": 1901, "subject": "fix: keep Slack breakout roots headline-only (#1901)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "5efd0b9c", "pr": 1911, "subject": "feat: preview deployment environment (#1911)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "6efe5c50", "pr": 1912, "subject": "fix: read PR author association from the REST pulls endpoint (#1912)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "2ff8c0e8", "pr": 1914, "subject": "ci: restore permissive PR title lint (#1914)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "82009c88", "pr": 1915, "subject": "fix: keep local sandbox setup off event loop (#1915)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "5274b653", "pr": 1910, "subject": "feat: port production desktop terminal (#1910)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "badf8920", "pr": 1916, "subject": "feat: rebuild the agent side panel as a tabbed workspace (#1916)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "a93da9a0", "pr": 1918, "subject": "fix: separate web and Slack model defaults (#1918)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "ea602cfe", "pr": 1919, "subject": "feat: show repository in cloud session header (#1919)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "e218c194", "pr": 1920, "subject": "security: update vulnerable transitive dependencies (#1920)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "92d3cd53", "pr": 1923, "subject": "chore: bump LangSmith SDK to 0.10.18 (#1923)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "3f7631d6", "pr": 1925, "subject": "feat: add defined chat header bar (#1925)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "6e811049", "pr": 1926, "subject": "fix: load git diff from pull request repository (#1926)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "75b81ee8", "pr": 1928, "subject": "fix: remove Slack assistant status calls (#1928)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "f41a418c", "pr": 1922, "subject": "feat: trigger automations as tests (#1922)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "bc9d0ba2", "pr": 1924, "subject": "fix: preserve original Slack thread owner (#1924)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "bea97cf4", "pr": 1931, "subject": "feat: include Slack user timezone in agent context (#1931)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "54d314a6", "pr": 1932, "subject": "feat: simplify review panel header (#1932)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "79f07996", "pr": 1933, "subject": "refactor: reorganize the repo into a pnpm + Turborepo monorepo (#1933)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "c5abec89", "pr": 1930, "subject": "fix: keep plan review header readable (#1930)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "2b779ab3", "pr": 1929, "subject": "feat: add user-scoped LangSmith credentials (#1929)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "6800e374", "pr": 1935, "subject": "fix: validate reviewer outcomes dataset name (#1935)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "8848a8d2", "pr": 1934, "subject": "fix(slack): dedupe mention event deliveries (#1934)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "315ad0b1", "pr": 1936, "subject": "fix: compact review diff header (#1936)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "e6d9dbbb", "pr": 1927, "subject": "fix: clarify Slack acknowledgements and preference scope (#1927)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "98386c51", "pr": 1941, "subject": "fix: drop unreplayable OpenAI reasoning items (#1941)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "e80f9a35", "pr": 1942, "subject": "test: expect OpenAI replay sanitizer (#1942)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "d00377fc", "pr": 1940, "subject": "fix(cache): stop keying TTL cache entries on callable addresses (#1940)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "609718f6", "pr": 1939, "subject": "perf: overlap sandbox startup with agent assembly (#1939)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "9c862bc4", "pr": 1921, "subject": "feat: add conditional automation Slack notifications (#1921)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "349875e0", "pr": 1943, "subject": "fix: avoid duplicate Slack output and brittle prompt tests (#1943)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "ab27a34a", "pr": 1944, "subject": "fix: honor forwarded scheme for desktop OAuth (#1944)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "84b74f51", "pr": 1946, "subject": "feat(sandbox): set GH_TOKEN via the GitHub proxy rule (#1946)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "5f688018", "pr": 1954, "subject": "fix(sandbox): keep local sandbox git identity out of ~/.gitconfig (#1954)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "a63b27ba", "pr": 1956, "subject": "chore(typing): clear basedpyright errors and gate CI on typecheck (#1956)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "d94efde9", "pr": 1958, "subject": "fix(sandbox): adopt an orphaned sandbox on name collision (#1958)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "d4a2fc02", "pr": 1948, "subject": "fix: make prompts and tools source-aware (#1948)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "b6458aa4", "pr": 1945, "subject": "fix: keep GitHub SAML login in desktop (#1945)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "2cbe4335", "pr": 1947, "subject": "feat: generate thread titles in background (#1947)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "91efb6e5", "pr": 1961, "subject": "feat: add macOS desktop install command (#1961)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "294bb0f1", "pr": 1937, "subject": "feat: persist local ACP sessions (#1937)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "8a0f1853", "pr": 1949, "subject": "feat: add Slack buttons for plan approvals (#1949)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "5230884b", "pr": 1955, "subject": "fix: deny Slack tools to subagents (#1955)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "c8bee9c7", "pr": 1963, "subject": "fix: inherit shell auth for desktop ACP (#1963)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "4571ab5d", "pr": 1950, "subject": "fix: exclude plan setup from turn diffs (#1950)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "cd2ee509", "pr": 1965, "subject": "fix: keep sidebar section headers visible (#1965)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "04833ffb", "pr": 1952, "subject": "feat(environments): named prompt + captured snapshot per environment (#1952)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "2f4a0dee", "pr": 1967, "subject": "fix: verify CI status before reporting success (#1967)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "006b9c94", "pr": 1968, "subject": "fix: align local thread header with cloud (#1968)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "a6c36004", "pr": 1969, "subject": "feat: delete local desktop sessions (#1969)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "de4cfc0f", "pr": 1972, "subject": "feat: Enable terminals on the Desktop new-agent screen (#1972)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "9de6414b", "pr": 1970, "subject": "feat: shimmer the conversation loader (#1970)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "8dcac4d4", "pr": 1966, "subject": "feat: switch models in desktop threads (#1966)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "d572b93c", "pr": 1971, "subject": "feat: show local project branch before runs (#1971)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "a6c31b41", "pr": 1977, "subject": "feat(desktop): sign in through the user's own browser (#1977)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "ae22b6b2", "pr": 1980, "subject": "fix(ui): allow the prod branch to deploy the production dashboard (#1980)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "c1fc7db1", "pr": 1981, "subject": "fix(dashboard): keep thread-title generation out of the run's stream (#1981)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "8417fd0f", "pr": 1982, "subject": "test(e2e): drop the blanket 8s stall from the fake implement script (#1982)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "db663b1e", "pr": 1959, "subject": "feat(slack): drop quiet third parties from the untagged-reply gate (#1959)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "40832fb7", "pr": 1984, "subject": "fix(environments): drop the tag from captured snapshot names (#1984)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "c70bae66", "pr": 1983, "subject": "feat(ui): stop the running turn with Escape (#1983)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "2c26eba6", "pr": 1985, "subject": "test(e2e): stop recording traces and video for passing CI runs (#1985)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "3c7aafec", "pr": 1979, "subject": "build(ui): add a Dockerfile for the dashboard (#1979)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "74d55f34", "pr": 1986, "subject": "feat: tint admin threads red (#1986)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "9e9727ed", "pr": 1974, "subject": "feat: show local branch pull requests (#1974)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "6ced941e", "pr": 1962, "subject": "fix(slack): dedupe on the message, not the delivery (#1962)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "1299f3bd", "pr": 1960, "subject": "fix: display the repository used by an agent (#1960)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "87875e70", "pr": 1976, "subject": "feat: add cloud sandbox terminals (#1976)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "e318e732", "pr": 1990, "subject": "fix: restore desktop window drag region (#1990)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "516ae408", "pr": 1988, "subject": "fix: fit chat composer on mobile (#1988)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "585ab55a", "pr": 1989, "subject": "fix: shorten tool call file paths (#1989)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "217116e9", "pr": 1987, "subject": "feat: add voice dictation to the composer (#1987)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "82678d85", "pr": 1975, "subject": "feat: add organization skills (#1975)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} +{"sha": "e95eff0c", "pr": 1992, "subject": "fix: style plan approval as Slack status (#1992)", "disposition": "untriaged", "reason": "", "branch": "", "local_sha": null, "updated": "2026-08-17T12:27:40Z"} diff --git a/docs/upstream-sync/triage.md b/docs/upstream-sync/triage.md index cefacadb..3b378f17 100644 --- a/docs/upstream-sync/triage.md +++ b/docs/upstream-sync/triage.md @@ -6,7 +6,7 @@ Commits on `upstream/main` (langchain-ai/open-swe) not yet in `dev`, and the dec Rows key on the **upstream SHA** (stable across local cherry-picks). Deferred rows are provisional — re-inspect before picking. See the fork-maintenance runbook in `CLAUDE.md`. -**Last synced `upstream/main`:** `80e01ee6` (2026-08-10) +**Last synced `upstream/main`:** `e95eff0c` (2026-08-17) | sha | pr | subject | decision | why | branch | |---|---|---|---|---|---| @@ -233,5 +233,93 @@ Rows key on the **upstream SHA** (stable across local cherry-picks). Deferred ro | `458ed232` | #1890 | fix: isolate desktop dev profile from installed app (#1890) | Untriaged | | | | `24da2a9f` | #1861 | chore(deps-dev): bump electron (#1861) | Untriaged | | | | `80e01ee6` | #1892 | style(web): format entire UI tree and enforce it in CI (#1892) | Untriaged | | | +| `46d64508` | #1891 | fix: route desktop login through backend (#1891) | Untriaged | | | +| `83344ca5` | #1895 | feat(open-swe): set the sandbox base snapshot at runtime (#1895) | Untriaged | | | +| `a9f07635` | #1897 | fix: always include Slack loading tips (#1897) | Untriaged | | | +| `d479a6ec` | #1896 | fix: keep queued messages visible during active runs (#1896) | Untriaged | | | +| `eb69d266` | #1898 | fix: reconnect chat after plan decisions (#1898) | Untriaged | | | +| `c263bec5` | #1899 | feat: make model picker selected-model first (#1899) | Untriaged | | | +| `c7fb16e0` | #1900 | feat: add deployment-aware dashboard UI context (#1900) | Untriaged | | | +| `2407abc4` | #1904 | fix: improve agents chat legibility and surface contrast (#1904) | Untriaged | | | +| `ff1ae2ea` | #1902 | fix: auto-open plan panel instead of in-progress plan banner (#1902) | Untriaged | | | +| `ae0b1583` | #1903 | feat: rebuild dashboard settings page (#1903) | Untriaged | | | +| `88375cdd` | #1907 | ci: remove PR title linting (#1907) | Untriaged | | | +| `87afa826` | #1908 | fix: even out chat composer gutters beside the git panel (#1908) | Untriaged | | | +| `a6933d44` | #1906 | feat: add macOS release pipeline (#1906) | Untriaged | | | +| `9f4fbbed` | #1905 | feat: git diff panel for desktop local mode sessions (#1905) | Untriaged | | | +| `ed9e058a` | #1901 | fix: keep Slack breakout roots headline-only (#1901) | Untriaged | | | +| `5efd0b9c` | #1911 | feat: preview deployment environment (#1911) | Untriaged | | | +| `6efe5c50` | #1912 | fix: read PR author association from the REST pulls endpoint (#1912) | Untriaged | | | +| `2ff8c0e8` | #1914 | ci: restore permissive PR title lint (#1914) | Untriaged | | | +| `82009c88` | #1915 | fix: keep local sandbox setup off event loop (#1915) | Untriaged | | | +| `5274b653` | #1910 | feat: port production desktop terminal (#1910) | Untriaged | | | +| `badf8920` | #1916 | feat: rebuild the agent side panel as a tabbed workspace (#1916) | Untriaged | | | +| `a93da9a0` | #1918 | fix: separate web and Slack model defaults (#1918) | Untriaged | | | +| `ea602cfe` | #1919 | feat: show repository in cloud session header (#1919) | Untriaged | | | +| `e218c194` | #1920 | security: update vulnerable transitive dependencies (#1920) | Untriaged | | | +| `92d3cd53` | #1923 | chore: bump LangSmith SDK to 0.10.18 (#1923) | Untriaged | | | +| `3f7631d6` | #1925 | feat: add defined chat header bar (#1925) | Untriaged | | | +| `6e811049` | #1926 | fix: load git diff from pull request repository (#1926) | Untriaged | | | +| `75b81ee8` | #1928 | fix: remove Slack assistant status calls (#1928) | Untriaged | | | +| `f41a418c` | #1922 | feat: trigger automations as tests (#1922) | Untriaged | | | +| `bc9d0ba2` | #1924 | fix: preserve original Slack thread owner (#1924) | Untriaged | | | +| `bea97cf4` | #1931 | feat: include Slack user timezone in agent context (#1931) | Untriaged | | | +| `54d314a6` | #1932 | feat: simplify review panel header (#1932) | Untriaged | | | +| `79f07996` | #1933 | refactor: reorganize the repo into a pnpm + Turborepo monorepo (#1933) | Untriaged | | | +| `c5abec89` | #1930 | fix: keep plan review header readable (#1930) | Untriaged | | | +| `2b779ab3` | #1929 | feat: add user-scoped LangSmith credentials (#1929) | Untriaged | | | +| `6800e374` | #1935 | fix: validate reviewer outcomes dataset name (#1935) | Untriaged | | | +| `8848a8d2` | #1934 | fix(slack): dedupe mention event deliveries (#1934) | Untriaged | | | +| `315ad0b1` | #1936 | fix: compact review diff header (#1936) | Untriaged | | | +| `e6d9dbbb` | #1927 | fix: clarify Slack acknowledgements and preference scope (#1927) | Untriaged | | | +| `98386c51` | #1941 | fix: drop unreplayable OpenAI reasoning items (#1941) | Untriaged | | | +| `e80f9a35` | #1942 | test: expect OpenAI replay sanitizer (#1942) | Untriaged | | | +| `d00377fc` | #1940 | fix(cache): stop keying TTL cache entries on callable addresses (#1940) | Untriaged | | | +| `609718f6` | #1939 | perf: overlap sandbox startup with agent assembly (#1939) | Untriaged | | | +| `9c862bc4` | #1921 | feat: add conditional automation Slack notifications (#1921) | Untriaged | | | +| `349875e0` | #1943 | fix: avoid duplicate Slack output and brittle prompt tests (#1943) | Untriaged | | | +| `ab27a34a` | #1944 | fix: honor forwarded scheme for desktop OAuth (#1944) | Untriaged | | | +| `84b74f51` | #1946 | feat(sandbox): set GH_TOKEN via the GitHub proxy rule (#1946) | Untriaged | | | +| `5f688018` | #1954 | fix(sandbox): keep local sandbox git identity out of ~/.gitconfig (#1954) | Untriaged | | | +| `a63b27ba` | #1956 | chore(typing): clear basedpyright errors and gate CI on typecheck (#1956) | Untriaged | | | +| `d94efde9` | #1958 | fix(sandbox): adopt an orphaned sandbox on name collision (#1958) | Untriaged | | | +| `d4a2fc02` | #1948 | fix: make prompts and tools source-aware (#1948) | Untriaged | | | +| `b6458aa4` | #1945 | fix: keep GitHub SAML login in desktop (#1945) | Untriaged | | | +| `2cbe4335` | #1947 | feat: generate thread titles in background (#1947) | Untriaged | | | +| `91efb6e5` | #1961 | feat: add macOS desktop install command (#1961) | Untriaged | | | +| `294bb0f1` | #1937 | feat: persist local ACP sessions (#1937) | Untriaged | | | +| `8a0f1853` | #1949 | feat: add Slack buttons for plan approvals (#1949) | Untriaged | | | +| `5230884b` | #1955 | fix: deny Slack tools to subagents (#1955) | Untriaged | | | +| `c8bee9c7` | #1963 | fix: inherit shell auth for desktop ACP (#1963) | Untriaged | | | +| `4571ab5d` | #1950 | fix: exclude plan setup from turn diffs (#1950) | Untriaged | | | +| `cd2ee509` | #1965 | fix: keep sidebar section headers visible (#1965) | Untriaged | | | +| `04833ffb` | #1952 | feat(environments): named prompt + captured snapshot per environment (#1952) | Untriaged | | | +| `2f4a0dee` | #1967 | fix: verify CI status before reporting success (#1967) | Untriaged | | | +| `006b9c94` | #1968 | fix: align local thread header with cloud (#1968) | Untriaged | | | +| `a6c36004` | #1969 | feat: delete local desktop sessions (#1969) | Untriaged | | | +| `de4cfc0f` | #1972 | feat: Enable terminals on the Desktop new-agent screen (#1972) | Untriaged | | | +| `9de6414b` | #1970 | feat: shimmer the conversation loader (#1970) | Untriaged | | | +| `8dcac4d4` | #1966 | feat: switch models in desktop threads (#1966) | Untriaged | | | +| `d572b93c` | #1971 | feat: show local project branch before runs (#1971) | Untriaged | | | +| `a6c31b41` | #1977 | feat(desktop): sign in through the user's own browser (#1977) | Untriaged | | | +| `ae22b6b2` | #1980 | fix(ui): allow the prod branch to deploy the production dashboard (#1980) | Untriaged | | | +| `c1fc7db1` | #1981 | fix(dashboard): keep thread-title generation out of the run's stream (#1981) | Untriaged | | | +| `8417fd0f` | #1982 | test(e2e): drop the blanket 8s stall from the fake implement script (#1982) | Untriaged | | | +| `db663b1e` | #1959 | feat(slack): drop quiet third parties from the untagged-reply gate (#1959) | Untriaged | | | +| `40832fb7` | #1984 | fix(environments): drop the tag from captured snapshot names (#1984) | Untriaged | | | +| `c70bae66` | #1983 | feat(ui): stop the running turn with Escape (#1983) | Untriaged | | | +| `2c26eba6` | #1985 | test(e2e): stop recording traces and video for passing CI runs (#1985) | Untriaged | | | +| `3c7aafec` | #1979 | build(ui): add a Dockerfile for the dashboard (#1979) | Untriaged | | | +| `74d55f34` | #1986 | feat: tint admin threads red (#1986) | Untriaged | | | +| `9e9727ed` | #1974 | feat: show local branch pull requests (#1974) | Untriaged | | | +| `6ced941e` | #1962 | fix(slack): dedupe on the message, not the delivery (#1962) | Untriaged | | | +| `1299f3bd` | #1960 | fix: display the repository used by an agent (#1960) | Untriaged | | | +| `87875e70` | #1976 | feat: add cloud sandbox terminals (#1976) | Untriaged | | | +| `e318e732` | #1990 | fix: restore desktop window drag region (#1990) | Untriaged | | | +| `516ae408` | #1988 | fix: fit chat composer on mobile (#1988) | Untriaged | | | +| `585ab55a` | #1989 | fix: shorten tool call file paths (#1989) | Untriaged | | | +| `217116e9` | #1987 | feat: add voice dictation to the composer (#1987) | Untriaged | | | +| `82678d85` | #1975 | feat: add organization skills (#1975) | Untriaged | | | +| `e95eff0c` | #1992 | fix: style plan approval as Slack status (#1992) | Untriaged | | | _Maintenance: after a `git sync`, add new `dev..upstream/main` SHAs as **Untriaged** (edit `triage.jsonl`) and bump "Last synced". A successful `git cherry-pick -x` auto-moves the row to **Landed** via the `post-commit` journal + `make triage-reconcile`._