Skip to content

Kingy / AI Fix Finder

← All fixes

Schema-constrained JSON omits a required action field

For a tested mixed properties/oneOf schema, complete disjoint alternatives restored required action fields without weakening the original application validator.

kingy tested

What happened

Symptom

A completed JSON response contains {"actions":[{"location":"mall"}]} even though each action requires an action field.

Conditions

Qualified October 15, 2026 on llama.cpp 0.6.0 build 11429 (d81235049384534c167caea52b85a694f6103d14), Qwen3-4B Q4_K_M.

macOS 26.3 build 25D125, Apple M4 Pro / Mac16,7, 24 GiB unified memory; CPU-only inference.

Separate-agent rerun from a fresh extraction and fresh server processes on the same physical Mac.

Correction

Use the packaged normalized-schema.json as the decoder schema and keep original-schema.json as the application validator. The rewrite puts common requirements inside each complete disjoint oneOf alternative.

Result

Each executor recorded six baseline failures, six exact corrected successes and two reverted failures across two fixed prompts. The semantic check matched 7,934 cases plus 1,005 separately authored cases.

What did not work

Both the neutral trip prompt and an incomplete-example stress prompt omitted action under the original decoder schema.

A separate three-action control already worked with both schemas; that prompt dependence is retained.

  1. Keep the original Draft 7 schema and validation rules. Do not add action values or narrow the original permission for empty arrays and extra fields.
  2. Inspect SEMANTICS.md and the exact original-schema.json and normalized-schema.json in the package before using this contract-specific rewrite.
  3. Submit the same frozen prompt and settings with normalized-schema.json to the native /completion json_schema route.
  4. Validate the returned JSON against original-schema.json and the exact task answer. For the neutral trip, action must be go_to and location must be mall.
  5. Inspect the retained author and separate-agent runs, generated grammars and semantic checks. This is not a general-purpose schema normalizer.
Sources & limits

Repair 004: full qualification report and limits

Download repair 004 evidence ZIP (321,818 bytes; SHA-256 3f06c7949d2fe45dcccefb55629a9c0e81a1d86a69bdc120c68e8750247f9dfe)

Record checked 2026-10-15.

Same-host separate-agent reproduction, not independent human testing or a second-machine result.

These fixed synthetic tasks and repeated settings do not establish a general reliability rate, other-model behavior or minimum hardware requirements.

Original failures, failed correction proposals, prompts, outputs, settings and checksums remain in the evidence package. Model weights and runtime executables are not included.

Qualification ran October 15, 2026. Publication does not make this a test of later software or model revisions.

This is a contract-specific decoder workaround, not a runtime patch, proof of complete Draft 7 support, or an exact recreation of the historical upstream Windows/Llama3 report.

This still happens?

Send the smallest example that reproduces it. Use a public, non-sensitive example; leave out account details, keys and private files.

Help improve this tool

Did this help you finish?

About AI Fix Finder. Your feedback goes to Kingy’s private review queue.

Your experience with AI Fix Finder
What happened?