Repository navigation
Summary
basis-adapters v0.2.0 is an additive public API and packaging release.
The existing nine-adapter normalization surface remains unchanged. This release adds the basis-adapters-owned portion of the evidence architecture formally adopted by basis-architecture ADR-0007.
Highlights
- Add governed
basis-adapter-evidence-v1material construction. - Add RFC 8785 canonicalization.
- Add deterministic SHA-256 evidence digest generation.
- Add deeply immutable retained evidence material and defensive serialization.
- Add governed evidence projections across REST, BACnet, Modbus, OPC UA, MQTT, DNP3, IEC 61850, KNX, and Niagara.
- Add evidence-construction models and exceptions.
- Add
rfc8785==0.1.4as the first runtime dependency.
Public API
The release adds:
EVIDENCE_PROFILECANONICALIZATION_PROFILEDIGEST_ALGORITHM_SHA256AdapterEvidenceMaterialEvidenceDigestConstructedAdapterEvidenceconstruct_adapter_evidence()- evidence-construction exceptions derived from
AdapterError
Compatibility
No existing normalization model, serialized normalized-request field, action or resource semantic, mapping schema, supported protocol, or existing normalization behavior changed.
Installing v0.2.0 now includes the runtime dependency rfc8785==0.1.4.
Important Boundaries
This release does not provide:
- an operation-producer runtime;
- producer authentication;
reference_idminting;adapter_sourceselection;redaction_classificationassignment;- final
AdapterEvidenceReferenceassembly; - gateway submission;
- evidence persistence or retrieval;
- protocol network communication;
- device execution;
- execution-result evidence.
A digest proves correspondence with canonical bytes only. It does not prove truthfulness, producer authenticity, authorization, or execution.
Validation
- 1530 tests passed.
- Ruff lint and formatting checks passed.
- Strict mypy validation passed.
- Wheel and source-distribution builds passed.
- Clean-install smoke testing passed.
- Package-content and dependency inspection passed.
- Final release assets were built from the exact
v0.2.0tagged commit.