1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
//! γ port-and-adapter SDK boundary for bearer-token verification.
//!
//! Phase 6.1 — D-04 = γ (locked 2026-05-05). Phase A
//! (RFC `RFC_2026-05-08_app-credential-collapse.md`, audit decision E)
//! lifted the cohesive group from `pas_external::token::*` to here so
//! multiple SDK crates and 1st-party services share one definition.
//!
//! The SDK exposes a [`BearerVerifier`] trait + [`VerifiedClaims`]
//! result, hiding the engine ([`ppoppo_token`]), the token format (JWT,
//! RFC 9068), and the JWKS substrate behind a single async port.
//! External Developer apps inject `Arc<dyn BearerVerifier>` into their
//! middleware and never see `jsonwebtoken::*` types.
//!
//! Module layout (cohesive group, audit decision E):
//!
//! - [`port`] — `BearerVerifier` trait
//! - [`claims`] — `VerifiedClaims` (was `AuthSession` — audit decision G)
//! - [`config`] — `VerifyConfig` (was `Expectations` — audit decision G)
//! - [`error`] — `VerifyError` crypto-side enum
//! - [`jwks_cache`] — `JwksCache` (visibility lifted to `pub` in Phase A)
//! - [`jwt`] — `JwtVerifier` production adapter (was `PasJwtVerifier` — audit decision G)
//! - [`memory`] — `MemoryBearerVerifier` test-support adapter
pub use VerifiedClaims;
pub use VerifyConfig;
pub use VerifyError;
pub use BearerVerifier;
pub use JwksCache;
pub use JwtVerifier;
pub use MemoryBearerVerifier;