You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Recommendation: weekly→daily — decouple live-scrape from dump/report #17
Moving the weekly automation to a daily cadence. The three scheduled workflows differ a lot in weight/side-effects, so recommending a split rather than flipping all three to * * * uniformly.
2. Don't make all three daily as-is — they have different weight:
coverage-report → daily ✅ (cheap, sticky issue in-place; no downside)
dump regeneration → daily ✅, but only after the timestamp fix below
live enrich (12-source scrape) → keep weekly. Daily scraping of Wikipedia/cpubenchmark/topcpu etc. is ToS/rate-limit/load-heavy. Decouple "scrape benchmarks" (weekly) from "regenerate dump + report from already-curated data/" (daily).
weekly-ingest (draft-SKU PRs) → keep weekly (or switch to a single sticky branch/PR). A new curator-review PR every day will overwhelm review.
3. Prerequisite for daily dump: make app.dump deterministic.
Today the dump is a stateless rebuild that stamps created_at/updated_at = build-time on every run, so a daily refresh PR would carry ~1400-file timestamp churn even with zero data changes — daily PRs become unreviewable noise. Fix before going daily: preserve created_at, set updated_at only on real change (or drop build timestamps / pin SOURCE_DATE_EPOCH). Then daily PRs contain only real data deltas.
Auto-merge the refresh PR (dated refresh/<date> branch) or commit directly, so daily PRs don't backlog.
Add concurrency: groups to coverage-report and weekly-ingest (refresh already has one) so a slow run doesn't overlap the next day's.
integrity_check.py --strict will be exercised daily — per-source enrich failures already ::warning::-skip, so a flaky upstream just skips that day's PR (harmless), but worth monitoring.
One-line summary
Split "scrape (weekly)" from "dump + coverage (daily)"; make the dump deterministic first so daily PRs aren't 1400-file timestamp churn; flip only the day-of-week field and keep the stagger.
1. Cron stagger, day-of-week only — adopted, but intentionally not applied uniformly (see 2). Only coverage-report flipped to * * *; stagger (06:00 / 06:23 / 06:29) preserved.
Activity
Seungpyo1007 commentedon Jun 8, 2026
Acted on. Status mapping:
1. Cron stagger, day-of-week only — adopted, but intentionally not applied uniformly (see 2). Only
coverage-reportflipped to* * *; stagger (06:00 / 06:23 / 06:29) preserved.2. Split by weight — done in b53bcab:
coverage-report→ daily ✅ (reads curateddata/only) + aconcurrency:guard addedweekly-refresh) → kept weekly ✅ (ToS / rate-limit)weekly-ingest→ kept weekly ✅ (curator review load)3. Prerequisite — deterministic
app.dump→ tracked separately in #18 (open). Daily refresh stays off until that lands.4. Housekeeping:
weekly-*→ now moot: refresh/ingest are genuinely weekly again, so the names are accurate;coverage-reportwas neverweekly-*.concurrencyoncoverage-report→ added ✅. Onweekly-ingest→ skipped for now (weekly cadence, negligible overlap risk).weekly-refreshis weekly; revisit alongside dump: make app.dump timestamps deterministic (precondition for daily refresh) #18 when going daily.--strictdaily exposure → noted; per-source failures already::warning::-skip, monitor only.Core split is live (b53bcab); the one substantive remainder (deterministic dump) is #18. Closing as addressed.