Skip to content

Evaluate the skills as functions: remaining work #72

Open

Description

@glennfaison

Category: feature
Area: Evaluation
Impact: Tracks the remaining work to evaluate every skill as a function: a name, parameters, a contract, declared effects, and an outcome that can be checked.
Confidence: traced

Problem (the use case)

A maintainer changing a skill wants to know whether it still does what it promises. #50 gave the pipeline skills contracts, #51 fixed the ten gaps that exposed, and #52 added scenarios that check an outcome against a contract. That checks that the contract, the expected outcomes and the invariants agree. It does not yet check the utility skills, derive effects from a real run, or run a model at all.

Proposed solution

Work through the tickets below. Each is written to stand alone, names its blockers, and says what done means.

1. Checker depth (no model needed, independent of each other)

2. Utility and meta skills (start with the first)

3. Judging a real run (this needs a model, and the order matters)

4. Design

5. Housekeeping (small, no blockers)

Suggested order

  1. Housekeeping, in parallel with anything.
  2. The utility-skill ticket and oracles, then their dependants. These need no model and show whether the contract format generalises.
  3. diff, then sim, then runner. Only the runner makes the evaluation real, and verify and consist depend on it.
  4. structured when the checker's scope-only limit starts to cost something. recurse is independent and needs an ADR before any code.

Acceptance criteria

  • Every ticket above is closed or explicitly dropped with a reason.
  • npm run eval judges a real run of each of the five item skills.
  • Every skill in skills/ has a contract, or is explicitly a reference skill.

Non-goals

Changing what any skill does, except where a ticket above says so.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions