Docs

Versioning

How Cassette numbers its releases: Pondo semantic versioning with three cumulative counters and an accepted-change ledger.

Pondo semantic versioning

Source
VERSIONS.md
Last updated
2026-10-31, commit 9acc9ce
Owner
integration lane
Read it

Cassette versioning — Pondo Semver

Policy accepted 2026-10-31 at the product owner's request. Cassette uses Pondocean semantic versioning: major.minor.patch, with three cumulative counters.

  • Major: accepted breaking contract or architectural/cross-cutting change.
  • Minor: accepted feature, capability, product surface, or control.
  • Patch: accepted fix, tweak, documentation, build/hygiene, or behavior-preserving refactor.
  • Each accepted change gets exactly one ledger row and increments exactly one counter. Major/minor increments never reset lower counters. For example, 1.7.12 → 1.8.12 for a feature → 2.8.12 for an architectural change.
  • Count accepted changes, not proposed features or merge commits that duplicate already-counted ancestry. Classify a change once by its dominant category; split independently accepted changes into separate rows.

Release identity and migration

The locally built Windows installer Cassette_0.1.0_x64-setup.exe is historical ordinary-SemVer identity. It must not be retroactively described as a Pondo census. This checkout contains product/spec history and uncommitted CLI work; the earlier desktop application was built from a separate Downloads source tree. Neither unmerged work nor that application's capabilities can be inferred from this checkout's main-branch history alone.

The fixed adoption anchor is 1.1.3, ratified as a bounded census of selected migration units in the recovered desktop snapshot. It is not a count of all historical features and is not a distributed binary. See docs/decisions/0003-pondo-adoption-census.md for exact boundaries and exclusions. Candidate identity 2.2.6 passed independent integration review. Accepted follow-up repairs and transcript review brought the accounting total to 2.3.7. The independently approved connected-library change below brings accepted accounting and candidate manifests to 2.4.7. Windows package and hardware qualification remain required before release.

Before distributing that release:

  1. Pin the actual application source and accepted baseline revision. Reconcile the Downloads desktop source with this repository and the unmerged work.
  2. Record a row for each accepted baseline change, its category and evidence; total each category into the first Pondo identity. Record any excluded history.
  3. Add this policy/notes change as one patch only once accepted. Keep pending changes separate from the accepted census.
  4. Use that same identity in Cargo/package manifests, lockfiles where applicable, Tauri bundle config, About/CLI output, installer filenames, and changelog. Verify that every active application surface agrees before building.
  5. Retain separate, monotonically increasing installer/platform distribution ordinals if required; those are not Pondo category counts. Check platform version constraints without resetting or silently truncating product counters.

Accepted-change ledger

The adoption anchor contains these accepted units. Intermediate totals show accounting order, not historical releases.

Cumulative total Category Accepted change Evidence
1.0.0 Major Local-first Tauri/native/SQLite architecture PR #6 source f0c99e7, merge e747b31; 91 source entries verified
1.1.0 Minor Local catalog and metadata persistence Same source; persistence and library-removal tests; capture/export/provider qualification excluded
1.1.1 Patch Requirements, Pondo policy and staging runbook PR #4 merge 78da299; inherited PR #1 counted once
1.1.2 Patch Recovery provenance and reproducibility package PR #6 provenance and baseline build receipts
1.1.3 Patch Delivery workflow and release validators PR #7 merge f84e04c; local/cloud checks, hosted CI unavailable
1.1.4 Patch Development dependency security repair Exact 28b77025; independent isolated build, 11 tests and zero-vulnerability npm audit
2.1.4 Major Shared GUI/CLI recorder architecture and safe pending-save contract PR #8 exact a873c86, independent approval, 29 Windows tests; staging merge 4469409
2.2.4 Minor Dense desktop workspace and optional cassette transport UI exact e9e04ac, independent round-2 approval and 19 frontend tests; native tags contract integrated
2.2.5 Patch Existing-destination export/source protection Independently reviewed within PR #8; alias, hardlink, other-asset and publication-race fixtures

The component total before release-identity integration is 2.2.5. The fixed migration anchor remains 1.1.3; later changes do not alter it. Runtime repair iterations complete the Major unit and do not create extra counter rows.

Candidate identity integration

Cumulative total Category Accepted change Evidence
2.2.6 Patch Synchronized product identity, ledger/decision and release receipt integration Exact 1add46b; independent integration approval; seven manifests, both lockfiles and native/browser identity sources agree

That accepted candidate identity was 2.2.6. This records the concrete integration change after review; it does not claim that a binary is released, installed or hardware-qualified. Runtime sources derive identity from their manifests rather than retaining the legacy hardcoded value.

Accepted qualification repair and connected transcript review

Cumulative total Category Accepted change Evidence
2.2.7 Patch Detach captured CLI streams from the on-demand Windows broker PR #10 exact 8e48776, independent approval and real red/green subprocess regression; staging merge 94998f1
2.3.7 Minor Local transcript corrections, speaker labels and reviewed exports across desktop and CLI PR #11 exact 3d8c7ac, independent source approval; 63 portable Rust tests, 23 frontend tests, 16 CLI requests and 8 browser scenarios; staging merge 0cc50c7

The accepted accounting total after transcript review was 2.3.7. Its release-identity synchronization was included in those two accepted units, not an additional change. The transcript domain foundation is included once in the connected feature; it was not counted separately. Hosted CI jobs did not start because of account payment/spending restrictions; each staging integration records a bounded local evidence waiver. These are not hosted CI passes or distribution approval.

