Releases: varveio/swath
Releases · varveio/swath
Release list
swath 0.2.1
swath 0.2.1
User-facing changes
swath --versionnow identifies the build, source revision, Java runtime, and Varve;
root help carries the same unobtrusive Varve attribution.- Dataset startup and resume now refuse pre-existing symlinks in managed output,
checkpoint, marker, and sorted-staging paths before swath can truncate or overwrite an
external target. Existing valid datasets need no migration. - Release downloads and images are now bound to the exact tagged source. The publication
path runs fresh fast, integration, deep, kill-9 resume, licence, and instrumentation
gates; stages an exact asset set; and verifies checksums, signatures, attestations, and
published assets before making the GitHub release public. - Installation and packaging documentation now describe the released artifacts and
container images directly instead of the retired pre-release workflow.
Evidence
- Ten adversarial CLI tests cover dataset-root, checkpoint, SQLite sidecar, marker-temp,
markerless part-file, explicit-restore, and deterministic sort-segment symlinks while
asserting that external targets remain unchanged. - The merged change passed the full local
./gradlew buildgate, independent CodeRabbit
and Opus reviews, andmainCI's fast, integration, deep, Docker, and CodeQL checks. - The release workflow independently rebuilds and retests the immutable tag before any
publication step, then self-verifies the resulting downloads and container digest.
Limits and known issues
- Filesystem protection covers links that exist when a command validates its dataset; it
does not claim to defend a writable output directory against hostile concurrent
mutation during the run. - This is the first release through the newly hardened publication workflow.
What's Changed
Full Changelog: v0.2.0...v0.2.1
swath 0.2.0
What's Changed
- just release: emit the post-release -SNAPSHOT bump commit too by @sagiba in #66
- Make the sim's position sensor swappable, and race candidate cures over captured listings by @sagiba in #67
- Put the remaining-work estimate behind a seam, and port the race's promoted sensor by @sagiba in #68
- Make the simulator honest about serial tails: consume the engine gate chain, fix the probe:page ratio, add per-decision gate visibility by @sagiba in #69
- Cure the wide-flat serial tail: a raceable tail_floor mode for the owner-split child-tail floor by @sagiba in #70
- Turn the sensing/tail-floor pair on by default by @sagiba in #79
- replay-server: serve open-upper-bound delimiter rollups through the native skip-scan by @sagiba in #80
- Add the tail-phase occupancy metric: last-N% window in-flight + wall share by @sagiba in #81
- Count the open-frontier skip and attribute its drained keys by @sagiba in #82
- chore: close the serial-tail review punch list, and stop the toggles line calling the documented rollback unsupported by @sagiba in #86
- engine: close the top scope so its rightmost mass stops being unsplittable (porotomo 95% serial -> 0%, wall -36%) by @sagiba in #88
- sim: condense production comments to current contracts, reconcile the simulator docs by @sagiba in #89
Full Changelog: v0.1.0...v0.2.0
swath 0.1.0
What's Changed
- docs: rewrite the README lede and correct the start-after constraint by @sagiba in #1
- Size per-attempt timeout budgets by call-class cost shape (fixes probe-timeout storm) by @sagiba in #2
- Operator output mode: quiet the normal path, and show the run by @sagiba in #8
- Make the fleet-wide one-steal-attempt bound strict (fixes #3) by @sagiba in #7
- Deflake the FILE-publication staging test and cut the fast tier from 2m06s to 1m17s by @sagiba in #10
- Get the deep tier green: re-baseline the probe-timeout fixtures against the strict steal bound by @sagiba in #11
- Spend the seed budget mass-aware: level-ordered frontier and sampled-sibling prior by @sagiba in #17
- Separate listing-decision logic from execution behind a policy seam by @sagiba in #32
- Close the three post-seam follow-ups: seed classification (#29/#33), view snapshot purity (#30), probe-slot serialization (#31) by @sagiba in #34
- List GCS buckets via S3-XML + OAuth bearer token by @sagiba in #23
- Deflake res4_killAfterRotation: await the first finalized part before injecting the kill by @sagiba in #38
- Deflake finalizeFailureRecordsFinalizeFailed: arm the fault with a row trigger, not a clock race by @sagiba in #39
- Deflake radixBandedFlatRoot: inject page latency so peak_in_flight isn't CPU-bound by @sagiba in #40
- Record the full steal view in decision traces; opt-in seeded DecisionRng by @sagiba in #41
- Reject --bearer-token-refresh-interval without --bearer-token-command by @sagiba in #42
- Deflake ownerSplitsRaceThiefStealsAndStayByteExact: schedule the race instead of hoping for it by @sagiba in #44
- Add --latency-scale to the replay server for compressed-time replay runs by @sagiba in #45
- Client-service-cost span decomposition for per-page cost analysis by @sagiba in #47
- Add :swath-sim, a modelled ground-truth store for policy simulation by @sagiba in #46
- Add a decode-once streaming serving tier for giant sorted fixtures by @sagiba in #48
- Add the simulator's discrete-event kernel, its exact-mode physics, and a synthetic driver by @sagiba in #49
- Add an sdk_unmarshal call-class latency phase for the SDK's own response handling by @sagiba in #50
- Span the Parquet writer pool's encode/write work by @sagiba in #51
- Release prep 1/3: pin what rots, and stop calling the repo private by @sagiba in #53
- Release prep 2/3: publish on merge, stop leaking branch names, settle naming by @sagiba in #58
- Release prep 3/3: reproducible archives, commit provenance, versioned assets by @sagiba in #59
- Run swath's real listing policies against a fixture in virtual time by @sagiba in #52
- Release path: digest promotion, self-verifying publish, RC tags by @sagiba in #60
- Run the release build on the same test tier CI gates every merge with by @sagiba in #63
New Contributors
Full Changelog: https://github.com/varveio/swath/commits/v0.1.0