Skip to content

feat(tables): add first-class fixed-size-list GPU columns - #3007

Merged
ibgreen-openai merged 1 commit into
codex/luvs-command-graph-aliasingfrom
codex/luvs-fixed-size-list-tables
Aug 6, 2026
Merged

feat(tables): add first-class fixed-size-list GPU columns#3007
ibgreen-openai merged 1 commit into
codex/luvs-command-graph-aliasingfrom
codex/luvs-fixed-size-list-tables

Conversation

@ibgreen-openai

Copy link
Copy Markdown
Collaborator

Goals

Represent arbitrary-width fixed-size GPU table rows as first-class, self-describing storage formats without inventing unsupported vertex formats or introducing a competing table owner.

Changes

  • Add public FixedSizeList<Format, Size> typing and canonical fixed-size-list<float32,768> support to the central GPU vector-format decoder.
  • Preserve GPUData/GPUVector logical row counts while deriving flattened element counts, complete row widths, padded physical strides, and safe byte ranges.
  • Keep fixed-size lists out of generic vertex attributes and constants while preserving ordinary GPUTable schemas, record batches, source provenance, append behavior, and explicit packing.
  • Bind only the actual row span for padded storage columns, including final rows without trailing padding.
  • Document format grammar, schema typing, row/value counts, ownership, storage-only consumption, and chunk-preserving vectors.
  • Add focused Node coverage for common embedding widths, invalid formats, overflow, padded rows, table composition, layout publication, and storage binding spans.

Verification

  • nvm use (Node 22.22.1).
  • yarn install: the configured package registry returns HTTP 403 for required tarballs; verification reuses the existing isolated dependency tree and CI performs the normal immutable install.
  • Focused complete @luma.gl/tables Node suite and package TypeScript declarations.
  • yarn lint fix.
  • yarn build after final source and formatting changes.
  • yarn test-node.
  • CI=true yarn test with real Chromium/WebGPU coverage.
  • yarn website:build.
  • (cd website && yarn build).

Risks

Fixed-size lists are intentionally storage-only. Existing one-to-four-component vertex formats, variable-length lists, explicit vertex-layout expansion, ownership, and source batch boundaries remain unchanged.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: cfdbe49b75

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread docs/api-reference/tables/gpu-vector-format.mdx Outdated
@ibgreen-openai
ibgreen-openai force-pushed the codex/luvs-fixed-size-list-tables branch from cfdbe49 to 7c03930 Compare August 6, 2026 22:09
@ibgreen-openai
ibgreen-openai force-pushed the codex/luvs-fixed-size-list-tables branch from 7c03930 to 030ec5c Compare August 6, 2026 22:24
@ibgreen-openai
ibgreen-openai merged commit b4f3f84 into codex/luvs-command-graph-aliasing Aug 6, 2026
@ibgreen-openai
ibgreen-openai deleted the codex/luvs-fixed-size-list-tables branch August 6, 2026 23:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants