Skip to content

feat: port upstream product features onto V2 and native iOS - #289

Draft
Bl4ckBl1zZ wants to merge 82 commits into
mainfrom
feat/upstream-product-parity-2026-09-10
Draft

feat: port upstream product features onto V2 and native iOS#289
Bl4ckBl1zZ wants to merge 82 commits into
mainfrom
feat/upstream-product-parity-2026-09-10

Conversation

@Bl4ckBl1zZ

@Bl4ckBl1zZ Bl4ckBl1zZ commented Sep 10, 2026

Copy link
Copy Markdown
Owner

This fork had skipped several upstream product features because they depended on the retired V1 thread runtime. This ports the completed features onto orchestration V2 and adds native Swift counterparts, while preserving the fork’s providers, theme system, remote connections and release identity.

Completed ports include:

  • Server-owned V2 automatic settlement with stale-sequence guards, preserved activity timestamps/pins, capability-aware web/Expo/Swift classification and native machine settings. Blocking requests outrank asynchronous questions in shell summaries.
  • Sidebar/header stack counts with lazy web collection access; native stack/remainder counts and preserved draft status.
  • Saved branch PR indicators across web sidebar/chat/command palette and native observations/details. Native linked status consumes pushed V2 snapshots; draft/terminal web indicators use consistent state icons.
  • V2 saved-branch PR discovery, source-aware persisted snapshots, cheap GitHub summaries, stack discovery/dismissal and agent-scoped link/list/unlink MCP tools. Web/Swift collections show cached state, stack order and source metadata. Background writes preserve activity time and reject stale branch/link context.
  • V2 Codex browser/computer source metadata, readable JS/computer action titles, source-aware summaries and signed host app icons on web/Swift. Server 3933 pass/13 skip/two baseline PortScanner failures; focused checks, all client/server types, lint, Swift metadata tests and app/test compilation pass. Native arbitrary SVG/data tool logos retain glyph fallbacks pending a format-aware renderer.
  • Status-aware T3 tool intent labels, PR/browser icons and grouped summaries on V2 web and native Swift, with shared Expo compatibility. 101 focused TypeScript tests, 10 macOS Swift logic tests, web/Expo types, lint and native app/test compilation pass.
  • Project browser-access overrides with V2 identity resolution, credential revocation/re-enable, sparse reset and web/Swift controls.
  • Automatic pulls for clean default branches, with machine defaults, sparse project on/off/inherit controls on web/desktop/Swift, and activation-safe startup checks.
  • Opt-in panel motion across sidebar, terminal drawer, right panel/sheets and PR workspace, with navigation/reduced-motion/resize suppression and safe closing content retention.
  • Desktop resting composer with retained editor/caret, context-strip model controls, compact attachments and reading-gesture restoration.
  • Overflow arrows and mouse-wheel navigation for right-panel tabs.
  • Provider picker/banner account setup links with explicit machine/account routing, existing owned install/login terminals, compact controls and native picker/account-settings entry points.
  • Shared machine actions with reset/empty overrides across V2 setup, fork teardown, web/desktop action controls and native editing; no t3.json rewrite.
  • Machine-scoped Projects settings with model/workspace defaults, grouped rows, target-catalog checks and native controls.
  • Restart-persistent PR detail/stack cache with original expiry, identity separation and mutation/failure invalidation.
  • Composer task/request/stash drawers, prompt history, selected-response citations, custom model names/options, and native multi-draft stash preservation.
  • Diff file trees and path copying, accessible diff colors, minimap navigation, media playback/zoom and signed large-file uploads.
  • Multiple linked pull requests, reviewed stack actions and GitHub labels, plus V2 Codex MCP access decisions.
  • Provider list/editor navigation across environments, model pricing overrides, quota views, machine icons and bounded incremental terminal replay.
  • Web and native sidebar file drops, native composer file drops, workspace setup feedback and quieter ordinary tool failures.
  • Header thread/project actions and inline rename, web and native interim-response folding, remembered PR filters and merge-readiness sorting.
  • Custom project icons and automatic defaults across web and Swift, with a full native Lucide catalogue, emoji/color picker, reset and capability-gated project mutations.
  • Native cross-environment PR workspace with saved filters, host identity, opaque pagination and visible-row stats; capability-gated Code tab with per-commit paged diffs, a collapsible file tree and native line/word highlighting.
  • Native private review drafts and host review submissions, paginated conversations, replies and resolve/reopen controls, with permission intersections, repository identity checks and exact-side/line annotations. Full-file context uses host versions and rejects stale hunk/content mismatches.
  • Native host PR actions with repository/viewer method restrictions, conflict/freshness/auto-merge indicators and explicit host-cache refresh.
  • Native sparse title/description edits, own-comment editing across timeline and paginated conversations, and top-level comments.
  • Native optimistic reaction pills and lazy reviewer search/request/withdrawal with host IDs, avatars, team identity and truncation notices.
  • Native inspect/edit/remove PR review-context chips and sent-message cards, with shared web serialization and an empty Ask question field.
  • Native PR worktree/local checkout and V2 thread attachment, with Ask/Explain/findings/conflicts staged safely into the composer; stale-checkout warnings and identity checks.
  • Foreground tool focus on web and native, completed-tool group summaries, bounded expandable history, concurrent/background handling and separate failure rows.
  • Individual native PR finding/check and selected diff-range handoffs, with explicit revision/excerpt bounds and host-specific checkout-command copy.
  • Window-focus restoration that respects text fields, terminals and dialogs; multiline mobile drafts and stable loading context/Git footers.
  • Opt-in proactive PR and completed-run diff panels on V2, preserving manual choices and PR priority.
  • Native provider account add/edit/disable/remove with shared schema-derived forms, redacted credential preservation, account colors and fresh-settings conflict detection.
  • Exact native assistant citation highlighting with ambiguity-safe UTF-16 source resolution.
  • Server-backed web sidebar drag ordering, active-position reset and consistent pin placement, interoperating with Swift V2 keys.
  • Tool-group and individual-output expansion retention, web intra-row reading-position restore and native tool-row anchor restore.
  • Web/native host-file and PDF/HTML attachment previews, workspace videos, HTML/source toggles, file-relative Markdown images, V2 refresh after file-changing tools, and absolute-path chat/activity navigation.
  • Guided setup on web/desktop and native iOS, bounded Codex/Claude history import into V2, retry-safe ownership receipts, and account-specific install/login terminals.
  • Markdown image galleries across PR body sections, retaining the fork media renderer and native existing gallery.
  • Manual panel choice preservation for V2 plans, lazy shared diff workers with WASM highlighting, web folder breadcrumbs and native containing-folder navigation.

