Summary
Migrate Google Chat adapter trust configuration from gateway env vars to a first-class [googlechat] section in config.toml.
Current State
- Gateway env vars only (
GATEWAY_ALLOW_ALL_USERS, GATEWAY_ALLOWED_USERS)
- No per-platform granularity for Google Chat
Target State
[googlechat]
allowed_users = ["users/123456789", "users/987654321"]
# allow_all_users = true # explicit opt-in only
Tasks
Notes
- Sender ID format: user resource name (e.g.,
"users/123456789")
- L1 auth: JWT (RS256) verified via Google JWKS; email claim =
chat@system.gserviceaccount.com
Refs
Summary
Migrate Google Chat adapter trust configuration from gateway env vars to a first-class
[googlechat]section inconfig.toml.Current State
GATEWAY_ALLOW_ALL_USERS,GATEWAY_ALLOWED_USERS)Target State
Tasks
[googlechat]section to config schema (feat(trust): [wecom]/[googlechat]/[teams] first-class trust sections (Phase 1) #1366)PlatformTrustConfigsregistry (feat(trust): [wecom]/[googlechat]/[teams] first-class trust sections (Phase 1) #1366 — embedded/unified path)is_botderivation: implemented —user_type == "BOT"from the native Chat API field (adapters/googlechat.rs:564); bot events are dropped pre-dispatch, so theInboundEvent.is_botfield is false-by-construction downstreamgateway.rsDenyIdentity→ throttled request-access echo via the adapter'ssend_message, which posts throughspaces.messages.create)config.toml.example(feat(trust): [wecom]/[googlechat]/[teams] first-class trust sections (Phase 1) #1366)Notes
"users/123456789")chat@system.gserviceaccount.comRefs