Commit Graph
846 Commits
Author SHA1 Message Date
abkslmandNucleic 368978bea8 nvrsion: Add: Global Icon For Remote Projects to display globe icon next to remote projects in sidebar, matching local projects in appearance, Fix: Chat: Remove Face ID Permission Text, Refactor: Chat: Live Activity Content Density to open app directly into waiting sessions when tapped, Refactor: Chat: Live Activity Content Density to refresh live activity info significantly faster, Refactor: Chat: Live Activity Content Density to refresh live activity info significantly faster, Fix: Chat: Live Activity Content Density to refresh live activity info significantly faster, Fix: Chat: Network Type Transition Optimization to reduce delay during network type switches, Feature Enhancement Planning: All devices in a mesh group should see and be aware of each other; “pair” reframed into “join”; scanning
Nucleic-Promote: 1
Co-authored-by: Nucleic <[email protected]>
2026-07-05 00:28:21 -07:00
abkslm 79a3afbbee Merge branch 'dev' into nucleic/trunk 2026-07-05 00:28:21 -07:00
abkslmandNucleic c0d7640b5b Session Transcript Sync
Nucleic-Session: 50161730-2DDF-4324-B8ED-C77EBB1CD469
Co-authored-by: Nucleic <[email protected]>
2026-07-05 00:03:21 -07:00
abkslmandNucleic fa6cb9dd81 Feature Enhancement Planning
Nucleic-Session: 3CD3A375-8BC1-407E-951F-8EF136B08390
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:52:51 -07:00
abkslmandNucleic 71235ed615 Feature Enhancement Planning
Nucleic-Session: 3CD3A375-8BC1-407E-951F-8EF136B08390
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:52:43 -07:00
abkslmandNucleic 104acd9c9f Feature Enhancement Planning
Nucleic-Session: 3CD3A375-8BC1-407E-951F-8EF136B08390
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:52:29 -07:00
abkslmandNucleic 15772e12aa Feature Enhancement Planning
Nucleic-Session: 3CD3A375-8BC1-407E-951F-8EF136B08390
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:52:21 -07:00
abkslmandNucleic 77a8fe99ad Feature Enhancement Planning
Nucleic-Session: 3CD3A375-8BC1-407E-951F-8EF136B08390
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:52:10 -07:00
abkslmandNucleic ab7700a8eb Feature Enhancement Planning
Nucleic-Session: 3CD3A375-8BC1-407E-951F-8EF136B08390
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:51:34 -07:00
abkslmandNucleic ac44a73e8d Network Type Transition Optimization
Nucleic-Session: 40F8C53A-F001-423A-8607-EAE181DBE14B
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:51:16 -07:00
abkslmandNucleic 9c07c163dc Feature Enhancement Planning
Nucleic-Session: 3CD3A375-8BC1-407E-951F-8EF136B08390
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:51:03 -07:00
abkslmandNucleic 8701b2516e Feature Enhancement Planning
Nucleic-Session: 3CD3A375-8BC1-407E-951F-8EF136B08390
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:50:53 -07:00
abkslmandNucleic ae951e45e7 Feature Enhancement Planning
Nucleic-Session: 3CD3A375-8BC1-407E-951F-8EF136B08390
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:50:40 -07:00
abkslmandNucleic 434664f371 Feature Enhancement Planning
Nucleic-Session: 3CD3A375-8BC1-407E-951F-8EF136B08390
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:50:30 -07:00
abkslmandNucleic afa7410dae Feature Enhancement Planning
Nucleic-Session: 3CD3A375-8BC1-407E-951F-8EF136B08390
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:50:20 -07:00
abkslmandNucleic 331aac15f1 Live Activity Content Density
Nucleic-Session: B3643133-163C-4C5D-BE20-1A6B7FB83DA9
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:46:05 -07:00
abkslmandNucleic ff605a3997 Live Activity Content Density
Nucleic-Session: B3643133-163C-4C5D-BE20-1A6B7FB83DA9
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:46:00 -07:00
abkslmandNucleic d8561b325d Live Activity Content Density
Nucleic-Session: B3643133-163C-4C5D-BE20-1A6B7FB83DA9
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:45:47 -07:00
abkslmandNucleic 09f66f211f Live Activity Content Density
Nucleic-Session: B3643133-163C-4C5D-BE20-1A6B7FB83DA9
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:41:47 -07:00
abkslmandNucleic fbbff8e26c Live Activity Content Density
Nucleic-Session: B3643133-163C-4C5D-BE20-1A6B7FB83DA9
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:41:40 -07:00
abkslmandNucleic d404442c68 Live Activity Content Density
Nucleic-Session: B3643133-163C-4C5D-BE20-1A6B7FB83DA9
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:41:26 -07:00
abkslmandNucleic 3871572bc4 Live Activity Content Density
Nucleic-Session: B3643133-163C-4C5D-BE20-1A6B7FB83DA9
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:41:21 -07:00
abkslmandNucleic 79163a4b66 Live Activity Content Density
Nucleic-Session: B3643133-163C-4C5D-BE20-1A6B7FB83DA9
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:41:15 -07:00
abkslmandNucleic 80659ec103 Live Activity Content Density
Nucleic-Session: B3643133-163C-4C5D-BE20-1A6B7FB83DA9
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:40:54 -07:00
abkslmandNucleic 8ae92b7961 Live Activity Content Density
Nucleic-Session: B3643133-163C-4C5D-BE20-1A6B7FB83DA9
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:40:35 -07:00
abkslmandNucleic 96b7d7cc79 Live Activity Content Density
Nucleic-Session: B3643133-163C-4C5D-BE20-1A6B7FB83DA9
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:40:29 -07:00
abkslmandNucleic efc7e4c7fb Network Type Transition Optimization
Nucleic-Session: 40F8C53A-F001-423A-8607-EAE181DBE14B
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:40:00 -07:00
abkslmandNucleic 087f49d592 Network Type Transition Optimization
Nucleic-Session: 40F8C53A-F001-423A-8607-EAE181DBE14B
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:39:54 -07:00
abkslmandNucleic d80e94fc24 Network Type Transition Optimization
Nucleic-Session: 40F8C53A-F001-423A-8607-EAE181DBE14B
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:39:46 -07:00
abkslmandNucleic e15c1d9b89 Network Type Transition Optimization
Nucleic-Session: 40F8C53A-F001-423A-8607-EAE181DBE14B
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:39:41 -07:00
abkslmandNucleic b0b041f268 Network Type Transition Optimization
Nucleic-Session: 40F8C53A-F001-423A-8607-EAE181DBE14B
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:39:36 -07:00
abkslmandNucleic ce4028ffc8 Network Type Transition Optimization
Nucleic-Session: 40F8C53A-F001-423A-8607-EAE181DBE14B
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:39:26 -07:00
abkslmandNucleic f988f660fe Network Type Transition Optimization
Nucleic-Session: 40F8C53A-F001-423A-8607-EAE181DBE14B
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:39:19 -07:00
abkslmandNucleic 36e146f258 Network Type Transition Optimization
Nucleic-Session: 40F8C53A-F001-423A-8607-EAE181DBE14B
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:39:14 -07:00
abkslmandNucleic 030d814ffe Network Type Transition Optimization
Nucleic-Session: 40F8C53A-F001-423A-8607-EAE181DBE14B
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:39:08 -07:00
abkslmandNucleic 63a1c9dd9e Network Type Transition Optimization
Nucleic-Session: 40F8C53A-F001-423A-8607-EAE181DBE14B
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:38:55 -07:00
abkslmandNucleic 6ff0a3fb91 Remove Face ID Permission Text
Nucleic-Session: 3EF7F067-2199-41C2-997C-5546C1A8A5C4
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:31:40 -07:00
abkslmandNucleic fdb346f41a Remove Face ID Permission Text
Nucleic-Session: 3EF7F067-2199-41C2-997C-5546C1A8A5C4
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:31:33 -07:00
abkslmandNucleic 32ef11b000 Remove Face ID Permission Text
Nucleic-Session: 3EF7F067-2199-41C2-997C-5546C1A8A5C4
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:31:24 -07:00
abkslmandNucleic d0b63121d3 Remove Face ID Permission Text
Nucleic-Session: 3EF7F067-2199-41C2-997C-5546C1A8A5C4
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:31:18 -07:00
abkslmandNucleic 8bedbc8d98 Remove Face ID Permission Text
Nucleic-Session: 3EF7F067-2199-41C2-997C-5546C1A8A5C4
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:31:14 -07:00
abkslmandNucleic 92e7c59dd6 Remove Face ID Permission Text
Nucleic-Session: 3EF7F067-2199-41C2-997C-5546C1A8A5C4
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:31:10 -07:00
abkslmandNucleic 693ca29691 Live Activity Content Density
Nucleic-Session: B3643133-163C-4C5D-BE20-1A6B7FB83DA9
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:30:53 -07:00
abkslmandNucleic a45795184e Live Activity Content Density
Nucleic-Session: B3643133-163C-4C5D-BE20-1A6B7FB83DA9
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:30:15 -07:00
abkslmandNucleic 0dda487167 Live Activity Content Density
Nucleic-Session: B3643133-163C-4C5D-BE20-1A6B7FB83DA9
Co-authored-by: Nucleic <[email protected]>
2026-07-04 23:29:52 -07:00
abkslm 0996afc47b release(ios/canary): v0.2.0 (build 6) 2026-07-04 22:49:17 -07:00
abkslm 861ca34f06 Merge branch 'dev' into nucleic/trunk 2026-07-04 22:43:59 -07:00
abkslm 88329de96a Merge branch 'dev' into canary 2026-07-04 22:11:37 -07:00
abkslmandClaude Fable 5 3e25ef9559 feat(relay): wire the live Nucleic Private Relay into the desktop + iOS apps (mesh P2 complete)
The relay Worker (nucleic-edge at relay.nucleic.blakeslee.xyz) is deployed, so land the
formerly deploy-gated client side of the data path:

