chunkhound-index-commons
Shared DuckDB / ChunkHound primitives for tools that operate on ChunkHound index files. Nothing in this package is end-user-facing; it keeps DuckDB-string-escape, FK topological order, and HNSW metric recovery in one importable place rather than re-derived per tool.
Submodules
| Module | Owns |
|---|---|
chunkhound_index_commons.resolve |
Directory → DuckDB-file resolution for ChunkHound-shaped index directories. |
chunkhound_index_commons.schema |
DDL inspection: FK topological sort, front-gate refusal of source shapes a rebuild cannot reproduce. |
chunkhound_index_commons.sql |
DuckDB string-interpolation safety primitives (escape, quote, bare-identifier check). |
chunkhound_index_commons.vss |
vss extension loading from the bundled binary, HNSW metric capture, HNSW index recreation. |
No top-level re-exports. Import from the submodule that owns the symbol so the import line pins where the contract lives.
from chunkhound_index_commons.schema import topological_order, reject_unsupported_objects
from chunkhound_index_commons.vss import load_bundled_vss, capture_hnsw_metrics
See docs/architecture.md for why each primitive exists and which DuckDB and ChunkHound behaviors shape it. Refused source shapes, dropped metadata, and known regex gaps catalog at docs/out-of-scope.md.
Install
uv add chunkhound-index-commons
chunkhound-index-commons declares duckdb-extension-vss>=1.5.2, which transitively pins duckdb to a single file-format-compatible version. Consumers should not pin duckdb or duckdb-extension-vss themselves; commons is the single source of truth for those floors.
Versioning
SemVer. Floor bumps to duckdb or duckdb-extension-vss that move out of the previous tested range are majors; signature changes to any module export are majors; new exports are minor.
Compatibility limitations inherited from the source primitives
referenced_tablesmatches only bare identifiers; aREFERENCES "tab"(id)is missed. The motivating ChunkHound workload uses bare identifiers. (docs/out-of-scope.md §Quoted referenced tables inreferenced_tables)parse_hnsw_columntruncates expression keys (CAST(col AS FLOAT[N])). Callers that need to refuse expression keys pair it withsql.is_bare_identifier. (docs/out-of-scope.md §Expression HNSW keys)- HNSW tuning beyond
metric(M,M0,ef_construction,ef_search) is not surfaced by any pragma and is not recoverable across a rebuild. (docs/out-of-scope.md §HNSW tuning beyondmetric)
License
MIT
Metadata
Release files for chunkhound-index-commons 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| chunkhound_index_commons-0.1.0.tar.gz | 72.5 kB | With provenance | Details for chunkhound_index_commons-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| chunkhound_index_commons-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for chunkhound_index_commons-0.1.0-py3-none-any.whl |
Total release size: 82.9 kB
Release files / chunkhound_index_commons-0.1.0.tar.gz
| Download URL | chunkhound_index_commons-0.1.0.tar.gz |
|---|---|
| Size | 72.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
80f660aedc9723df4091d0508dc3cdac0dcb7b348353c1534ef4219bd1f4d460
|
|
BLAKE2b-256 checksum How to use checksums |
8d0bb976e733ccdf9a5b4c4358e7028b2dfdbb5ee8987530de1ac86813993e76
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 26, 2026.
Transparency logRelease files / chunkhound_index_commons-0.1.0-py3-none-any.whl
| Download URL | chunkhound_index_commons-0.1.0-py3-none-any.whl |
|---|---|
| Size | 10.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1182e09d409424b235b161fce5992638f73a5cd47ef2bf3006f0cbc277efaa22
|
|
BLAKE2b-256 checksum How to use checksums |
dc8f7e68b99499527fde2926afd550e2805f09dd3ea4ed6f7b1902c619ca1132
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 26, 2026.
Transparency logSecurity for chunkhound-index-commons 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for chunkhound_index_commons-0.1.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 26, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.