Files
flynn/docs/plans/2026-02-16-android-node-foundation-checklist.md
2026-02-16 12:55:22 -08:00

45 lines
1.6 KiB
Markdown

# Android Node Foundation Checklist
**Date:** 2026-02-16
**Scope:** Close OpenClaw "Android node" gap with Android push-ready companion support.
## Goal
Extend companion-node push registration beyond iOS so Android nodes can register FCM tokens with the same safety model and operator visibility.
## Implemented
- Extended node push token protocol:
- `node.push_token.set` now accepts `provider: "apns" | "fcm"`.
- Added Android/FCM support in node handler runtime:
- store provider-specific push metadata in connection state.
- `fcm` tokens are accepted without APNs environment/topic requirements.
- Preserved secret safety:
- `system.nodes` continues exposing only masked `tokenPreview`.
- Kept policy model consistent:
- still gated by `server.nodes.push.enabled`.
- role scopes unchanged (companion-only write path).
## Tests
- `src/gateway/protocol.test.ts`
- Added valid FCM parse coverage.
- `src/gateway/handlers/node.test.ts`
- Added FCM push-token registration test for Android companion.
- `src/gateway/server.test.ts`
- Added end-to-end Android node + `node.push_token.set` + `system.nodes` verification.
- Existing auth/config/system tests continue passing.
## Docs Updated
- `README.md` node method notes now mention APNs + FCM.
- `docs/api/PROTOCOL.md` now documents APNs/FCM provider support for `node.push_token.set`.
## Validation Run
```bash
pnpm test:run src/gateway/protocol.test.ts src/gateway/handlers/node.test.ts src/gateway/server.test.ts src/gateway/auth.test.ts src/gateway/handlers/handlers.test.ts src/config/schema.test.ts
pnpm typecheck
pnpm build
```