Skip to content

rvoip 0.3.3

Choose a tag to compare

@eisenzopf eisenzopf released this 29 Jul 19:19
· 610 commits to main since this release

rvoip 0.3.3

This unified patch release fixes vCon conformance issues reported in
#31,
#32,
#33, and
#34, against
draft-ietf-vcon-vcon-core commit
2342aba64bdb71d9e80ab6e274a3921e2b1c769e.

Highlights

  • Session finalization now converts through the canonical rvoip-vcon model,
    validates before storage, emits valid escaped JSON, preserves complete
    Base64Url-encoded bodies, and records durations in seconds.
  • The vCon model now covers the current core schema, semantic reference rules,
    lineage, recording sets, all dialog types, analyses, attachments, and
    declared extensions while preserving unknown extension properties.
  • Signed vCons now use JWS General JSON Serialization with appendable
    signatures and trusted-key resolution. Signing remains explicit; core
    emission is unsigned.
  • New store handles consistently use
    sha512-<base64url-no-padding> in memory and PostgreSQL. Existing legacy
    hashes remain readable and are not rewritten.
  • The reserved group parameter is no longer emitted. Conversation-to-vCon
    relationships are represented in store/index metadata.
  • Dedicated offline schema fixtures, semantic/JWS/hash regressions, core
    end-session coverage, and live ephemeral-PostgreSQL qualification were
    added.

Breaking pre-1.0 vCon API changes

  • Dialog duration is now represented in seconds.
  • Several model fields were corrected or expanded, including party DID/STIR,
    required analysis vendor metadata, attachment placement/purpose, and
    redacted/amended lineage.
  • sign_jws returns SignedVcon in General JSON form and requires
    certificate metadata; HMAC signing is rejected for signed vCons.
  • New content handles use conformant SHA-512 hashes.
  • The core byte-store put contract now carries ConversationId and exposes
    conversation-index lookup.

Qualification

The affected vCon libraries, core finalization boundary, PostgreSQL store,
QUIC full-stack vCon path, facade feature, and AI harness example were
qualified on release commit
b8f2b78a321cce89a855819d0319b309c669ea88. The full workspace library,
documentation, and non-performance integration suites also passed during
release review.

No performance, soak, or full beta gate was rerun for 0.3.3. The immutable
0.3.2 beta/performance evidence remains unchanged-subsystem background and is
not relabeled as a 0.3.3 beta run.

Recording-to-transcript automation is not part of 0.3.3; callers must still
provide transcript analyses explicitly.