Skip to content

feat: support external record identifiers#57

Merged
beinan merged 4 commits into
lance-format:mainfrom
dcfocus:codex/external-id-lookup
Jun 9, 2026
Merged

feat: support external record identifiers#57
beinan merged 4 commits into
lance-format:mainfrom
dcfocus:codex/external-id-lookup

Conversation

@dcfocus

@dcfocus dcfocus commented Jun 9, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add a nullable external_id field to context records for caller-owned stable identifiers.
  • Expose Context.add(..., external_id=...) and Context.get(id=...) / Context.get(external_id=...) in Python.
  • Reject duplicate internal ids and duplicate external ids with explicit errors.
  • Add Rust/Python coverage plus README examples.

Closes #52

Testing

  • python3 -m py_compile python/python/lance_context/api.py python/tests/test_search.py python/tests/test_external_id.py
  • git diff --check
  • ./.codex/skills/ci-pr-helper/scripts/run_ci_checks.sh failed locally: cargo not found; install Rust to run Rust checks.
  • Full cargo, ruff, and pytest checks were not run because those tools are not installed in this shell.

@dcfocus dcfocus marked this pull request as ready for review June 9, 2026 04:18
@beinan beinan merged commit 783c64f into lance-format:main Jun 9, 2026
7 checks passed
@dcfocus dcfocus deleted the codex/external-id-lookup branch June 27, 2026 19:10
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.

Support caller-supplied stable record identifiers and lookup by ID

2 participants