Generated by luria index from this project’s luria.yaml — built, not edited. A table configured is a row here whether or not anyone remembered to describe it.

This is the shape this project gave the record machinery: the document families it named, where entries are filed, where views are rendered, and what to type to add one. It is a description of luria.yaml as configured, not of what luria.yaml can hold — for the key-by-key schema, with defaults and meanings, see Luria’s configuration reference.

Referable documents

A code — ADR-012 — resolves to a document, and every reference to it in this repository is checked. luria lint fails on a bare code that was never linked; luria link --fix writes the link so nobody has to know where the document renders.

a code looks likefiled inrendered toin force when status is
VALUE-001record/values.d/docs/values.md (one page, read as a whole)Active
PRACTICE-001record/practices.d/docs/practices/README.md + tag pagesActive
BOUNDARY-001record/boundaries.d/docs/boundaries/README.md + tag pagesActive

What each family is

A scheme’s own account of itself, where it gives one — title and blurb on schemes.X. The table above says where a family’s files live and how its codes are spelled; this says what the family is for, which is the part a reader needs first and the part a config could not previously state (#279).

What an entry must carry

Every entry carries title, tags and date, and one standard field is conditional: a retiring document names its successor — superseded_by: when status is Superseded, unless the scheme renames the pair (ADR-071). status itself is listed below rather than assumed: the words are the scheme’s own, declared like any other controlled vocabulary. Beyond those, what each scheme’s entries must carry — compiled from luria.yaml into the contract luria lint checks, with where each obligation was declared. A finding cites the same line.

VALUE

  • status — optional, one of Active, Proposed, Deferred, Superseded, Rejected (luria.yaml: schemes.VALUE.fields.status; vocabulary ‘value-statuses’: values)
  • tags — required (luria.yaml: schemes.VALUE.fields.tags)

PRACTICE

  • grounds — required, one or more VALUE codes (luria.yaml: schemes.PRACTICE.references.grounds)
  • surface — one or more of conversation, harness, repository, record; absent means conversation (luria.yaml: schemes.PRACTICE.fields.surface; vocabulary ‘surfaces’: values)
  • status — optional, one of Active, Proposed, Deferred, Superseded, Rejected (luria.yaml: schemes.PRACTICE.fields.status; vocabulary ‘value-statuses’: values)
  • tags — required, one or more of scope, verification, attribution, refusal, economy, authority (luria.yaml: schemes.PRACTICE.fields.tags; vocabulary ‘practice-tags’: values)

BOUNDARY

  • overrides — optional, one or more PRACTICE codes when present (luria.yaml: schemes.BOUNDARY.references.overrides)
  • grounds — required, one or more VALUE codes (luria.yaml: schemes.BOUNDARY.references.grounds)
  • status — optional, one of Active, Proposed, Deferred, Superseded, Rejected (luria.yaml: schemes.BOUNDARY.fields.status; vocabulary ‘value-statuses’: values)
  • tags — required, one or more of refusal, attribution, identity (luria.yaml: schemes.BOUNDARY.fields.tags; vocabulary ‘boundary-tags’: values)

Journals

Dated observations. An entry is true about the day it was written and is never revised or consumed — the books are a view over sources that stay, which is what makes a journal safe to write into without coordinating.

journalentries filed atbooks rendered toone book pertitled
sessionsrecord/sessions.d/ yyyy/mm/dd/hhmmss.mddocs/sessions/monthSession log

Fragment directories

One file per contribution, assembled into a single document and then consumed. The point is the absence of a shared file to conflict on: every contributor writes a new path.

directoryassembled intostyle
record/changelog.d/CHANGELOG.mdappend

Other projects this record cites

A prefixed code reaches into another project’s record, so a citation says whose decision it is at the point of use rather than leaving the reader to guess.

None configured.

Filing something new

Every kind this project scaffolds, straight from the dispatch table luria new itself uses.

commandfiles
luria new --kind boundary --title "…"a document in the BOUNDARY scheme, numbered for you
luria new --kind changelog --title "…"a fragment in record/changelog.d/
luria new --kind migration --title "…"a migration spec
luria new --kind practice --title "…"a document in the PRACTICE scheme, numbered for you
luria new --kind sessions --title "…" — or just luria new --title "…", the default kinda dated entry in the sessions journal
luria new --kind value --title "…"a document in the VALUE scheme, numbered for you

Settings this project changed

Everything not listed here is at Luria’s default.

keythis projectLuria’s default
issue_urlhttps://github.com/dmarx/luria/issues/{n}empty
site.titleA constitution as a recordempty
vocabularies.value-statuses5 keys setunset
vocabularies.practice-tags6 keys setunset
vocabularies.boundary-tags3 keys setunset
vocabularies.surfaces4 keys setunset