{"repo":"NousResearch/hermes-agent","public_id":"91437","display_label":"Google Chat dependency and auth fixes","summary":"These issues and pull requests address missing or improperly declared optional dependencies for the Google Chat adapter, particularly in Docker and sealed hosted images, along with improvements to auth failure messaging.","subsystem":"environments","counts":{"members":6,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":2,"attempt_prs":3},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":110418},"resolution":{"state":"resolved","by":"pr-122001"},"freshness":{"state":"verified","last_verified_at":"2026-09-25T00:27:42+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.3333333333333333},"fix_edges":[{"issue_number":91437,"pr_number":110418,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false},{"issue_number":91437,"pr_number":122001,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":91710,"pr_number":122001,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":92220,"pr_number":122001,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":93204,"pr_number":122001,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true}],"members":[{"kind":"issue","number":91437,"title":"Docker image: google-cloud-pubsub missing from image, causes google_chat adapter to fail with misleading SA key invalid/revoked status","url":null,"state":"closed"},{"kind":"pr","number":91468,"title":"fix(gateway): declare google-chat lazy dependencies, pyproject extra and docker sync","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"afe06f21f45f476c25034c4529818d9a2f9fdf1c","number":0},{"kind":"pr","value":"#110418","number":110418}],"category":"superseded_by_pr","implication":"superseded"},"merged":false},{"kind":"pr","number":109055,"title":"fix(google-chat): install optional deps on sealed hosted images","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"afe06f21f45f476c25034c4529818d9a2f9fdf1c","number":0},{"kind":"pr","value":"#110418","number":110418}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":110418,"title":"fix(google-chat): optional deps install on sealed hosted images (#91437, salvage #109055)","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["Dockerfile","plugins/platforms/google_chat/adapter.py","plugins/platforms/google_chat/oauth.py","pyproject.toml","tests/gateway/test_google_chat_oauth_dependencies.py","tests/gateway/test_platform_registry.py","tests/test_project_metadata.py","tools/lazy_deps.py","website/docs/user-guide/messaging/google_chat.md","website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/user-guide/messaging/google_chat.md"]},{"kind":"pr","number":110517,"title":"fix(google-chat): avoid guessing auth failure cause","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#122001","number":122001}],"category":"superseded_by_pr","implication":"superseded"},"merged":false},{"kind":"pr","number":122001,"title":"fix(desktop): full-res images, google-chat status, profile unread dots, terminal artifacts","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["apps/desktop/src/app/artifacts/artifact-utils.ts","apps/desktop/src/app/artifacts/index.test.ts","apps/desktop/src/app/chat/sidebar/profile-rail-connect.test.tsx","apps/desktop/src/app/chat/sidebar/profile-rail-fleet.test.tsx","apps/desktop/src/app/chat/sidebar/profile-rail-status.test.tsx","apps/desktop/src/app/chat/sidebar/profile-switcher.tsx","apps/desktop/src/components/assistant-ui/directive-text.tsx","apps/desktop/src/components/chat/zoomable-image.test.tsx","apps/desktop/src/components/chat/zoomable-image.tsx","apps/desktop/src/i18n/de.ts","apps/desktop/src/i18n/en.ts","apps/desktop/src/i18n/es.ts","apps/desktop/src/i18n/fr.ts","apps/desktop/src/i18n/types.ts","apps/desktop/src/lib/chat-runtime.test.ts","apps/desktop/src/lib/chat-runtime.ts","apps/desktop/src/lib/image-resize.ts","apps/desktop/src/store/profile-dot-state.test.ts","apps/desktop/src/store/profile-dot-state.ts","apps/desktop/src/store/session-states.ts","plugins/platforms/google_chat/adapter.py","tests/gateway/test_google_chat.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}