DiscordChatExporter/docs/plans/2026-06-04-083-feat-kotor-yes-general-wrapper-plan.md
Copilot 7171d7b6e3 feat(scrape): add KotOR yes_general catch-up wrapper (plan 083)
One-command operator entry for channel 221726893064454144 with salvage-before-scrape,
log/summary defaults, and dry-run/validation/prove modes. Smoke suite now 24/24.
2026-06-03 11:55:22 -05:00

1.6 KiB

title type status date origin
feat: KotOR yes_general catch-up wrapper feat complete 2026-06-04 /lfg — plan 082 deferred live KotOR catch-up; encode operator path as one script

feat: KotOR yes_general catch-up wrapper

Summary

Add scripts/run-kotor-yes-general-catchup.sh — thin wrapper for channel 221726893064454144 with default log/summary paths, --salvage-before-scrape, and subcommands for validation/prove/salvage-only/dry-run.

Problem Frame

KotOR yes_general catch-up is documented in five places with long flag chains. Operators need one entry point; LFG still cannot run live Discord scrape in CI.

Requirements

ID Requirement
R1 Default live run: --salvage-before-scrape + documents scrape + --log-file logs/kotor-yes-general.log
R2 --dry-run, --salvage-only, --validation, --prove modes
R3 --log-file and --config overrides
R4 Prints summary inspect hint after live scrape
R5 kotor-yes-general-catchup-smoke.sh dry-run passes offline
R6 Docs updated; smoke count 24/24 in setup doc + merge-readiness
R7 DCE_MIN_FREE_MB=0 ./scripts/run-all-smokes.sh → 24/24

Implementation Units

U1. Wrapper script

Files: scripts/run-kotor-yes-general-catchup.sh, scripts/tests/kotor-yes-general-catchup-smoke.sh

U2. Docs

Files: docs/recurring-scrape-merge-readiness.md, docs/recurring-scrape-operator-checklist.md, .docs/Recurring-Scrape-Setup.md

Verification

DCE_MIN_FREE_MB=0 ./scripts/run-all-smokes.sh

Scope Boundaries

Deferred

  • Running live KotOR catch-up inside LFG/CI (operator host only)