Skip to content

Bring integrate/design-polish into main (to-main-8: #707–#758) - #749

Merged
ufna merged 132 commits into
mainfrom
integrate/to-main-8
Oct 31, 2026
Merged

ufna merged 132 commits into
mainfrom
integrate/to-main-8

Conversation

@ufna

@ufna ufna commented Oct 31, 2026 •

Copy link
Copy Markdown
Owner

This brings integrate/design-polish into main through the frozen snapshot integrate/to-main-8, now design-polish at 56a6b4f. The first cut, at eed65fd, failed only macOS CI. It follows to-main-7 (#706); main 240fab8 is already merged into the branch (#707, #708).

What lands

Pre-merge pinned reviews ran for the updater, installer, security, credential and destructive changes: #710, #714, #715, #720, #721, #724, #725, #727, #728, #730, #733–#747. All other merges were reviewed post-merge against the mockup and Qt.

Local gate

The full pre-cut gate ran at 33d32f6 (logs hashed).

  • Passed:
    • all 18 lockfiles --locked;
    • check-source, separators and privacy;
    • the client-scripts, publication and ci-security suites;
    • gitleaks history and tree;
    • root clippy and tests;
    • core fmt and clippy;
    • Tauri clippy and tests with media;
    • Windows cross-clippy for root, core and Tauri;
    • npm check, tests, build and bundle budget;
    • the worktree lifecycle suite (private PID namespace);
    • licences.
  • Fixed by Resolve the legacy relay test fixtures' temp folder #748: core tests failed only in the seven mobile::legacy fixtures, under the gate's symlinked TMPDIR. At eed65fd the full client/core suite passes, and mobile::legacy passes under a symlinked TMPDIR too.
  • Known non-CI artefacts: root and Tauri rustfmt drift, and the terminal_launch descriptor test under a symlinked TMPDIR.

Re-cut at 56a6b4f (#749–#755 added)

The first cut's gate failed on macOS only, in desktop::producer_io::tests::sockets::clean_eof_and_partial_frame_are_not_confused (#746). XNU's setsockopt returns EINVAL once both directions of a socket are shut. #755 (zerus-5wmh.23.1, pinned review) maps exactly that Apple EINVAL to "receive side shut", keeps both deadline checks, and the macOS test now asserts the real EINVAL. This run is the macOS evidence for it.

The snapshot also gains these, each pinned-reviewed at its exact head:

Local pre-cut gate at 56a6b4f: every step passes apart from the known non-CI artefacts (root and Tauri rustfmt drift, and terminal_launch under a symlinked TMPDIR).

🤖 Generated with Claude Code

ufna and others added 30 commits October 31, 2026 06:51
Main now carries the to-main-7 snapshot (240fab8), which was
design-polish 6220865 itself, so this merge changes no content.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Merge main into integrate/design-polish after to-main-7
#707 fast-forwarded its sync branch to main's merge commit and then
amended it, so design-polish holds an identical copy instead of main's
240fab8 itself. This records the real commit; no content changes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Merge main 240fab8 into integrate/design-polish
Connect the local default-project choice
…eding attention

#664 moved the question card out of the composer's .cmp-col, so it spanned
the whole Activity pane while messages and the composer kept the centred
column. The card now sits in its own .cmp-col again.

Questions, optional questions and approvals take the owner's prototype
look: warn border and tint, a warn question icon beside the heading with
Asked on the right, counters on a second row when there are any, card
option rows with a 14 px radio or check, Other's answer line inside its
own row, and the hint left of the actions in the footer. Behaviour,
keyboard, focus, submit and skip are unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Question card follows the reading column and reads as needing attention
Partition agent and GUI update notifier work before native drain
feat(client): import user skins in Appearance (.11.1)
Connect Projects folder link actions
G4: qualify Linux badge resource completion
Retire notifier inputs while admitted callbacks settle
…ration

G4: keep badge readers live during tray registration
G4: activate raw badge streams after match preparation
Connect the Projects folder and worktrees pane
ufna and others added 16 commits October 31, 2026 16:19
Add the lazy Project Swarm Computers and connection dialog
Bound producer control lines by one absolute deadline
Model bounded notification post admission and barrier acknowledgements
The legacy connector store walks the configuration path from / and
refuses symlinked ancestors, as Qt's ConfigStore does. macOS keeps TMPDIR
under the /var symlink, so the macOS core job would fail all seven
legacy relay tests before they reach the code under test. Canonicalize
the fixture root; the symlink cases inside it keep their coverage.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Resolve the legacy relay test fixtures' temp folder
Add bounded Swarm conflict review data
Seal original fresh native reservation response data
Fence producer channel reuse after terminal I/O failure
Connect native Swarm conflict review and Resolve
Model exact noncolliding notification results and saved-result retirement
@ufna

ufna commented Oct 31, 2026

Copy link
Copy Markdown
Owner Author

CI gate red at eed65fd, on macOS only: desktop::producer_io::tests::sockets::clean_eof_and_partial_frame_are_not_confused (from #746) gets EINVAL from set_read_timeout after the peer closes, because XNU refuses setsockopt once a socket is shut. The CLI (macos-15) aggregator failed with it, and the macOS core/native jobs were skipped. The fix is assigned as zerus-5wmh.23.1. Once it merges into integrate/design-polish I'll move this snapshot to the new head and run the gate again.

🤖 Generated with Claude Code

@ufna ufna changed the title Bring integrate/design-polish into main (to-main-8: #707–#748) Bring integrate/design-polish into main (to-main-8: #707–#755) Oct 31, 2026
ufna and others added 4 commits October 31, 2026 17:30
feat(client): audited one-time automatic approvals (.54)
partial_read_timeout_is_terminal_and_never_resumes_a_frame asserted that
the peer's write fails after the Channel's full shutdown. Linux refuses
it, but XNU accepts and discards the write, so the macOS CLI job failed
(to-main-8 run 41210256828). The fence itself stays asserted: the
refused reads and writes on the Channel and the peer's EOF.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Accept XNU's late peer write in the fenced Channel test
@ufna ufna changed the title Bring integrate/design-polish into main (to-main-8: #707–#755) Bring integrate/design-polish into main (to-main-8: #707–#758) Oct 31, 2026
@ufna

ufna commented Oct 31, 2026

Copy link
Copy Markdown
Owner Author

Re-cut at 5b6f03d. Run 41210256828 at 56a6b4f confirmed #755's macOS EOF fix, and surfaced two more problems:

The snapshot also gains #756 (audited one-time automatic approvals, .54). It had a pinned pre-merge security review, the full client/core suite passes at its head (1648 passed), and check-source, privacy and gitleaks history/tree pass at 5b6f03d.

🤖 Generated with Claude Code

@ufna
ufna merged commit e153d1e into main Oct 31, 2026
29 of 31 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant