9e383eb751
The ring is insertion-ordered and the page called itself newest first while printing OccurredAt, which is when the thing happened. A cold feed read publishes a week of items in feed order and the ambient relay stamps a 09:00 notification with an 18:00 meeting, so the timestamp column ran forwards and backwards on the same page. Events now carry NoticedAt, filled by the bus and not by the caller, and the page sorts and labels by it while still showing when the thing itself happened. Four writers on that page had not arrived from anywhere: the feed watermark, the crawl hash, the praxis trace of an act she performed and a quiet-hours toggle he pressed. On a cold start with a few feeds they could evict real intake out of a 512-entry ring. The decorator now skips Maven's own bookkeeping. Priority was the only surviving trace of confidence, and it inverts: a relayed meeting at 0.6 read as low while an rss watermark at 1.0 read as normal. The fact's own kind, its confidence and the id it voids now travel in Payload, which was unused. A retraction is marked as one and scored low, instead of publishing an envelope indistinguishable from a fresh reading of the same key. Smaller: SourceKind no longer maps every email source to a task, so a future fact under an email prefix is not journalled as one; newEventBus is quiet when it is handed no config at all; and morningTmpl has its own doc comment back. Found in review of #78. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TrVSBKe3RFDF4fGYKWYQnX
29 lines
1.2 KiB
HTML
29 lines
1.2 KiB
HTML
{{template "shellTop" "events"}}
|
|
<h1>Intake</h1>
|
|
<div class=hint>Everything that arrived, most recently noticed first — a relayed notification, a mail
|
|
candidate, a feed item, a changed page, a spend, a presence probe. Maven's own bookkeeping writes (feed
|
|
watermarks, crawl hashes, act traces, settings he toggled) are not here: nothing arrived. <b>noticed</b>
|
|
is when the journal saw it, <b>happened</b> is when the thing itself did, and those differ by days on a
|
|
cold feed read. One envelope per write; the durable row is still the fact, note or task itself. Held in
|
|
memory only, so a restart empties this.</div>
|
|
{{if .Err}}<div class=hint>journal unavailable: {{.Err}}</div>{{end}}
|
|
{{if and (not .Events) (not .Err)}}
|
|
<div class=hint>nothing has arrived yet</div>
|
|
{{end}}
|
|
{{if .Events}}
|
|
<div class=scroll><table class=mono>
|
|
<tr><th>noticed<th>happened<th>source<th>kind<th>pri<th>what<th>detail</tr>
|
|
{{range .Events}}<tr>
|
|
<td>{{.NoticedAt.Format "02.01 15:04:05"}}</td>
|
|
<td class=gray>{{.OccurredAt.Format "02.01 15:04:05"}}</td>
|
|
<td class=gray>{{.Source}}</td>
|
|
<td class=gray>{{.Kind}}</td>
|
|
<td class=gray>{{.Priority}}</td>
|
|
<td>{{.Title}}</td>
|
|
<td class=gray>{{.Body}}</td>
|
|
</tr>{{end}}
|
|
</table></div>
|
|
{{end}}
|
|
{{template "shellBottom"}}
|
|
</html>
|