Skip to content

Add soulcap-lookup, soulcap-tokens, type checking, and CI improvements - #15

Open
s28ale-maker wants to merge 1 commit into
mainfrom
pr-01-lookup-tokens-ci
Open

s28ale-maker wants to merge 1 commit into
mainfrom
pr-01-lookup-tokens-ci

Conversation

@s28ale-maker

@s28ale-maker s28ale-maker commented Sep 22, 2026 •

Copy link
Copy Markdown
Collaborator

Part 1 of 9 in a stacked series (#15 → #16 → #17 → … → #23). This is the base of the stack; merge it first.

Summary

  • Adds soulcap-lookup/soulcap-tokens and ols4_lookup.py (OLS4-backed term resolution)
  • Extends marker_syntax.py validation/token extraction
  • Adds mypy type checking, dependabot config, pre-commit config, and CI workflow improvements
  • Refreshes reports/marker_validation.md from the current sheet sync

Verified in isolation via a separate worktree (not just as part of the full branch):

  • pytest: 165 passed, 94.68% coverage (gate is 80%)
  • ruff check .: all checks passed

More pieces will follow once this is reviewed/merged — next up is the soulcap-match CLI + soulcap-hgnc commits.

Test plan

  • uv run pytest passes in isolation (165 passed, 94.68% coverage)
  • uv run ruff check . passes in isolation
  • CI passes on this PR

…vements

- soulcap-lookup: new CLI to search CL terms via EBI OLS4 REST API
- soulcap-tokens: new CLI to extract distinct marker tokens from the
  Marker Combinations CSV (M1 prerequisite)
- extract_markers() / extract_markers_from_csv() added to marker_syntax
- Fix __version__ duplication: read from importlib.metadata at runtime
- Add mypy + pandas-stubs to dev deps; mypy clean across all 7 modules
- Fix 4 type bugs surfaced by mypy (None narrowing, Hashable index,
  ExcelFile stubs, mixed params dict)
- CI: split into lint + test jobs; add ruff format --check; add
  uv sync --frozen; add mypy type-check step
- Add Dependabot config for Actions and pip deps
- Add pre-commit config (ruff check + format)
- Create marker_mappings/ directory for tracked mapping artifacts
- Resolve merge conflicts from upstream (pyproject.toml, marker_syntax,
  marker_validation report)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
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.

1 participant