Files
flynn/docs/plans/2026-02-16-google-chat-channel-adapter-checklist.md
T
2026-02-16 02:08:00 -08:00

1.8 KiB

Google Chat Channel Adapter Checklist

Date: 2026-02-16 Status: completed

Scope

  • Add a first-class Google Chat channel adapter.
  • Support inbound event handling and outbound message replies through Google Chat REST API.

Completed

  • Added GoogleChatAdapter in src/channels/googleChat/adapter.ts:
    • inbound webhook handling for POST /google-chat/events
    • optional webhook token validation (google_chat.webhook_token)
    • mention-aware room message gating with DM bypass
    • optional space allowlist (allowed_space_names)
    • outbound send to chat.googleapis.com using service-account OAuth token flow
    • reply routing via encoded metadata.replyPeerId
  • Registered channel exports:
    • src/channels/googleChat/index.ts
    • src/channels/index.ts
  • Added config schema support in src/config/schema.ts:
    • google_chat.service_account_key_file
    • google_chat.service_account_json
    • google_chat.webhook_token
    • google_chat.allowed_space_names
    • google_chat.require_mention
  • Wired daemon + gateway integration:
    • registration in src/daemon/channels.ts
    • gateway Google Chat route handling in src/gateway/server.ts (POST /google-chat/events)
  • Updated service discovery + docs:
    • src/gateway/handlers/services.ts
    • README.md
    • config/default.yaml
    • docs/api/PROTOCOL.md
    • redaction coverage for service_account_json in src/cli/shared.ts
  • Added tests:
    • src/channels/googleChat/adapter.test.ts
    • src/config/schema.test.ts (google_chat schema coverage)
    • src/gateway/handlers/services.test.ts (google_chat service status)
    • src/cli/shared.test.ts (service_account_json redaction)

Verification

  • pnpm test:run src/channels/googleChat/adapter.test.ts src/config/schema.test.ts src/gateway/handlers/services.test.ts src/cli/shared.test.ts
  • pnpm typecheck