- Move project to a dedicated organization
- Create website
- build something like hardwood.dev but for vortex files
- Benchmark publishing — see ADR-0006.
- Performance tests must be peer-reviewed
- Run performance tests on other machines (I have access only to Apple M5)
- Vector API adoption — see ADR-0005.
Out of scope for the #287 rewrite (which, together with the follow-up hot-path pass, closed the
vortex-jni gap with a scalar, branch-free algorithm — encode at parity, decode ~1.16x faster on
JavaVsJniFsstBenchmark — see ADR-0022):
- True per-row lazy/random-access decompression exploiting FSST's headline random-access
property — today
FsstEncodingDecoder.decode()eagerly materializes the whole column up front regardless of what is queried. Connects to ADR-0010 (Lazy decode) but is a separate initiative. - OptFSST (2026 arXiv follow-up: DP-based training instead of greedy, ~4x slower training
for 7–17% better compression) — a documented future option, not adopted, since it moves off the
classic greedy-FSST speed/compression tradeoff this rewrite targets (matching what
vortex-jniitself uses).
See CLAUDE.md §Security contract for the invariant. Each entry below is either a known gap, a contract audit, or supporting infra.
- Implement
ResourceLimits+ReadOptions— see ADR-0004.
- Jazzer fuzz testing, remaining scope — see ADR-0020.
A fuzz-mode target for
VortexReaderfull-file open already landed (fuzzmodule,@Tag("fuzz"), opt-in viaJAZZER_FUZZ=1), seeded with five existing reader fixtures (measured: 175→550 edges in a 30s run vs. an unseeded start). Remaining: direct fuzzing ofPostscriptParser.parseBlobs(deferred — it is package-private, so a target in the separatefuzzmodule needs a cross-module access seam such as a reader test-jar wrapper, and neither a split package nor a wider public surface is acceptable), an automated seed-corpus extraction tool producing per-encoding sub-corpora from the full integration-fixture set (the five hand-picked seeds are a stopgap), one@FuzzTestper encodingdecode(), differential fuzzing vsvortex-jni, regression-corpus wiring into routine./mvnw test, nightly CI profile, OSS-Fuzz submission.
- use JPMS, watch out for "dfa1" in package name
- Docs compiler — remaining tiers —
DocsConsistencyTest(integration) now gates FQNs, method claims, service-file paths, and relative links in the living docs (first run caught 11 fossils the same-day manual audit missed). Remaining:- Golden-test or generate enumerable tables (encodings/extensions/layout ids in
docs/reference.md,docs/compatibility.md) fromEncodingId.WellKnown/LayoutId.WellKnown/ service manifests — a declared capability the code lacks is a bug, in both directions. - Compile
```javablocks from living docs (tutorial imports were stale for months).
- Golden-test or generate enumerable tables (encodings/extensions/layout ids in
-
vortex-arrowbridge module — see ADR-0016.
-
VortexExceptionmessage sanitization — see ADR-0003. - Domain primitives (unsigned integers via Valhalla) — see ADR-0008.
See docs/compatibility.md for the full encoding support table and S3 fixture status.