Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions NEXT_RELEASE_NOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,12 @@ The release notes should contain at least the following sections:

* For any uss_qualifier test configurations using any of the test suites `suites.astm.utm.f3548_21`, `suites.faa.uft.message_signing`, `suites.uspace.flight_auth`, or `suites.uspace.required_services`, the following resources must be changed:
* A new required resource named `conflicting_flights_provider` must be provided. It must be a `resources.resource.ResourceProvidingResource` providing `resources.flight_planning.FlightIntentsResource` instances with spatially separated flight intents for each planner combination used by `ConflictEqualPriorityNotPermitted`. One suitable implementation is `resources.geospatial.TriangularCascadeSoutheastResource` with `conflicting_flights` as its `base_resource`; see [f3548_self_contained](./monitoring/uss_qualifier/configurations/dev/f3548_self_contained.yaml) for an example.
* A new required resource named `non_conflicting_flights_provider` must be provided. It must be a `resources.resource.ResourceProvidingResource[resources.flight_planning.FlightIntentsResource]` providing spatially separated flight intents for each DSS instance used in the `dss_probing` test suite. One suitable implementation is `resources.geospatial.TriangularCascadeSoutheastResource` with `non_conflicting_flights` as its `base_resource`; see [f3548_self_contained](./monitoring/uss_qualifier/configurations/dev/f3548_self_contained.yaml) for an example.
* A new required resource named `planning_area_provider` must be provided to replace `planning_area`. It must be a `resources.resource.ResourceProvidingResource` providing `resources.planning_area.PlanningAreaResource` instances with spatially separated planning areas for each DSS instance used in the `dss_probing` test suite. One suitable implementation is `resources.geospatial.TriangularCascadeSoutheastResource` with `planning_area` as its `base_resource`; see [f3548_self_contained](./monitoring/uss_qualifier/configurations/dev/f3548_self_contained.yaml) for an example. The existing `planning_area` suite input is no longer used except by `suites.uspace.required_services`, which still requires it for NetRID tests. Keep any underlying planning area resource used as the provider's `base_resource`.

## Optional migration tasks

* For uss_qualifier test configurations using `suites.astm.utm.f3548_21`, `suites.faa.uft.message_signing`, `suites.uspace.flight_auth`, or `suites.uspace.required_services`, the `conflicting_flights` input is now optional and its suite resource mapping can be removed. By default, `f3548_21` selects index 0 from `conflicting_flights_provider`. An explicitly supplied `conflicting_flights` still overrides this default for now. Keep any base flight resource declaration needed by the provider.
* For the same test suites, the `non_conflicting_flights` input is now optional and its suite resource mapping can be removed. By default, `f3548_21` selects index 0 from `non_conflicting_flights_provider` for scenarios using a single set of flight intents. An explicitly supplied `non_conflicting_flights` still overrides this default for now; `dss_probing` always uses the provider's per-DSS flight intents. Keep any base flight resource declaration needed by the provider.

## Important information
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ v1:
conflicting_flights_provider: conflicting_flights_provider
priority_preemption_flights_provider: conflicting_flights_provider
invalid_flight_intents: invalid_flight_intents
non_conflicting_flights: non_conflicting_flights
non_conflicting_flights_provider: non_conflicting_flights_provider
dss: dss
dss_instances: dss_instances
interuss_dss_instances: dss_instances
Expand Down Expand Up @@ -296,6 +296,15 @@ v1:
degrees_east: -96.7587
meters_up: 93

# Provide spatially separated non-conflicting flights for each DSS instance
non_conflicting_flights_provider:
resource_type: resources.geospatial.TriangularCascadeSoutheastResource
dependencies:
base_resource: non_conflicting_flights
specification:
meters_east_margin: 10000
meters_north_margin: 10000

# How to execute a test run using this configuration
execution:
# Since we want to stop execution immediately if there are any unexpected failed checks, we set this parameter to
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -415,6 +415,15 @@ che_non_conflicting_flights:
degrees_east: 7.4774
meters_up: 605

che_non_conflicting_flights_provider:
$content_schema: monitoring/uss_qualifier/resources/definitions/ResourceDeclaration.json
resource_type: resources.geospatial.TriangularCascadeSoutheastResource
dependencies:
base_resource: che_non_conflicting_flights
specification:
meters_east_margin: 10000
meters_north_margin: 10000

