Conversation
Splits the ~210-line monolith into four named private steps - cached_auth_for_scope (cache lookup), login (reauth-with-available-auth or fresh plugin login, including AuthReceipt retry), finalize_scope (rescope/cache the resolved token), and apply_catalog_from_auth (project the token catalog into the session) - with the public method reduced to a thin orchestrator. Behavior is unchanged. cached_auth_for_scope is now a plain sync fn, independently unit tested (hit / miss / renew_auth-forces-miss) against the existing MockServer-backed test harness without needing to drive the rest of the auth flow. Evaluated and dropped introducing an openstack_sdk::Session trait (the other item from this pass): codegen hard-pins every generated CLI/TUI call site to &mut AsyncOpenStack, so the trait could only ever cover two small hand-written orchestration functions - not worth a new public SDK trait for. Assisted-By: Claude Sonnet 5 <noreply@anthropic.com> Signed-off-by: Artem Goncharov <artem.goncharov@gmail.com>
Open
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Splits the ~210-line monolith into four named private steps -
cached_auth_for_scope (cache lookup), login (reauth-with-available-auth
or fresh plugin login, including AuthReceipt retry), finalize_scope
(rescope/cache the resolved token), and apply_catalog_from_auth
(project the token catalog into the session) - with the public method
reduced to a thin orchestrator. Behavior is unchanged.
cached_auth_for_scope is now a plain sync fn, independently unit
tested (hit / miss / renew_auth-forces-miss) against the existing
MockServer-backed test harness without needing to drive the rest of
the auth flow.
Evaluated and dropped introducing an openstack_sdk::Session trait
(the other item from this pass): codegen hard-pins every generated
CLI/TUI call site to &mut AsyncOpenStack, so the trait could only ever
cover two small hand-written orchestration functions - not worth a
new public SDK trait for.
Assisted-By: Claude Sonnet 5 noreply@anthropic.com
Signed-off-by: Artem Goncharov artem.goncharov@gmail.com