Skip to content

v1.0.0 — stable: the tq1 contract is committed

Choose a tag to compare

@copyleftdev copyleftdev released this 01 Jun 21:54
· 8 commits to main since this release
67821d0

anomalyx is 1.0. Contract-first anomaly detection over arbitrary corpora — the executable is the contract, and that contract is now stable.

No code changes from 0.9.0; this commits the wire contract.

Stable as of 1.0

Breaking any of these requires a major bump + a PROTOCOL change — never quiet under 1.x:

  • protocol id anomalyx/tq1; exit codes 0/1/2;
  • the dense finding-row layout [detector, class, handle, confidence, severity, score, reason] + dict string table;
  • handle forms column: / cell: / row: / range: / dist:;
  • required envelope fields and the severity ladder.

What 1.0 includes

  • ~30 input formats across tabular, columnar/data-lake/db, logs & observability, security telemetry, and network — one engine-independent record model.
  • 9 detectors / 7-class taxonomy, all deterministic.
  • FDR control (--fdr), output scoping (--top/--min-severity, honest truncation), column roles (identifier/sequence skipping), unified confidence calibration (comparable severity across detectors), and --set to tune any config field — all fingerprinted into config_version.
  • Determinism: same input + same config_version ⇒ byte-identical output, validated against NIST StRD and at 1,000,000 rows.
  • Gates: property tests + cargo-mutants 0-survivors, a fuzz-style parser-robustness harness, and golden-envelope snapshot tests guarding the contract.

Install: cargo install anomalyx

Full changelog: v0.9.0...v1.0.0