Skip to content

chore: resync with main#47

Merged
joecrowley-synergy merged 8 commits intocsipaus.org/ns/v1.3-beta/storagefrom
joe/213354-main-sync
Nov 10, 2025
Merged

chore: resync with main#47
joecrowley-synergy merged 8 commits intocsipaus.org/ns/v1.3-beta/storagefrom
joe/213354-main-sync

Conversation

@joecrowley-synergy
Copy link
Collaborator

@joecrowley-synergy joecrowley-synergy commented Nov 10, 2025

inludes the update with envoy schema and hexbinary string validation.

Closes AB#213354

LachlanJW and others added 8 commits November 7, 2025 12:36
Postman instructions referenced 'testclient.p12' when instead it should be 'testdevice.p12'
* wip

* filter function to be called on routers before installation on app, setting for per endpoint exclusion, basic tests

* lint

* docs, 3.9 compat

* add int tests using format str literals
* setting for dis/allowing updates to nmi via CP resource, readme updated + basic tests

* lint

* Update pyproject.toml

---------

Co-authored-by: Joshua Vote <jjvote@gmail.com>
…ary (bsgip#302)

* feat: test case to show off 400 instead of 500 for unparseable hexbinary

* chore: reworded test docstring

* fix: envoy-schema git source temporary change

* fix: updated tests to ensure hexbinary fields have compliant characters only

* chore: changed envoy schema to latest version 0.28.0
@joecrowley-synergy
Copy link
Collaborator Author

✅ Code coverage on joe/213354-main-sync is at 92% (compared to csipaus.org/ns/v1.3-beta/storage being at 92%)

File Reductions

File Details
src/envoy/server/api/csip_aus/connection_point.py 🔻 5% (69% → 64%)

Coverage for new files

File Details
src/envoy/server/api/depends/allow_nmi_updates.py ✅ Coverage at 100%
src/envoy/server/endpoint_exclusion.py ✅ Coverage at 100%

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 ✅ 81% → 81%
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 ✅ 86% → 86%
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 ✅ 56% → 56%
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 ✅ 72% → 72%
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% → 91%
src/envoy/notification/crud/batch.py ✅ 97% → 98%
src/envoy/notification/crud/common.py ✅ 100% → 100%
src/envoy/notification/exception.py ✅ 100% → 100%
src/envoy/notification/handler.py ✅ 93% → 93%
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 ✅ 97% → 97%
src/envoy/notification/task/transmit.py ✅ 95% → 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 🔻 5% (69% → 64%)
src/envoy/server/api/depends/allow_nmi_updates.py 🆕 100%
src/envoy/server/api/depends/azure_ad_auth.py ✅ 94% → 94%
src/envoy/server/api/depends/default_doe.py ✅ 100% → 100%
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 ✅ 93% → 93%
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 ✅ 86% → 86%
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%
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 ✅ 95% → 95%
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 ✅ 100% → 100%
src/envoy/server/manager/nmi_validator.py ✅ 97% → 97%
src/envoy/server/manager/pricing.py ✅ 98% → 98%
src/envoy/server/manager/response.py ✅ 96% → 96%
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 ✅ 99% → 99%
src/envoy/server/mapper/sep2/__init__.py ✅ 100% → 100%
src/envoy/server/mapper/sep2/der.py ✅ 99% → 99%
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 ✅ 98% → 98%
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/default_doe.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 ✅ 92% → 92%

@joecrowley-synergy joecrowley-synergy merged commit 203a55f into csipaus.org/ns/v1.3-beta/storage Nov 10, 2025
15 checks passed
@joecrowley-synergy joecrowley-synergy deleted the joe/213354-main-sync branch November 10, 2025 05:12
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.

5 participants