Repository navigation
IsotopeAI Android v3.5.5
IsotopeAI Android v3.5.5
New
- feat: backend-switch readiness kit (switch.sh) + prod backup/upgrade
- feat: structured progress events from backup/restore (28 emit points)
- feat: auto-launch log window on any error (React mount fail, JSERR, FETCH_ERR, root:2el) + enable webContentsDebuggingEnabled
- feat: professional systematic log window (all logs via bridge, 5-tap + __isoShowLogViewer, filtered tabs)
- feat: Join with Code button + keyboard fix in Community Groups tab
- feat: notification pipeline + OAuth external browser + deep link routes
Fixed
- fix: unblock document touch-scroll in WebView (Landing, onboarding)
- fix: intro headline clip, splash min-time, ease loading animation (ISSUE-057/058)
- fix: show group chat to non-members (read-only)
- fix: mobile Community header overlap (ISSUE-056)
- fix: Groups tab rendered empty — wrap es return in fragment (ISSUE-054)
- fix: fresh-account onboarding redirect loop + community invite toast
- fix: skip cross-repo auth-guard tests when upstream checkout is absent
- fix: auth guard used a lucide icon instead of Navigate
- fix: signed-in users can open the /auth tab
- fix: buddy code generation no-ops when overview profile is missing
- fix: code-only invites, dialog keyboard fix, and PIP session fallback
- fix: sync PIP fix to www/ (allow idle timer for PIP overlay) - matches root copy Co-authored-by: monkeycode-ai monkeycode-ai@chaitin.com
- fix: add autoComplete=off to Create Group inputs for mobile keyboard stability
- fix: allow idle timer state for PIP overlay (no active session error) Co-authored-by: monkeycode-ai monkeycode-ai@chaitin.com
- fix(sync): prefer localStorage over stale IndexedDB in readCollection
- fix(Dashboard): add remaining s.chapters?.some / S.topics?.some guards for synced data
- fix(Dashboard): guard s.chapters?.some and re.topics?.some for synced data
- fix(android): replace BuildConfig.DEBUG (breaks AGP 8 build) with manifest debug flag
- fix: native security + crash hardening
- fix: guard remaining missing-array reads in live bundles
- fix: Community RangeError — RPC passthrough re-entered fetch interceptor
- fix: guard missing subjectIds on Dashboard/Analytics + normalize session rows
- fix: Illegal invocation from matchMedia shim on tablet screens
- fix: Focus crash on cloud-synced sessions + missing subjectIds shape
- fix: OAuth return no longer bounces back to /auth; correct PKCE code exchange
- fix: two lint errors that failed CI on the previous commit
- fix: six native bugs, buddy/signup/storage repairs, first-run setup tooling
- fix: backup/restore was not actually restorable — 4 bugs found by testing it
- fix: schema dumps were not idempotent despite claiming to be
- fix: buddy invite previews always said "invalid" (RLS asymmetry)
- fix: Google sign-in returned to the app but never logged in (redirect race)
- fix: Community RangeError, refresh notice instead of log dump, overlay controls
- fix: PiP resolved a fake window, so the whole PiP UI went into a black hole
- fix: release.yml — remove dead step id and always-true if guard
- fix: release automation, and stop verifying patches in unreachable bundles
- fix: backup.sh credential check + storage verification false negative
- fix: add real static analysis, and the 5 live bugs it found
- fix: auth pipeline (Google sign-in, session refresh, error handling) + tab-crash recovery
- fix: PiP append recursion - make body.append no-op (was calling itself, Maximum call stack)
- fix: Pip append syntax - add removeEventListener to fake document
- fix: Community RangeError Maximum call stack - isoDeepPatchPlan circular guard (was infinite recursion on circular JSON)
- fix: FloatingTimerService ForegroundServiceDidNotStartInTime - ensureForeground at onStartCommand entry (was called after early returns)
- fix: Tasks Illegal invocation (MediaQueryList) + PiP crash (always native, no throw) + Study done
- fix: Study syllabusIds null-guard + Tasks Illegal invocation + PiP + sync lock quiet - big task via graphify-apk
- fix: LOGS button always-visible + 3-tap + better empty error fmt (was {} )
- fix: Tasks Illegal invocation - bind localStorage/sessionStorage correctly (was detached this)
- fix: expose supaFetchHeaders/supaFetch/supaJson on window for community/tasks (ReferenceError) - big task via graphify-apk
- revert: bee2673 tab crashes (ses_fe7066680ffeYMkLEgjUzWFO1i) - restore isActive gate and onboarding
- fix: supabase onboarding persistence + pip inbuilt + crash shields
- fix: onboarding scroll - button no longer hidden
- fix: wire Focus PiP button to inbuilt overlay + dashboard crash
- fix: define supaFetchHeaders helper (was ReferenceError, broke community RPCs like accept_invite/get_leaderboard)
- fix: remove duplicate Qa/Zb declarations in Community-CEnEgsrd.js (SyntaxError Identifier has already been declared at col 78475)
- fix: backup readback hash mismatch — warn instead of crash
- fix: offline guards on community RPC passthroughs + REST/auth/storage
- fix: Google OAuth opens in system browser (not WebView) — remove accounts.google.com from allowNavigation, add navigation interceptor, redirectTo isotopeai://auth/callback deep link
- fix: guard notification polling for Node.js VM test environment
- fix: release signs with debug.keystore fallback (no secrets needed for sideload APK), CI keystore step non-fatal
- fix: remove duplicate @JavascriptInterface annotation on openExternalUrl (R8 build failure)
Other
- ci: auto-release APK on main + centralize version bumps
- test: upstream regression tests for update UI removal, mobile CSS, teaser, chat Co-authored-by: monkeycode-ai monkeycode-ai@chaitin.com
- chore: remove Update Now button (local-server feature, not relevant on Vercel/APK)
- sync: make www copy identical to root (fixes CI bridge verification) Co-authored-by: monkeycode-ai monkeycode-ai@chaitin.com
- test: fix the RangeError test blowing the harness stack on CI
- chore: probe run — confirm release.yml no longer triggers on push to main
- docs: correct refresh-rotation claims after reading live Supabase auth config
- test: automate the manual patch-anchor checklist + catch undeclared bridge calls
- docs: update AGENTS.md for rebuilt auth pipeline, single-source versioning, bridge parity
- chore: remove duplicate CI, dead scripts, and 24MB of orphaned files
Full diff: v3.5.4...v3.5.5
📱 Install
Download IsotopeAI-v3.5.5-release.apk below and install it on Android 8.0+.
You may need to allow "install from unknown sources" for your browser or file manager.
Signed with the project sideload key — not a Play Store build. If you have an
older version installed and the update is refused, uninstall it first.
🔍 Verify the download
sha256 1237c989ab0b8df7fe1b360b40d3fd123d143a02ea309e8b419700228406115e
size 14363986 bytes
🧩 Built from
- isotope-apk @
0e5dccd74a8d3e336ba77a1ac8b02f161406077f - workflow run #193
❤️ Support
UPI: 9699393886@fam · isotopeai.in