Releases: gitRasheed/metis-skill
Release list
Metis v1.3.0
Six evidence-backed edits to the skill, nothing removed:
- Principle 6 rewritten around parse, don't validate (Alexis King): convert untrusted data once at the trust boundary into a typed shape that cannot represent the invalid states; past the boundary, assert internal invariants.
- Trace-invariants rule tightened: a check that duplicates what an earlier boundary guarantees is a bug of its own.
- Typed domain records (Wlaschin): core domain state gets a named, typed shape; raw dicts and strings stay at the boundary.
- Define errors out of existence (Ousterhout): prefer contracts that make the failure case impossible over raising and forcing every caller to handle it.
- Effects need identity: a side effect that crosses a boundary needs a stable identity so retries and replays are safe.
- Deep modules working rule (Ousterhout): a simple interface over substantial functionality.
Validated in evals/cases-v6 (two preregistered waves, six texts, ~195 runs): review parity with v1.2.0 on the frozen key, 19/19 hidden verifier gates in every run, next-feature extension cost 257 vs 300 changed lines, blinded taste majority 8-5-1. External leg on the Aider polyglot benchmark: all arms pass all tests; a blinded judge preferred Metis-guided code 3:1 over baseline. Full record: evals/cases-v6/REPORT.md.
PORTABLE_PROMPT.md carries the same additions for tools without skill support.
Metis 1.2.0
P15: the phase-scoped skill text
Winner of a 16-permutation eval campaign (~90 hand-scored runs, five cases, preregistered ship rules). The skill diff is +15/−5 lines on the previous text:
- New implementation-rules section: behavior-test-first with an anti-assert-spam clause, fix-causes-not-sites, optimize-for-the-next-change, no quality decay on long task lists, campsite rule.
- Review lens 3 now prescribes structural remedies (config object / responsibility split / seam), not cosmetic fixes.
- Review lens 1 distinguishes untrusted-data validation from internal-invariant assertions: invariant gaps are substance, duplicate validation is noise.
- Small diffs get one combined review pass; a lens may legitimately produce no findings.
- Agent-process rule: search the codebase for an existing helper, type, or constant before writing a new one (owner addition after the campaign gates; A/B queued for next round).
Measured (vs v1.1.0 text, gpt-5.6-sol): 7/10 blinded pairwise code-quality wins (mean rating 8.1 vs 7.8), review parity at n=5/n=3, perfect hidden-gate record, favorable direction on an untuned holdout case. Core finding of the campaign: skill text taxes whichever phase holds it — guidance scoped into the phase that needs it keeps the benefit and drops the tax.
Full report, per-finding score derivations, and the permutation texts: evals/cases-v5/.
Metis 1.1.0
Metis 1.1.0
A minor release, but the largest since 1.0: the skill was restructured, extended with a code review mode, and — for the first time — every change was validated against measured evals.
New
- Code review mode: four sequential lens passes (correctness/contracts, data/state, control flow/API shape, tests/slop), verify-before-reporting, a fixed
file:line+ severity + one-sentence finding format, lens attribution tags, and sub-agent fan-out gated to large diffs (>~400 lines / 8 files, max 4 agents clustered by lens). references/review-examples.md: compact review-time contrasts (replay safety, comment discipline, cleanup), loaded by default in review mode — chosen over the full examples file by A/B measurement.- New design principles (eval- and source-backed): design for the hardest real requirement first; classify a whole batch before applying any element; pair assertions where data enters and leaves.
- New agent-process rules: distinguish essential from accidental complexity (don't replicate tech debt); detect thrash and re-derive from the spec after repeated failed fixes.
- Ground-truth eval suite (
evals/cases-v4/): two PR-review cases with seeded defects and objective recall/precision scoring, including a cross-domain holdout.
Changed
- SKILL.md cut from 294 to 175 lines (~40% less always-loaded context) via phase gating and moving inline example code to cue lists pointing at
references/examples.md— all content preserved in references. - Sharper phrasing restored from source material: wishful-thinking call-site design, boundaries around what systems do rather than what entities are, plain flat records for the simple case, "tests are code: minimize test logic".
- README now publishes measured results.
Measured (Codex gpt-5.5 xhigh, 60+ isolated runs)
- +53–60% defect value vs baseline on seeded-ground-truth review cases, winning or tying every rep — including a held-out case in an unseen domain.
- Zero false positives in 39 consecutive review runs.
- Five real, unplanted bugs found by Metis conditions across the review cases; baseline found one.
- Changes that failed their A/B (a mandatory per-lens ledger) were rejected rather than shipped.
Full methodology and per-run scoring: evals/.
Metis 1.0.1
Changes:
- Separates macro programming philosophy from LLM-specific agent process.
- Adds invariant tracing before defensive null/None checks so agents avoid duplicate safety guards when upstream validation or type guarantees already establish the contract.
- Updates cleanup and eval guidance to catch duplicated defensive checks.
Metis 1.0
First stable release of Metis, a coding skill for LLM agents.
Metis guides agents toward:
- call-site-first API design
- plain data plus focused systems
- simple control flow
- boundary validation and idempotency
- behavior-first testing
- SOLID without ceremony
- final verification and anti-slop cleanup
This release includes:
- Codex-compatible skill files
- Claude Code skill support
- a portable prompt for tools without skill support
- optional concrete examples
- isolated eval cases and a local eval runner