Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Conformance and claim boundary

This page is the repository’s wording guardrail. It exists so the rest of the book can stay readable without accidentally making a bigger promise than the checked-in evidence supports.

What we can say

Safe wording is narrow and evidence-based:

  • machbus contains ISO 11783, J1939, and NMEA 2000 related codecs and stack components;
  • listed flows are fixture-tested, virtual-bus-tested, binding-smoked, or trace-replayed exactly where the docs say they are;
  • local validation is performed with make verify;
  • SocketCAN and vcan tooling exists for operator-run captures.

Phrases that must not appear as public claims

The test suite keeps these phrases out of README/package/public reference text unless they appear here as explicit non-claims:

  • AEF certified
  • ISOBUS certified
  • conformant implementation
  • fully conformant
  • fully compliant
  • production-ready
  • production ready
  • hardware-tested
  • hardware tested
  • interoperability tested
  • PlugFest validated
  • field-proven
  • speaks the same wire as a real

Those phrases are dangerous because each one sounds like external evidence or certification. Local unit tests, virtual-bus tests, vcan smokes, or trace replay do not create that external evidence by themselves.

Evidence classes

Evidence classCurrent statusWhere to look
Local build/test gatePresentMakefile, book/src/reference/validation-history.md
Standards-text reviewPresent for the areas named in the audit pagebook/src/reference/audit/standards-text-audit.md
Public claim boundaryPresentthis page and book/src/conformity/
Protocol fixturesPresent for selected flowstests/protocol_fixtures.rs, tests/fixtures/, book/src/reference/assets/protocol_matrix.csv
AgIsoStack/reference-style bytesPresent for selected rows onlytests/agisostack_compat.rs, tests/fixtures/oracle/agisostack_manifest.txt
C ABI behaviorPresent for exposed facade callssrc/ffi.rs, include/machbus.h, examples/c_abi/
Python behaviorPresent for exposed facade callssrc/python/mod.rs, examples/python_binding/regression.py
SocketCAN/vcan toolingPresentexamples/socketcan_capture.rs, examples/candump_replay.rs
Physical-bus reportsEvidence contract exists; no completed reports/traces yettests/fixtures/hardware/capture_requirements.txt, tests/fixtures/hardware/capture_reports/
AEF-style external validationNot present in this checkoutno report checked in

Current hardware statement

There is a checked-in physical-bus report directory, but it currently contains no completed reports/traces yet. The requirement rows are all missing, which is deliberate. It prevents a future reader from mistaking planned capture work for completed evidence.

A row can move out of missing only when it names a reduced trace with reduced-hardware provenance and a schema-complete capture report.

Explicit non-claims

  • No AEF certification is claimed.
  • No real machine safety claim is made.
  • Nothing in this checkout is currently AEF-tested.
  • No official ISO 11783 text is embedded in this repository.
  • Reviewing behaviour against the standards text is not conformance testing. The standards-text audit checked field orders, ranges, timings and reserved-bit rules against licensed copies of the documents; that says nothing about how a given tractor behaves and moves no row in this table. “Checked against the text” is safe wording; “conformant” remains on the forbidden list above.
  • No PGN value in this crate is evidenced by the standards. ISO 11783-1 §7, ISO 11783-7 §4.2 and ISO 11783-11 §4.1 each place the assignments in the electronic database at isobus.net instead. Citations beside PGN constants name the clause defining the message, not one stating its number.
  • No broad external peer compatibility statement is made beyond the exact local fixtures, virtual-bus tests, checked-in traces, and reports named in the docs.
  • No binary compatibility is promised for Rust internals; the documented Rust API and generated C/Python facades are the intended public surfaces.