Outerline 1.0-43

Summary

Performance and infrastructure build. Preview Only mode (Cmd+3) scroll stutter has been resolved — the root cause was a feedback loop of per-tick state updates and a permanently-rendered hidden measurement overlay driving continuous SwiftUI AttributeGraph churn during scroll. This build also unifies word count across the app, reworks the build script to use proper Xcode archive/export, and adds a one-click MCP helper installer.

What's New

  • Unified word count into a single shared implementation used by the editor, file list, version history, and MCP server.
  • Reworked build-app.sh to use the xcodebuild archivexcodebuild -exportArchive flow.
  • Added MCPB bundle for one-click Claude Desktop MCP installation.
  • Updated MCP helper icon.

Fixes

  • Fixed Preview Only (Cmd+3) scroll stutter — replaced fire-every-tick DispatchQueue.main.async outline updates with a real 120ms debounce, eliminating per-frame @Published state churn.
  • Fixed hidden measurement overlay being kept in the SwiftUI view tree permanently during scroll — overlay now removes itself once segment frames are captured and reappears only when content, theme, max-width, or pane width changes.
  • Fixed stale segment frame measurements after window resize, theme change, or content max-width change.
  • Fixed debounced outline active-heading update overwriting imperative outline changes (outline jump, doc switch, content edit).
  • Fixed measurement not invalidating when the active scroll bridge changes (e.g. toggling split scroll sync or switching modes).
  • Fixed inconsistent word counts between the editor, file list, version history, and MCP server.
  • Fixed --appstore build failure caused by missing WordCount.swift in the Xcode project and duplicate AGENTS.md resources.
  • Fixed flaky HTML escaping test.

Improvements

  • Word count is now a zero-allocation Unicode scalar walk (String.wordCount in OuterlineShared), replacing 4 divergent implementations.
  • Build output now exports to ~/Desktop/ instead of build/export/.
  • Added MCPB bundle documentation.
  • Updated development docs with new build script usage, launch arguments, and Xcode project workflow.
  • Added proprietary LICENSE file.
  • Developer documentation audit and cleanup.