fix: remove duplicate retrieval-source identifiers - #115
Merged
Conversation
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
SkyeAv
added a commit
that referenced
this pull request
Aug 24, 2026
Cut 14.0.0 and bump the package version in pyproject.toml, uv.lock, and CITATION.cff. Major: one breaking change since 13.0.0. Generated edges no longer duplicate each nested `sources` entry's provenance identifier into `sources[].id`; `resource_id` is now the sole identifier on a retrieval-source entry (#115). The pinned Biolink model still requires the inherited `Entity.id` on `RetrievalSource`, so the validator supplies it to an in-memory compatibility copy only, and neither the decoded record nor the written NDJSON carries it. Also ships the explicit retrieval-`sources` template with `{edge_id}` record-URL interpolation (#116) and the negative-log p-value un-logging fix (#114). Changelog: - The Unreleased section was missing #116 entirely; added it under `Added`, and gave the two existing entries their PR links plus a reader migration note for the `sources[].id` removal. Docs: - `docs/configuration/table.md`'s automatic-coercion section documented neither half of #114: added a `Negative-log P value` row to the recognition table and a bullet covering the un-logging (`p = 10 ** -x` on rename and on banding), the complete-token requirement, the deliberate pass on unmarked `log10` spellings, raw-beats-alias selection, and the Float64 underflow floor. Every documented spelling was checked against `is_neglog10_column` and `pvalue_target`. - `docs/cli.md`'s validate-kgx section explained the pending-field count but not the mirror case #115 introduced; added the `RetrievalSource` compatibility alias, including that it stops being applied once a model release drops the requirement. - Removed the five em-dashes #115 and #116 reintroduced into the two doc pages, restoring the docs-wide convention set in abb042a. Known gap, deliberately not fixed here: `PVALUE_TOKEN_PATTERN` anchors on `\b`, which does not fire after an underscore, so `raw_pvalue` / `adj_pvalue` / `fdr_pvalue` / `negative_log10_pvalue` are not recognized as p-value columns at all, even though the same names with a separated token (`gene_p_value`) and the bare-P forms (`raw_p`) are. It predates this window and changing recognition would shift behavior for existing configs, so it wants its own PR. Testing: - uv run pytest -q -> 1078 passed, 15 skipped (94% coverage) - uv run ruff check . && uv run ruff format --check . && uv run pyright -> clean / 0 errors - uv lock --check -> up to date - uv run mkdocs build --strict -> clean Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RRefj7KvacA9PGQYMCt6wy
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Generated
sourcesentries now retainresource_idas their sole provenance identifier; the duplicate nestedidis removed without changing legitimate study/result IDs. Validation remains compatible with the pinned Biolink model by adding the inherited alias only to an in-memory validation copy, and the migration is documented.Fixes
resource_id,resource_role, and provenance URL/upstream fields withoutsources[].id.id.CHANGELOG.md.Testing
uv run pytest tests/test_biolink.py tests/test_lib.py -k 'retrieval_sources or source_record_urls or compile_graph_emits_ndjson or build_pipeline_e2e_smoke or resource_id_only' -q→ 5 passeduv run pytest tests/test_lib.py tests/test_biolink.py tests/test_rig.py tests/test_cover_lib.py tests/test_e2e_smoke.py -q→ 287 passed; 1 pre-existing QC-extra failure (scikit-learn/sentence-transformersunavailable)uv run ruff check src/tablassert/lib.py src/tablassert/biolink.py tests/test_lib.py tests/test_biolink.py tests/test_rig.py tests/test_cover_lib.py→ passeduv run pyright src/tablassert/lib.py src/tablassert/biolink.py→ 0 errors