Updates
Even death stars have an exhaust vent.
Google OAuth now runs natively in Freed Desktop, large relationship graphs stay lighter during motion, source filtering allocates less work, Map stays smoother, and runtime memory monitoring separates Freed WebKit from machine-wide totals
Features
- Story wall publishing
- AI ranked friend suggestions
- Support Friends graph pinch zoom
Fixes
- Keep large Friends graphs responsive by holding active pan and zoom to a stable 160-node paint layer, then refreshing viewport detail after motion settles
- Add regression coverage for 1,600-person Friends graphs, including mount time, zoom, pan, scene sync, long tasks, dropped frames, and sidebar row virtualization
- Reduce dense Map motion paint during pan and zoom
- Report app-scoped native and WebKit memory in renderer heartbeats
- Gate optional story scraping on resident memory pressure
- Tighten social scraper resident memory start budget
- Skip hidden Friends provider labels during graph motion
- Gate scraper memory before session slots
- Gate social scrapes on resident WebKit memory
- Complete Google Contacts sync in Freed Desktop
- Share native Google OAuth credentials between Drive and Contacts refresh
- Surface Google OAuth and People API failure details in Settings instead of generic load errors
- Reader, feed, and header polish
- Keep friends graph sync errors recoverable
- Test coverage and performance hardening
- Release build and type-safety cleanup
- Route Google Drive through native sync requests
- Capture and scraper reliability fixes
- Open the full Map from Friends detail with one atomic store update
- Keep large relationship graphs on a smaller 96-node paint layer during active motion before refreshing viewport detail
- Reduce Source sidebar feed search allocation churn for large RSS collections
Follow-ups
- Lighten settings moving chrome
- Reduce settings scroll overdraw
- Friends relationship tiers
- Reader, sidebar, and settings UX work
- Trim reader rail work and stabilize friends perf
- Isolate social scraper webkit stores
- Gate startup social scraper pressure
- Recycle blocked scraper windows
- Reserve scraper memory headroom
- Slim desktop e2e gates
- Keep memory-blocked scrapes from holding the shared scraper slot
- Continue passive soak metrics until Apple Events authorization is restored for active UI driving
- Treat Settings scroll as the next measured performance surface because it remains the largest budget miss
Google OAuth now runs natively in Freed Desktop, Friends graph motion stays lighter, Settings and Map stay smoother, runtime memory monitoring separates Freed WebKit from machine-wide totals, and dense Map motion now stays inside the frame budget
Features
- Story wall publishing
- AI ranked friend suggestions
- Support Friends graph pinch zoom
Fixes
- Reduce dense Map motion paint during pan and zoom
- Report app-scoped native and WebKit memory in renderer heartbeats
- Gate optional story scraping on resident memory pressure
- Tighten social scraper resident memory start budget
- Skip hidden Friends provider labels during graph motion
- Gate scraper memory before session slots
- Gate social scrapes on resident WebKit memory
- Complete Google Contacts sync in Freed Desktop
- Share native Google OAuth credentials between Drive and Contacts refresh
- Surface Google OAuth and People API failure details in Settings instead of generic load errors
- Reader, feed, and header polish
- Keep friends graph sync errors recoverable
- Test coverage and performance hardening
- Release build and type-safety cleanup
- Route Google Drive through native sync requests
- Capture and scraper reliability fixes
- Open the full Map from Friends detail with one atomic store update
Follow-ups
- Lighten settings moving chrome
- Reduce settings scroll overdraw
- Friends relationship tiers
- Reader, sidebar, and settings UX work
- Trim reader rail work and stabilize friends perf
- Isolate social scraper webkit stores
- Gate startup social scraper pressure
- Recycle blocked scraper windows
- Reserve scraper memory headroom
- Slim desktop e2e gates
- Keep memory-blocked scrapes from holding the shared scraper slot
- Continue passive soak metrics until Apple Events authorization is restored for active UI driving
- Treat Settings scroll as the next measured performance surface because it remains the largest budget miss
AI ranked friend suggestions, support Friends graph pinch zoom, and Friends relationship tiers
Features
- AI ranked friend suggestions
- Support Friends graph pinch zoom
- Friends relationship tiers
Fixes
- Reader, feed, and header polish
- Test coverage and performance hardening
- Release build and type-safety cleanup
- Route Google Drive through native sync requests
- Optimized social scraper frame drops
- Dedupe Instagram story captures
- Pause Settings descendant transitions while the dialog is moving
- Open the full Map from Friends detail with one atomic store update
- Flush the Friends to Map handoff at the click boundary
- Flush mobile Friends toolbar switches between Details and graph modes
- The collapsed Friends detail card empty-space regression are now more stable
- Settings scrolling is lighter, and Friends view transitions are stable through the release regression gate
- Guarded Friends graph Pixi teardown so the Last seen to Map handoff cannot be replaced by the fatal error screen
- Kept the collapsed Friends detail-card regression focused on selected-person behavior instead of a CI-sensitive graph node point lookup
- V26.5.1013-dev replaces the failed v26.5.1012-dev validation tag, which produced no installable artifacts
Follow-ups
- Reader, sidebar, and settings UX work
- Trim reader rail work and stabilize friends perf
- Isolate social scraper webkit stores
- Gate startup social scraper pressure
- Recycle blocked scraper windows
- Reserve scraper memory headroom
- Slim desktop e2e gates
- Continue passive soak metrics until Apple Events authorization is restored for active UI driving
- Treat Settings scroll as the next measured performance surface because it remains the largest budget miss
- Settings scroll and Friends graph stability
Faster Map pan and zoom, steadier Friends to Map navigation, and stable release validation
Fixes
- Reader, feed, and header polish
- Release build and type-safety cleanup
- Settings now avoids repeated scroll timer churn and uses visibility observation for the update auto-check, reducing interaction work while the dialog is moving
- Friends detail last-seen cards now switch to Map before applying the selected friend, avoiding a loaded-runner transition stall where the store reached Map before the Map surface mounted
- Map marker smoke validation now waits for moving-state marker deferral to settle before clicking visible markers
Follow-ups
- Replaces the failed v26.5.913-dev validation tag with the dense Map optimization, Friends to Map transition fix, and Map marker click stability fix
- Continue the installed dev build soak and compare WebKit RSS against the v26.5.911 baseline
- Reduce map render comparison allocations and paint fewer dense Map markers during active movement
- Reduce settings list filter work
- Reduce feed browse filtering scans
- Stabilize map markers across refreshes
- Relax hidden renderer watchdog
- Continue the installed dev build soak and compare WebKit RSS against the v26.5.903 baseline
- Continue Map and Friends interaction monitoring under real desktop load
- Improves Settings scroll paint headroom and keeps the same-day performance fixes together
- Investigate the remaining Settings scroll p95 noise, which still appears without JavaScript long tasks
- Keeps hidden sessions quieter and restores WebKit memory attribution
- Improves dense Friends graph recovery, Map interaction smoothness, desktop crash recovery, and WebKit memory attribution for today's dev builds
- Reduces dense Map marker work, speeds Settings, and sheds feed media earlier under WebKit pressure
This dev build keeps the overnight performance work moving with smoother dense Friends graph interaction, compact-feed read-state repair, and the full same-day performance rollup, guard the Friends last-seen to Map handoff so stale MapLibre marker work cannot crash the app during view changes, and isolate dense Map marker paint so large Map views do less layout and paint work during active zoom and pan
Fixes
- Runtime health telemetry now keeps a bounded tail instead of letting renderer heartbeats and scrape preflight records grow without limit
- Cull the dense Friends graph interaction layer at the 1,600-person scale so active pan and zoom draws only the viewport-near capped set while the full dense graph returns after interaction settles
- Keep runtime health telemetry bounded so renderer heartbeats, DOM counts, event-loop lag, and scrape memory preflight records remain useful without unbounded file growth
- Classify hidden renderer timer throttling separately from foreground event-loop lag so soak metrics stop blaming macOS background timer behavior for app jank
- Friends graph interaction culling and Bound runtime health log retention
- Source sidebar search now filters sources immediately while the heavier feed search stays debounced
- Opening Freed from the dock or Finder now restores the primary window when macOS reports the app as running with no visible windows
- Friends graph zoom and pan now do less per-frame work at the 1,600-person scale by capping the transient dense interaction layer and keeping production debug payloads out of the hot path
- Map handoff crash guard, hidden renderer heartbeat telemetry, and dense Friends and Map performance fixes
- Friends detail last-seen cards now use a lightweight static mini map preview instead of mounting MapLibre before opening the full Map view
- Compact feed read-on-scroll tracking now resets its session key correctly when the visible item set changes
Follow-ups
- This dev build keeps the desktop performance audit moving with faster source filtering, better window recovery, and today's Friends, Map, and runtime performance fixes
- Continue the installed soak and watch WebKit process pressure separately from foreground frame timing