# ===== General flight authorization =====

example_flight_check_table:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ v1:
che_conflicting_flights_provider: {$ref: 'library/resources.yaml#/che_conflicting_flights_provider'}
che_invalid_flight_intents: {$ref: 'library/resources.yaml#/che_invalid_flight_intents'}
che_non_conflicting_flights: {$ref: 'library/resources.yaml#/che_non_conflicting_flights'}
che_non_conflicting_flights_provider: {$ref: 'library/resources.yaml#/che_non_conflicting_flights_provider'}
che_problematically_big_area: {$ref: 'library/resources.yaml#/che_problematically_big_area'}
che_planning_area_volume: {$ref: 'library/resources.yaml#/che_planning_area_volume'}
che_planning_area: {$ref: 'library/resources.yaml#/che_planning_area'}
Expand Down Expand Up @@ -55,7 +56,7 @@ v1:
combination_selector: combination_selector
conflicting_flights_provider: che_conflicting_flights_provider
invalid_flight_intents: che_invalid_flight_intents
non_conflicting_flights: che_non_conflicting_flights
non_conflicting_flights_provider: che_non_conflicting_flights_provider
priority_preemption_flights_provider: che_conflicting_flights_provider
dss: scd_dss
dss_instances: scd_dss_instances
Expand Down
5 changes: 3 additions & 2 deletions monitoring/uss_qualifier/configurations/dev/uspace.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ v1:
che_invalid_flight_intents: {$ref: 'library/resources.yaml#/che_invalid_flight_intents'}
che_invalid_flight_auth_flights: {$ref: 'library/resources.yaml#/che_invalid_flight_auth_flights'}
che_non_conflicting_flights: {$ref: 'library/resources.yaml#/che_non_conflicting_flights'}
che_non_conflicting_flights_provider: {$ref: 'library/resources.yaml#/che_non_conflicting_flights_provider'}
che_planning_area_volume: {$ref: 'library/resources.yaml#/che_planning_area_volume'}
che_planning_area: {$ref: 'library/resources.yaml#/che_planning_area'}
netrid_observation_evaluation_configuration: {$ref: 'library/resources.yaml#/netrid_observation_evaluation_configuration'}
Expand Down Expand Up @@ -64,7 +65,7 @@ v1:
priority_preemption_flights_provider: che_conflicting_flights_provider
invalid_flight_intents: che_invalid_flight_intents
invalid_flight_auth_flights: che_invalid_flight_auth_flights
non_conflicting_flights: che_non_conflicting_flights
non_conflicting_flights_provider: che_non_conflicting_flights_provider
flight_planners: all_flight_planners?
mock_uss: mock_uss_instance_uss6
mock_uss_dp: mock_uss_instance_dp
Expand Down Expand Up @@ -102,7 +103,7 @@ v1:
priority_preemption_flights_provider: priority_preemption_flights_provider
invalid_flight_intents: invalid_flight_intents
invalid_flight_auth_flights: invalid_flight_auth_flights
non_conflicting_flights: non_conflicting_flights
non_conflicting_flights_provider: non_conflicting_flights_provider
flight_planners: flight_planners?
mock_uss: mock_uss
mock_uss_dp: mock_uss_dp
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ function(env) {
conflicting_flights_provider: 'conflicting_flights_provider',
priority_preemption_flights_provider: 'conflicting_flights_provider',
invalid_flight_intents: 'invalid_flight_intents',
non_conflicting_flights: 'non_conflicting_flights',
non_conflicting_flights_provider: 'non_conflicting_flights_provider',
test_exclusions: 'test_exclusions',
dss: 'dss',
dss_instances: 'dss_instances',
Expand Down Expand Up @@ -267,6 +267,18 @@ function(env) {
},
},

// Provide spatially separated non-conflicting flights for each DSS instance
non_conflicting_flights_provider: {
resource_type: 'resources.geospatial.TriangularCascadeSoutheastResource',
dependencies: {
base_resource: 'non_conflicting_flights',
},
specification: {
meters_east_margin: 10000,
meters_north_margin: 10000,
},
},

// Name of the system under test for which the system version should be obtained from participants who provide version information
system_identity: {
resource_type: 'resources.versioning.SystemIdentityResource',
Expand Down
15 changes: 11 additions & 4 deletions monitoring/uss_qualifier/suites/astm/utm/f3548_21.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,15 @@ resources:
interuss_dss_instances: resources.astm.f3548.v21.DSSInstancesResource?
dss_datastore_cluster: resources.interuss.datastore.DatastoreDBClusterResource?

# This input is DEPRECATED and may be removed in future versions.
# These inputs are DEPRECATED and may be removed in future versions.
conflicting_flights: resources.flight_planning.FlightIntentsResource?
non_conflicting_flights: resources.flight_planning.FlightIntentsResource?

conflicting_flights_provider: resources.resource.ResourceProvidingResource[resources.flight_planning.FlightIntentsResource]
priority_preemption_flights_provider: resources.resource.ResourceProvidingResource[resources.flight_planning.FlightIntentsResource]?
non_conflicting_flights_provider: resources.resource.ResourceProvidingResource[resources.flight_planning.FlightIntentsResource]

invalid_flight_intents: resources.flight_planning.FlightIntentsResource
non_conflicting_flights: resources.flight_planning.FlightIntentsResource
nominal_planning_selector: resources.flight_planning.FlightPlannerCombinationSelectorResource?
priority_planning_selector: resources.flight_planning.FlightPlannerCombinationSelectorResource?
utm_auth: resources.communications.AuthAdapterResource?
Expand All @@ -43,6 +44,12 @@ local_resources:
dependencies:
base_resource: id_generator
specification: {}
non_conflicting_flights:
resource_type: resources.resource.SingularResource[resources.flight_planning.FlightIntentsResource]
dependencies:
provider: non_conflicting_flights_provider
specification:
index: 0
conflicting_flights:
resource_type: resources.resource.SingularResource[resources.flight_planning.FlightIntentsResource]
dependencies:
Expand All @@ -64,7 +71,7 @@ local_resources:
environments: dss_environments
planning_area: planning_area_provider
id_generator: id_generator_provider
# TODO: populate flight_intents from non_conflicting_flights_provider
flight_intents: non_conflicting_flights_provider
specification: {}
priority_preemption_combinations:
resource_type: resources.combinations.ResourceCombinationsResource
Expand Down Expand Up @@ -95,6 +102,7 @@ local_resources:
flight_intents_environments:
resource_type: resources.environments.ConcatenatedResourceEnvironmentsResource
dependencies:
dss_probing: dss_probing_environments
priority_preemption: priority_preemption_environments?
equal_priority_conflict: equal_priority_conflict_environments
specification: {}
Expand Down Expand Up @@ -125,7 +133,6 @@ actions:
dss_datastore_cluster: dss_datastore_cluster?
second_utm_auth: second_utm_auth?
utm_client_identity: utm_client_identity
flight_intents: non_conflicting_flights
problematically_big_area: problematically_big_area
test_exclusions: test_exclusions?
specification:
Expand Down
9 changes: 5 additions & 4 deletions monitoring/uss_qualifier/suites/faa/uft/message_signing.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@ resources:
dss_instances: resources.astm.f3548.v21.DSSInstancesResource?
dss_datastore_cluster: resources.interuss.datastore.DatastoreDBClusterResource?

# This input is DEPRECATED and may be removed in future versions.
# These inputs are DEPRECATED and may be removed in future versions.
conflicting_flights: resources.flight_planning.FlightIntentsResource?

non_conflicting_flights: resources.flight_planning.FlightIntentsResource
non_conflicting_flights: resources.flight_planning.FlightIntentsResource?

conflicting_flights_provider: resources.resource.ResourceProvidingResource[resources.flight_planning.FlightIntentsResource]
priority_preemption_flights_provider: resources.resource.ResourceProvidingResource[resources.flight_planning.FlightIntentsResource]?
non_conflicting_flights_provider: resources.resource.ResourceProvidingResource[resources.flight_planning.FlightIntentsResource]

invalid_flight_intents: resources.flight_planning.FlightIntentsResource
id_generator: resources.interuss.IDGeneratorResource
Expand All @@ -33,7 +33,8 @@ actions:
mock_uss: mock_uss
conflicting_flights: conflicting_flights?
conflicting_flights_provider: conflicting_flights_provider
non_conflicting_flights: non_conflicting_flights
non_conflicting_flights: non_conflicting_flights?
non_conflicting_flights_provider: non_conflicting_flights_provider
priority_preemption_flights_provider: priority_preemption_flights_provider?
flight_planners: flight_planners
flight_planners_to_clear: flight_planners
Expand Down
8 changes: 5 additions & 3 deletions monitoring/uss_qualifier/suites/uspace/flight_auth.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,16 @@ resources:
test_env_version_providers: resources.versioning.VersionProvidersResource?
prod_env_version_providers: resources.versioning.VersionProvidersResource?

# This input is DEPRECATED and may be removed in future versions.
# These inputs are DEPRECATED and may be removed in future versions.
conflicting_flights: resources.flight_planning.FlightIntentsResource?
non_conflicting_flights: resources.flight_planning.FlightIntentsResource?

conflicting_flights_provider: resources.resource.ResourceProvidingResource[resources.flight_planning.FlightIntentsResource]
priority_preemption_flights_provider: resources.resource.ResourceProvidingResource[resources.flight_planning.FlightIntentsResource]?
non_conflicting_flights_provider: resources.resource.ResourceProvidingResource[resources.flight_planning.FlightIntentsResource]

invalid_flight_auth_flights: resources.flight_planning.FlightIntentsResource
invalid_flight_intents: resources.flight_planning.FlightIntentsResource
non_conflicting_flights: resources.flight_planning.FlightIntentsResource
flight_planners: resources.flight_planning.FlightPlannersResource?
mock_uss: resources.interuss.mock_uss.client.MockUSSResource?
dss: resources.astm.f3548.v21.DSSInstanceResource
Expand All @@ -35,7 +36,8 @@ actions:
conflicting_flights_provider: conflicting_flights_provider
priority_preemption_flights_provider: priority_preemption_flights_provider?
invalid_flight_intents: invalid_flight_intents
non_conflicting_flights: non_conflicting_flights
non_conflicting_flights: non_conflicting_flights?
non_conflicting_flights_provider: non_conflicting_flights_provider
flight_planners: flight_planners?
flight_planners_to_clear: flight_planners?
mock_uss: mock_uss
Expand Down
8 changes: 5 additions & 3 deletions monitoring/uss_qualifier/suites/uspace/required_services.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,16 @@ resources:
test_env_version_providers: resources.versioning.VersionProvidersResource?
prod_env_version_providers: resources.versioning.VersionProvidersResource?

# This input is DEPRECATED and may be removed in future versions.
# These inputs are DEPRECATED and may be removed in future versions.
conflicting_flights: resources.flight_planning.FlightIntentsResource?
non_conflicting_flights: resources.flight_planning.FlightIntentsResource?

conflicting_flights_provider: resources.resource.ResourceProvidingResource[resources.flight_planning.FlightIntentsResource]
priority_preemption_flights_provider: resources.resource.ResourceProvidingResource[resources.flight_planning.FlightIntentsResource]?
non_conflicting_flights_provider: resources.resource.ResourceProvidingResource[resources.flight_planning.FlightIntentsResource]

invalid_flight_intents: resources.flight_planning.FlightIntentsResource
invalid_flight_auth_flights: resources.flight_planning.FlightIntentsResource
non_conflicting_flights: resources.flight_planning.FlightIntentsResource
flight_planners: resources.flight_planning.FlightPlannersResource?
mock_uss: resources.interuss.mock_uss.client.MockUSSResource?
mock_uss_dp: resources.interuss.mock_uss.client.MockUSSResource?
Expand Down Expand Up @@ -57,7 +58,8 @@ actions:
priority_preemption_flights_provider: priority_preemption_flights_provider?
invalid_flight_intents: invalid_flight_intents
invalid_flight_auth_flights: invalid_flight_auth_flights
non_conflicting_flights: non_conflicting_flights
non_conflicting_flights: non_conflicting_flights?
non_conflicting_flights_provider: non_conflicting_flights_provider
flight_planners: flight_planners?
mock_uss: mock_uss
dss: scd_dss
Expand Down
Loading