Pages can be inserted, duplicated and reordered from the outline. Dimension is a markup with its words set into the line. Each sheet chooses how fine a length reads, and a round trip through Revu keeps that precision. Callout leaders move around the box. Search hits are highlighter ink, and picking one no longer throws the editor off the screen.
Insert a blank page, duplicate a sheet, or drag pages into a new order, including several at once. A blank page is a real one-page PDF — Letter, Tabloid, ANSI D, ARCH D or ARCH E1 — filed with the sheets it sits among. A duplicate takes the next free ".N" name and copies the sheet's scale, viewports and regions. Markups and search text stay on the original. (#814)
Dimension is released. Two clicks draw the line and open a caption set into it, the way a callout opens its text. It does not measure and does not ask for a scale. Drag the line, an extension line or the caption to slide it clear of the drawing; the ends stay on the points you picked. It exports as Revu's Dimension, and a Revu Dimension imports as one. (#811)
Set Scale has a Precision control: 1", 1/2", 1/4", 1/8", 1/16" and 1/32". The default is 1/4". Captions, the Measurements chip, lists and PDF export follow the sheet. A sheet that has never chosen a precision now reads to the quarter inch, including sheets that used to read to the sixteenth. (#810)
A callout elbow moves straight in and out from one of the four side nodes, and a drag toward another side moves it there. Dropping it on a side that already has an elbow merges the leaders. Add Leader uses the point you clicked. Option-drag pulls the newest arrow off a shared elbow. Existing callouts look the same until you move an elbow. (#813)
A search match is a yellow wash on the words, with no box around it. The match you are on is a stronger yellow, and the text stays readable. Hits are left out of snapshots and exports. (#812)
inserted_page_host: pages.host_document_id (plain TEXT), a check that it is not the page's own document, a partial index, and trigger source_documents_release_hosted_pages. The trigger clears the column when the host document is deleted.pages to source_documents made PostgREST see two relationships, and every unhinted embed failed with PGRST201 — including GET /api/pages, so a project would not open. The foreign key is not in the migration that ships. Do not add it back. The trigger is what ON DELETE SET NULL would have done.import_length_precision: replaces adopt_imported_annotations. An import stores lengthPrecision beside the scale, from the fraction most of the page's measurements carry. A sheet that already has a scale keeps the precision it has. Re-import markups will not fill precision in on those sheets.deploy.yml. Do not apply anything by hand.POST /api/pages/duplicate and PUT /api/projects/[id]/sheet-order are project-scoped, the same gate as the other page writes. POST /api/pages/blank now takes a size and the page to insert after.lengthPrecision now display at 1/4". That includes every sheet scaled before this release. Pick 1/16" or 1/32" on the sheet to get the finer reading back.tool:ann-dimension) is released in the app. There is no flag to flip.