Skip to content

Nullable SiteControlGroup fsa_id#349

Merged
joshvote merged 2 commits intomainfrom
nullablesitecontrolgroupfsaid
Apr 28, 2026
Merged

Nullable SiteControlGroup fsa_id#349
joshvote merged 2 commits intomainfrom
nullablesitecontrolgroupfsaid

Conversation

@joshvote
Copy link
Copy Markdown
Contributor

No description provided.

@joshvote
Copy link
Copy Markdown
Contributor Author

✅ Code coverage on nullablesitecontrolgroupfsaid is at 91% (compared to main being at 91%)

File Reductions

File Details
src/envoy/admin/api/site_control.py 🔻 3% (81% → 78%)
src/envoy/admin/manager/site_control.py 🔻 8% (71% → 63%)

Full Coverage Report

File Details
src/envoy/__init__.py ✅ 100% → 100%
src/envoy/admin/__init__.py ✅ 100% → 100%
src/envoy/admin/api/__init__.py ✅ 100% → 100%
src/envoy/admin/api/aggregator.py ✅ 72% → 72%
src/envoy/admin/api/archive.py ✅ 100% → 100%
src/envoy/admin/api/billing.py ✅ 85% → 85%
src/envoy/admin/api/certificate.py ✅ 78% → 78%
src/envoy/admin/api/config.py ✅ 100% → 100%
src/envoy/admin/api/depends.py ✅ 100% → 100%
src/envoy/admin/api/doe.py ✅ 85% → 85%
src/envoy/admin/api/health.py ✅ 60% → 60%
src/envoy/admin/api/log.py ✅ 81% → 81%
src/envoy/admin/api/pricing.py ✅ 81% → 81%
src/envoy/admin/api/site.py ✅ 76% → 76%
src/envoy/admin/api/site_control.py 🔻 3% (81% → 78%)
src/envoy/admin/api/site_reading.py ✅ 100% → 100%
src/envoy/admin/crud/__init__.py ✅ 100% → 100%
src/envoy/admin/crud/aggregator.py ✅ 100% → 100%
src/envoy/admin/crud/archive.py ✅ 100% → 100%
src/envoy/admin/crud/billing.py ✅ 100% → 100%
src/envoy/admin/crud/certificate.py ✅ 100% → 100%
src/envoy/admin/crud/doe.py ✅ 100% → 100%
src/envoy/admin/crud/log.py ✅ 100% → 100%
src/envoy/admin/crud/pricing.py ✅ 100% → 100%
src/envoy/admin/crud/site.py ✅ 100% → 100%
src/envoy/admin/crud/site_reading.py ✅ 100% → 100%
src/envoy/admin/main.py ✅ 91% → 91%
src/envoy/admin/manager/__init__.py ✅ 100% → 100%
src/envoy/admin/manager/aggregator.py ✅ 86% → 86%
src/envoy/admin/manager/archive.py ✅ 71% → 71%
src/envoy/admin/manager/billing.py ✅ 65% → 65%
src/envoy/admin/manager/certificate.py ✅ 90% → 90%
src/envoy/admin/manager/config.py ✅ 32% → 32%
src/envoy/admin/manager/doe.py ✅ 82% → 82%
src/envoy/admin/manager/log.py ✅ 77% → 77%
src/envoy/admin/manager/pricing.py ✅ 84% → 84%
src/envoy/admin/manager/site.py ✅ 52% → 52%
src/envoy/admin/manager/site_control.py 🔻 8% (71% → 63%)
src/envoy/admin/manager/site_reading.py ✅ 64% → 64%
src/envoy/admin/mapper/__init__.py ✅ 100% → 100%
src/envoy/admin/mapper/aggregator.py ✅ 94% → 94%
src/envoy/admin/mapper/archive.py ✅ 100% → 100%
src/envoy/admin/mapper/billing.py ✅ 97% → 97%
src/envoy/admin/mapper/certificate.py ✅ 100% → 100%
src/envoy/admin/mapper/doe.py ✅ 100% → 100%
src/envoy/admin/mapper/log.py ✅ 100% → 100%
src/envoy/admin/mapper/pricing.py ✅ 100% → 100%
src/envoy/admin/mapper/site.py ✅ 99% → 99%
src/envoy/admin/mapper/site_control.py ✅ 100% → 100%
src/envoy/admin/mapper/site_reading.py ✅ 100% → 100%
src/envoy/admin/settings.py ✅ 100% → 100%
src/envoy/logfilters.py ✅ 0% → 0%
src/envoy/notification/__init__.py ✅ 100% → 100%
src/envoy/notification/crud/__init__.py ✅ 100% → 100%
src/envoy/notification/crud/archive.py ✅ 89% → 89%
src/envoy/notification/crud/batch.py ✅ 97% → 97%
src/envoy/notification/crud/common.py ✅ 100% → 100%
src/envoy/notification/exception.py ✅ 100% → 100%
src/envoy/notification/handler.py ✅ 94% → 94%
src/envoy/notification/main.py ✅ 0% → 0%
src/envoy/notification/manager/__init__.py ✅ 100% → 100%
src/envoy/notification/manager/notification.py ✅ 100% → 100%
src/envoy/notification/settings.py ✅ 0% → 0%
src/envoy/notification/task/__init__.py ✅ 100% → 100%
src/envoy/notification/task/check.py ✅ 96% → 96%
src/envoy/notification/task/transmit.py ✅ 91% → 95%
src/envoy/server/__init__.py ✅ 100% → 100%
src/envoy/server/alembic/__init__.py ✅ 83% → 83%
src/envoy/server/alembic/env.py ✅ 0% → 0%
src/envoy/server/api/__init__.py ✅ 100% → 100%
src/envoy/server/api/auth/__init__.py ✅ 100% → 100%
src/envoy/server/api/auth/azure.py ✅ 98% → 98%
src/envoy/server/api/auth/jwks.py ✅ 100% → 100%
src/envoy/server/api/csip_aus/__init__.py ✅ 100% → 100%
src/envoy/server/api/csip_aus/connection_point.py ✅ 64% → 64%
src/envoy/server/api/depends/allow_nmi_updates.py ✅ 100% → 100%
src/envoy/server/api/depends/azure_ad_auth.py ✅ 94% → 94%
src/envoy/server/api/depends/lfdi_auth.py ✅ 95% → 95%
src/envoy/server/api/depends/nmi_validator.py ✅ 100% → 100%
src/envoy/server/api/depends/request_state_settings.py ✅ 100% → 100%
src/envoy/server/api/error_handler.py ✅ 88% → 88%
src/envoy/server/api/query.py ✅ 100% → 100%
src/envoy/server/api/request.py ✅ 94% → 94%
src/envoy/server/api/response.py ✅ 96% → 96%
src/envoy/server/api/router.py ✅ 100% → 100%
src/envoy/server/api/sep2/__init__.py ✅ 100% → 100%
src/envoy/server/api/sep2/der.py ✅ 57% → 57%
src/envoy/server/api/sep2/derp.py ✅ 68% → 68%
src/envoy/server/api/sep2/device_capability.py ✅ 93% → 93%
src/envoy/server/api/sep2/end_device.py ✅ 80% → 80%
src/envoy/server/api/sep2/function_set_assignments.py ✅ 77% → 77%
src/envoy/server/api/sep2/log_event.py ✅ 83% → 83%
src/envoy/server/api/sep2/metering_mirror.py ✅ 61% → 61%
src/envoy/server/api/sep2/pricing.py ✅ 64% → 64%
src/envoy/server/api/sep2/response.py ✅ 85% → 85%
src/envoy/server/api/sep2/subscription.py ✅ 75% → 75%
src/envoy/server/api/sep2/time.py ✅ 96% → 96%
src/envoy/server/api/unsecured/__init__.py ✅ 100% → 100%
src/envoy/server/api/unsecured/health.py ✅ 48% → 48%
src/envoy/server/api/unsecured/version.py ✅ 100% → 100%
src/envoy/server/cache.py ✅ 93% → 93%
src/envoy/server/crud/__init__.py ✅ 100% → 100%
src/envoy/server/crud/aggregator.py ✅ 100% → 100%
src/envoy/server/crud/archive.py ✅ 100% → 100%
src/envoy/server/crud/auth.py ✅ 100% → 100%
src/envoy/server/crud/common.py ✅ 97% → 97%
src/envoy/server/crud/der.py ✅ 100% → 100%
src/envoy/server/crud/doe.py ✅ 100% → 100%
src/envoy/server/crud/health.py ✅ 88% → 88%
src/envoy/server/crud/log_event.py ✅ 100% → 100%
src/envoy/server/crud/pricing.py ✅ 100% → 100%
src/envoy/server/crud/response.py ✅ 100% → 100%
src/envoy/server/crud/server.py ✅ 100% → 100%
src/envoy/server/crud/site.py ✅ 100% → 100%
src/envoy/server/crud/site_reading.py ✅ 100% → 100%
src/envoy/server/crud/subscription.py ✅ 97% → 97%
src/envoy/server/database.py ✅ 100% → 100%
src/envoy/server/endpoint_exclusion.py ✅ 100% → 100%
src/envoy/server/exception.py ✅ 100% → 100%
src/envoy/server/lifespan.py ✅ 83% → 83%
src/envoy/server/main.py ✅ 98% → 98%
src/envoy/server/manager/__init__.py ✅ 100% → 100%
src/envoy/server/manager/der.py ✅ 99% → 99%
src/envoy/server/manager/der_constants.py ✅ 100% → 100%
src/envoy/server/manager/derp.py ✅ 100% → 100%
src/envoy/server/manager/device_capability.py ✅ 100% → 100%
src/envoy/server/manager/end_device.py ✅ 96% → 96%
src/envoy/server/manager/function_set_assignments.py ✅ 100% → 100%
src/envoy/server/manager/health.py ✅ 83% → 83%
src/envoy/server/manager/log_event.py ✅ 100% → 100%
src/envoy/server/manager/metering.py ✅ 99% → 99%
src/envoy/server/manager/nmi_validator.py ✅ 97% → 97%
src/envoy/server/manager/pricing.py ✅ 98% → 98%
src/envoy/server/manager/response.py ✅ 92% → 92%
src/envoy/server/manager/server.py ✅ 100% → 100%
src/envoy/server/manager/subscription.py ✅ 98% → 98%
src/envoy/server/manager/time.py ✅ 92% → 92%
src/envoy/server/mapper/__init__.py ✅ 100% → 100%
src/envoy/server/mapper/common.py ✅ 92% → 92%
src/envoy/server/mapper/constants.py ✅ 100% → 100%
src/envoy/server/mapper/csip_aus/__init__.py ✅ 100% → 100%
src/envoy/server/mapper/csip_aus/connection_point.py ✅ 100% → 100%
src/envoy/server/mapper/csip_aus/doe.py ✅ 98% → 98%
src/envoy/server/mapper/sep2/__init__.py ✅ 100% → 100%
src/envoy/server/mapper/sep2/der.py ✅ 100% → 100%
src/envoy/server/mapper/sep2/device_capability.py ✅ 100% → 100%
src/envoy/server/mapper/sep2/end_device.py ✅ 100% → 100%
src/envoy/server/mapper/sep2/function_set_assignments.py ✅ 100% → 100%
src/envoy/server/mapper/sep2/log_event.py ✅ 100% → 100%
src/envoy/server/mapper/sep2/metering.py ✅ 99% → 99%
src/envoy/server/mapper/sep2/mrid.py ✅ 91% → 91%
src/envoy/server/mapper/sep2/pricing.py ✅ 99% → 99%
src/envoy/server/mapper/sep2/pub_sub.py ✅ 93% → 93%
src/envoy/server/mapper/sep2/response.py ✅ 99% → 99%
src/envoy/server/model/__init__.py ✅ 100% → 100%
src/envoy/server/model/aggregator.py ✅ 100% → 100%
src/envoy/server/model/archive/__init__.py ✅ 100% → 100%
src/envoy/server/model/archive/base.py ✅ 100% → 100%
src/envoy/server/model/archive/doe.py ✅ 100% → 100%
src/envoy/server/model/archive/site.py ✅ 100% → 100%
src/envoy/server/model/archive/site_reading.py ✅ 100% → 100%
src/envoy/server/model/archive/subscription.py ✅ 100% → 100%
src/envoy/server/model/archive/tariff.py ✅ 100% → 100%
src/envoy/server/model/base.py ✅ 100% → 100%
src/envoy/server/model/config/server.py ✅ 100% → 100%
src/envoy/server/model/constants.py ✅ 100% → 100%
src/envoy/server/model/doe.py ✅ 100% → 100%
src/envoy/server/model/log.py ✅ 100% → 100%
src/envoy/server/model/response.py ✅ 100% → 100%
src/envoy/server/model/server.py ✅ 100% → 100%
src/envoy/server/model/site.py ✅ 100% → 100%
src/envoy/server/model/site_reading.py ✅ 100% → 100%
src/envoy/server/model/subscription.py ✅ 100% → 100%
src/envoy/server/model/tariff.py ✅ 100% → 100%
src/envoy/server/request_scope.py ✅ 98% → 98%
src/envoy/server/settings.py ✅ 98% → 98%
src/envoy/server/tasks.py ✅ 100% → 100%
src/envoy/settings.py ✅ 100% → 100%
TOTAL ✅ 91% → 91%

@joshvote joshvote merged commit 207072e into main Apr 28, 2026
12 checks passed
@joshvote joshvote deleted the nullablesitecontrolgroupfsaid branch April 28, 2026 01:33
joshvote added a commit that referenced this pull request Apr 29, 2026
* Tagging v1.3.6

* Added support for emulating shared DERControl mrids via display_id (#347)

* Initial skeleton

* Added mapping/test coverage

* Fixed test

* Add second aggregator to demo (#344)

* Improved pow10 multiplier validation (#345)

* wip

* add reset script to the demo folder. We can make this more complex later.

* add rebuild tls and db init

* black

* fix other tests

* ensure NMI validation in docker compose (#346)

* Blacklisting taskiq-aio-pika v0.6.0 (#348)

* Nullable SiteControlGroup fsa_id (#349)

* Added update admin API endpoint

* Fixed fsa_id None values appearing in FSA list

* Remaining fixes

* Fixed DERProgramList pollrate and notifications (#351)

* ensure NMI validation in docker compose

* wip

* wip

* WIP

* tests

* done

---------

Co-authored-by: Lachlan <161661313+LachlanJW@users.noreply.github.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