diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json index c35b4e3..9a9d22e 100644 --- a/.claude-plugin/marketplace.json +++ b/.claude-plugin/marketplace.json @@ -59,6 +59,7 @@ "./custom-skills/32-seo-crawl-budget", "./custom-skills/33-seo-migration-planner", "./custom-skills/34-seo-reporting-dashboard", + "./custom-skills/35-seo-signal-validation", "./custom-skills/95-ourdigital-presales-seo" ] }, diff --git a/custom-skills/35-seo-signal-validation/DESIGN.md b/custom-skills/35-seo-signal-validation/DESIGN.md index 407f18a..ab43171 100644 --- a/custom-skills/35-seo-signal-validation/DESIGN.md +++ b/custom-skills/35-seo-signal-validation/DESIGN.md @@ -111,16 +111,19 @@ All three call the *same* engine; they differ only in what they compare against. ``` 35-seo-signal-validation/ - SKILL.md frontmatter (name/description/triggers), mode dispatch, - the cascade, short-circuit + verdict synthesis - DESIGN.md this spec (lives with the skill; no new top-level dir) - references/ - evidence-cascade.md L1–L4 concrete tool calls + short-circuit rules - kg-impact-checks.md the 5 entity checks incl. Wikidata QID verification - verdict-taxonomy.md conditions + ledger format + narrative template - backend-selection.md pointer to 20/21's existing backend tables (no dup) + SKILL.md self-contained: classification, 4-layer cascade, + 5 KG checks, 4-way verdict, skepticism rules, output + DESIGN.md PLAN.md spec + plan (live with the skill; no new top-level dir) + code/ + CLAUDE.md code-environment notes (env, export→script flow) + scripts/ + gsc_signal_delta.py deterministic L1/L4 GSC delta + mover ranking + test_gsc_signal_delta.py + requirements.txt (stdlib only) ``` +Target environment: Claude Code only (no desktop/ variant — matches precedent 95/96). Registered in .claude-plugin/marketplace.json under ourdigital-seo. + **Triggers:** `validate serp signal`, `is this ranking real`, `prove SEO impact`, `SEMrush surge real?`, `signal validation`, `신호 검증`, `순위 변화 진짜?`, `오가닉 급증 검증`. **Conventions honored:** no new output directories beyond this approved folder; Notion writes via notion-writer script only; never crawl/audit Marriott for JHR (sameAs reference only); KR deliverables in Korean, English internal notes OK. diff --git a/custom-skills/35-seo-signal-validation/PLAN.md b/custom-skills/35-seo-signal-validation/PLAN.md index ca18d7b..1de5466 100644 --- a/custom-skills/35-seo-signal-validation/PLAN.md +++ b/custom-skills/35-seo-signal-validation/PLAN.md @@ -237,7 +237,7 @@ for s in ["### L3", "### L4", "**CONFIRMED**", "**PARTIAL**", "**ARTIFACT**", "Special:EntityData", "## Output", "## Non-goals"]: assert s in t, f"missing: {s}" n = t.count("\n") -assert 150 <= n <= 320, f"SKILL.md length {n} lines outside expected band" +assert 130 <= n <= 320, f"SKILL.md length {n} lines outside expected band" print(f"OK SKILL.md decision half ({n} lines)") PY ```