docs(scrape): complete offline smoke inventory in setup guide

Align Recurring-Scrape-Setup smoke table with all 21 offline scripts
and note plan 061 shared scrape-lock library in merge-readiness.
This commit is contained in:
Copilot 2026-06-03 09:14:04 -05:00
parent a88cd815f4
commit 88267c835c
3 changed files with 72 additions and 13 deletions

View file

@ -325,7 +325,7 @@ Space requirements:
## Smoke test validation
Run the full offline suite from the repo root (requires `jq`):
Run the full offline suite from the repo root (requires `jq`). **21 offline smokes** run by default; add `--include-container` for a 22nd local-only check:
```bash
./scripts/run-all-smokes.sh
@ -347,21 +347,27 @@ With Docker/Podman, include the container smoke:
| Script | CI (`recurring-scrape-smoke`) | Notes |
|--------|-------------------------------|-------|
| `run-discord-scrape-smoke.sh` | yes | Append-only merge coverage |
| `error-path-smoke.sh` | yes | Failure paths |
| `cron-idempotency-smoke.sh` | yes | Cron installer idempotency |
| `end-to-end-preflight-smoke.sh` | yes | Preflight wiring |
| `setup-cron-smoke.sh` | yes | Cron setup dry-run |
| `run-discord-scrape-host-smoke.sh` | yes | Host wrapper |
| `gh-approve-pr-runs-smoke.sh` | yes | Fork PR workflow helper |
| `documents-scrape-smoke.sh` | yes | Unified Documents workflow |
| `verify-documents-auth-smoke.sh` | yes | Archive verify + auth bootstrap |
| `scrape-here-smoke.sh` | yes | Workspace bridge launcher |
| `bootstrap-recurring-scrape-smoke.sh` | yes | Bootstrap dry-run |
| `archive-disk-space-smoke.sh` | yes | Disk preflight / `DCE_MIN_FREE_MB` |
| `audit-archive-json-smoke.sh` | yes | Invalid JSON detection |
| `bootstrap-recurring-scrape-smoke.sh` | yes | Bootstrap dry-run |
| `cron-idempotency-smoke.sh` | yes | Cron installer idempotency |
| `documents-scrape-smoke.sh` | yes | Unified Documents workflow + lock gate |
| `end-to-end-preflight-smoke.sh` | yes | Preflight wiring |
| `error-path-smoke.sh` | yes | Failure paths |
| `gh-approve-pr-runs-smoke.sh` | yes | Fork PR workflow helper |
| `operator-handoff-smoke.sh` | yes | Operator handoff dry-run |
| `prove-incremental-append-smoke.sh` | yes | Offline prove snapshot/compare |
| `verify-operator-ready-smoke.sh` | yes | Host prerequisite checks |
| `run-discord-scrape-host-lock-smoke.sh` | yes | Archive-root scrape lock |
| `run-discord-scrape-host-smoke.sh` | yes | Host wrapper |
| `run-discord-scrape-smoke.sh` | yes | Append-only merge coverage |
| `run-operator-proof-smoke.sh` | yes | Scrape + prove dry-run |
| `run-operator-validation-smoke.sh` | yes | Validation runner dry-run |
| `scrape-here-smoke.sh` | yes | Workspace bridge launcher |
| `scrape-lock-status-smoke.sh` | yes | Lock status + stale reclaim |
| `setup-cron-smoke.sh` | yes | Cron setup dry-run |
| `sync-gui-bridge-doc-smoke.sh` | yes | GUI bridge doc sync |
| `verify-documents-auth-smoke.sh` | yes | Archive verify + auth bootstrap |
| `verify-operator-ready-smoke.sh` | yes | Host prerequisite checks |
| `container-smoke.sh` | no (local) | Docker build + `help` / `list-targets`; use `--include-container` |
GitHub Actions runs `./scripts/run-all-smokes.sh` via `.github/workflows/main.yml` job `recurring-scrape-smoke`.

View file

@ -0,0 +1,51 @@
---
title: "docs: Complete smoke test inventory"
type: docs
status: complete
date: 2026-06-04
origin: /lfg — plan 060 deferred `.docs/Recurring-Scrape-Setup.md` smoke table; 6 smokes missing after plans 054061
---
# docs: Complete smoke test inventory
## Summary
Bring `.docs/Recurring-Scrape-Setup.md` smoke table in line with `scripts/run-all-smokes.sh` (21 offline scripts). Record plan 061 in merge-readiness.
## Requirements
| ID | Requirement |
|----|-------------|
| R1 | Smoke table lists all 21 offline `scripts/tests/*.sh` except skipped `container-smoke.sh` |
| R2 | Table documents `container-smoke.sh` as local-only via `--include-container` |
| R3 | Section prose states 21 offline smokes match CI job `recurring-scrape-smoke` |
| R4 | `docs/recurring-scrape-merge-readiness.md` notes plan 061 (shared scrape-lock lib) |
| R5 | `DCE_MIN_FREE_MB=0 ./scripts/run-all-smokes.sh` passes (21/21) |
## Implementation Units
### U1. Setup doc smoke table
**Files:** `.docs/Recurring-Scrape-Setup.md`
Add missing rows:
- `archive-disk-space-smoke.sh`
- `run-discord-scrape-host-lock-smoke.sh`
- `operator-handoff-smoke.sh`
- `run-operator-proof-smoke.sh`
- `scrape-lock-status-smoke.sh`
- `sync-gui-bridge-doc-smoke.sh`
### U2. Merge-readiness stamp
**Files:** `docs/recurring-scrape-merge-readiness.md`
Add plan 061 bullet under branch status / latest section.
## Scope Boundaries
### Deferred
- Live KotOR catch-up on host
- Container memory tuning for large channels

View file

@ -133,6 +133,8 @@ DCE_MIN_FREE_MB=0 ./scripts/run-operator-validation.sh --sync-gui --per-target -
**Plan 044 (2026-06-04):** Offline smoke asserts partial temp preserved on OOM skip (channel 134). Host wrapper prefers `DISCORD_TOKEN_FILE` over inherited shell tokens.
**Plan 061 (2026-06-04):** Shared `scripts/lib/scrape-lock.sh` — lock path, held check, holder formatting, and reclaim helpers sourced by host runner, lock status, and operator wrappers. `run-all-smokes.sh` → 21/21 pass.
**Plans 054059 (2026-06-04):** Salvage-only subcommand; archive-root lock with meta sidecar; operator validation/proof/handoff salvage flags; `scrape-lock-status.sh` + `--reclaim-stale`; documents scrape lock gate + `--salvage-before-scrape`. `run-all-smokes.sh` → 21/21 pass.
**KotOR / yes_general (plan 040043):** Incremental `--after` works for all channels; most return `UNCHANGED` in seconds. `yes_general` archive last message was **2021-01-17** — the first catch-up legitimately fetches years of history. Prior bug: OOM skip **deleted** partial temp exports, causing re-download loops. Plan 043 preserves partial temps and salvages on next run.