Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #214 +/- ##
==========================================
+ Coverage 93.18% 93.31% +0.12%
==========================================
Files 32 33 +1
Lines 1599 1615 +16
==========================================
+ Hits 1490 1507 +17
+ Misses 109 108 -1 ☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Pull request overview
Adds bandpass-filter parameter plumbing across AIMBAT’s settings, models, typing layer, and ICCS instance creation, plus updates the lockfile to newer dependency versions.
Changes:
- Introduce
bandpass_apply,bandpass_fmin,bandpass_fmaxin settings and event-parameter models, and pass them intopysmo’sICCS. - Extend typing enums/type aliases and adjust typing tests for the new parameters (PEP 695
typealiases). - Update
uv.lock(notablypysmogit rev and a few Python package bumps).
Reviewed changes
Copilot reviewed 6 out of 7 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
uv.lock |
Updates locked dependency versions/URLs (including pysmo rev). |
tests/test_typing.py |
Adjusts typing tests for PEP 695 aliases and new enum members; introduces some typing/ignore issues. |
src/aimbat/lib/typing.py |
Adds bandpass-related EventParameter members and converts aliases to PEP 695 type syntax. |
src/aimbat/lib/models.py |
Adds bandpass fields to AimbatEventParametersBase; switches several defaults to default_factory; adds validator mixin to table model. |
src/aimbat/lib/iccs.py |
Threads new bandpass parameters into ICCS(...) construction. |
src/aimbat/lib/_validators.py |
Adds shared pydantic validator ensuring bandpass_fmax > bandpass_fmin. |
src/aimbat/config.py |
Adds bandpass defaults/constraints; changes db_url to computed in an after validator; mixes in frequency-range validator. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| def set_from_strenum(enum: StrEnum) -> set[str]: | ||
| def set_from_strenum(enum: EnumType) -> set[TypeAliasType]: | ||
|
|
||
| return set([member.value for member in enum]) # type: ignore |
There was a problem hiding this comment.
The # type: ignore here is very broad; with warn_unused_ignores = true it can also cause CI to fail if mypy doesn’t actually emit an error on this line. Prefer to adjust the parameter type (e.g., type[StrEnum]) / expression so mypy can type-check it, or use a targeted # type: ignore[<code>] only if strictly necessary.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
📚 Documentation preview 📚: https://aimbat--214.org.readthedocs.build/en/214/