The ladder

/v1/compress exposes one dial, squeeze_mode, with three shipped values. The rungs are cumulative: each mode runs everything below it.

The three rungs

  • deterministic - structural squeeze only: comment stripping, AST pruning of fenced code, and a fact-preserving JSON reform. Deletion-only: code bodies are never removed. Fastest and cheapest.
  • extractive - adds a token-level pruner (an LLMLingua-2-class classifier) that drops tokens below a calibrated threshold. The output is still a subset of the input: every output word is an in-order substring of an input word. Exception: when the tabular-JSON reform fires, token deletion is skipped entirely (deleting cells would remove facts) and the receipt discloses it.
  • verified - adds an NLI receipt on top of extractive: a small entailment model checks the output against the input, window by window, and the receipt discloses the measured evidence-retention posterior.

All three rungs are subsets: the output is obtained from the input by deletion. fidelity_score is contractual on every rung where the NLI stage ran. The receipt never falls back to a lower rung silently.

The output is a skeleton, not prose

Extractive output is a token skeleton. Articles, auxiliaries, and connectives are dropped; the reader - human or model - reconstructs them from priors. That reconstruction burden is a property of the product, not a defect. No receipt field certifies readability.

Ratio guidance, as measured

target_ratio is a hint, not a guarantee. The realized ratio is whatever the quality gate allows, the floor is advisory rather than enforced (on large inputs it can land slightly below the target), and the receipt discloses it. Calibration over real text (a judged review ladder):

  • 0.7 - low-risk default for fact-dense text.
  • 0.6 - acceptable for redundant prose.
  • 0.5 - only for genuinely redundant content. Measured on web/news/wiki text, going from 0.6 to 0.5 bought a few points of realized ratio while multiplying the judge-flagged failure rate about fourfold.
  • Legal and contract text: measured fact-hostile at every safe target on our calibration corpus - the same guidance bucket as code. Poor use case; do not advertise. See what not to compress.

Per call, the receipt discloses the realized ratio (headline.ratio) and the measured fidelity (quality.fidelity_score) - your acceptance test is the receipt, not the hint you sent.