[CL-SEO-AGENT-ADAMI-P1B] feat(seo): AI SEO Agent CLI + weekly Forgejo cron для adami.kr #5

Merged
andrei merged 1 commit from feature/claude-cl-seo-agent-adami-p1b into main 2026-05-25 16:16:47 +00:00
Owner

Что сделано

Mirror SEO Agent CLI + Forgejo weekly cron из europatech master 5cafbfdea.

  • scripts/seo-agent/** — копия CLI (с CRITICAL fixes: ENV-only baseline path + URL validation)
  • .seo-agent/{config,state,README}.md — adami config: https://adami.kr, 3 priority_paths, Russian only, single-page SPA scope
  • .forgejo/workflows/seo-audit.yml — weekly cron Mon 03:00 UTC + workflow_dispatch + PR paths-filter
  • scripts/seo-agent/__tests__/smoke.test.mjs — 3 smoke tests (--help, dry-run, URL injection reject)
  • .gitignore — secrets/local-cache/venv exclusions

Зачем

Phase 1B расширение SEO Agent на третий сайт. adami.kr = single-page SPA (vite+react), Russian-only, бизнес-сайт (импорт/экспорт из Кореи). Weekly drift detection.

GitNexus context подтвердил: src/App.tsx:1157-1205 — mode-based UI без routes.

План тестирования

node --test scripts/seo-agent/__tests__/smoke.test.mjs   # → 3/3 pass
node scripts/seo-agent/seo-agent.mjs --site=adami --stage=1 --dry-run  # → exit 0

После merge: Forgejo Actions → Run workflow вручную.

Где могу ошибаться

  • CLI duplicate во всех 3 repo до Phase 5 shared install
  • TG channel adami-seo не сконфигурирован в tg-bridge
  • adami-site нет существующего seo-smoke-test.mjs — stage1 wrapper skip-ит smoke step
## Что сделано Mirror SEO Agent CLI + Forgejo weekly cron из europatech master `5cafbfdea`. - `scripts/seo-agent/**` — копия CLI (с CRITICAL fixes: ENV-only baseline path + URL validation) - `.seo-agent/{config,state,README}.md` — adami config: `https://adami.kr`, 3 priority_paths, Russian only, single-page SPA scope - `.forgejo/workflows/seo-audit.yml` — weekly cron Mon 03:00 UTC + workflow_dispatch + PR paths-filter - `scripts/seo-agent/__tests__/smoke.test.mjs` — 3 smoke tests (--help, dry-run, URL injection reject) - `.gitignore` — secrets/local-cache/venv exclusions ## Зачем Phase 1B расширение SEO Agent на третий сайт. adami.kr = single-page SPA (vite+react), Russian-only, бизнес-сайт (импорт/экспорт из Кореи). Weekly drift detection. GitNexus context подтвердил: src/App.tsx:1157-1205 — mode-based UI без routes. ## План тестирования ``` node --test scripts/seo-agent/__tests__/smoke.test.mjs # → 3/3 pass node scripts/seo-agent/seo-agent.mjs --site=adami --stage=1 --dry-run # → exit 0 ``` После merge: Forgejo Actions → Run workflow вручную. ## Где могу ошибаться - CLI duplicate во всех 3 repo до Phase 5 shared install - TG channel `adami-seo` не сконфигурирован в tg-bridge - adami-site нет существующего seo-smoke-test.mjs — stage1 wrapper skip-ит smoke step
[CL-SEO-AGENT-ADAMI-P1B] feat(seo): AI SEO Agent CLI + weekly Forgejo cron для adami.kr
All checks were successful
SEO Audit / SEO Audit / adami (pull_request) Successful in 3s
Forgejo Smoke Test / Smoke (pull_request) Successful in 2s
fd0886a73e
## Что сделано

- `scripts/seo-agent/**` — копия CLI из europatech master `5cafbfdea`
  (включает CRITICAL fix: ENV-only baseline path + URL validation).
- `.seo-agent/{config,state,README}.md` — adami config:
  `https://adami.kr`, 3 priority_paths (`/`, `/robots.txt`, `/sitemap.xml`),
  Russian only, single-page SPA scope.
- `.forgejo/workflows/seo-audit.yml` — weekly cron Mon 03:00 UTC +
  workflow_dispatch + PR paths-filter (`src/**`, `public/**`, `index.html`,
  `scripts/seo-agent/**`, `.seo-agent/**`). Secret `GSC_SA_ADAMI`
  опционально.
- `scripts/seo-agent/__tests__/smoke.test.mjs` — 3 smoke-тестов (--help,
  dry-run, URL injection reject). Canonical test suite в europatech repo.
- `.gitignore` — добавлены `.seo-agent/secrets/`, `.seo-agent/local-cache/`,
  `scripts/seo-agent/.venv/`, `scripts/seo-agent/**/*.tmp`.

## Зачем

Phase 1B — расширение SEO Agent на третий сайт после europatech и
arnold-trader. adami.kr — single-page SPA на vite+react, Russian-only,
бизнес-сайт (импорт/экспорт из Кореи). Weekly drift detection поймает
любые regression в robots/sitemap/meta.

GitNexus context на `App` symbol подтвердил: src/App.tsx:1157-1205,
mode-based UI (no routes), вызывает writeLocalStorage + pageTitleForMode.
Priority paths поэтому минимальный — `/` + robots + sitemap.

## План тестирования

```
node --test scripts/seo-agent/__tests__/smoke.test.mjs
# → 3/3 pass

node scripts/seo-agent/seo-agent.mjs --site=adami --stage=1 --dry-run
# → exit 0 run.dry_run
```

После merge:
1. Forgejo Actions → Run workflow "SEO Audit" вручную
2. Понедельник 03:00 UTC — auto scheduled
3. Артефакт в Forgejo Actions UI

## Где могу ошибаться

- CLI пока duplicate во всех трёх repo. Phase 5 (deferred) переключит
  на shared install `/opt/seo-agent` на 178 Forgejo runner.
- `SEO_AGENT_BASELINE_REPORT` env не задан → criticals=0 → health_score=100
  для первого CI run. OK как baseline-init.
- TG channel `adami-seo` не сконфигурирован в `/etc/tg-bridge.env` на 178.
  `SEO_AGENT_DISABLE_TG=1` в workflow по умолчанию пока.
- adami-site не имеет существующего `seo-smoke-test.mjs` — stage1.mjs
  wrapper skip-ит smoke step. Live probes в Phase 1C.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
andrei merged commit 6e67fc2e79 into main 2026-05-25 16:16:47 +00:00
andrei deleted branch feature/claude-cl-seo-agent-adami-p1b 2026-05-25 16:16:47 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
europa-tech-srl/adami-site!5
No description provided.