Add WebHarbor reset and smoke verification script - #47
Conversation
fetch_assets.sh otherwise resolves a revision that predates the paired assets PR, and websyn_start.sh copies instance_seed to instance for every site under set -e — so a missing directory aborts the whole entrypoint and no site comes up, not just this one. Verified from a clean clone of this branch: fetch_assets.sh, build.sh, and a container on 41000-41016 give /health ok with 17/17 alive and every port 200, with the seed DB byte-identical after POST /reset/google_finance. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
Claiming this for a reviewer-owned continuation. I will preserve @Lxr-max's original commit and attribution, and audit This is repository tooling rather than a new mirror, so site UI fidelity, task runs, and Hugging Face asset checks are not applicable. I will link a separate Draft |
|
Draft reviewer PR opened: #108 — Summary of what the review found and fixed, verified against a live control plane:
The registry discovery, HTTP reset/health/homepage checks and the structured handling of unknown sites and ambiguous DB pairs were already correct and are unchanged. #108 stays in draft until an independent blind review of the frozen scenario runs comes back; I will not merge either PR. |
Summary
scripts/check_reset_smoke.pyto verify WebHarbor control-plane resets, per-site homepage smoke checks, and local runtime-vs-seed DB MD5 parityscripts/test_check_reset_smoke.pywith standard-library coverage for MD5 checks, site filtering, strict mode, JSON output, and local HTTP reset/homepage behaviorWhy this helps WebHarbor review
/reset/<site>behaviorCLI usage
Checks included
websyn_start.shandcontrol_server.pyGET /healthPOST /reset/<site>checks, or optional--reset-allinstance/*.dbvsinstance_seed/*.dbMD5 comparison when visibleTest commands and results
py -m py_compile scripts/check_reset_smoke.py✅py -m py_compile scripts/test_check_reset_smoke.py✅py scripts/test_check_reset_smoke.py✅ (7tests passed)py scripts/check_reset_smoke.py --help✅py scripts/check_reset_smoke.py --json --site amazon --timeout 0.5✅ output is valid JSON; on a machine without a running control server it reports clear connection/timeout failures instead of crashingNotes about running with/without Docker
sites/<site>/instance/*.dbandsites/<site>/instance_seed/*.dbare not present, MD5 checks are reported as skipped warnings rather than fatal errors by defaultNotes
.assets-revisionwas not modifiedKnown limitations