Remote model catalogs now drive model aliases, defaults, version gates and New badges. Claude V2 turns and text generation use allowlisted runtime profiles from the same cache; the fork preserves its working compaction slider. Web/desktop and native Swift pickers display server-provided badges. Invalid metadata keeps the last good cache.

Web/desktop drafts now distinguish explicit model/trait choices from defaults. Reopening a seeded draft adopts current destination defaults; user picks and invested drafts survive persistence migration and asynchronous workspace loading. Swift already uses the same intent distinction.

Server-owned settings now explain primary-connection availability and report failed target selection rather than silently discarding saves. Explicit remote-machine settings retain their exact target.

Signed image assets expose bounded header dimensions for stable Markdown layout. Authored dimensions take precedence, and advertised host-file access supports images outside the workspace. Swift mirrors the optional contract and keeps its stable fixed transcript frame.

Claude and Codex live subscription notifications now flow from V2 into per-account snapshots, with no duplicate broadcasts, preserved sparse-window metadata and protection against stale/failed probe results. Existing web/desktop/Swift Limits views receive the updates.

Swift tool history now restores the reading offset inside a measured result after recycling or reopening, including iOS 17. User scrolling cancels pending restoration.

V1 thread deciders/projectors/reactors and V1 pagination are not imported. Features use V2 projections, runs and response capabilities; project icons use fork-owned migration 059 with journal recovery markers. PATCH.md documents these decisions. This branch includes the original manual sync in #288 (e16b8b059c9f5ff6dfed1addecffb831c6aee043..0f602b3372b300ae94084bd3fe7dbaadaa58ba3a, 13 upstream commits), followed by reviewed feature ports against upstream snapshot d29c56a5c404cb0f58d3b2ac41762fa0d0ac28d4.

Validation: 45764f6: Full server suite 3969 passed, 13 skipped, two unchanged PortScanner failures. Later async-summary and pin-preservation changes: 48 projection/runtime/client tests and 40 final runtime/policy/worker/V1-boundary tests pass. 201 client/settings/atom tests, nine host Swift contract tests, fixtures, server/web/Expo types and root lint pass. Native app/test compile 22.7s with two existing Voice warnings; no simulator or browser launch.

This is a draft because the broader parity work is still ongoing. Remaining areas include native integration source labels and resting-composer layout, shared project configuration/load balancing, hydrated PR collection panels, full hosted-reference detail routing, quota sources, desktop capture/browser import/update flows, Antigravity integration and server lifecycle automation. Expo remains the fork’s frozen compatibility client. This PR must not be merged until the remaining scope and integrated visual review are resolved.

Confirmed host merges now refresh linked V2 snapshots and checkout caches immediately. Queue admission does not settle a PR. Latest server run: 3,972 passed, 13 skipped, two known local PortScanner failures; server types and lint clean.

Created/opened PR actions now link their originating V2 thread from web, Expo and Swift, preserving fork-target URL identity and rejecting stale checkout context. Focused helper/RPC/contracts/client tests, types, lint, Swift fixtures and the compile-only native build pass.

Opt-in restart recovery now uses durable V2 run markers, strict saved-session reuse and native Codex promptless continuation. Stop/archive/settle/branch/provider changes cancel stale recovery. Web and Swift expose machine-owned settings; automatic settlement waits for initial recovery. Explicit per-update handoff and cross-machine preference propagation remain. Latest full server: 3,990 passed, 13 skipped and two known local PortScanner failures. Final focused tests, types, lint, Swift fixtures, 11 host Swift tests and compile-only native app/tests pass. No simulator or browser launch.

Implemented with GPT-6 in the Codex harness.

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XXL labels Sep 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XXL vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant