One Share Dialog on Every Page
Owner rulings 2026-10-03 — a Project is assigned Libraries from its Workspace's list, starts with none, and sharing it shares only those. Every page's Share button opens the same dialog, Share | Library | Download, and each tab offers what fits the page. A Library's Library tab is Manage for its owner and Join for anyone else; a Workspace's or Project's lists the Libraries Goldie searches there. Download is Word, PDF, JSON or YAML on a Document, and the whole folio as one package on a Workspace, Project or owned Library. Replaces the Share-only dialog on Workspace, Project and Library pages (2026-10-01).
In plain terms: the same cover-sheet form on every page, with three tabs — who has access, how this relates to Libraries, and taking a copy away. What each tab offers depends on what the page is.
Decision
Superseded in part 2026-10-09 by /docs/decisions/library-use-in: the Add modal's Library tab, the Libraries row "Active Libraries", and a Project's own Library list.
Owner rulings, 2026-10-03. They replace the 2026-10-01 ruling that a
Workspace, Project or Library shows Share alone, without a tab strip
(/docs/decisions/one-page-header).
-
One dialog. Every page's Share button opens the same dialog, with the tabs Share | Library | Download. A tab with nothing to offer on a page is left out.
-
The Library tab follows the page:
Page Library tab Document, in a Workspace or a Library Save to library, as today Library you own Manage: its Listing (Private, or Marketplace free or by approval) Library you do not own Join: Join library, Manage workspaces once joined, or Request access (coming soon) for a By approval Library Workspace Every Library you can use, listed Project Assign Libraries from the Workspace's list Join and Manage are not sub-tabs: the owner is already a member and only the owner manages, so each person only ever has one of the two.
-
Libraries on a Workspace and a Project (owner, 2026-10-03; replaces the "searched everywhere" half of
/docs/decisions/library-join-and-searchat Project level):- A Workspace has every Library you can use: your own, invited and joined. Its Library tab lists them, for information.
- A Project is assigned Libraries from its Workspace's full list. Only the assigned ones are searched in it.
- A new Project starts with none. Nothing reaches a Project until you assign it, so nothing leaks by default.
Sharing a Project shares only its assigned Libraries.Replaced 2026-10-04 by Library Access Is Your Own Seat: sharing a Project shares no Library. People you add search only the Libraries they hold a seat on themselves.
In plain terms: each matter file gets only the books you put in it. A colleague you bring onto the matter uses those books only if they hold their own copy (2026-10-04).
-
Download follows the page:
Page Download tab Document, in a Workspace or a Library Word, PDF, JSON or YAML, as today Workspace or Project The whole folio as one package: every item in it, filed as it is on the page Library you own The whole Library as one package Library you do not own No Download tab Library packages are the owner's alone, so a paid or By approval precedent set cannot be taken away whole by a member.
-
No Share button in the page header (owner, 2026-10-03). Every page's own card menu — Workspace, Project, Library and Document — has one Share… item, which opens this dialog; its tabs carry Library and Download. This replaces the header's Share button, ruled at every level on 2026-10-01 (
/docs/decisions/one-page-header). Module and Block pages have no Share, as before. -
A Document heads its page with a Goldie Card (owner, 2026-10-03), in the same frame and width as a Project's: the flip card, its people and its Published badge. Its menu stays the Document's catalogue (Insert, Version, Delete, and Share…). The modules sit below it on the page, as a Project's documents sit below its card. The line above the card ("Published in 1 Library", the people) is gone; the card carries both. A Library item's source and edition stay on that line, as no card carries them yet.
-
Goldie explains each tab (owner, 2026-10-03). The dialog doubles to 960 wide; its left column is Goldie, at the top, with her account of the tab you are on — what a seat is and who may be added (Share), what goes into a Library and what stays behind (Library), which format is for what (Download). A Library, Workspace or Project page has its own wording. The lines that explained inside the tabs went with it: "A seat covers everything inside this page", the signed-in-only note, and "Field data will not appear in the Library version". Folded away on a phone.
-
The Share explainer names the scope (owner, 2026-10-03): "Sharing", the page's kind and name, then what it holds by name with a count — a Workspace's projects (each shared with everything inside it), a Project's or Library's documents; five names, then "+ N more". A Document names itself alone. Then: "People you add can view or edit all of the above. They cannot see your chat histories or your Libraries."
-
A card's Save to library opens the Document with this dialog on its Library tab (
?share=library), because publishing needs the open Document's session.
The words
- Package intro, Workspace: "Download this workspace and everything in it as one package: every project and document, filed as they are here."
- Package purpose: "Use it to keep a backup, move the work elsewhere, or give it to another tool. To send a single document to someone, open it and download it as Word or PDF."
- Library owner note: "Only the library's owner can download the whole library."
- Workspace: "Every library you can use is available in this workspace. Assign them to projects from each project's Library tab."
- Project: "Goldie searches only the libraries assigned to this project. People you share it with search only libraries they hold themselves." (amended 2026-10-04) Empty: "No libraries are assigned yet. Tick the ones this project should use."
- Join, free: "Join this library and Goldie can search it while you work. You choose which workspaces."
Amended 2026-10-04: every card row names its modal (GB-352)
Owner ruling, 2026-10-04. Each row of a card's menu is one two-line target: a verb on its first line and, on its second, what the modal it opens offers, as a description. Pressing anywhere on the row opens that modal; the second line is not a set of separate targets.
| Row | Second line | Where |
|---|---|---|
| Add | Search · Library | Home, Project, Document, Module and Block menus |
| Share | the Share modal's tab strip for that page: Share · Publish · Download on a working Document; Share · Download on a Project | Document and Project menus; never Home |
| Libraries | Active Libraries | Home and Project menus; opens the Add modal on its Library tab |
| Versions | Save · History | the Document's menu |
| Move | Up · Down | Module and Block menus (a flyout, drawn in the same two lines) |
| Delete | none | below a rule |
Two sides of a Library (owner, 2026-10-04). Share is the "to" side: a Document's Publish tab files a copy into a Library; a Project does not publish, so its Share modal is Share | Download. Add is the "from" side: its Library tab is the Active Libraries list, which Libraries this search draws on. The list is set in two places only, Home and a Project; below a Project it is a readout, not a setting: a Document's Add modal lists the matter's active Libraries with no boxes, says where they are set, and offers to open that page. A tick there would change every document in the matter, so none is offered. The Add modal's tabs are Search and Library. Search lists the active Libraries' items and the blank rows side by side, because a person adding a block does not yet know which they want; with nothing in the Libraries, the blanks stand alone. (A separate New tab was tried and folded back the same day.)
In plain terms: on a matter file you choose which precedent banks are open; on a document inside it you can see which, and go up to change them.
The ellipsis that used to say "a dialog follows" is gone: the second line
says so. Rename stays in place on the name, Open stays the title, drag stays
the hand; none of them joins the menu. Rows are shadcn dropdown items
(CardMenuRow in src/shared/ui/molecules/card-menu); a row's accessible
name is its verb and its description is the second line.
In plain terms: each line of a card's menu reads like a tab on a folder: what it is, then what you will find inside, so nothing opens as a surprise.
Status, 2026-10-03
Built: the dialog, every tab's panel, the Library page's Manage and Join
tabs (wired to the existing Listing control and Join dialog), and the card's
Save to library. Stories: Shared/Molecules/PageFrame/ShareDialog.
Not built: the package export (its button reads Coming soon), and the Workspace and Project Library tabs' data, assignment and the access it grants (they appear in the stories only, not yet on a live page).
Open: the package as a round trip
A YAML package could come back in through an upload, so a person — or an agent working on the files locally — can edit a whole folio offline and re-import it. This fits the product thesis (one agent-operable surface), and each Block already parses its own About YAML. A whole-folio import is new work and needs its own rulings: how an upload matches existing items (stable keys in the files, never names), whether changes arrive as proposals to accept or reject rather than direct writes, and what happens to items deleted or renamed offline.
Deterministic Write-Safety For Hosted App Flow Conditions
Why the hosted app gates writeModule with evaluateFlowCondition while local no-runtime skills remain agent-interpreted
The Side-Panel Goldie Is Maker Only
Owner ruling 2026-09-15 — the interview lives in the side panel and the side panel is drawn only for a Maker; in Builder mode Goldie is the in-folio agent on the card, proposing edits to that folio and its children and proposing new folios below.