Add friendly scrape names and a completeness check

This commit is contained in:
Fisto
2026-09-21 10:40:53 +02:00
parent 19bf6e16fc
commit 3bba051971
7 changed files with 219 additions and 8 deletions
+14
View File
@@ -61,6 +61,20 @@ The mock also covers tiers, continuation, polls, reactions, and the action log.
with `set_puppet_config` before a test. Inject a reaction with
`TEST_TRIGGER_REACTION=1 TEST_REACTION_MESSAGE_ID=msg-1 TEST_REACTION_EMOJI="1️⃣" pnpm test:trigger`.
## Scrape completeness
`pnpm verify:scrapes` (from `poc/`) walks every scrape index and reports whether the walk
plausibly reached the start of the source:
- state is `done`, no `lastError`, and the message count is non-zero
- the message count matches the recorded Discord search total when there is one
- the oldest message is close to the source's creation time, derived from the channel ID
snowflake (`--grace <days>` sets the allowance, default 60)
The age check is a heuristic: a channel can sit empty after creation, and a ranged scrape is
expected to stop early. A flagged scrape that a later full walk of the same source supersedes is
reported as `old` rather than a problem. Exit code is 1 when a scrape is genuinely incomplete.
## Web UI smoke test
The web UI starts with the daemon. The mock core is enough for this test.