Skip to content

Add Google account emoji pairing for Google Messages - #18

Merged
Phloraxx merged 1 commit into
mainfrom
feature/gmessages-gaia-pairing
Jul 26, 2026
Merged

Add Google account emoji pairing for Google Messages#18
Phloraxx merged 1 commit into
mainfrom
feature/gmessages-gaia-pairing

Conversation

@Phloraxx

Copy link
Copy Markdown
Owner

Summary

Updates the optional Google Messages/libgm connector to match the current upstream pairing flow.

Primary flow

  • Google-account/Gaia pairing
  • accepts the upstream-required Google cookie set from cookie JSON, a raw Cookie: header, or a browser DevTools Copy-as-cURL request
  • filters input down to only the seven cookie names upstream uses
  • fetches Messages Web config, starts Gaia pairing, displays the derived emoji, waits for the phone response, persists the completed AuthData, then reconnects
  • keeps account/pairing state visible only to authenticated operator views

Fallback

  • retains QR pairing and automatic refresh under explicit /pair/qr routes
  • preserves the original QR endpoints as backward-compatible aliases

Safety/lifecycle

  • cookie values are never logged or echoed
  • failed/incomplete pairing is not persisted
  • valid Google-account sessions require the complete required cookie set
  • concurrent Google/QR pairing attempts are rejected
  • in-progress pairing cancellation does not call the remote-unpair RPC intended for completed sessions
  • connector remains read-only and payment verification remains independent of libgm

Validation

  • frontend npm ci, audit, typecheck and production build passed
  • uncached Go suite passed
  • race detector passed
  • go vet passed
  • staticcheck passed
  • govulncheck reports no reachable vulnerabilities
  • clean production Docker build passed
  • production-shaped container with GMESSAGES_ENABLED=true starts healthy/unpaired

Live phone emoji confirmation remains the final device acceptance test after deployment.

@Phloraxx
Phloraxx merged commit 79dfa63 into main Jul 26, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant