claude/priceless-faraday-314fa0
needs attentionviewing older commitd350e7a · incrementalPR #293reviewed 2026-07-11 03:53 UTC0H · 2M · 4L · 4I- Purpose
- Harden the SEO review lens SSOT following prior loop-review findings on PR #293.
- Goal
- Make the seo lens definition precise: mandatory Vercel cross-check, honest lychee gap disclosure, correct severity thresholds.
- Sub-goals
- SG-1: Expand seo lens in review-panel/SKILL.md — mandatory deterministic cross-check, lychee gap, description tolerance
- SG-2: Update loops.md concurrency para to document 6-lens panel with seo web-only self-skip
- SG-3: Align docs (autonomous-operating-model.md, measurement-and-cadence.md) with lens ownership
- SG-4: Update e2e comment to reference lens instead of deleted seo-checks.yml
- What
- Documentation and skill definition only — no runtime code. seo lens definition in review-panel/SKILL.md expanded (mandatory Vercel cross-check, lychee gap disclosure, severity rules). loops.md concurrency paragraph updated to reflect 6-lens reality. Three doc files aligned to current tool ownership.
- Why
- Prior loop-review flagged the seo lens as underdocumented — optional cross-check, unclear severity discipline, missing lychee gap. This commit addresses all findings to keep the SSOT accurate.
- Areas
- .claude/rules+14−10.claude/skills/review-panel+5−1docs+9−7e2e/web+2−2
- Blast
- 5 files, +30/-20 — docs + skill definition + e2e comment. No runtime code, no schema, no API, no DB impact.
Findings · 10
correctness3
Vercel web preview URL template in SKILL.md not cross-referenced to config.json
.claude/skills/review-panel/SKILL.md:20
The SEO lens hardcodes `batu-codebase-web-git-<slug>-batu-energy.vercel.app`. Correct per e2e.yml, but config.json → review.previewUrlTemplate is for the dev-ops dashboard (different app). Can drift silently on project rename.
loops.md asserts '5-hour session limit' without qualification
.claude/rules/loops.md:34
Claude session limits vary by plan. A qualifier would be more durable.
autonomous-operating-model.md has no lychee gap disclosure
docs/autonomous-operating-model.md:20
Minor disclosure asymmetry vs SKILL.md — acceptable for a summary doc.
conventions1
'Config change only' overstates — lens-definition in SKILL.md also needs authoring
.claude/rules/loops.md:61
Orchestrator/aggregator are lens-agnostic (true), but a new lens still needs a block in review-panel/SKILL.md.
improvement6
SEO lens main bullet is a ~1,400-char run-on line — hard to scan, noisy diffs
.claude/skills/review-panel/SKILL.md:19
Parent seo bullet lists ~10 checks in one line; the sub-bullets that follow were split, the parent was not. Promote checklist items into sub-bullet style.
Vercel web URL template hardcoded — silent drift risk on project rename
.claude/skills/review-panel/SKILL.md:20
Note PLAYWRIGHT_WEB_BASE_URL as canonical source.
Description-length thresholds split across CLAUDE.md and SKILL.md
.claude/skills/review-panel/SKILL.md:19
A one-liner in CLAUDE.md noting the seo-assert.mjs tolerance would close the gap.
'Not reproduced' note creates a second maintenance point for the lychee gap
.claude/skills/review-panel/SKILL.md:21
Lychee gap now documented in both SKILL.md and measurement-and-cadence.md — consistent but two places to update.
loops.md concurrency paragraph states 429 mitigation twice
.claude/rules/loops.md:34
API-key unlock appears twice; second occurrence can be dropped.
e2e comment says 'advisory' without context for unfamiliar readers
e2e/web/marketing.spec.ts:9
Adding '(never a merge blocker)' would make intent self-contained.