Skip to main content
The headline change in the latest release: capabilities, inspect, config infer, explain, --agent, reconcile --auto, and the published reconify.engine.*.v1 schemas. An agent can discover what a build supports, profile a file, propose and validate a config, run a reconciliation, and summarize the result, all through versioned JSON with no human reading a manual in between. See Run it with an agent. The rest of this page is the release history from the engine repository’s CHANGELOG.md, kept in sync by hand.

0.5.0 (2026-08-22)

  • Reconify Engine Agent Protocol v1. Defines the stable discovery, inspection, configuration, execution, diagnosis, and evaluation contract for agents integrating with an installed Reconify Engine.
  • reconify capabilities. Emits reconify.engine.capabilities.v1, so agents and scripts can discover supported commands, formats, matching passes, result modes, schemas, diagnostic codes, and exit codes from the installed binary.
  • Published Engine schemas. reconify schema now exposes versioned contracts for capabilities, reconciliation results, structured diagnostics, file profiles, config proposals, explanations, and evaluation scenarios.
  • Structured diagnostics. --error-format json emits reconify.engine.diagnostic.v1 envelopes on stderr, with stable codes, categories, structured details, and remediation suggestions.
  • Canonical Engine agent skills. @reconifyhq/skills now installs the complete reconify-engine-reconcile, reconify-engine-cli, reconify-engine-config, reconify-engine-debug, reconify-engine-performance, reconify-engine-bootstrap, and reconify-engine-ci workflows, plus deprecated reconify-* compatibility adapters.
  • reconcile --auto. Confidence-gated zero-config reconciliation from exactly two input files, with the inferred YAML and mapping confidence embedded in structured run metadata for reproducibility.
  • reconify explain. Reads a JSON, JSON-stream, or NDJSON reconciliation result and emits deterministic reconify.engine.explanation.v1 findings with bounded top exception events, without re-running reconciliation.
  • reconify config infer. Non-interactively proposes a confidence-gated reconify.yaml from two input files: mappings, alternatives, validation counts, and YAML. --out writes only ready proposals.
  • reconify inspect FILE. Deterministically profiles a CSV, JSON, NDJSON, XLSX, or XLSM file before a reconify.yaml mapping exists: format, per-column type inference, and representative sample values.
  • Global --agent execution profile. Defaults errors to structured JSON and reconciliation output to NDJSON with exceptions_only, while preserving explicit flag overrides and rejecting interactive commands with a structured alternative.
  • --fail-if-exceptions for reconcile. Exits with code 4 after a completed run if any amount_diff, timing_diff, or unmatched event was emitted. Superset of --fail-if-unmatched.
  • Breaking: left_currency / right_currency columns in csv result output. Per-row events now carry the transaction currency; the columns are inserted after left_name / right_name, shifting later columns. Scripts reading the CSV by column position need updating.
  • group_key added as the last column in parse --format csv and parse --format table, matching NDJSON and JSON.
  • config check-source now prints the input file’s available column names to stderr when a required column is missing.

0.4.1 (2026-07-16)

  • Partition-level parallel reconciliation. Partition workers process independent partitions concurrently and publish results through a bounded, disk-backed queue, while preserving deterministic final-writer ordering. New --partition-workers, --partition-queue-capacity, and --partition-max-chunk-mb flags.
  • one_to_many reconciliation pass. Matches one left transaction against N right transactions by summing amounts, with ambiguous-group detection and a group_by field (default reference).
  • many_to_many reconciliation pass. Matches left and right sets with arbitrary cardinality.
  • duplicate_policy config field. Four values: flag (default), keep, merge, latest. Applies to both batch and streaming paths.
  • Bounded-memory partitioned reconciliation backend. Splits large datasets into memory-safe partitions, enabling reconciliation of datasets that exceed available RAM, including across multiple counterpart sources in one pass.
  • Resource-aware index selection. Automatically selects the memory or disk index backend based on available RAM at runtime; Windows resource probing supported.
  • --result-mode (all, exceptions_only, summary_only). Controls which events are written to output.
  • LLM-agent-ready CLI. Added --error-format json, meaningful exit codes (0 success, 1 unmatched, 2 validation failure, 3 fatal error at the time), --fail-if-unmatched, and reconify config schema.
  • Agent skill installer. npx @reconifyhq/skills copies the canonical .agents/skills/ files into any project.

0.3.0 (2026-06-21)

  • Multi-counterpart reconciliation (rights). A pair can reconcile one left source against several ordered counterpart sources, carrying unmatched left rows forward between passes.
  • Per-counterpart output summaries. JSON, JSON-stream, and NDJSON outputs include source-level breakdowns via by_source / source_summary alongside the aggregate summary.
  • Explicit one-to-one reconciliation passes. Pairs can define passes with reference_one_to_one and name_tokens_one_to_one to make the matching pipeline explicit.
  • Fixed: one_to_many is rejected by config validation in this release. It isn’t implemented yet and previously behaved like a silent no-op in batch reconciliation.
  • Known limitation at this release: multi-counterpart CLI runs didn’t yet support --audit, --right-file, or token-mode streaming reconciliation.

0.2.0 (2026-05-17)

  • reconify config init. Interactive wizard that reads source file headers, asks you to map transaction fields, and writes a validated reconify.yaml.
  • Multi-format input parsing. JSON arrays, NDJSON, and Excel workbooks (.xlsx, .xlsm), in addition to CSV. Format auto-detected from the file extension when the parser type is auto or unset.
  • Fixed: trailing content after a JSON array is now rejected with a descriptive parse error instead of being silently ignored.
  • Fixed: CSV output fields are sanitized against spreadsheet formula injection (values starting with =, +, -, @, tab, or carriage return are escaped).

0.1.1 (2026-03-23)

  • Fixed: corrected the Go module path to github.com/reconifyhq/reconify across all import references.

0.1.0 (2026-03-23)

The first release. Core commands (reconcile, parse, config validate, config check-source), the three-tier matching algorithm (reference exact match, name-token similarity, duplicate detection), memory and disk index backends, all five output formats, --audit and --deterministic, and cross-compiled binaries for Linux, macOS (Intel and Apple Silicon), and Windows.

Not implemented yet

  • Standalone reconify validate as its own command. It existed briefly around 0.1.0 and was later folded away; there’s no standalone validate command in the current CLI.
  • Default validation running automatically before reconcile.
  • --skip-validation and --fail-on-warning flags.
  • Planned validation categories: parseable dates and amounts, currency consistency, empty sources, high empty-reference rates, date-range overlap, and row-count disparity.
These move into the CLI and guide pages once they exist in code, not before.