Skip to content

Build the OpenCU Android engine into the app - #187

Merged
Daily-AC merged 4 commits into
mainfrom
fix/android-embedded-engine
Nov 4, 2026
Merged

Daily-AC merged 4 commits into
mainfrom
fix/android-embedded-engine

Conversation

@Daily-AC

@Daily-AC Daily-AC commented Nov 4, 2026

Copy link
Copy Markdown
Owner

On a network that cannot reach GitHub, the first wanctl act on Android failed with OPENCU_NOT_INSTALLED, and the failed attempt then counted against the 24-hour refresh interval, so retries returned the old error without trying again. Seen on a real phone on v0.29.0.

The engine jar is 68 KB, so it now ships inside the Android build (go:embed, Android builds only), covered by the APK's signature. The daily check against the OpenCU release stays: a newer engine replaces the built-in one, a failed check costs at most 10 seconds and no longer blocks use.

Cost: an engine bump means committing a new jar, and on networks without GitHub the engine moves only with wanctl releases. ADR 0020 records the change.

Not verified yet: the built-in engine has not run on a phone through the relay. That is the D group, after the release.

🤖 Generated with Claude Code

Daily-AC and others added 4 commits November 3, 2026 19:58
The first real use over the relay failed: the phone could not reach github.com,
and a failed download counted against the 24-hour interval even with no engine,
so every later call returned the same error until the interval passed.

The jar is 68 KB. Embed it and its manifest, unchanged from the OpenCU release,
in the Android build. There is now always an engine, the APK signature covers
it, and a refresh that cannot reach the release costs at most 10 seconds and
fails nothing. A download is used only if newer than the built-in engine, unless
WANCTL_OPENCU_ANDROID_URL chose its source.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Also replace statements that had gone stale: the Android assets are published,
and the engine has been accepted on a real phone, though the relay path has not.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Daily-AC
Daily-AC merged commit aac9e77 into main Nov 4, 2026
4 checks passed
@Daily-AC
Daily-AC deleted the fix/android-embedded-engine branch November 4, 2026 04:35
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