Skip to content

Add a health-check skill (readiness inspector pattern) to the knowledge plugin #1

Description

@prorochestvo

Context

templates/go/CLAUDE.md documents GET /ping (liveness) and GET /health/check
(readiness — "real per-dependency probes") as required routes, and
knowledge:production-stability names "health checks (liveness vs readiness)" as
doctrine. But no skill delivers the concrete implementation contract, so every new
service re-derives the readiness "inspector" pattern from scratch — exactly the kind of
repeated machinery this kit exists to centralize.

Gap

There is no skill that owns the readiness inspector pattern:

  • per-dependency probes (DB, repositories, caches, queues, external/AI APIs)
  • isolation so one dead dependency never hangs or 500s the whole endpoint
  • response shape (per-component status + overall)
  • status-code rules (200 only when everything is healthy; a hardcoded OK is unacceptable)
  • auth rules for the endpoint
  • cost-bounding of paid / rate-limited probes (cache the result and serve its age between refreshes)
  • the required tests

production-stability is doctrine-level; the engineer and reviewer agents need the
concrete pattern to implement and to grade against.

Proposal

Add knowledge:health-check (cross-stack — the readiness contract is stack-agnostic
even when the wiring is Go or Dart). Keep production-stability as the doctrine and
health-check as the implementation contract, cross-linked. Wire it into the "context
to load first" lists of engineer.md and reviewer.md for network-facing / new-service
work.

Acceptance criteria

  • plugins/knowledge/skills/health-check/SKILL.md exists, description-matched loading.
  • Covers: liveness vs readiness split; isolated per-dependency probes; response
    schema; 200-only-when-healthy; endpoint auth; cost bounds for paid probes (cache + age).
  • Documents the required tests: each dependency down → that component reported
    unhealthy while the endpoint still responds (no hang, no full 500).
  • engineer.md and reviewer.md reference the skill; templates/*/CLAUDE.md point
    to it instead of describing the pattern inline.
  • knowledge plugin.json version bumped.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions