Skip to content

OMP Plan Kit v1.4.0

Choose a tag to compare

@github-actions github-actions released this 05 Sep 18:57
· 14 commits to main since this release

OMP Plan Kit v1.4.0

OMP Plan Kit v1.4.0 makes plan verification language-neutral. The expected-result check after a fenced command block no longer depends on a marker word in any specific language — it is positional: the line immediately following the block (blank lines skipped) states the observable result, in whatever language the author writes.

Why

The previous design required a marker token after every fenced command block: Expected: (v1.2.0), then Ожидаемо: (v1.3.0, the wrong Russian form), then Ожидается: (v1.3.1). Each release extended a whitelist one word at a time, and every world language not on the list reproduced the same production failure seen on 2026-09-05: a correct plan rejected three times until the repair budget ran out. A whitelist cannot close this bug class — this release removes the mechanism.

Key Changes

1. Positional verification proof (VERIFICATION_NOT_ACTIONABLE form 2)

  • A non-empty fenced command block must be followed (blank lines skipped) by a non-empty result line in ANY language: Erwartet: alle Tests grün, 预期:全部通过, всё зелёное — all pass without any marker.
  • Legacy markers Expected: / Ожидается: / Ожидаемо: still work — they are ordinary result lines now, not required keywords.
  • A Markdown heading right after the block is structure, not a result, and does not qualify. A fenced block with nothing after it still fails. An empty fenced block (no command) still fails.

2. Repair hint states the real contract

  • The VERIFICATION_NOT_ACTIONABLE hint now says: a fenced command block followed immediately by a line stating the observable result (any language; markers accepted but not required).

3. Plan-format language contract, written down

  • Section headings (## Context, ## Approach, ## Verification) are format keys, like YAML keys: they stay exact English literals and are not translated. Plan body text is free language. The validator never judges body prose language.

4. Proof: scenario × mutation coverage

  • The BDD mutation suite now kills three new defect classes: restoring the marker-token requirement, accepting a heading as a result, and dropping the non-empty-block guard. Scenarios cover German and Chinese result lines, blank-line tolerance, missing result lines, and headings after blocks.

Compatibility

  • Strictly widening: every plan accepted by v1.3.1 remains accepted. Plans whose result lines were previously rejected for language reasons now pass. No breaking changes; works with OMP >= 17.3.7.

Verification

  • Full battery green: npm run check, validator e2e, convergence controller, programmer mutations, advisor contract, real in-process handoff, and the BDD mutation suite (9/9 mutants killed, clean-environment run).
  • Build is deterministic: committed dist/extension.js equals a fresh bun run build.

Install

omp plugin install github:stgmt/omp-plan-kit#v1.4.0