fix(rhodibot): automated RSR compliance fixes#3
Closed
hyperpolymath wants to merge 1 commit into
Closed
Conversation
- Deleted duplicate (keeping .md for GitHub) Co-Authored-By: rhodibot <rhodibot@hyperpolymath.dev>
3 tasks
Open
4 tasks
hyperpolymath
pushed a commit
that referenced
this pull request
Jun 2, 2026
…asses (#71) Owner-signed-off pivot (issue #71, decision "Replace, same branch"): evolve the Android component support from the directive/generated-shim model into a SUBCLASS base-class model. gossamer ships four abstract Java base classes a downstream app extends with ~5-20 lines; gossamer owns all JNI. Added: - android/gossamer-android-services/src/main/java/io/gossamer/ — GossamerActivity (+onIntentReceived hook), GossamerBridge, and services/{GossamerForegroundService (Service+SensorEventListener), GossamerBootReceiver, GossamerAppWidgetProvider}. lifecycle methods; tiny fixed override surface; javac-clean vs Android API stubs. Synthetic no-op subclasses under tests/services/. - src/interface/ffi/src/services_android.zig — independent opaque ServiceHandle + the Java_io_gossamer_services_* JNI exports; apps plug their pure Rust/Zig core in via the gossamer_android_register_* callback registry (never touch JNI). Host-runnable tests for the registry/handle/JSON logic. - jni.zig extended with float-array access (Get/ReleaseFloatArrayElements) for the sensor path; webview_android.zig force-imports services_android + regained a local extractJsonField. - AndroidComponents.idr: foreign decls swapped from the bind ABI to the register-callbacks ABI (the lifecycle/linearity PROOFS are unchanged). Removed (superseded): the directive layer (android_components/service/receiver/ widget.zig), the generated shim tree (android/gossamer-generated/), and the codegen tooling (tools/android-codegen/). Java native <-> Zig export symbol parity verified (11/11). Docs rewritten to the subclass model (docs/architecture/android-components.adoc + module README). Unblocks neurophone#97 sub-PRs #3-#9. https://claude.ai/code/session_01GsJX13UjwiBk9hkddqvYMh
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Changes
RSR Quality Checklist
Required
just testor equivalent)just fmtor equivalent)unsafeblocks without// SAFETY:commentsbelieve_me,unsafeCoerce,Obj.magic,Admitted,sorry).envfiles includedAs Applicable
.machine_readable/STATE.a2mlupdated (if project state changed).machine_readable/ECOSYSTEM.a2mlupdated (if integrations changed).machine_readable/META.a2mlupdated (if architectural decisions changed)TOPOLOGY.mdupdated (if architecture changed)CHANGELOGor release notes updatedsrc/interface/abi/andsrc/interface/ffi/consistent)Testing
Screenshots