Skip to content

seo: vendor the portfolio SEO gate with a CI step - #6

Merged
tristanroth1 merged 2 commits into
mainfrom
seo/vendor-seo-gate
Oct 19, 2026
Merged

tristanroth1 merged 2 commits into
mainfrom
seo/vendor-seo-gate

Conversation

@tristanroth1

@tristanroth1 tristanroth1 commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

Vendors the shared portfolio SEO gate (founder-ops lib/seo-gate/seo-gate.mjs v1.0.1, digest pinned in founder-ops lib/seo-gate/VERSION; runbook founder-ops docs/runbooks/seo-standard.md, design founder-ops #458) and runs it on every same-repository PR.

What ships

  • site/scripts/seo-gate.mjs: vendored, unedited. Site-specific checks never go in this file.
  • site/seo-gate.config.json: canonical https://grcskills.com, trailing slash always, page types (home, catalog-item for /skill/, catalog-hub for /skills/, /category/, /framework/), www twin.
  • npm run seo:gate in site/.
  • validate.yml: new site-seo job, same-repository PRs only (building runs the candidate's site code, which fork PRs must never do; outside content is gated by the next house PR). Builds the static export and runs the gate at L0 plus the policy gate. No network.

Evidence

  • Build of origin/main e99f09d: pass at L0P, sitemap 84/84, routes 89/89, 24 warnings (title and description lengths), no quarterly findings at L0Q.
  • Acceptance A5: the same build with one canonical removed (/skill/soa-first-draft/) exits 1 with L0-03 canonical-count count=0.
  • Live production at L0 (2026-10-20): pass, 84/84.

Deploys stay manual from a release tag; this changes no live page.

CODEX_REVIEW: Codex unavailable -> Opus subagent 2026-10-20: SHIP (2 minors fixed)

Owner: grcskills-growth lane (hermes.grcskills-growth), opened by the seo-steward build session
Next: CI green plus an independent review, then merge per this repo's house-PR rule.

🤖 Generated with Claude Code

Vendored from tristanroth1/founder-ops lib/seo-gate/seo-gate.mjs (digest pinned in its
lib/seo-gate/VERSION; do not edit here). Runbook: founder-ops docs/runbooks/seo-standard.md.

Generated with founder-ops coding agent (claude2)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…match children only); final newline

Generated with founder-ops coding agent (claude2)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@tristanroth1

Copy link
Copy Markdown
Contributor Author

Independent review: Codex unavailable (rate limit and capacity tonight), fresh Opus subagent, read-only: SHIP (sentinel SENTINEL-GRC6-SEO-OPUS-6TB verified). No blocker or major. Two minors fixed in 5a3edfe: the /skills/ page-type key never matched (prefix keys match children only) and is removed; final newline added. Digest of the vendored file checked: v1.0.1 eb70831b. CI on 5a3edfe: same-repo pass, site-seo pass (84/84 sitemap, 89/89 routes), fork skipped. Merging under the house-PR rule (green CI plus independent review).

@tristanroth1
tristanroth1 merged commit 6e9bc77 into main Oct 19, 2026
3 checks passed
@tristanroth1
tristanroth1 deleted the seo/vendor-seo-gate branch October 19, 2026 22:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants