[{"data":1,"prerenderedAt":794},["ShallowReactive",2],{"docs-sidebar-source":3,"content-query-uMzXNN6FoC":311},[4,8,11,14,17,21,25,29,32,35,39,43,47,51,55,59,63,67,70,73,77,81,85,88,91,94,98,102,106,110,114,117,120,124,128,132,136,140,144,148,152,155,158,161,164,167,170,173,176,179,182,185,188,191,194,197,200,203,206,209,212,215,218,221,224,227,230,233,236,239,242,245,248,251,254,257,260,263,266,269,272,275,278,281,284,287,290,293,296,299,302,305,308],{"_path":5,"title":6,"order":7},"\u002Fdocs\u002Fgetting-started","Getting Started",1,{"_path":9,"title":10,"order":7},"\u002Fdocs\u002Fself-hosting\u002Fall-in-one","All-in-One Setup",{"_path":12,"title":13,"order":7},"\u002Fdocs\u002Fviews\u002Fgrid","Grid View",{"_path":15,"title":16,"order":7},"\u002Fdocs\u002Fapi\u002Fserver","Server API",{"_path":18,"title":19,"order":20},"\u002Fdocs\u002Fcore-concepts","Core Concepts",10,{"_path":22,"title":23,"order":24},"\u002Fdocs\u002Fcrdt","What is a CRDT?",11,{"_path":26,"title":27,"order":28},"\u002Fdocs\u002Fself-hosting\u002Fseparate-containers","Separate Containers Setup",2,{"_path":30,"title":31,"order":28},"\u002Fdocs\u002Fviews\u002Ftable","Table View",{"_path":33,"title":34,"order":28},"\u002Fdocs\u002Fapi\u002Fclient-http","Client HTTP API",{"_path":36,"title":37,"order":38},"\u002Fdocs\u002Finterface-overview","Interface Overview",20,{"_path":40,"title":41,"order":42},"\u002Fdocs\u002Fglobal-search","Global Search",22,{"_path":44,"title":45,"order":46},"\u002Fdocs\u002Ffilters","Filters",24,{"_path":48,"title":49,"order":50},"\u002Fdocs\u002Fsorting","Sorting",25,{"_path":52,"title":53,"order":54},"\u002Fdocs\u002Ftagging-and-selection","Tagging & Selection",26,{"_path":56,"title":57,"order":58},"\u002Fdocs\u002Fproperties","Properties",27,{"_path":60,"title":61,"order":62},"\u002Fdocs\u002Fquick-view","Quick View",28,{"_path":64,"title":65,"order":66},"\u002Fdocs\u002Fself-hosting\u002Fupdating","Updating Heaper",3,{"_path":68,"title":69,"order":66},"\u002Fdocs\u002Fviews\u002Flist","List View",{"_path":71,"title":72,"order":66},"\u002Fdocs\u002Fapi\u002Fcli","CLI",{"_path":74,"title":75,"order":76},"\u002Fdocs\u002Fblock-actions","Block Actions",30,{"_path":78,"title":79,"order":80},"\u002Fdocs\u002Fdeleting-blocks","Deleting Blocks & Trash",32,{"_path":82,"title":83,"order":84},"\u002Fdocs\u002Fself-hosting","Self-Hosting",4,{"_path":86,"title":87,"order":84},"\u002Fdocs\u002Fself-hosting\u002Fremote-access-tailscale","Remote Access with Tailscale",{"_path":89,"title":90,"order":84},"\u002Fdocs\u002Fviews\u002Ftasks","Tasks View",{"_path":92,"title":93,"order":84},"\u002Fdocs\u002Fapi\u002Fagents-mcp","Agent and MCP Access",{"_path":95,"title":96,"order":97},"\u002Fdocs\u002Fmanaging-heaps","Managing Heaps",40,{"_path":99,"title":100,"order":101},"\u002Fdocs\u002Ffile-scanning","File Scanning & Importing",42,{"_path":103,"title":104,"order":105},"\u002Fdocs\u002Fstorage-management","Storage Management",44,{"_path":107,"title":108,"order":109},"\u002Fdocs\u002Fdaily-notes","Daily Notes & Calendar",46,{"_path":111,"title":112,"order":113},"\u002Fdocs\u002Fviews\u002Fkanban-board","Board View",5,{"_path":115,"title":116,"order":113},"\u002Fdocs\u002Fapi\u002Fcli-reference","CLI Reference",{"_path":118,"title":119,"order":113},"\u002Fdocs\u002Fapi","API",{"_path":121,"title":122,"order":123},"\u002Fdocs\u002Fviews\u002Fcalendar","Calendar View",6,{"_path":125,"title":126,"order":127},"\u002Fdocs\u002Fviews","Views",60,{"_path":129,"title":130,"order":131},"\u002Fdocs\u002Fviews\u002Fgraph","Graph View",7,{"_path":133,"title":134,"order":135},"\u002Fdocs\u002Fauthentication","Authentication & User Management",70,{"_path":137,"title":138,"order":139},"\u002Fdocs\u002Fdelete-account","Delete Your Heaper Cloud Account",71,{"_path":141,"title":142,"order":143},"\u002Fdocs\u002Flicenses-privacy","Licenses & Privacy",72,{"_path":145,"title":146,"order":147},"\u002Fdocs\u002Ffaq","FAQ",80,{"_path":149,"title":150,"order":151},"\u002Fdocs\u002Fchangelog","Changelog",99,{"_path":153,"title":154},"\u002Fdocs\u002Fchangelog\u002Fv16.16.13","v16.16.13",{"_path":156,"title":157},"\u002Fdocs\u002Fchangelog\u002Fv16.16.32","v16.16.32",{"_path":159,"title":160},"\u002Fdocs\u002Fchangelog\u002Fv16.16.25","v16.16.25",{"_path":162,"title":163},"\u002Fdocs\u002Fchangelog\u002Fv16.16.35","v16.16.35",{"_path":165,"title":166},"\u002Fdocs\u002Fchangelog\u002Fv16.16.11","v16.16.11",{"_path":168,"title":169},"\u002Fdocs\u002Fchangelog\u002Fv16.16.29","v16.16.29",{"_path":171,"title":172},"\u002Fdocs\u002Fchangelog\u002Fv16.11.0","v16.11.0",{"_path":174,"title":175},"\u002Fdocs\u002Fchangelog\u002Fv16.16.34","v16.16.34",{"_path":177,"title":178},"\u002Fdocs\u002Fchangelog\u002Fv16.16.2","v16.16.2",{"_path":180,"title":181},"\u002Fdocs\u002Fchangelog\u002Fv16.16.14","v16.16.14",{"_path":183,"title":184},"\u002Fdocs\u002Fchangelog\u002Fv16.16.30","v16.16.30",{"_path":186,"title":187},"\u002Fdocs\u002Fchangelog\u002Fv16.16.38","v16.16.38",{"_path":189,"title":190},"\u002Fdocs\u002Fchangelog\u002Fv16.16.33","v16.16.33",{"_path":192,"title":193},"\u002Fdocs\u002Fchangelog\u002Fv16.16.7","v16.16.7",{"_path":195,"title":196},"\u002Fdocs\u002Fchangelog\u002Fv16.10.0","v16.10.0",{"_path":198,"title":199},"\u002Fdocs\u002Fchangelog\u002Fv16.16.39","v16.16.39",{"_path":201,"title":202},"\u002Fdocs\u002Fchangelog\u002Fv16.16.4","v16.16.4",{"_path":204,"title":205},"\u002Fdocs\u002Fchangelog\u002Fv16.16.37","v16.16.37",{"_path":207,"title":208},"\u002Fdocs\u002Fchangelog\u002Fv16.16.43","v16.16.43",{"_path":210,"title":211},"\u002Fdocs\u002Fchangelog\u002Fv16.16.20","v16.16.20",{"_path":213,"title":214},"\u002Fdocs\u002Fchangelog\u002Fv16.16.0","v16.16.0",{"_path":216,"title":217},"\u002Fdocs\u002Fchangelog\u002Fv16.16.10","v16.16.10",{"_path":219,"title":220},"\u002Fdocs\u002Fchangelog\u002Fv16.16.24","v16.16.24",{"_path":222,"title":223},"\u002Fdocs\u002Fchangelog\u002Fv16.16.6","v16.16.6",{"_path":225,"title":226},"\u002Fdocs\u002Fchangelog\u002Fv16.8.0","v16.8.0",{"_path":228,"title":229},"\u002Fdocs\u002Fchangelog\u002Fv16.16.3","v16.16.3",{"_path":231,"title":232},"\u002Fdocs\u002Fchangelog\u002Fv16.16.18","v16.16.18",{"_path":234,"title":235},"\u002Fdocs\u002Fchangelog\u002Fv16.17.8","v16.17.8",{"_path":237,"title":238},"\u002Fdocs\u002Fchangelog\u002Fv16.16.31","v16.16.31",{"_path":240,"title":241},"\u002Fdocs\u002Fchangelog\u002Fv16.16.36","v16.16.36",{"_path":243,"title":244},"\u002Fdocs\u002Fchangelog\u002Fv16.20","v16.20",{"_path":246,"title":247},"\u002Fdocs\u002Fchangelog\u002Fv16.16.1","v16.16.1",{"_path":249,"title":250},"\u002Fdocs\u002Fchangelog\u002Fv16.16.21","v16.16.21",{"_path":252,"title":253},"\u002Fdocs\u002Fchangelog\u002Fv16.16.8","v16.16.8",{"_path":255,"title":256},"\u002Fdocs\u002Fchangelog\u002Fv16.19","v16.19",{"_path":258,"title":259},"\u002Fdocs\u002Fchangelog\u002Fv16.16.12","v16.16.12",{"_path":261,"title":262},"\u002Fdocs\u002Fchangelog\u002Fv16.16.19","v16.16.19",{"_path":264,"title":265},"\u002Fdocs\u002Fchangelog\u002Fv16.16.23","v16.16.23",{"_path":267,"title":268},"\u002Fdocs\u002Fchangelog\u002Fv16.16.41","v16.16.41",{"_path":270,"title":271},"\u002Fdocs\u002Fchangelog\u002Fv16.16.22","v16.16.22",{"_path":273,"title":274},"\u002Fdocs\u002Fchangelog\u002Fv16.7.0","v16.7.0",{"_path":276,"title":277},"\u002Fdocs\u002Fchangelog\u002Fv16.16.40","v16.16.40",{"_path":279,"title":280},"\u002Fdocs\u002Fchangelog\u002Fv16.16.16","v16.16.16",{"_path":282,"title":283},"\u002Fdocs\u002Fchangelog\u002Fv16.6.0","v16.6.0",{"_path":285,"title":286},"\u002Fdocs\u002Fchangelog\u002Fv16.16.26","v16.16.26",{"_path":288,"title":289},"\u002Fdocs\u002Fchangelog\u002Fv16.16.17","v16.16.17",{"_path":291,"title":292},"\u002Fdocs\u002Fchangelog\u002Fv16.16.27","v16.16.27",{"_path":294,"title":295},"\u002Fdocs\u002Fchangelog\u002Fv16.16.5","v16.16.5",{"_path":297,"title":298},"\u002Fdocs\u002Fchangelog\u002Fv16.16.15","v16.16.15",{"_path":300,"title":301},"\u002Fdocs\u002Fchangelog\u002Fv16.21","v16.21",{"_path":303,"title":304},"\u002Fdocs\u002Fchangelog\u002Fv16.9.0","v16.9.0",{"_path":306,"title":307},"\u002Fdocs\u002Fchangelog\u002Fv16.16.9","v16.16.9",{"_path":309,"title":310},"\u002Fdocs\u002Fchangelog\u002Fv16.16.28","v16.16.28",{"_path":300,"_dir":312,"_draft":313,"_partial":313,"_locale":314,"title":301,"description":315,"date":316,"headline":317,"cover":318,"body":323,"_type":788,"_id":789,"_source":790,"_file":791,"_stem":792,"_extension":793},"changelog",false,"","Heaper 16.21 brings saved websites, versioned file editing, multiple file representations, beta WebDAV and Finder access, and smoother media browsing.","2026-09-17","Saved websites and files that work across your apps",{"src":319,"alt":320,"aspect":321,"color":322},"changelog\u002Fv16.21\u002Fhero-v2.png","Saved website, file formats, and revision history cards on a warm orange gradient.","16\u002F9","#F45D2D",{"type":324,"children":325,"toc":783},"root",[326,334,341,348,376,385,405,438,462,487,502,522,535,541,571,591,621,664,670],{"type":327,"tag":328,"props":329,"children":333},"element","changelog-release-hero",{":fallback":330,":media":331,"date":332,"release":301,"summary":315,"title":317},"{\"color\":\"#F45D2D\"}","{\"type\":\"image\",\"src\":\"changelog\u002Fv16.21\u002Fhero-v2.png\",\"alt\":\"Saved website, file formats, and revision history cards on a warm orange gradient.\",\"aspect\":\"16\u002F9\"}","September 17, 2026",[],{"type":327,"tag":335,"props":336,"children":337},"p",{},[338],{"type":339,"value":340},"text","Keep websites for offline reading, work on Heaper files in your favorite applications, and keep different formats and revisions together on one block.",{"type":327,"tag":342,"props":343,"children":345},"h2",{"id":344},"new-features",[346],{"type":339,"value":347},"New Features",{"type":327,"tag":349,"props":350,"children":355},"changelog-feature-showcase",{":media":351,"eyebrow":352,"summary":353,"title":354},"{\"type\":\"image\",\"src\":\"changelog\u002Fv16.21\u002Fsave-website.png\",\"alt\":\"Creating a bookmark from a URL in Heaper's Create sheet.\",\"aspect\":\"1296\u002F642\"}","Bookmarks","Save a website alongside your notes and files, then return to its captured content offline.","Saved Websites and Captures",[356],{"type":327,"tag":357,"props":358,"children":359},"ul",{},[360,366,371],{"type":327,"tag":361,"props":362,"children":363},"li",{},[364],{"type":339,"value":365},"Create bookmarks from URLs in the editor or Create sheet.",{"type":327,"tag":361,"props":367,"children":368},{},[369],{"type":339,"value":370},"Capture screenshots, readable articles, HTML, metadata, and thumbnails.",{"type":327,"tag":361,"props":372,"children":373},{},[374],{"type":339,"value":375},"Keep capture versions to track how a page changes, and pin saved websites like any other block.",{"type":327,"tag":377,"props":378,"children":384},"changelog-media",{"alt":379,"aspect":380,"caption":381,"src":382,"type":383},"A saved website open in Heaper with capture details and viewing controls.","3062\u002F2620","Open captured pages and switch between their saved representations.","changelog\u002Fv16.21\u002Fsaved-article.png","image",[],{"type":327,"tag":349,"props":386,"children":391},{":media":387,"eyebrow":388,"summary":389,"title":390},"{\"type\":\"image\",\"src\":\"changelog\u002Fv16.21\u002Fexternal-editing.png\",\"alt\":\"File version history showing the latest revision and an earlier version.\",\"aspect\":\"1102\u002F786\"}","Files","Open files in other applications and bring your saves back into Heaper as new revisions.","Versioned External Editing",[392],{"type":327,"tag":357,"props":393,"children":394},{},[395,400],{"type":327,"tag":361,"props":396,"children":397},{},[398],{"type":339,"value":399},"Work on Heaper files with your existing editing tools.",{"type":327,"tag":361,"props":401,"children":402},{},[403],{"type":339,"value":404},"Publish saves as immutable revisions, preserving earlier versions in the file's history.",{"type":327,"tag":349,"props":406,"children":411},{":media":407,"eyebrow":408,"summary":409,"title":410},"{\"type\":\"image\",\"src\":\"changelog\u002Fv16.21\u002Fwebdav-finder.png\",\"alt\":\"Heap settings with beta WebDAV connections and the Show this Heap in Finder toggle.\",\"aspect\":\"1314\u002F830\"}","Desktop","Open a heap as a drive and work with its files from your file manager or another app.","WebDAV and Finder Access (Beta)",[412],{"type":327,"tag":357,"props":413,"children":414},{},[415,420,433],{"type":327,"tag":361,"props":416,"children":417},{},[418],{"type":339,"value":419},"Browse, import, rename, edit, replace, delete, restore, and version files through mounted filesystems.",{"type":327,"tag":361,"props":421,"children":422},{},[423,425,431],{"type":339,"value":424},"On macOS, heaps appear as ",{"type":327,"tag":426,"props":427,"children":428},"strong",{},[429],{"type":339,"value":430},"Heap - \u003Cheap name>",{"type":339,"value":432}," in Finder.",{"type":327,"tag":361,"props":434,"children":435},{},[436],{"type":339,"value":437},"Choose whether each heap is visible in Finder from its settings.",{"type":327,"tag":349,"props":439,"children":443},{":media":440,"eyebrow":388,"summary":441,"title":442},"{\"type\":\"image\",\"src\":\"changelog\u002Fv16.21\u002Ffile-representations.png\",\"alt\":\"A file block containing RAW and JPEG representations with a version history selector.\",\"aspect\":\"1314\u002F830\"}","Keep RAW, JPEG, and other formats together when they represent the same File, like export variants","Multiple File Representations",[444],{"type":327,"tag":357,"props":445,"children":446},{},[447,452,457],{"type":327,"tag":361,"props":448,"children":449},{},[450],{"type":339,"value":451},"Keep independent representations, each with its own version history.",{"type":327,"tag":361,"props":453,"children":454},{},[455],{"type":339,"value":456},"Combine existing file blocks into one block.",{"type":327,"tag":361,"props":458,"children":459},{},[460],{"type":339,"value":461},"Choose a persistent default for previews, downloads, and sharing.",{"type":327,"tag":349,"props":463,"children":468},{":media":464,"eyebrow":465,"summary":466,"title":467},"{\"type\":\"image\",\"src\":\"changelog\u002Fv16.21\u002Fagents.png\",\"alt\":\"The Agents settings page with pairing controls and a connected agent profile.\",\"aspect\":\"2554\u002F1124\"}","Agents","Connect agents from Settings and choose which heaps and actions they can access.","MCP Agents",[469],{"type":327,"tag":357,"props":470,"children":471},{},[472,477,482],{"type":327,"tag":361,"props":473,"children":474},{},[475],{"type":339,"value":476},"Pair agents with Heaper Cloud or a self-hosted server.",{"type":327,"tag":361,"props":478,"children":479},{},[480],{"type":339,"value":481},"Select permissions and heaps, reconnect agents, or revoke access.",{"type":327,"tag":361,"props":483,"children":484},{},[485],{"type":339,"value":486},"Agents and the CLI can discover focused Heaper usage guides as skills.",{"type":327,"tag":349,"props":488,"children":493},{":media":489,"eyebrow":490,"summary":491,"title":492},"{\"type\":\"image\",\"src\":\"changelog\u002Fv16.21\u002Finvite-code.png\",\"alt\":\"The Add Heap screen offering Use invite code alongside heap creation and selection.\",\"aspect\":\"1328\u002F740\"}","Collaboration","Join a shared heap directly from Add Heap.","Heap Invite Codes",[494],{"type":327,"tag":357,"props":495,"children":496},{},[497],{"type":327,"tag":361,"props":498,"children":499},{},[500],{"type":339,"value":501},"Enter an invite code, review the role and scope, and accept the invitation.",{"type":327,"tag":349,"props":503,"children":508},{":media":504,"eyebrow":505,"summary":506,"title":507},"{\"type\":\"image\",\"src\":\"changelog\u002Fv16.21\u002Fstartup.png\",\"alt\":\"Heaper's new startup splash screen with its logo and a preparation progress bar.\",\"aspect\":\"944\u002F984\"}","App","Desktop and mobile now welcome you with an animated Heaper logo.","A New Startup Experience",[509],{"type":327,"tag":357,"props":510,"children":511},{},[512,517],{"type":327,"tag":361,"props":513,"children":514},{},[515],{"type":339,"value":516},"Follow startup progress on the new splash screen.",{"type":327,"tag":361,"props":518,"children":519},{},[520],{"type":339,"value":521},"On desktop, the main window appears when it is ready to display, avoiding a blank or premature reveal.",{"type":327,"tag":357,"props":523,"children":524},{},[525],{"type":327,"tag":361,"props":526,"children":527},{},[528,533],{"type":327,"tag":426,"props":529,"children":530},{},[531],{"type":339,"value":532},"Shared Links",{"type":339,"value":534},": Open shared blocks in the native application through links containing the server URL and block ID.",{"type":327,"tag":342,"props":536,"children":538},{"id":537},"improvements",[539],{"type":339,"value":540},"Improvements",{"type":327,"tag":349,"props":542,"children":547},{":media":543,"eyebrow":544,"summary":545,"title":546},"{\"type\":\"image\",\"src\":\"changelog\u002Fv16.21\u002Fmedia-viewer.png\",\"alt\":\"An image in Heaper's media viewer with an ambient backdrop and file details.\",\"aspect\":\"2840\u002F2080\"}","Media","Images and videos have an ambient blurred backdrop and more flexible zooming.","Smoother Media Viewing",[548],{"type":327,"tag":357,"props":549,"children":550},{},[551,556,561,566],{"type":327,"tag":361,"props":552,"children":553},{},[554],{"type":339,"value":555},"Zoom below the fitted size, snap back to fit, and recenter the picture when zooming out.",{"type":327,"tag":361,"props":557,"children":558},{},[559],{"type":339,"value":560},"Media resizes continuously as the bottom sheet moves.",{"type":327,"tag":361,"props":562,"children":563},{},[564],{"type":339,"value":565},"Opening media, Back, Forward, and reload preserve the source grid position, with smoother transitions and faster navigation in large heaps.",{"type":327,"tag":361,"props":567,"children":568},{},[569],{"type":339,"value":570},"Press Space to toggle video playback and use the arrow keys to seek 15 seconds. Playback controls stay in the video toolbar, and MKV files are recognized as video.",{"type":327,"tag":349,"props":572,"children":577},{":media":573,"eyebrow":574,"summary":575,"title":576},"{\"type\":\"image\",\"src\":\"changelog\u002Fv16.21\u002Fwide-tables.png\",\"alt\":\"A wide table scrolling across the editor while the text below stays in a readable column.\",\"aspect\":\"2194\u002F1490\"}","Editor","Give tables room to scroll while keeping surrounding text comfortable to read.","Wide Editor Tables",[578],{"type":327,"tag":357,"props":579,"children":580},{},[581,586],{"type":327,"tag":361,"props":582,"children":583},{},[584],{"type":339,"value":585},"Scroll tables through the full editor surface.",{"type":327,"tag":361,"props":587,"children":588},{},[589],{"type":339,"value":590},"Edge fades and floating controls make off-screen content easier to navigate.",{"type":327,"tag":349,"props":592,"children":597},{":media":593,"eyebrow":594,"summary":595,"title":596},"{\"type\":\"image\",\"src\":\"changelog\u002Fv16.21\u002Ftransfer-status.png\",\"alt\":\"The upload indicator showing transferred bytes, total size, and current speed.\",\"aspect\":\"816\u002F296\"}","Transfers","Prepare large files faster and see clearer progress while originals upload.","Faster Imports and Uploads",[598],{"type":327,"tag":357,"props":599,"children":600},{},[601,606,611,616],{"type":327,"tag":361,"props":602,"children":603},{},[604],{"type":339,"value":605},"Native imports prepare and hash files as a cancellable stream.",{"type":327,"tag":361,"props":607,"children":608},{},[609],{"type":339,"value":610},"Resumable uploads transfer up to four chunks concurrently and show live bytes, speed, item progress, and resumed progress.",{"type":327,"tag":361,"props":612,"children":613},{},[614],{"type":339,"value":615},"Uploads are roughly 3× faster and import hashing about 10× faster.",{"type":327,"tag":361,"props":617,"children":618},{},[619],{"type":339,"value":620},"The sync indicator clears correctly after an empty upload check.",{"type":327,"tag":357,"props":622,"children":623},{},[624,634,644,654],{"type":327,"tag":361,"props":625,"children":626},{},[627,632],{"type":327,"tag":426,"props":628,"children":629},{},[630],{"type":339,"value":631},"Large Grids",{"type":339,"value":633},": Visible content loads before total counts, navigation scales to million-entry collections, and extremely long grids remain fully reachable.",{"type":327,"tag":361,"props":635,"children":636},{},[637,642],{"type":327,"tag":426,"props":638,"children":639},{},[640],{"type":339,"value":641},"Teleprompter",{"type":339,"value":643},": Improved local and remote settings, exact speed and font-size inputs, fractional scrolling, skip controls, position-preserving previews, device selection, and an optional reading line.",{"type":327,"tag":361,"props":645,"children":646},{},[647,652],{"type":327,"tag":426,"props":648,"children":649},{},[650],{"type":339,"value":651},"File and Mobile Controls",{"type":339,"value":653},": File menus and video toolbars respond more smoothly. The mobile Back button has a larger accessible touch target and improved collapsed spacing.",{"type":327,"tag":361,"props":655,"children":656},{},[657,662],{"type":327,"tag":426,"props":658,"children":659},{},[660],{"type":339,"value":661},"Documentation",{"type":339,"value":663},": Missing documentation routes now show a dedicated 404 page.",{"type":327,"tag":342,"props":665,"children":667},{"id":666},"bug-fixes",[668],{"type":339,"value":669},"Bug Fixes",{"type":327,"tag":357,"props":671,"children":672},{},[673,683,693,703,713,723,733,743,753,763,773],{"type":327,"tag":361,"props":674,"children":675},{},[676,681],{"type":327,"tag":426,"props":677,"children":678},{},[679],{"type":339,"value":680},"Trash Recovery",{"type":339,"value":682},": Restored blocks no longer get moved back to Trash during sync. Duplicate detection and Empty Trash respect deletion state confirmed by the server.",{"type":327,"tag":361,"props":684,"children":685},{},[686,691],{"type":327,"tag":426,"props":687,"children":688},{},[689],{"type":339,"value":690},"Bulk Deletion",{"type":339,"value":692},": Deleting more than 50 blocks at once no longer times out.",{"type":327,"tag":361,"props":694,"children":695},{},[696,701],{"type":327,"tag":426,"props":697,"children":698},{},[699],{"type":339,"value":700},"MP4 Uploads",{"type":339,"value":702},": Original videos are preserved if saving thumbnail or sprite metadata fails, so previews can be recovered later.",{"type":327,"tag":361,"props":704,"children":705},{},[706,711],{"type":327,"tag":426,"props":707,"children":708},{},[709],{"type":339,"value":710},"Property Backlinks",{"type":339,"value":712},": Restored missing property backlinks on native clients and added a repair for existing local caches.",{"type":327,"tag":361,"props":714,"children":715},{},[716,721],{"type":327,"tag":426,"props":717,"children":718},{},[719],{"type":339,"value":720},"Sync Reliability",{"type":339,"value":722},": Fixed stale connections, repeated denied connection attempts, and new documents being broadcast before they were saved.",{"type":327,"tag":361,"props":724,"children":725},{},[726,731],{"type":327,"tag":426,"props":727,"children":728},{},[729],{"type":339,"value":730},"Database Responsiveness",{"type":339,"value":732},": Refreshing tag hierarchies no longer blocks local database writes.",{"type":327,"tag":361,"props":734,"children":735},{},[736,741],{"type":327,"tag":426,"props":737,"children":738},{},[739],{"type":339,"value":740},"Mobile Recovery",{"type":339,"value":742},": Prevented reloads before writes reach the native journal and limited stalled handoffs during app lifecycle changes.",{"type":327,"tag":361,"props":744,"children":745},{},[746,751],{"type":327,"tag":426,"props":747,"children":748},{},[749],{"type":339,"value":750},"Missing Local Originals",{"type":339,"value":752},": File detail views can recover when an original is unavailable locally but remote or cached data still exists.",{"type":327,"tag":361,"props":754,"children":755},{},[756,761],{"type":327,"tag":426,"props":757,"children":758},{},[759],{"type":339,"value":760},"Create Sheet Files",{"type":339,"value":762},": Text files are no longer converted prematurely or lost when submission fails.",{"type":327,"tag":361,"props":764,"children":765},{},[766,771],{"type":327,"tag":426,"props":767,"children":768},{},[769],{"type":339,"value":770},"Editor Layout",{"type":339,"value":772},": The front-matter panel no longer grows beyond the editor width.",{"type":327,"tag":361,"props":774,"children":775},{},[776,781],{"type":327,"tag":426,"props":777,"children":778},{},[779],{"type":339,"value":780},"MCP Pairing",{"type":339,"value":782},": Fixed interrupted pairing recovery, connection status, return routing after sign-in, structured tool results, and discovery of optional write permissions.",{"title":314,"searchDepth":28,"depth":28,"links":784},[785,786,787],{"id":344,"depth":28,"text":347},{"id":537,"depth":28,"text":540},{"id":666,"depth":28,"text":669},"markdown","content:docs:changelog:v16.21.md","content","docs\u002Fchangelog\u002Fv16.21.md","docs\u002Fchangelog\u002Fv16.21","md",1791038425346]