Move workspace provisioning and seed work off the authentication hot path, compact sync changes, optimize cursor queries, and keep browser-only KaTeX rendering out of the Worker bundle.\n\nRefs #244
Reviewers typed the login placeholder and the bare word "demo" instead of
https://demo.edgeever.org. Point the field at the public demo, add a
one-tap fill, and map that alias on every client.
Ship a workspace prompt library with seeded defaults, restore-missing
defaults, and a /ai-prompts management page. The AI assistant now uses
the same prompt text as the library, while keeping freeform custom
instructions and a compact one-row action UI. Also prevent local
wrangler migration rewrites from stripping unauthenticated local access.
Allow exporting the current note as a standalone .html file from the editor
and list menus, embedding images when possible and warning when some cannot
be inlined offline. Closes the HTML gap left from single-note Markdown/PDF
export (#218).
Read-only Cloudflare forks were getting silent green no-ops when already
aligned, or unclear merge skips after Sync fork. Align deploy-only forks
with reset, keep merge for customized trees, always write a job summary,
and document force_redeploy plus an optional Cloudflare Deploy Hook.
Detail preview now uses static HTML WebView instead of Dom TipTap. Stagger
TextInput and editor host mount/teardown for edit, Me, create, and back so
Fabric ShadowNode measure and Hermes GC no longer SIGSEGV on iPadOS 26.5.
Apple rejected 1.10.1 for SIGSEGV in RCTTextLayoutManager and malloc
corruption during WKWebView media TCC probes on iPad. Drop Reanimated
list layout transitions, deny DOM/WebView media capture by default, and
declare required iOS privacy strings with full-screen phone-on-iPad
presentation for the next review build.
Give Web, desktop, and mobile the same product-baseline conflict recovery:
copy the local draft, then adopt the cloud version and rehydrate, instead of
telling users to reload while durable local conflict state remains.