Skip to the content.

ADR-0007 — Portability is verified in CI-able containers, not asserted

Context

The SDK is developed on macOS and deployed mostly on Linux. Both suites were green on the development machine while the code contained two Linux-only defects, one of which broke any tool returning more than 128 KB:

Neither is discoverable by reading documentation or by careful review. Both are trivially discoverable by running the tests on the target platform.

The mirror-image trap already exists in the other direction: /bin/bash on macOS is 3.2, where read -N, declare -A and ;& case fallthrough do not exist. The portability harness written for this ADR tripped over ;& on its very first run.

Decision

Ship scripts/test-linux.sh and treat a green run on Linux as part of “done.”

Consequences

Good

Bad / accepted

Alternatives considered