{
  "skill_name": "geo-content-brief-skill",
  "description": "将 GEO 内容访谈、关键词笔记和渠道约束整理成可执行的中文内容简报 Skill，适用于团队复用、触发边界审查和后续质量评估。",
  "systems_doctrine": "Structure drives behavior: improve the boundary, feedback loops, drift watch, and leverage points before adding weight.",
  "stability": {
    "score": 77,
    "band": "stable-first-pass"
  },
  "boundary_map": {
    "owned_job": "将 GEO 内容访谈、关键词笔记和渠道约束整理成可执行的中文内容简报 Skill，适用于团队复用、触发边界审查和后续质量评估。",
    "input_boundary": [
      "user-provided workflow notes, prompts, docs, or examples"
    ],
    "output_boundary": "a reusable skill output",
    "non_goals": [
      "one-off adjacent requests that do not match the recurring job",
      "private local material that was not intentionally included"
    ],
    "constraints": [],
    "standards": [],
    "human_judgment_boundary": [
      "Ask one focused clarification when the real job, output, or exclusion boundary is unclear.",
      "Escalate visible tradeoffs when benchmark patterns conflict with local privacy, naming, or governance constraints.",
      "Do not silently broaden the skill into adjacent jobs just because the examples are nearby."
    ],
    "maturity_assumption": "scaffold"
  },
  "feedback_loops": [
    {
      "name": "Intent boundary loop",
      "signal": "Intent confidence score is 10/100.",
      "response": "Ask only the highest-leverage clarification before adding package weight.",
      "evidence": "reports/intent-confidence.md and reports/intent-dialogue.md"
    },
    {
      "name": "Reference synthesis loop",
      "signal": "Benchmark patterns are useful only after they are abstracted into borrow and avoid guidance.",
      "response": "Borrow one pattern at a time and keep the rest as reviewer-visible evidence.",
      "evidence": "reports/reference-synthesis.md",
      "current_patterns": [
        "Borrow progressive disclosure: keep the entrypoint lean and move depth into references or scripts.",
        "Borrow a small hypothesis-test-learn loop so the first revision is evidence-backed.",
        "Borrow the discipline of defining what the skill should not own before growing the package.",
        "Do not let packaging or platform concerns swallow the core job boundary.",
        "Do not create experimental overhead that exceeds the skill's real risk tier."
      ]
    },
    {
      "name": "Output quality loop",
      "signal": "Generated output may fail in recurring domain-specific ways.",
      "response": "Apply predicted output-risk families as self-repair checks before final output.",
      "evidence": "reports/output-risk-profile.md",
      "current_risk_families": [
        "Markdown readability",
        "Screenshot and visual capture",
        "Citation and footnote clutter",
        "Tone and specificity",
        "Tutorial quality"
      ]
    },
    {
      "name": "Reviewer feedback loop",
      "signal": "Human review catches drift that static checks miss.",
      "response": "Capture lightweight feedback and turn repeated findings into gates or references.",
      "evidence": "reports/review-viewer.html and feedback records"
    },
    {
      "name": "Lifecycle loop",
      "signal": "As reuse grows, the skill needs stronger gates, ownership, and regression evidence.",
      "response": "Promote only when the next gate improves reliability more than context cost.",
      "evidence": "manifest.json, reports/iteration-directions.md, and governance checks"
    }
  ],
  "drift_watch": [
    {
      "name": "Trigger drift",
      "watch_signal": "Users start invoking the skill for adjacent one-off or explanation-only requests.",
      "countermeasure": "Add near-neighbor exclusions and route evals before expanding workflow steps.",
      "cadence": "per trigger or description change"
    },
    {
      "name": "Output drift",
      "watch_signal": "Outputs remain valid but become generic, cluttered, or weakly aligned with the user's domain.",
      "countermeasure": "Refresh output-risk and artifact-design profiles, then add one self-repair check.",
      "cadence": "after the first 3-5 real uses",
      "risk_families": [
        "Markdown readability",
        "Screenshot and visual capture",
        "Citation and footnote clutter",
        "Tone and specificity",
        "Tutorial quality"
      ]
    },
    {
      "name": "Reference drift",
      "watch_signal": "Borrowed benchmark patterns no longer fit the local job or add ceremony without payoff.",
      "countermeasure": "Re-run reference synthesis and keep only patterns that improve the current boundary.",
      "cadence": "per material benchmark or product assumption change"
    },
    {
      "name": "Governance drift",
      "watch_signal": "Skill usage becomes team-critical while ownership, review cadence, or rollback evidence stays informal.",
      "countermeasure": "Promote maturity tier and add reviewer-visible lifecycle evidence.",
      "cadence": "when reuse becomes real"
    }
  ],
  "failure_pattern_map": [
    {
      "family": "Boundary failure",
      "symptom": "The skill handles nearby requests that were never part of the recurring job.",
      "repair": "Narrow the description and add explicit non-goals before adding more execution steps."
    },
    {
      "family": "Feedback gap",
      "symptom": "The skill has rules but no signal telling authors which rule should change after use.",
      "repair": "Turn repeated reviewer feedback into one eval, one reference note, or one self-repair check."
    },
    {
      "family": "Output degradation",
      "symptom": "The result is structurally correct but generic, cluttered, or weakly matched to the user's domain.",
      "repair": "Use output-risk families as pre-final checks.",
      "current_risk_families": [
        "Markdown readability",
        "Screenshot and visual capture",
        "Citation and footnote clutter",
        "Tone and specificity",
        "Tutorial quality"
      ]
    },
    {
      "family": "Prompt-behavior mismatch",
      "symptom": "The role, task, and format are copied from a prompt instead of becoming stable skill behavior.",
      "repair": "Convert reusable role/task/format assumptions into workflow, reports, or references.",
      "watch_axes": [
        "Specificity"
      ]
    }
  ],
  "leverage_points": [
    {
      "rank": 1,
      "point": "Clarify the real job boundary",
      "why": "Intent uncertainty creates downstream trigger, output, and governance errors.",
      "move": "Ask one focused question and update intent context before adding assets."
    },
    {
      "rank": 2,
      "point": "Tune the frontmatter description",
      "why": "The description is the highest-leverage routing surface.",
      "move": "Name the recurring job, expected input, output, and strongest non-goal in compact language."
    },
    {
      "rank": 3,
      "point": "Install output self-repair checks",
      "why": "The likely failure families are: Markdown readability, Screenshot and visual capture, Citation and footnote clutter.",
      "move": "Add only the checks that prevent recurring output mistakes."
    },
    {
      "rank": 4,
      "point": "Borrow one pattern, not a whole product",
      "why": "External references improve quality when reduced to structure, not copied as surface style.",
      "move": "Start from: Borrow progressive disclosure: keep the entrypoint lean and move depth into references or scripts."
    }
  ],
  "reviewer_rule": "Reviewer should ask whether the skill's structure will keep producing the desired behavior after repeated real use."
}