The Windows MTA experiment in draft PR #12 did not resolve physical capture and is excluded from staging and this census. Windows Audio hangs, physical capture, combined Windows validation, packaged operation and installed upgrade remain qualification work. No counter is earned by a failed experiment or by later qualification alone.

Accepted connected-library candidate

Cumulative total Category Accepted change Evidence and status
2.4.7 Minor Connected local recording notes/kind, bounded evidence search and shared desktop/CLI controls PR #16 product source fd31ed18 and fixture repair 1c7a213b independently approved; 72 Windows Rust tests, native build, CLI stdio and 20 live library requests pass; lead and independent reviewer concur on staging-only billing-CI exception

The manifests, lockfiles and accepted accounting total describe the 2.4.7 candidate. Source and software acceptance is recorded in docs/delivery/library-native-2.4.7.md; the final documentation-only head still requires independent approval before its staging merge. Keep Major 2 and Patch 7; this is one coherent Minor, not separate counts for notes, kinds, filters, CLI commands, pre-acceptance repair iterations, test path portability, synchronization or the merge. No release, installed upgrade or physical-capture qualification is claimed. Failed MTA work remains excluded.

Passing later tests for excluded legacy capabilities creates no additional counter by itself. Promotion merges do not increment counters. The historical 0.1.0 artifacts and their exact hashes remain recorded separately.

Reference convention: sibling a sibling product/VERSIONS.md and a sibling product/docs/delivery/pondo-baseline-audit-2026-08-15.md, read 2026-10-31. Those establish the counting rule; their product counters do not carry into Cassette.

Changelog

Source
CHANGELOG.md
Last updated
2026-10-31, commit 9acc9ce
Owner
integration lane
Read it

Cassette changes

2.4.7 - Accepted combined candidate, 2026-10-31

Source and native software checks accepted for staging; package and physical capture qualification remain pending. This is not a released or installed upgrade.

  • Add local recording notes and kind with explicit revision conflicts, plus bounded search across metadata, reviewed/raw transcript evidence and manual speaker labels. Keep snippets, stale evidence and omission warnings explicit.
  • Share notes/kind and search through desktop and CLI while preserving original audio and transcript records. Retain unsaved or conflicted notes/kind when title and tags are saved; keep the details panel open during pending saves.
  • Close every library CLI fixture SQLite connection after its transaction, and normalize the transcript browser fixture's Windows Vite path, and decode CLI JSON explicitly as UTF-8 on Windows. These repairs and candidate identity synchronization do not earn separate counter increments.

The bounded scan is not an index or latency qualification; drafts remain local to the mounted panel. Native software checks passed: 72 Rust tests, fresh binaries, CLI stream detachment and 20 live library requests. Packaging, normal GUI startup, microphone/disconnect and long recordings still need dedicated qualification. The accepted CLI pipe-detachment and transcript-fixture cleanup from staging are retained. No MTA experiment or host audio-service change is included.

2.3.7 — Combined candidate, 2026-10-31

Accepted staging changes; Windows/package and physical microphone qualification remain open. The daily installed application has not been replaced.

  • Correct the Windows CLI's inherited output handles so captured commands return promptly while the background recorder service remains alive.
  • Review transcript text and speaker labels locally, save corrections, inspect original provider evidence and restore the original review state.
  • Share review operations between the desktop and CLI, with explicit revision conflicts and stale-edit checks. Keep original transcript JSON and audio intact.
  • Export reviewed TXT, SRT, VTT and JSON to new filenames without overwriting existing files. JSON explicitly includes original provider evidence.

Known limits: unsaved review drafts are not durable across panel navigation; large transcript/slow media latency is unqualified. Voice profiles/matching, speaker solo playback, live/local providers and library expansion remain later work. The separate Windows Audio service hang also affects a control recorder; physical capture and daily upgrade remain blocked pending host recovery and qualification. The unsuccessful MTA experiment is not included.

2.2.6 — Windows candidate, 2026-10-31

Candidate identity accepted by independent integration review; artifact and hardware qualification remain open. This is not a claim that the installed daily app was upgraded.

  • Preserve the existing sage/ivory design with denser controls, smaller corners, a collapsible sidebar, persistent Record/Import and compact capture view.
  • Remember microphone selection; show recording state, time, meter, pending name, destination, disk space and saved path. Changes apply safely when saving.
  • Share one recorder and library between desktop, tray, shortcuts and the on-demand CLI. Package cli/cassette-cli.exe; no global PATH change.
  • Add optional cassette reel animation and independent start, stop, eject, rewind and fast-forward sounds. Sound defaults off; reduced motion is honored.
  • Preserve tagged recordings across UI reattachment. Stop reaches the native recorder even when metadata writes fail; temporary audio remains recoverable.
  • Refuse export overwrites, including aliases, other assets and destinations created while rendering. Keep daily data separate from explicit test copies.
  • Refresh development dependencies and introduce cumulative Pondo accounting, staging-first integration, source receipts and release validators.

Known limits: the complete provider/speaker CLI, local/live transcription, journal/routing, watched folders and screen/mobile capture are later phases. External microphone/disconnect/hour-long recording and installed upgrade qualification are separate gates. Hosted GitHub Actions are currently unavailable because jobs cannot start under the account billing/spending restriction.

Historical 0.1.0

Recovered the genuine earlier Windows desktop source and reproduced its frontend assets. The archive manifest, prior installer and source mappings remain in docs/delivery/source-recovery.md and the local baseline artifact receipt. Historical 0.1.0 is ordinary SemVer, not a retroactive Pondo change census.