Conversation
📋 PR Review Helper📱 Mobile App Build✅ Ready to test! (commit 🕶️ ASG Client Build✅ Ready to test! (commit 🔀 Test Locallygh pr checkout 1965 |
️✅ There are no secrets present in this pull request anymore.If these secrets were true positive and are still valid, we highly recommend you to revoke them. 🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request. |
Deploying mentra-store-dev with
|
| Latest commit: |
bd2ea95
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://9b54c32b.augmentos-appstore-2.pages.dev |
| Branch Preview URL: | https://bes-mtk-ota.augmentos-appstore-2.pages.dev |
Deploying dev-augmentos-console with
|
| Latest commit: |
bd2ea95
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://abb7bec1.dev-augmentos-console.pages.dev |
| Branch Preview URL: | https://bes-mtk-ota.dev-augmentos-console.pages.dev |
Deploying prod-augmentos-account with
|
| Latest commit: |
bd2ea95
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://932bbaac.augmentos-e84.pages.dev |
| Branch Preview URL: | https://bes-mtk-ota.augmentos-e84.pages.dev |
Deploying mentra-live-ota-site with
|
| Latest commit: |
bd2ea95
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://aeed474a.mentra-live-ota-site.pages.dev |
| Branch Preview URL: | https://bes-mtk-ota.mentra-live-ota-site.pages.dev |
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing touches🧪 Generate unit tests (beta)
Comment |
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7f13e4496e
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| console.log(`📱 OTA showing alert - WiFi connected: ${glassesWifiConnected}, updates: ${updateList}`) | ||
|
|
||
| if (glassesWifiConnected) { | ||
| // WiFi connected - go to OTA check screen to confirm and start update |
There was a problem hiding this comment.
Re-read Wi‑Fi state before choosing alert
The decision to show the “install now” vs “connect Wi‑Fi” alert uses glassesWifiConnected captured when the effect was scheduled. Because the OTA check is delayed and async, Wi‑Fi may connect/disconnect before this branch executes. If Wi‑Fi becomes connected after the effect starts, the stale false path caches pendingUpdate and shows the “connect Wi‑Fi” alert even though Wi‑Fi is already connected (and the pending-update effect won’t re-run). Use the latest store value inside the callback (e.g., useGlassesStore.getState().wifiConnected) to avoid stale decisions.
Useful? React with 👍 / 👎.
Previously, `connected` was set to `true` as soon as BLE GATT characteristics were discovered, before the K900 SOC finished booting. This caused the ConnectionOverlay to disappear prematurely while the glasses were still in the readiness check loop (ready=0). Now `connected` is driven by `fullyBooted` in GlassesStore on both Android and iOS. The SOC must report ready=1 before the glasses are considered connected. This ensures the ConnectionOverlay stays visible during the entire SOC boot sequence. Co-authored-by: Cursor <cursoragent@cursor.com>
…nSmartGlasses/DiscussPlusPlus into bes-mtk-ota
…PlusPlus into bes-mtk-ota
The build number detection was incorrectly triggering during BES/MTK firmware updates, causing the UI to flicker between "installing" and "completed" states. Build number only changes for ASG client APK updates, not for MTK or BES firmware updates. Co-Authored-By: Claude <noreply@anthropic.com>
- Show "Update 1/3, 2/3, 3/3" instead of component names (Software/Firmware/Bluetooth) - Add "transitioning" state with "Starting update X/N..." message between updates - Only show completion screen for the final update in the sequence - Fix MTK→BES flicker by removing lastCompletedUpdateRef and using proper update tracking - Track update sequence from otaUpdateAvailable.updates on mount - Track completed updates in state to prevent re-triggering - Increase BES reboot wait time from 5s to 15s for Continue button - Stricter build number detection: only for APK updates with proper guard Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
The check-for-updates screen was storing available updates in local component state but not in the global store. When navigating to the progress screen, otaUpdateAvailable was null, so the update sequence (for "Update 1/3, 2/3, 3/3" display) was never captured. Now setOtaUpdateAvailable is called with the full update info before showing the update_available state, ensuring the progress screen can read the sequence on mount. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Restarting state: Change message from "Your glasses will power off..." to "Your glasses are restarting to apply the update." (more accurate since by this point the glasses have already rebooted) - Use plural "Updates Installed" / "Updates Complete" when multiple updates were in the sequence - Remove stale "Update X/N Installed" from restarting state since this is the final completion screen Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…ility - Create GlobalConnectionOverlay that renders once at app root level - Only show overlay on specific routes that require glasses connection - Add useConnectionOverlayConfig zustand store for custom title/message - Remove per-screen ConnectionOverlay from wifi/*, ota/*, OnboardingGuide - Fix check-for-updates.tsx to store update sequence in zustand for progress - Update progress.tsx completion messages with proper pluralization - Fixes issue with multiple overlays appearing during screen transitions Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Fix WiFi routing bug: after OTA from home alert, properly navigate to OTA check-for-updates instead of staying on WiFi success screen - Add OTA revalidation: re-check firmware versions when they change mid-update flow to remove no-longer-needed updates from queue - Add LoadingCoverVideo component to play video during OTA updates to reduce perceived wait time (uses dummy URL for testing) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Initial pairing flow: use pushPrevious() to go to onboarding underneath - Home OTA alert flow: use clearHistoryAndGoHome() to return home Previously always used goBack() which left WiFi screens in the stack. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Use React Native Modal component instead of absolute positioning so the video actually appears on top of everything. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Replace custom X icon with proper secondary Button at bottom, matching the app's standard button style. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
The statusChange event passes an object with status property, not the status string directly. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Debug overlay and skip button now only show when super mode is enabled instead of only in development builds. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…PlusPlus into bes-mtk-ota
…to bes-mtk-ota
…app does not have it
No description provided.