feat(oauth-client): orchestrate scope-variations and dpop-edges sub-stages from interactive stage
Extends interactive.rs run() to wire scope_variations and dpop_edges sub-stages
after the Phase 7 happy-path flow. Both sub-stages run against the same fake AS
server, allowing flows to share the server lifetime.
Adds gate tables for both sub-stages:
- scope_variations depends on scope_present, grant_types_includes_authorization_code,
and dpop_bound_required checks
- dpop_edges depends on the above plus response_types_is_code
When gates fail, emits blocked_by results for all 6 checks in each sub-stage,
referencing the first failing gate check ID. When gates pass, runs the sub-stage
and extends results with its check outcomes.
Updates StaticGating struct in pipeline.rs to include response_types_is_code field
and wires it into the static gating scan logic.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>