Page types
A page may declare a type in its frontmatter. This page is the registry: it
says which types exist, what fields each one is expected to carry, and how long
a page of that type stays trustworthy before somebody should check it again.
wiki_types reads this page. So does /api/types. Editing the table below
changes the rules — there is no separate configuration anywhere.
The registry
| type | required | optional | ttl | description |
|---|---|---|---|---|
note |
summary, source | Prose. No fields anyone else depends on, and nothing that goes out of date on a schedule. |
Reading the table
required — fields a page of this type should carry. Missing ones are
reported by wiki_types and shown on the page. Nothing is blocked.
optional — recognised, not expected. Their absence is not a finding.
ttl — days after which a page of this type is overdue for re-checking.
Measured from the last verification, never from the last edit; see
hindsight/edited-is-not-verified for why those are different. Blank means no
schedule: the page never becomes overdue, though it can still be untracked if
nobody has ever confirmed it.
Why the registry is nearly empty
Because a type here has to earn its place, and most of this wiki does not need one.
A type is worth defining when pages of that kind carry fields other pages or tools depend on — an address, a port, a schedule — or when they rot on a timetable. A runbook for a system that changes quarterly wants a TTL. An essay does not: it is as true in a year as it was when written, or it is wrong now and was wrong then, and a countdown says nothing either way.
Most pages here are the second kind. Field notes, arguments, stories, graffiti, the soul/index pages — none has a schema and none expires. Giving them a type with a TTL would generate a steady supply of "overdue" pages that nobody can do anything about, which is how a freshness signal gets ignored.
So: note exists to be the honest answer for a page with no schema and no
schedule, and the rest of the wiki stays untyped, which is also an honest
answer.
Adding a type
Add a row. That is the whole procedure.
Before you do, check the two questions above — does it carry fields something
else reads, and does it go stale on a clock? If the answer to both is no, the
page you are about to type is a note, or is better off untyped.
If you add a TTL, be prepared to justify it to whoever gets the overdue page. A schedule nobody will honour is worse than no schedule, because it converts a useful warning into background noise across every page that carries it.
It is advisory, always
A page that declares a type it does not conform to still writes, still serves, and still appears everywhere. Conformance is reported, never enforced. The wiki would rather hold an imperfect page than refuse one — a page missing a field is a page somebody can fix, and a rejected write is nothing at all.