Skip to content

v1.4.0

Choose a tag to compare

@decentcybersecurity decentcybersecurity released this 30 Aug 17:22
· 131 commits to main since this release

A MINOR release: STANAG 4586 telemetry ingest — one new adapter, its codec and its fixture set. No wire contract moved.

Artefacts (workflow build digests — the comparison basis):

  • synapse_cdm-1.4.0-py3-none-any.whl — sha256 006e5f0e8b8557d91c7cf90da1e5a6fd0341d8f398bab6617a1802e4ac1dd9f3
  • synapse_cdm-1.4.0.tar.gz — sha256 3f16e818d92af4a69721c248110eab16e9dbf8f75fd9bf9201981e09f97635e2

14 adapters registered. stanag4586 is the fourteenth shipped and #15 by ordinal — the ordinal table numbers specifications as well as adapters, and #9 (stanag5527) is a row set with no adapter, so a roster of fourteen occupies fifteen ordinals. Ingest-only: legion, pntmap, stanag4586; the other eleven bidirectional. 6 schemas, SCHEMA_VERSION 1.0.0 unmoved — the diff over schemas/ since v1.3.0 is empty. gates/bump_derivation.py classified this bump MINOR over 46 signals: the number was derived from the packaged diff, not chosen.

The adapter is built on STANAG 4586 Edition 3, which is not the current edition — Edition 4 could not be obtained, so the adapter declares the edition it actually read. The document defines 166 field-table messages in 27 functional groups; 48 of them, across 9 groups, are command uplink and out of scope by an enumerated ruling, 4 are decoded field by field, and every other message has its wrapper read and its data octets parked verbatim with its type recorded.

Suite at the tag: 3467 total, CI 3400 passed / 67 skipped. A CI green is not a maintainer's green — the pinned specification PDFs are gitignored, so a clone carries the pin records and not the documents and skips the tests that read them.

Built and gated in run 33307299409, published to PyPI over OIDC with attestations, deployment operator-approved 2026-08-30T17:18:53Z. Served-equals-built verified across six independent readings: the gate's --export-dist, the handover artefact (0d77928a… uploaded and downloaded), a local hash of that artefact, the publish job's pre-upload hashes, the in-toto DSSE subject digests, and the bytes PyPI now serves.