Goal
Move the remaining strict-mode conformance work into the 0.7 track.
Scope
- Add normative strict-mode fixtures to ktav-lang/spec.
- Define the shared expected outcomes for lossy and canonical scalar forms.
- Decide and document a structured strict-error contract, including the offending body and canonical form where applicable.
- Extend the C ABI and every binding conformance runner to consume the shared fixtures.
- Run the fixtures in CI for Rust, Python, JavaScript, Go, Java, PHP, and C#.
Context
Release 0.6.4 added parse_strict in Rust and idiomatic strict entry points in all six bindings, with binding-local regression tests. The shared fixtures were intentionally deferred because the current C ABI exposes errors as flat strings and does not yet provide a stable structured-error contract.
Definition of done
- Spec fixtures and their error expectations are normative and reviewed.
- The structured error wire/API contract is documented.
- All seven implementations pass the same strict fixture set in CI.
- README and CHANGELOG updates are synchronized in EN/RU/ZH.
Goal
Move the remaining strict-mode conformance work into the 0.7 track.
Scope
Context
Release 0.6.4 added parse_strict in Rust and idiomatic strict entry points in all six bindings, with binding-local regression tests. The shared fixtures were intentionally deferred because the current C ABI exposes errors as flat strings and does not yet provide a stable structured-error contract.
Definition of done