Skip to content

Conversation

RustedBones
Copy link
Contributor

Add scenario for testing USS availability status update conflict.

The 409 conflict code is not part of the official ASTM-UTM spec. This might need to be moved to interuss package.

@RustedBones RustedBones force-pushed the uss-qualifier-availability branch from b85bedd to 5f300f8 Compare August 28, 2025 15:13
@RustedBones
Copy link
Contributor Author

Run passed with a local image built with interuss/dss#1245

2025-08-28 15:17:57.927 | INFO     | monitoring.uss_qualifier.suites.suite:_run_test_scenario:155 - Running "ASTM Availability DSS: USS Availability Simple" scenario...
2025-08-28 15:17:57.940 | INFO     | monitoring.uss_qualifier.suites.suite:_run_test_scenario:173 - SUCCESS for "ASTM Availability DSS: USS Availability Simple" scenario

Copy link
Contributor

@Shastick Shastick left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Somehow ended on this PR and did not realize it's still a draft: consider my comments as FYIs if you're still working on these things :)

Comment on lines 664 to 674
availability_response, get_avail_query = dss.get_uss_availability(
uss_sub,
scope=Scope.AvailabilityArbitration,
)
scenario.record_query(get_avail_query)
availability_version, set_avail_query = dss.set_uss_availability(
uss_sub,
True,
availability_response.version,
)
scenario.record_query(avail_query)
scenario.record_query(set_avail_query)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure we should be issuing a GET for the availability within this set_uss_available() fragment: I understand why we would want to do it, but I think this would deserve at least a separate check?

Above, we probably want to have a first check that confirms we can obtain the availability (and call the check "USS availability can be successfully obtained"), and have a separate check that confirms we can set it.

Possibly these check can be moved to separate fragments, and composed together in another new fragment.

Note: doing multiple things in a single step or check might have been more common in the past (hence some code samples that you may use as a starting point may do that). If you see spots where we still do this, it's worth keeping track of them in an issue, or cleaning them up right away when that's easy

Comment on lines 13 to 15
### client_identity

[`ClientIdentityResource`](../../../../resources/communications/client_identity.py) the client identity that will be used to report the availability status.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Worth noting here that the client identity should include the the availability arbitration scope

@RustedBones RustedBones force-pushed the uss-qualifier-availability branch 2 times, most recently from 93bc25d to 43376c2 Compare September 9, 2025 12:56
Comment on lines +7 to +9
## [Availability can be read](./dss/fragments/availability/read.md)

## [Availability can be updated](./dss/fragments/availability/update.md)
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Shastick there are already existing fragments for USS availability in the dss subfolder.
I tried to reuse them here but I don't think the folder layout is appropriate in that case.

Any suggestion on how to do that in a better way ?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In what sense is the folder layout not appropriate? You can split/reorganize/rename them if needed. (but it can also happen in another PR, or be tracked with an issue).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the get_uss_availability and set_uss_availability implementing the read and update fragments should be moved closer to the doc.

I'll extract the changes to another PR

get old version before updating availability

fix test check mismatch

fix doc OVN/version naming

record all queries

factorize fragments
@RustedBones RustedBones force-pushed the uss-qualifier-availability branch from 43376c2 to d9641fc Compare September 9, 2025 13:26
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.

2 participants