Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
f6f63e8
docs: design tiled fixed-size-list encoding
lwwmanning Jul 30, 2026
5ce6464
docs: derive tiled list dtype from parts
lwwmanning Jul 30, 2026
f2b5482
docs: expose tiled physical ranges
lwwmanning Jul 30, 2026
5460aaa
docs: plan tiled fixed-size-list implementation
lwwmanning Jul 30, 2026
51b9483
docs: plan tiled list differential fuzzing
lwwmanning Jul 30, 2026
515c07d
docs: harden tiled list implementation plan
lwwmanning Jul 30, 2026
104c039
docs: make tiled list plan executable
lwwmanning Jul 30, 2026
b34c1b2
feat: add tiled fixed-size-list geometry
lwwmanning Jul 30, 2026
b79bd81
feat: add tiled list array metadata
lwwmanning Jul 30, 2026
6842de3
feat: transpose tiled fixed-size lists
lwwmanning Jul 30, 2026
9097e9f
fix: harden tiled list scalar execution
lwwmanning Jul 30, 2026
72355ed
feat: expose tiled list ranges
lwwmanning Jul 30, 2026
fd642d9
fix: validate tiled geometry widths
lwwmanning Jul 30, 2026
1d2a2b2
feat: preserve tiled lists through slice
lwwmanning Jul 30, 2026
fed9a5b
fix: reject overflowing tiled row gathers
lwwmanning Jul 31, 2026
a86b593
feat: preserve tiled lists through take
lwwmanning Jul 31, 2026
f83bcac
fix: validate tiled take mask length
lwwmanning Jul 31, 2026
ba2eebb
test: cover bitpacked tiled list children
lwwmanning Jul 31, 2026
c109d1d
test: verify bitpacked tiled row values
lwwmanning Jul 31, 2026
4a5eaad
feat: register tiled lists as unstable encoding
lwwmanning Jul 31, 2026
080788a
test: check tiled lists against canonical FSL
lwwmanning Jul 31, 2026
37f6e88
test: make tiled conformance oracle independent
lwwmanning Jul 31, 2026
4f075c7
test: fuzz tiled lists against canonical FSL
lwwmanning Jul 31, 2026
1041cf9
chore: keep task reports out of source
lwwmanning Jul 31, 2026
22b4022
ci: schedule tiled list fuzzing
lwwmanning Jul 31, 2026
14ccd31
bench: measure tiled fixed-size lists
lwwmanning Jul 31, 2026
3df4777
bench: distinguish tiled benchmark rows
lwwmanning Jul 31, 2026
1f22f6a
fix: satisfy tiled list source licensing
lwwmanning Jul 31, 2026
0307663
docs: clarify tiled empty slice semantics
lwwmanning Jul 31, 2026
de9cf8f
test: cover empty tiled slice composition
lwwmanning Jul 31, 2026
7ba270b
feat: permit tiled FSL in unstable files
lwwmanning Jul 31, 2026
4d1aa1d
fix: bound tiled FSL row operations
lwwmanning Aug 1, 2026
b72261f
fix: transpose tiled FSL validity with values
lwwmanning Aug 1, 2026
24cb59e
test: cover tiled FSL bitmap validity round trip
lwwmanning Aug 1, 2026
196fec5
feat: add tiled FSL row views
lwwmanning Aug 1, 2026
9a2bd89
feat: slice full-width tiled FSL by row view
lwwmanning Aug 1, 2026
4e19483
fix: bound multi-slab tiled FSL slices
lwwmanning Aug 1, 2026
58b3e64
fix: push down tiled FSL slab slices
lwwmanning Aug 1, 2026
a81f6b8
feat: serialize tiled FSL row views
lwwmanning Aug 1, 2026
e2a64cf
test: fuzz tiled FSL row views
lwwmanning Aug 1, 2026
674f292
test: validate reconstructed tiled FSL trees
lwwmanning Aug 1, 2026
9b3aa32
test: deduplicate tiled FSL serde coverage
lwwmanning Aug 1, 2026
b09f8cd
bench: pin tiled FSL slice scaling
lwwmanning Aug 1, 2026
a6a5262
test: tighten tiled FSL slice scaling check
lwwmanning Aug 1, 2026
4ec7dea
test: consolidate tiled FSL coverage
lwwmanning Aug 1, 2026
42f2bfb
test: restore oversized tiled slice regression
lwwmanning Aug 1, 2026
a59a3be
chore: clean up tiled FSL geometry
lwwmanning Aug 1, 2026
503fbc5
Merge remote-tracking branch 'origin/develop' into codex/tiled-dco-re…
lwwmanning Aug 1, 2026
677f87f
fix: reject mismatched tiled FSL validity
lwwmanning Aug 1, 2026
89d16e9
fix: validate tiled FSL row views in fuzz oracle
lwwmanning Aug 1, 2026
ce41e40
fix: avoid duplicate unstable initialization
lwwmanning Aug 1, 2026
370b989
fix(tiled-fsl): harden row view invariants
lwwmanning Aug 1, 2026
d4dfc88
feat(tiled-fsl): preserve encoding through masks
lwwmanning Aug 1, 2026
4ec4daf
fix(tiled-fsl): satisfy unwrap lint
lwwmanning Aug 3, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 36 additions & 0 deletions .github/workflows/fuzz.yml
Original file line number Diff line number Diff line change
Expand Up @@ -213,6 +213,42 @@ jobs:
gh_token: ${{ secrets.GITHUB_TOKEN }}
incident_io_alert_token: ${{ secrets.INCIDENT_IO_ALERT_TOKEN }}

