Skip to content

v3.5.1 — P0 conformance + SDK alignment

Choose a tag to compare

@Davincc77 Davincc77 released this 22 May 15:36

v3.5.1 — P0 conformance + SDK alignment

ATLAS-audit P0 alignment across schemas, libs, vectors, docs, and SDKs.

Spec / Schema

  • cipher.name canonical = AES-256-GCM (uppercase). Readers accept legacy aes-256-gcm (lowercase) with a deprecation warning.
  • user_preferences canonical type = string (max 32 KiB UTF-8). Object form retained for pre-v3.4 backward compat.
  • Schema directory disambiguation: SCHEMA_INDEX.md distinguishes the unified vs split v3 schema directories.

SDKs

  • npm @klickd/core3.5.1: cipher legacy compat already in decode; types accept user_preferences: string | object; clean dts build (added argon2-browser ambient declaration).
  • PyPI klickd3.5.1: cipher.name validation added with KLICKD_E_CIPHER code and DeprecationWarning for legacy lowercase; user_preferences: Union[str, dict].

Tests

  • All 52/52 Python vectors + 29/29 JS vectors pass (6 JS skipped: argon2 not installed locally).
  • npm package: 7/7 tests pass. PyPI package: 12/12 tests pass (added user_preferences string|object roundtrip + cipher legacy/unknown coverage).

Note on envelope vs SDK versions

The envelope-format constant (klickd_version field) stays at "3.0" per the format spec — it tracks the on-disk envelope format, not the SDK release version (envelope_version (skill_revision) convention from CHANGELOG).

See CHANGELOG.md for full details.