mirror of
https://github.com/Tyrrrz/DiscordChatExporter.git
synced 2026-06-09 15:52:37 -06:00
Use padded sort for last_message_id cursor, surface guild channel discovery errors, and document DCE_ARCHIVE_ROOT in compose.
1.5 KiB
1.5 KiB
title: fix: Close recurring scrape residual review findings
type: fix
status: completed
date: 2026-05-29
origin: LFG — residual review findings on feat/recurring-cli-scrape (R1–R3)
U1. Fix message cursor (
fix: Close recurring scrape residual review findings
Summary
Address manual review residuals from plan 011: correct incremental cursor selection, improve guild channel discovery errors, and document portable archive mount configuration.
Requirements
| ID | Requirement |
|---|---|
| R1 | last_message_id picks highest snowflake reliably across mixed digit lengths |
| R2 | load_guild_channel_cache surfaces CLI failure output like load_guild_cache |
| R3 | docker-compose.yml documents required DCE_ARCHIVE_ROOT override |
| R4 | Existing smoke tests pass after changes |
Implementation Units
U1. Fix message cursor (last_message_id)
Files: scripts/run-discord-scrape.sh
Approach: Replace max_by(.id) with sort_by(.id) | last | .id for lexicographic ordering on zero-padded-equal-length snowflakes; Discord IDs in one channel are typically same length — sort_by is safer than max_by for strings.
U2. Guild channel cache diagnostics
Files: scripts/run-discord-scrape.sh
Approach: Capture channels CLI stderr/stdout; die with context on failure.
U3. Compose portability note
Files: docker-compose.yml
Approach: Comment above DCE_ARCHIVE_ROOT volume line.
Verification
scripts/tests/run-discord-scrape-smoke.shbash -n scripts/run-discord-scrape.sh