Accepted adr-016 · 2026-10-08

The Faces Speak the Reader's Language Through Fluent Catalogs While the Work Stays in Its Own; Help Is the Governed Surface Shown in Place, and What to Do Next Is ontoref's Reading of Each SOW, Never SpecDossier's Judgment

Context

The faces (adr-015) render a SOW, a level's index, a dossier and its round for whoever reads them, and say nothing to someone who does not already know the protocol: what a stage means, what validity is, what is owed, what to do with a SOW, or that there is nothing left to do. Every word is English and fixed in the templates.

The principal asked, 2026-10-08: a help system behind the faces and help in context; a recommendation of what to do next, or that a SOW is closed; and a multilingual interface — English and Spanish to begin, English by default, a language selector in the main menu — with the SOWs shown in the language they are written in.

opus-ontoref's editorial panel does this (crates/opus-editorial/src/i18n.rs, crates/opus-messages/locales/{en,es}/*.ftl, `fl(key=…)` in its templates, a help button per place opening its how-to in a side panel, the help drawn from the shell's governed export, never written in the panel). Its i18n crate is a path dependency outside this repository and cannot be used here (dependencies-point-one-way).

ontoref already says, for each SOW, what is required next and of whom: `ontoref form status-sow <sow> --fmt json` answers `attention` — an action ("maintainer: finish the review cycle of these bytes", "principal: land it: …"), who it is required of, its due date and days left, its level (Action or Info), or none for an archived SOW. Measured 2026-10-08: fifteen SOWs read side by side in 0.75 s.

Decision

THE FACES SPEAK THE READER'S LANGUAGE. Every word the faces say of their own — headings, labels, menus, filters, help, the framing of what to do next — is a message of a Fluent catalog carried in the repository (`templates/locales/<lang>/*.ftl`), asked by its key from the templates. English and Spanish, English by default. The language is the one the reader chose in the main menu (kept in a cookie), else the one their browser asks first among those spoken, else English; the static export takes it as an argument. A key missing in a language falls back to English and is reported by a check.

THE WORK STAYS IN ITS OWN LANGUAGE. A SOW, a dossier, its points, a round's document, ontoref's readings and every governed text are shown as written; nothing of the work is translated by the faces.

HELP IS THE GOVERNED SURFACE, SHOWN IN PLACE. What explains the faces themselves — what a column, a stage, a filter or an act is — is SpecDossier's own and lives in its catalogs. What explains the protocol and the project is asked of the surface that governs it (`ontoref qa show`, the ADRs) and shown in a help panel opened from the place it concerns; it is never copied into the faces (ontoref adr-074).

WHAT TO DO NEXT IS ONTOREF'S READING. The recommendation shown for a SOW is ontoref's `status-sow` attention as it answers it — the action, who it is required of, the due date — or, without one, that nothing is owed and whether the SOW is closed. SpecDossier derives no recommendation of its own and judges no SOW (exposes-never-acts, no-judgment-on-content); a reading ontoref could not give is shown as unknown, never guessed.

WHAT THIS DOES NOT DECIDE: who reads (adr-014 and its amendment); acts prepared from the faces (adr-017); a glossary, which has no governed command in the installed ontoref yet.

Constraints

Alternatives considered