# ============================================================================
# Tiled Fixed-Size List Fuzzer
# ============================================================================
tiled_fsl_fuzz:
name: "Tiled Fixed-Size List Fuzz"
uses: ./.github/workflows/run-fuzzer.yml
with:
fuzz_target: tiled_fsl
jobs: 4
secrets:
R2_FUZZ_ACCESS_KEY_ID: ${{ secrets.R2_FUZZ_ACCESS_KEY_ID }}
R2_FUZZ_SECRET_ACCESS_KEY: ${{ secrets.R2_FUZZ_SECRET_ACCESS_KEY }}

report-tiled-fsl-fuzz-failures:
name: "Report Tiled Fixed-Size List Fuzz Failures"
needs: tiled_fsl_fuzz
if: always() && needs.tiled_fsl_fuzz.outputs.crashes_found == 'true'
permissions:
issues: write
contents: read
id-token: write
pull-requests: read
uses: ./.github/workflows/report-fuzz-crash.yml
with:
fuzz_target: tiled_fsl
crash_file: ${{ needs.tiled_fsl_fuzz.outputs.first_crash_name }}
artifact_url: ${{ needs.tiled_fsl_fuzz.outputs.artifact_url }}
artifact_name: tiled_fsl-crash-artifacts
logs_artifact_name: tiled_fsl-logs
branch: ${{ github.ref_name }}
commit: ${{ github.sha }}
secrets:
claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
gh_token: ${{ secrets.GITHUB_TOKEN }}
incident_io_alert_token: ${{ secrets.INCIDENT_IO_ALERT_TOKEN }}

# ============================================================================
# Compress Roundtrip Fuzzer
# ============================================================================
Expand Down
19 changes: 19 additions & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ members = [
"encodings/bytebool",
"encodings/parquet-variant",
"encodings/onpair",
"encodings/tiled-fsl",
# Benchmarks
"benchmarks/lance-bench",
"benchmarks/compress-bench",
Expand Down Expand Up @@ -325,6 +326,7 @@ vortex-sequence = { version = "0.1.0", path = "encodings/sequence", default-feat
vortex-session = { version = "0.1.0", path = "./vortex-session", default-features = false }
vortex-sparse = { version = "0.1.0", path = "./encodings/sparse", default-features = false }
vortex-tensor = { version = "0.1.0", path = "./vortex-tensor", default-features = false }
vortex-tiled-fsl = { version = "0.1.0", path = "./encodings/tiled-fsl", default-features = false }
vortex-utils = { version = "0.1.0", path = "./vortex-utils", default-features = false }
vortex-zigzag = { version = "0.1.0", path = "./encodings/zigzag", default-features = false }
vortex-zstd = { version = "0.1.0", path = "./encodings/zstd", default-features = false }
Expand Down
36 changes: 36 additions & 0 deletions encodings/tiled-fsl/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
[package]
name = "vortex-tiled-fsl"
authors = { workspace = true }
categories = { workspace = true }
description = "Two-dimensional tiled encoding for primitive Vortex fixed-size lists"
edition = { workspace = true }
homepage = { workspace = true }
include = { workspace = true }
keywords = { workspace = true }
license = { workspace = true }
readme = { workspace = true }
repository = { workspace = true }
rust-version = { workspace = true }
version = { workspace = true }

[lints]
workspace = true

[dependencies]
prost = { workspace = true }
vortex-array = { workspace = true }
vortex-buffer = { workspace = true }
vortex-error = { workspace = true }
vortex-mask = { workspace = true }
vortex-session = { workspace = true }

[dev-dependencies]
divan = { workspace = true }
mimalloc = { workspace = true }
rstest = { workspace = true }
vortex-array = { workspace = true, features = ["_test-harness"] }
vortex-fastlanes = { workspace = true }

[[bench]]
name = "tiled_fsl"
harness = false
Loading
Loading