- NucleicProtocol/Sync/RelayTransport.swift: RelayAPI (one base URL for REST + WS,
  membership -> connection token trade), RelayWebSocket (ordered sends, ping keepalive,
  ping-confirmed connect), RelayFrameChannel (client leg, WireFraming inside WS binary,
  presence fail-fast when the room has no host), RelayPresence.
- NucleicCore/Sync/RelayAccess.swift: X25519 PoP enrollment (RelayEnrollment), room
  credential in the login Keychain (separate from the push credential), membership minting
  with re-enroll-on-401.
- NucleicCore/Sync/RelayListener.swift: host SyncListener demuxing the room socket into
  per-tag virtual FrameChannels via RelayEnvelope; presence-driven reaping; backoff redial;
  injectable RelayRoomSocket seam for tests.
- Wire: additive HostMsg.relayMembership(WireRelayMembership) pushed after every hello
  (SyncHost.register -> AppStore mint) so devices paired before the relay adopt it and the
  ~90-day token refreshes on each connect; the pairing QR also carries a bootstrap
  membership so first contact can ride the relay. Old clients ignore the unknown tag.
- AppStore: .relay joins the listener composite behind the Connection-methods checkbox
  (failure degrades to a status row), advertises relayRoomID in PeerAddresses, mints the
  QR bootstrap in beginPairing.
- Desktop UI: the Nucleic Private Relay toggle is enabled (was "coming soon"); the
  LAN-only banner offers it alongside Tailnet.
- iOS: relay is the last dial candidate in HostConnection pair + reconnect (10s handshake
  watchdog); PairedHost persists relayRoomID/relayMembershipToken/relayURL; the
  relayMembership push updates the registry in place; Settings shows Relay in Transports.

Tests: RelayTransportTests, RelayListenerTests, SyncHostTests relay push + QR bootstrap.
Full suite green (783 core + 113 protocol + 2 new); iOS simulator build succeeds. Live
smoke test against the deployed Worker passed end-to-end (PoP enroll, both token tiers,
two-socket frame round-trip through the Room DO with correct envelope tags).

Known limits: host revoke-on-unpair not wired (endpoint is admin-only); PeerClient
(Mac<->Mac) doesn't dial the relay yet.

Co-Authored-By: Claude Fable 5 <[email protected]>
2026-07-04 21:05:01 -07:00
abkslm f8ce672af6 Merge branch 'dev' into nucleic/trunk 2026-07-04 20:15:01 -07:00