Skip to content

Rename the skill to doc-maintenance and set the version to 0.5.0 - #11

Merged
MirzaMerdovic merged 1 commit into
mainfrom
doc-maintenance
Oct 10, 2026
Merged

MirzaMerdovic merged 1 commit into
mainfrom
doc-maintenance

Conversation

@MirzaMerdovic

Copy link
Copy Markdown
Contributor

Summary

The skill is now named doc-maintenance, and the plugin version is 0.5.0. The plugin name
stays haddock. The change also restates the docstring rule, directs Claude to read
documents that a name search does not find, and extends two eval cases.

Changes

  • skills/doc-style/ is now skills/doc-maintenance/, and the frontmatter sets
    name: doc-maintenance. The README, CLAUDE.md, the primer, the plugin and marketplace
    descriptions, and the skill-loaded graders use the new name.
  • .claude-plugin/plugin.json sets version 0.5.0. marketplace.json has no version
    field, so the manifest is the only source of the version.
  • The docstring rule: a docstring documents the non-obvious caller-visible contract,
    including constraints, errors, and side effects. It does not repeat what the signature,
    the types, or the surrounding code show.
  • Workflow step 2: a search for the changed names does not find a document that describes
    the behavior without naming an identifier. Claude reads the README section and the
    documentation page of the changed component even when the search finds no match.
  • evals/historical-adr checks that Claude creates docs/adr/0005-*.md and that its
    Decision section names Redis.
  • evals/restating-comment checks the retry behavior with an LLM grader that judges the
    behavior, not the code structure.
  • The eval command in the README and CLAUDE.md adds --judge-model sonnet. The default
    judge, Haiku, answers without extended thinking. It failed correct retry code in every
    run.

Compatibility

  • /haddock:doc-style and skills/doc-style/ no longer exist. A link to
    skills/doc-style from an install by hand breaks.
  • An installed plugin gets 0.5.0 after claude plugin marketplace update throw-if-null
    and claude plugin update haddock@throw-if-null.

Validation

  • claude plugin validate . passes with Claude Code 2.1.287 and 2.1.292, the version
    that CI pins. 2.1.292 gives one warning: CLAUDE.md at the plugin root is not loaded as
    project context. That file holds the repository instructions.

  • In an isolated configuration directory, an install from the marketplace gives 0.5.0
    with skills/doc-maintenance/SKILL.md. The two update commands above change an
    installed 0.4.0 to 0.5.0.

  • No reference to doc-style or 0.4.0 remains.

  • Eval results:

    Model Judge Runs per case Result
    Sonnet Sonnet 1 Every grader passed except readme-consolidated. The skill loaded in 9 of 9 cases.
    Opus Haiku 1 Every grader passed except retry-implemented (the Haiku judge defect) and comment-judgment in obsolete-comment.
  • With the Sonnet judge, retry-implemented passed two correct implementations and
    failed two incorrect implementations, 3 of 3 votes each.

  • The new ADR graders passed in 4 of 4 runs.

  • After the step 2 change, Sonnet updated the README table in unrelated-cleanup in 5 of
    7 runs. Before the change, it did so in 3 of 9 runs.

  • No shell script changed.

Known limitations

  • Sonnet does not consolidate duplicated documents. It failed readme-consolidated in
    every run. Opus passed it in 7 of 7 runs. The grader stays strict, because two copies of
    a fact can diverge.
  • With the Haiku judge, comment-judgment in obsolete-comment failed some Opus outputs
    that keep a valid constraint. Opus with the Sonnet judge is not tested.
  • The duplicate-docs workspace is close to example 3 in examples/maintenance.md. The
    case does not show whether Claude follows the rule or copies the example.
  • Each case ran 1 to 5 times per model.
  • The evals ran from a copy of the working tree, not from the checkout.

The skill directory, the skill name, and every reference to them use
doc-maintenance. The plugin name stays haddock.
/haddock:doc-maintenance loads the skill on demand.

- Restate the docstring rule: a docstring documents the non-obvious
  caller-visible contract. It does not repeat what the signature, the
  types, or the surrounding code show.
- Direct Claude to read the README section and the documentation page
  of the changed component, even when a search for the changed names
  finds no match.
- Add eval graders that check the new ADR in historical-adr and the
  retry behavior in restating-comment.
- Run the LLM graders on Sonnet. The default Haiku judge answers
  without extended thinking and fails correct retry code.
@MirzaMerdovic
MirzaMerdovic merged commit 033b738 into main Oct 10, 2026
1 check passed
@MirzaMerdovic
MirzaMerdovic deleted the doc-maintenance branch October 10, 2026 10:59
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.

1 participant