Accepted adr-017 · 2026-10-08

From the Face a Person Prepares Acts on a Level's SOWs — Opening a Dossier by a Declared Preset or by Its Terms, and ontoref's Verbs on a SOW, One or Several — as Intents Naming SOWs by Id, Applied in Their Copy Through openbyname

Context

The face lists a level's SOWs (adr-014) and the principal wants to act on them from it: per row, an action menu; on rows selected, the same acts at once; first among them, opening a dossier on a SOW — by a preset the project declares, or by filling its terms — and then ontoref's verbs that move a SOW (review, request signatures, land, archive).

Two decisions bound this. adr-012 keeps open and attest the CLI's alone: «open names a path of the project, which an intent never names». And a SOW and every act that moves it are ontoref's (ontoref adr-124); SpecDossier exposes and never acts (exposes-never-acts). The way both already hold for agree, round and land is adr-006's bridge: the face prepares an intent, openbyname redeems its single-use ticket and runs the person's declared task in their copy, by the same core action as the verb; the service never reads the project and never writes in it.

`specdossier open` reads the governed document in the person's copy and writes the dossier where `.governance/dossiers.ncl` declares (adr-002); its terms are its flags: kind, by, signature, act, invited (who:hat), guests, expiry and its state (qa specdossier-dossier-walkthrough, step 1). `.governance/dossiers.ncl` lies in the level the service is declared to read.

Decision

A PERSON PREPARES ACTS ON SOWS FROM THE FACE. On a service that knows who they are (an authority; never on a reader, adr-014), each SOW of a level offers its acts on its row, and rows selected offer the acts they share. Each act prepared is an intent, as adr-006's: applied in the person's copy by openbyname (or by the command the page shows), by the same action as the verb — `specdossier open` for a dossier, ontoref's own verb for a SOW — never by the service.

AN INTENT NAMES SOWS BY THEIR ID, NEVER BY A PATH. The CLI resolves an id to where the SOW stands in the person's copy through ontoref's registry, and refuses one it does not find there, or one whose bytes differ from those the face showed (by digest). adr-012's reason for keeping open from the face holds: no intent names a path of the project.

OPENING A DOSSIER, BY PRESET OR BY ITS TERMS. `.governance/dossiers.ncl` may declare named presets of closing terms (signature and act, invited hats, guests, expiry and the state it closes in); the face offers them, and a form with every term. What the person prepares is the terms; the dossier is written by `specdossier open` in their copy, which reads the document there.

SEVERAL AT ONCE IS SEVERAL INTENTS. Acts on rows selected are one intent per SOW, each applied, refused or expired on its own; the page says which.

ATTEST STAYS THE CLI'S: it carries a signature made out of band.

WHAT THIS AMENDS: adr-012's decision — open may be prepared from the face, naming the SOW by id; attest stays the CLI's. adr-002's declaration gains `presets`.

Constraints

Alternatives considered