Repository navigation
v0.4.0 — obstat_subject, what a call did, which policy said so
Everything here came out of running obstat in front of three real mailboxes.
Schema 4 → 5.
- The injected caller identity moved from
subjecttoobstat_subject.
Reserving the bare word took it from every tool that had a use for it — an
email tool wantssend_email(to, subject, body), and the failure was silent:
the parameter vanished from the advertised schema and aSubjectobject
landed in theSubject:header.obstat_is now the only reserved prefix,
and a tool still declaring the old spelling is refused at decoration rather
than handedNonefor ever. obstat.note(...)— a tool can record what the call did, not only what
it was allowed to do. A bulk delete records one sender whether it removed one
message or ten thousand; now the body can saydeleted=154, matched=158, on
failure too, since half a bulk delete is the case a reader most needs a
number for.- Every decision that consulted policy carries a
policydigest over the
bytes of the file, sorule 2still means something after the file is edited
and the numbering shifts. erroron outcome records is the exception's__qualname__—IMAP4.error,
noterror.- §8 now leads with the boundary the mailboxes demonstrated: the record
covers the gate, not the resource — and admits that Windows loses records
when two processes share a log (measured at 57 of 60 surviving).