Skip to content

LayerKeySort v3.0.0-preview.5

Pre-release
Pre-release

Choose a tag to compare

@RXY712200 RXY712200 released this 02 Oct 07:01

LayerKeySort v3.0.0-preview.5

Preview.5 is an experimental release-candidate preparation snapshot. Its purpose is to check the current V3 public contract, documentation, builds, and consumer paths before considering v3.0.0-rc.1. It does not declare an RC or stable V3 release.

Purpose and changes

  • Reviews the 59-function public API, ownership and borrowed-lifetime rules, comparator requirements, error behavior, examples, and test coverage. No public function signature or production behavior changes were needed.
  • Aligns version and publication wording across the README, changelog, API, usage, integration, migration, development, compatibility, and benchmark guides.
  • Keeps the CMake numeric project version at 3.0.0 while the public header reports 3.0.0-preview.5.
  • Leaves the ordering algorithm, Path model, LK1 v1 format, and captured benchmark data unchanged.

Validation

The implementation commit 2a11d8548deb866736fd4da94277b375ef912e0e passed strict GCC C17, MSVC Debug and Release, CTest 7/7 in each, all three examples, MSVC AddressSanitizer, a 100,000-step manual mutation soak, add_subdirectory, local and real remote FetchContent, and a standalone public-header consumer. The publication-state commit 763c2b6339b28b499db244ba1362770812c8c0a6 passed all five GitHub Actions jobs: CI run.

Known limitations

  • Managed insertion may relabel up to the full collection, with workload-dependent Path memory and latency costs. No worst-case O(log n) complete-insertion or formal amortized bound is claimed.
  • Item objects and comparator context remain caller-owned; comparator-relevant fields must remain stable while resident.
  • LK1 is a sortable representation of one coordinate, not whole-Tree persistence or permanent item identity.
  • Passing tests and CI supports RC consideration but does not prove production readiness, universal platform behavior, or a theoretical complexity bound.

Tag target: 763c2b6339b28b499db244ba1362770812c8c0a6.