P7: thread backfill reads conversation containers and asks with If-None-Match
Build / Build (push) Failing after 7m52s
Build / Build (push) Failing after 7m52s
The FetchReplies job reads a thread's FEP-171b contextHistory before its FEP-7888 context: the posts each Add (or Forte's plain Create) brought in, read from their own servers. A thread collection read whole keeps its ETag when the document itself changes with every post (it counts them, or holds them all with no further page); the next read sends it as If-None-Match and a 304 ends the job. The ETag is kept as sent, since NodeBB's has no quotes and the typed header drops it. A context naming a post we hold (Forte's first post) is not fetched. Checked in the pasture: Mastodon 4.7.3 answers the second read 304; NodeBB 4.16's unquoted ETag is kept (23/23 in its scenario); a Forte thread completes through its replies. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012CzABvBkbcFqoHdmi8b9WB
This commit is contained in:
1 parent
fb4949b511
commit
62189bf11d
10 files changed
+268
-35
No files matched your search
+5
-2
@@ -677,8 +677,11 @@ it, raw where it doesn't.
|
||||
|
||||
#### P7 Threads, communities and the social graph
|
||||
- **Thread backfill:**
|
||||
- read in order: `contextHistory`, then `context` (paged, with ETag), then `replies`. **Done (2026-10-05), but for
|
||||
`contextHistory` and ETags:** a persona opening a public remote thread queues `FetchReplies` for the post and its
|
||||
- read in order: `contextHistory`, then `context` (paged, with ETag), then `replies`. **Done (2026-10-05; `contextHistory`
|
||||
and ETags 2026-10-07: a container's `Add`ed Creates and Updates are read for their posts; a whole read of a collection
|
||||
that counts its posts or holds them all keeps its ETag, sent back as `If-None-Match`, a 304 checked live on Mastodon
|
||||
4.7.3 and NodeBB 4.16, whose ETag has no quotes; neither Forte nor Mitra puts `contextHistory` on a post, and Forte's
|
||||
`replies` already holds its whole thread):** a persona opening a public remote thread queues `FetchReplies` for the post and its
|
||||
root, at most hourly each. The job reads the thread's FEP-7888 `context` collection (posts or, as FEP-f228 allows,
|
||||
the activities that made them), else the post's `replies` (PeerTube's `comments`) and theirs, two levels down. It
|
||||
reads at most 5 pages and 100 posts per job, signed by the instance actor, and stores what it lacks through
|
||||
|
||||
Reference in new issue
Block a user