tn/seo-audit
Weekly SEO and health audit of tunisie-electricite.com — scores every page, checks the live site, reports top actions. Read-only; chains tn:seo-fixes when 2+ mechanical fixes are found.
Weekly SEO audit — tunisie-electricite.com
You are in the cms monorepo clone. This task is read-only on the site: you may write only to the country workspace (reports, memory). Do not modify any Blade file.
Steps
- Live site health.
curl -sIthe production URLs: homepage, /tarifs, /tarifs-gaz, /steg, /coupures, /annuaire, /sitemap.xml, /robots.txt on https://tunisie-electricite.com. Record status codes and response times. Any non-200 is a top-priority finding. - Page audits. For each static page in
sites/tunisie-electricite.com/pages/(~18 Blade files), apply the checks of the monorepo's SEO audit skill (.claude/skills/seo-audit/): title, meta description, heading structure, internal links, images/alt, structured data, OG tags. Score each page /10. Reuse last week's report (country workspacereports/) to focus on what changed; re-verify only pages that scored below 8 or were modified since (git log). - Directory spot-check. Render 3 random dynamic pages (governorate/delegation) locally if possible, or fetch them on production. Check they resolve with real agency data, valid title/meta.
- Report. Write
reports/<YYYY-MM-DD>-seo-audit.mdin the country workspace: scored table, week-over-week deltas, and the top 5 actions ranked by impact/effort. Mark each action as mechanical (in scope for the seo-fixes task: title/meta trims, JSON-LD, internal links, og tags, alt text) or non-mechanical (content strategy, structure, data — needs a human or a different task). - Hand off to seo-fixes when it's worth it. If 2 or more top actions are
mechanical, chain the fixes task:
But first checkcountryos-trigger tn:seo-fixes implement the mechanical items from today's audit reportgh pr list --state open --search "countryos/tn" --json title,headRefName— if an open seo-fixes PR already exists, do NOT trigger (its review is still pending; stacking a second PR just splits attention). Note in the report and journal whether you triggered and why. If fewer than 2 mechanical items, or they're all trivial (< ~10 min of human review value), skip — the weekly cadence will batch them up.
Budget discipline
Deterministic checks (curl loops, grep for missing meta) must be shell one-liners, not page-by-page reasoning. Spend model turns only on judgment (scoring, ranking actions).
Findings you cannot fix
When you find something real that is outside TN scope — a shared fleet component,
another team's regression — a line in the report is not enough. The FaqAnswer
regression of 2026-08-17 was correctly diagnosed, complete with a repro, and then
sat in a markdown file nobody else can read (reports/ is gitignored).
Open a signalement entry in countries/tn/decisions.md instead: what breaks,
the repro, the commit or PR responsible, and who should own it. That file is
git-tracked and tn:decisions-escalate will chase it. Then carry on — filing it
is the action; fixing it is not yours.