• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

prisma-risk / tsoracle / 26425430778
95%

Build:
DEFAULT BRANCH: main
Ran 26 May 2026 12:33AM UTC
Jobs 1
Files 81
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

26 May 2026 12:27AM UTC coverage: 95.563% (-0.006%) from 95.569%
26425430778

push

github

web-flow
feat(codec): add VersionedCodec trait and framed encode/decode helpers (#454)

Add a symmetric multi-version codec seam to tsoracle-codec so types whose
on-disk and on-wire layout evolves can be read from any supported version
(up-convert) and written at any active version (down-convert), with
fail-loud rejection of out-of-range versions and fail-loud rejection of
non-representable down-conversions.

- New `versioned` module exposes `VersionedCodec` (`decode_version` /
  `encode_version`), `encode_framed` / `decode_framed` (range-checked
  version-prefix framing), and `encode_postcard` / `decode_postcard_exact`
  (DRY per-version body building blocks implementors call).
- New `CodecError` variants `VersionUnsupported { min, max, actual }`
  (foreign-version range rejection on read) and `NotRepresentable { version }`
  (encode-side feature-gate violation).
- `codec_io_error` extended so `VersionUnsupported` also maps to
  `io::ErrorKind::InvalidData`, preserving the foreign-format storage
  contract for the openraft storage layer once it adopts `decode_framed`.
  `NotRepresentable` maps to `Other`, not `InvalidData`.

Purely additive: the existing single-version `encode` / `decode` and
their callers are untouched. No production call site changes.

Tests: per-version body round-trip, error variant Display / io mapping,
trait round-trip across two versions, fail-loud negative test for an
unrepresentable down-conversion, framed encode/decode (in-range
dispatch, out-of-range / below-range / empty rejection), and a proptest
covering framed round-trip at both versions.

202 of 212 new or added lines in 2 files covered. (95.28%)

11717 of 12261 relevant lines covered (95.56%)

423783.39 hits per line

Uncovered Changes

Lines Coverage ∆ File
10
94.76
crates/tsoracle-codec/src/versioned.rs
Jobs
ID Job ID Ran Files Coverage
1 26425430778.1 26 May 2026 12:33AM UTC 81
95.56
GitHub Action Run
Source Files on build 26425430778
  • Tree
  • List 81
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #26425430778
  • 4d9d2202 on github
  • Prev Build on main (#26425207575)
  • Next Build on main (#26425818812)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc