Parent tracker: #62
Spec: docs/superpowers/specs/2026-05-21-edge-case-hardening-design.md
Milestone: P3
Goal
Create the new oauth_flow detector and register it. The detector recognises OAuth/OIDC authorization-code flow construction across the supported libraries so P3.2–P3.5 classifier rules can flag PKCE / state / nonce / redirect_uri risks.
Acceptance criteria
Files touched
crates/sessionscope-detectors/src/oauth_flow/mod.rs (new)
crates/sessionscope-detectors/src/registry.rs (register)
crates/sessionscope-model/src/artifact.rs (conditional — only if new artifact type lands)
Audit-then-decide
- Artifact-type decision flagged for the consolidated P4.8 audit.
- No new finding category from this issue — findings land in P3.2–P3.5.
Doc-update checklist
Parent tracker: #62
Spec:
docs/superpowers/specs/2026-05-21-edge-case-hardening-design.mdMilestone: P3
Goal
Create the new
oauth_flowdetector and register it. The detector recognises OAuth/OIDC authorization-code flow construction across the supported libraries so P3.2–P3.5 classifier rules can flag PKCE / state / nonce / redirect_uri risks.Acceptance criteria
crates/sessionscope-detectors/src/oauth_flow/mod.rs.crates/sessionscope-detectors/src/registry.rs.passport-oauth2strategy configurationopenid-clientIssuer.discover/client.authorizationUrlcallsnext-authprovider blocks (OAuthProvider,OIDCProvider)authlibOAuth2Client,OAuth2Session,OAuthregistrycrypto.randomBytes(...)/secrets.token_urlsafe(...)near identifiers namedstate,nonce,code_verifier,code_challenge.oauth_auth_code_flowor reuse an existing one (e.g.,session_recordoropaque_bearer_token) — flag for the consolidated P4.8 audit if a new artifact type is required.Files touched
crates/sessionscope-detectors/src/oauth_flow/mod.rs(new)crates/sessionscope-detectors/src/registry.rs(register)crates/sessionscope-model/src/artifact.rs(conditional — only if new artifact type lands)Audit-then-decide
Doc-update checklist
docs/USAGE.mdnotes the new detector under a new "OAuth/OIDC flow" subsection.