feat(oauth-client): wire pipeline runner and ClientCmd::run to discovery stage
Implement Task 3 of Phase 3: complete the OAuth client command wiring by adding
the pipeline orchestrator and hooking ClientCmd::run to execute the discovery
stage and render results.
Adds to pipeline.rs:
- OauthClientOptions: carries http client and verbose flag for pipeline stages
- OauthClientReport: newtype wrapping LabelerReport, maintaining compatibility
- run_pipeline: async orchestrator that runs discovery stage, records all
results, and returns a report ready for rendering
Updates ClientCmd::run to:
- Construct shared reqwest client with rustls + 10s timeout + USER_AGENT
- Parse target via pipeline::parse_target (surfacing diagnostic errors)
- Build RealHttpClient from shared client
- OR-combine CLI and command-level --no-color flags
- Execute pipeline and render report to stdout
- Handle interactive mode placeholder (prints TODO, proceeds as static)
- Return exit code from report (0 for pass, 1 for spec violation, 2 for
network error)
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>