Skip to content

feat: redesign Decision API - #247

Merged
rlippmann merged 10 commits into
mainfrom
decision_api_redesign
Aug 16, 2026
Merged

feat: redesign Decision API#247
rlippmann merged 10 commits into
mainfrom
decision_api_redesign

Conversation

@rlippmann

@rlippmann rlippmann commented Aug 16, 2026

Copy link
Copy Markdown
Owner

What changed

  • Replace mapping-based Decision results with immutable typed variants.
  • Add machine-readable semantic failure classifications, failed directives, and advisory canonical repairs.
  • Strengthen conformance fixtures and public API contract coverage.
  • Update the REPL JSON contract to version 2 with structured Decision fields.
  • Cover all user-facing REPL paths, including human semantic errors and JSON no-directive results.

Why

  • Let hosts consume semantic outcomes without parsing human-readable messages.
  • Preserve explicit repair submission through the canonical engine boundary.
  • Keep Python and future TypeScript implementations aligned on observable behavior.
  • Ensure the machine-readable CLI exposes the complete Decision contract.

Closes #199

Checklist

  • pre-commit run --all-files
  • pytest
  • REPL contract coverage gate: 100%

@rlippmann
rlippmann marked this pull request as draft August 16, 2026 06:45
@rlippmann
rlippmann marked this pull request as ready for review August 16, 2026 06:51
@rlippmann
rlippmann merged commit 8fb2467 into main Aug 16, 2026
16 checks passed
@rlippmann
rlippmann deleted the decision_api_redesign branch August 16, 2026 06:54
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.

Add structured semantic evaluation feedback

1 participant