feat: port upstream product features onto V2 and native iOS - #289
Draft
Bl4ckBl1zZ wants to merge 82 commits into
Draft
feat: port upstream product features onto V2 and native iOS#289Bl4ckBl1zZ wants to merge 82 commits into
Bl4ckBl1zZ wants to merge 82 commits into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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:
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 snapshotd29c56a5c404cb0f58d3b2ac41762fa0d0ac28d4.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.