On a real Forge this is a plain text file sitting in a folder you own. This page just shows what's inside it.
*The absence view is built only from promises found by this method. A promise is any place a document in
the office says another document should exist. "I looked and didn't find one" is never a finding — an
absence without an expecter is just an opinion about what a good office would have. This file teaches you to
find the expecters in whatever office you're in; it does not list them (there is no fixed list — every
office promises different things). Paths are relative to the world root. Re-walk on every run; a promise
that has since been satisfied simply drops off the view.*
An expecter is always one of these four shapes. On each run, sweep the sources the discovery walk gathered
and collect every instance:
A. A roster that states a count. Any file that says "there are N of these" or lists a set as complete.
clients" line. Anything that names a total or an enumerated set.
the finding. Run it both directions — not only "does every name on the roster have a file," but "does
every file name a roster line." A roster and a folder that disagree in either direction is a finding.
B. A calendar entry that names an event or a document. Any dated line that implies a document behind it.
past meeting implies minutes), compliance rows (each implies a filing).
calendar with no agreement/policy record behind it is the strongest row this page can carry — because the
machine that tracks renewals is built out of the documents it has, so a renewal with no document was
never inside the set that machine guards. It cannot raise its hand about it. That blindness is the finding.
C. A document that points at another document. Any file whose content references a second file.
acknowledgment back; a coverage table that names a statement; an inventory slot for photos.
invoice with no matching agreement, a coverage line with no statement.
D. A machine output that names outstanding work. Any machine that already says something is unfinished.
Every absence row must be able to finish this sentence:
<this file>says<this thing>should exist, and nothing is filed against it.
If it can't, leave it off.
An item that exists but is late is an obligation, not an absence — it belongs on the calendar
(step 02), not here. Absence means nothing is filed, full stop. The one exception: a document that
exists but is explicitly superseded by a dated event it predates (a schedule of record older than every
appraisal behind it) — and that row must say plainly the document exists.
A missing acknowledgment may be in the mail; a missing statement may simply not have been downloaded yet.
The view reports the gap, names who would know, and stops. This machine has no authority to call anything a
failure, and a page that does will not be trusted the second time.
The reader needs to know the list was walked whole. Say how many promises were checked and how many are
open, then show only the open ones. A promise met since the last run drops off on its own.
discovery.md — where each source lives and how it was found.../steps/04-build-absence-view.md — the step that walks this method and emits the one lawful finding.