# Maintenance roadmap

EvoWitness is intentionally narrow in version `0.1.x`: it generates minimal replayable counterexamples for compatibility changes between two Evo Contract snippets. The roadmap keeps that boundary visible so the project remains maintainable.

## 0.1.x stabilization

- Keep `parse_contract`, `analyze_text`, witness verification and report exporters stable.
- Add regression tests whenever a new change code is introduced.
- Keep CLI examples deterministic and small enough for CI.
- Preserve witness IDs and JSONL output shape unless a version bump documents the change.

## Candidate 0.2.x improvements

- File-based CLI input for old/new contract documents.
- Optional adapters that translate external schema formats into Evo Contract, published as separate packages when appropriate.
- Stronger witness minimization for nested object/list paths.
- Coverage reporting for which change families have replay cases.
- Documentation examples for browser/Wasm embedding.

## Explicit non-goals

EvoWitness will not become a schema registry, data-contract governance portal, release approval system, migration executor, external ticket bot, JUnit/HTML governance reporter, OpenAPI generator or general JSON Schema validator. Those are separate project categories and overlap with existing MoonBit ecosystem work.

## Maintenance policy

- Keep CI green before publishing.
- Publish immutable Mooncakes versions with SemVer.
- Record visible changes in `CHANGELOG.md`.
- Prefer small feature commits with tests over large mixed changes.
- Treat compatibility of exported evidence formats as part of the public API.
