Skip to content

fix: surface silent failures across agent, auth, and desktop#10081

Closed
undivisible wants to merge 2 commits into
mainfrom
codex/agent-firestore-errors
Closed

fix: surface silent failures across agent, auth, and desktop#10081
undivisible wants to merge 2 commits into
mainfrom
codex/agent-firestore-errors

Conversation

@undivisible

@undivisible undivisible commented Jul 20, 2026

Copy link
Copy Markdown
Collaborator

What changed and why

Stops fail-open and silent-failure paths on the current (non-Tauri) desktop/backend stack so errors surface instead of looking healthy.

  • Agent VM recovery — GCE/Firestore status recovery no longer discards write or network failures; failed authoritative transitions log and fail closed when they block state.
  • Auth custom tokenuse_custom_token=true returns an error instead of a partial token payload when minting is unimplemented.
  • Memories — remove unused recompute_evidence placeholder (no callers).
  • Electron — log corrupted Google refresh-token decrypt, non-ENOENT Rewind retention deletes, and primary-screen lookup fallbacks.
  • macOS APIClient — log app setup-status check failures instead of empty catch {}.

Product invariants affected

  • INV-MEM-1

How it was verified

  • cargo check --manifest-path desktop/macos/Backend-Rust/Cargo.toml --bin omi-desktop-backend — passed
  • cargo test --manifest-path desktop/macos/Backend-Rust/Cargo.toml --bin omi-desktop-backend agent --offline — passed
  • python3 AST parse of backend/database/memories.py — passed
  • scripts/pr-preflight — 26 checks passed
  • Label: no-changelog-needed (internal logging / reliability only)

Tests

No focused route test exists for the GCE/Firestore recovery path; the existing backend binary agent test passed. Electron changes are log-only on already-handled error paths.

Failure class (fixes)

Failure-Class: none

@undivisible undivisible changed the title fix(agent): surface Firestore lifecycle write failures fix(desktop-agent): surface Firestore lifecycle write failures Jul 20, 2026
Agent VM recovery no longer discards Firestore/GCE errors as success,
and custom-token requests fail closed instead of returning a partial
token payload. Also remove the unused memories evidence placeholder and
log Electron retention/token/screen failure paths that previously looked
healthy when they were not.

Verification:
- cargo check --manifest-path desktop/macos/Backend-Rust/Cargo.toml --bin omi-desktop-backend
- cargo test --manifest-path desktop/macos/Backend-Rust/Cargo.toml --bin omi-desktop-backend agent --offline
- python3 ast-parse backend/database/memories.py

Failure-Class: none

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
@undivisible undivisible changed the title fix(desktop-agent): surface Firestore lifecycle write failures fix: stop silent failures on agent, auth, and desktop paths Jul 20, 2026
@undivisible undivisible added the no-changelog-needed Skip desktop changelog enforcement for internal-only changes label Jul 20, 2026
@undivisible
undivisible deleted the codex/agent-firestore-errors branch July 20, 2026 03:28
@github-actions

Copy link
Copy Markdown
Contributor

Hey @undivisible 👋

Thank you so much for taking the time to contribute to Omi! We truly appreciate you putting in the effort to submit this pull request.

After careful review, we've decided not to merge this particular PR. Please don't take this personally — we genuinely try to merge as many contributions as possible, but sometimes we have to make tough calls based on:

  • Project standards — Ensuring consistency across the codebase
  • User needs — Making sure changes align with what our users need
  • Code best practices — Maintaining code quality and maintainability
  • Project direction — Keeping aligned with our product principles and locked invariants

Before your next PR, please skim:

  • PRODUCT.md — product north star
  • Product invariants — locked rules (shared chat, memory tiers, agent control plane, integrations, brand)

If this was declined for direction or taste, maintainers should cite an invariant ID or open a proposed one — ask if that citation is missing.

Your contribution is still valuable to us, and we'd love to see you contribute again in the future! If you'd like feedback on how to improve this PR or want to discuss alternative approaches, please don't hesitate to reach out.

Thank you for being part of the Omi community!

@undivisible undivisible changed the title fix: stop silent failures on agent, auth, and desktop paths fix: surface silent failures across agent, auth, and desktop Jul 20, 2026
@undivisible

Copy link
Copy Markdown
Collaborator Author

Superseded by #10084 after renaming the branch to fix/silent-failure-hardening (GitHub closed this PR when the old head ref was renamed).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

no-changelog-needed Skip desktop changelog enforcement for internal-only changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant