Skip to content

vcon 0.9.2: emit vcon syntax param, drop empty defaults, add WTF analysis helper#64

Merged
howethomas merged 1 commit into
mainfrom
release/0.9.2
May 10, 2026
Merged

vcon 0.9.2: emit vcon syntax param, drop empty defaults, add WTF analysis helper#64
howethomas merged 1 commit into
mainfrom
release/0.9.2

Conversation

@howethomas
Copy link
Copy Markdown
Contributor

Summary

  • build_new() now sets "vcon": "0.4.0" per draft-ietf-vcon-vcon-core-02 §4.1.1. The field is deprecated in the draft ("The extension mechanism replaces the need for schema versioning") but retained for parser compatibility — emitting it by default avoids surprises with strict consumers.
  • build_new() no longer initializes empty "group": [] and "redacted": {}. The speckit reserves group; downstream consumers no longer need to strip these defaults before serializing. Both fields are still populated lazily by their setters.
  • New helper add_wtf_transcription_analysis() — sibling of add_wtf_transcription_attachment that places a WTF transcription into analysis[] (type: "transcription", vendor, product, schema, encoding: "json", JSON-stringified body). Use the new helper when transcripts are derived analysis output; use the existing _attachment helper for the canonical attachments[] placement shown in the speckit example.

Compatibility note

Removing the empty group/redacted defaults is a shape change. Any consumer that does vcon_dict["group"] (subscript) on a fresh build_new() output will now KeyError. Library internals already use .get(). Audit downstream code that reads these fields directly.

Test plan

  • Full test suite: 253 passed, 7 pre-existing skips (FFmpeg/video gates).
  • Built vcon-0.9.2-py3-none-any.whl and vcon-0.9.2.tar.gz via poetry build.
  • Smoke-tested wheel in clean venv: Vcon.build_new() emits "vcon": "0.4.0", omits group/redacted, add_wtf_transcription_analysis writes one analysis entry and registers the wtf_transcription extension.
  • TestPyPI dry-run (run after merge, before PyPI publish)
  • PyPI publish (after merge + tag)

🤖 Generated with Claude Code

…TF analysis helper

- build_new() now sets "vcon": "0.4.0" per draft-ietf-vcon-vcon-core-02 §4.1.1
  (deprecated in draft, retained for parser compatibility)
- build_new() no longer initializes empty group: [] / redacted: {} defaults
- Add add_wtf_transcription_analysis() sibling to ..._attachment for callers
  preferring analysis[] placement
- 253 passing, 7 pre-existing skips

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@howethomas howethomas merged commit 36696a9 into main May 10, 2026
4 of 5 checks passed
@howethomas howethomas deleted the release/0.9.2 branch May 10, 2026 20:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant