Skip to content

Get started with AetherContracts

Authoritative source: AetherContracts. This page is mirrored into the unified AetherIoT documentation.

AetherContracts is the public interoperability authority shared by AetherEdge, AetherCloud, and independent implementations. Start from an exact release and keep its specification, Schemas, fixtures, TCK, and manifest together. A single copied Schema or generated type is not a complete contract adoption.

The current release is v0.1.0-alpha.3. It is experimental, keeps legacy transport as the default, and is not a production CloudLink cutover release.

Need Read or run first
Common JSON, integer, canonicalization, and failure rules Foundation
Thing Model structure and P/M/A migration Thing Model v1 alpha
CloudLink messages and lifecycle CloudLink v1 alpha
Release distribution and consumer locks Distribution v1 alpha
Executable conformance behavior TCK v1 alpha
Current gates and product compatibility Compatibility
Binding and consumer evidence Conformance

Normative specifications define semantics. JSON Schemas define structural acceptance. Fixtures pin examples and stable failure outcomes. The TCK proves observable behavior. Language bindings implement that contract but never become a second authority.

Use Node.js 24 and the repository-declared pnpm version:

Terminal window
git clone https://github.com/EvanL1/AetherContracts.git
cd AetherContracts
git checkout v0.1.0-alpha.3
corepack enable
pnpm install --frozen-lockfile
pnpm test:tck

pnpm test:tck is self-contained. It does not require a Broker, database, cloud account, or edge device. Run pnpm check when changing the repository or validating all TypeScript, Rust, C, and C++ binding foundations.

Production-oriented consumers should not follow a floating branch or copy an unverified subset. Commit a closed aether-contracts.lock.json, import the exact required artifact closure, and run the release’s composite verification Action. The verifier checks the peeled release commit, manifest digest, artifact hashes, adoption closure, and optional online release identity.

The checked-in consumer copies in AetherEdge and AetherCloud demonstrate this distribution model. Their alpha.3 evidence does not upgrade authentication, durable acknowledgement, or legacy cutover to production status.

All four bindings execute the public fixture manifest. They are intentionally narrow foundations rather than complete production transport codecs. Go, Java, and Python bindings remain planned.

If an existing consumer still refers to the former edge repository name, read the AetherEdge naming migration. Package and protocol identifiers remain stable.