Impeccable
This commit is contained in:
163
docs/automations/qrmaster-pr-seo-review.md
Normal file
163
docs/automations/qrmaster-pr-seo-review.md
Normal file
@@ -0,0 +1,163 @@
|
||||
# QRMaster PR SEO Review
|
||||
|
||||
## Goal
|
||||
|
||||
Catch SEO, conversion, content-quality, and technical issues before a QRMaster
|
||||
page change is merged.
|
||||
|
||||
## Use When
|
||||
|
||||
- A PR changes landing pages, tool pages, comparison pages, blog posts, metadata,
|
||||
schema, sitemap behavior, internal links, pricing copy, or CTAs.
|
||||
- Codex generated new SEO pages from `marketing/programmatic-seo-top-50.md`.
|
||||
- Existing pages were refreshed from Google Search Console or keyword data.
|
||||
|
||||
## Plugins And Skills
|
||||
|
||||
| Need | Use |
|
||||
|---|---|
|
||||
| Diff and PR review | GitHub plugin |
|
||||
| Code/content inspection | Codex |
|
||||
| SEO/AEO review | `ai-seo` skill |
|
||||
| Content intent and cluster fit | `content-strategy` skill |
|
||||
| Build/lint verification | GitHub Actions, `qa` skill |
|
||||
| Careful merge decision | `careful` skill |
|
||||
|
||||
## Review Checklist
|
||||
|
||||
### 1. Technical SEO
|
||||
|
||||
- Exactly one H1 on the rendered page.
|
||||
- Meta title exists and is specific to the page intent.
|
||||
- Meta title places the primary keyword near the start where natural.
|
||||
- Meta title stays under roughly 60 characters unless there is a clear reason.
|
||||
- Meta description exists and promises the right outcome.
|
||||
- Meta description includes the target keyword naturally, states the user benefit,
|
||||
and stays concise enough to avoid likely truncation.
|
||||
- Canonical URL is correct.
|
||||
- Page is not accidentally noindexed.
|
||||
- FAQ, Article, Product, Breadcrumb, or HowTo schema is valid where used.
|
||||
- Sitemap and internal routing include the page where required.
|
||||
- No broken internal links or CTA links.
|
||||
- Language and locale are consistent.
|
||||
- URL slug is short, descriptive, hyphenated, and does not include stale dates.
|
||||
- Meaningful images have descriptive alt text and useful filenames where local
|
||||
image handling allows it.
|
||||
- Large visual assets are compressed or already optimized.
|
||||
- Mobile layout is readable and CTAs are tappable.
|
||||
- The page does not introduce obvious Core Web Vitals risks.
|
||||
- Robots rules do not block important pages or desired AI/search crawlers.
|
||||
|
||||
### 2. Search Intent
|
||||
|
||||
- The first screen makes it obvious the page answers the target query.
|
||||
- The opening paragraph states the problem directly.
|
||||
- The page matches one primary intent only.
|
||||
- The content is not a generic rewrite of another QRMaster page.
|
||||
- The page includes concrete examples for its audience or use case.
|
||||
- The target keyword intent is labeled as informational, commercial,
|
||||
transactional, or navigational.
|
||||
- The page covers the related subtopics a search or AI system would fan out to
|
||||
for the main query.
|
||||
- Each H2/H3 section answers the heading directly in the first sentence before
|
||||
adding background or nuance.
|
||||
|
||||
### 3. QRMaster Conversion Fit
|
||||
|
||||
- Primary CTA is visible early.
|
||||
- CTA copy matches the use case, not just generic "Get started".
|
||||
- The page explains why dynamic QR codes matter when links change after printing.
|
||||
- Scan analytics or tracking is mentioned when relevant.
|
||||
- Privacy/GDPR positioning is included where tracking is discussed.
|
||||
- The copy avoids unsupported claims.
|
||||
|
||||
### 4. Internal Linking
|
||||
|
||||
- New page links to the relevant money page:
|
||||
- `/dynamic-qr-code-generator`
|
||||
- `/qr-code-tracking`
|
||||
- `/bulk-qr-code-generator`
|
||||
- `/pricing`
|
||||
- relevant `/tools/...` page
|
||||
- Existing related pages should link back to the new page.
|
||||
- Anchor text is natural and varied.
|
||||
|
||||
### 5. AI Search Extractability
|
||||
|
||||
- Important answer blocks are self-contained.
|
||||
- Comparison content uses tables where useful.
|
||||
- FAQ questions are written in natural user language.
|
||||
- Definitions answer the query in 40-60 words when possible.
|
||||
- Claims that need evidence include a source or are framed as product positioning.
|
||||
- Sections are focused on one question or subtopic at a time.
|
||||
- Bullet lists, tables, and short paragraphs are used where they improve
|
||||
extraction and scanning.
|
||||
- The page can be cited by AI systems without relying on surrounding context.
|
||||
|
||||
### 6. E-E-A-T And Quality
|
||||
|
||||
- Content is accurate, current, and not copied from competitors.
|
||||
- Any competitor, pricing, legal, privacy, or compliance claim is verified or
|
||||
clearly avoided.
|
||||
- The page adds QRMaster-specific value, examples, workflows, or product context.
|
||||
- The tone stays direct, useful, and trustworthy.
|
||||
|
||||
## Codex Review Prompt
|
||||
|
||||
```text
|
||||
Review this QRMaster PR as an SEO, conversion, and technical quality gate.
|
||||
|
||||
Use:
|
||||
- docs/automations/qrmaster-pr-seo-review.md
|
||||
- .agents/product-marketing-context.md
|
||||
- marketing/programmatic-seo-top-50.md
|
||||
|
||||
Check the diff for:
|
||||
1. technical SEO issues
|
||||
2. search intent mismatch
|
||||
3. weak or missing CTA
|
||||
4. duplicate/thin content
|
||||
5. missing internal links
|
||||
6. invalid or missing schema
|
||||
7. weak AI/agentic-search extractability
|
||||
8. missing visual/mobile/performance considerations
|
||||
9. build/lint risks
|
||||
|
||||
Return findings ordered by severity. For each finding include:
|
||||
- file path
|
||||
- exact line if possible
|
||||
- why it matters
|
||||
- concrete fix
|
||||
|
||||
Also include:
|
||||
- merge recommendation: approve / request changes
|
||||
- required follow-up tasks
|
||||
```
|
||||
|
||||
## Review Output Format
|
||||
|
||||
```markdown
|
||||
## QRMaster PR SEO Review
|
||||
|
||||
Decision: Request changes
|
||||
|
||||
### Findings
|
||||
1. [High] Missing internal link to `/dynamic-qr-code-generator`
|
||||
2. [Medium] CTA is too generic for the target intent
|
||||
3. [Low] FAQ question overlaps with another page
|
||||
|
||||
### Required Fixes
|
||||
- Add contextual link from the "after printing" section to `/dynamic-qr-code-generator`.
|
||||
- Change CTA from "Get started" to "Create an editable QR code for your flyer".
|
||||
|
||||
### Verification
|
||||
- Build:
|
||||
- Lint:
|
||||
- Link/schema check:
|
||||
```
|
||||
|
||||
## Success Criteria
|
||||
|
||||
- No high-severity SEO or conversion findings remain.
|
||||
- Build and lint pass.
|
||||
- The PR has a clear human approval before merge.
|
||||
Reference in New Issue
Block a user