← all branches

claude/priceless-faraday-314fa0

needs attentionviewing older commit
d350e7a · incrementalPR #293reviewed 2026-07-11 03:53 UTC0H · 2M · 4L · 4I
The branch
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
The changes (whole branch)
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+1410.claude/skills/review-panel+51docs+97e2e/web+22
Blast
5 files, +30/-20 — docs + skill definition + e2e comment. No runtime code, no schema, no API, no DB impact.
ci· no CI checks on this branchcoderabbit· no .coderabbit.yaml

Findings · 10

correctness3

medium

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.

low

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.

info

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

info

'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

medium

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.

low

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.

low

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.

low

'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.

info

loops.md concurrency paragraph states 429 mitigation twice

.claude/rules/loops.md:34

API-key unlock appears twice; second occurrence can be dropped.

info

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.

History · 4 commits

  1. 070e3e0safeincremental0H · 0M · 1L2026-07-11 04:04
  2. b1d323dsafeincremental0H · 0M · 1L2026-07-11 03:58
  3. d350e7aneeds attentionincremental0H · 2M · 4L2026-07-11 03:53current
  4. 899fda3needs attentionfull0H · 5M · 4L2026-07-11 03:41