1.8 KiB
1.8 KiB
Location Access Checklist
Date: 2026-02-16
Scope: Close OpenClaw "Location access" gap using Flynn's node capability foundation.
Goal
Provide a safe, node-scoped location API so companion clients can publish last-known location and operators can inspect it.
Implemented
- Added node location protocol parsing:
parseNodeLocationSetParams()parseNodeLocationGetParams()
- Added node RPC methods:
node.location.setnode.location.get
- Added operator visibility method:
system.location
- Extended node state model with stored location payload.
- Added explicit location feature gate in config:
server.nodes.location.enabled(defaultfalse)
- Wired daemon config to gateway runtime and node handlers.
- Added runtime patch support for:
config.patchkeyserver.nodes.location.enabled
- Updated docs:
README.mdgateway node sectiondocs/api/PROTOCOL.mdnode/system method docs
Tests
src/gateway/protocol.test.ts- Added validation tests for
node.location.set/getparams parsing.
- Added validation tests for
src/gateway/handlers/node.test.ts- Added location set/get lifecycle tests.
- Added disabled-gate rejection test.
src/gateway/handlers/handlers.test.ts- Added
system.locationhandler tests. - Added config patch test for
server.nodes.location.enabled.
- Added
src/gateway/server.test.ts- Added integration test for node registration + location set/get flow.
src/config/schema.test.ts- Added default/custom tests for
server.nodes.location.enabled.
- Added default/custom tests for
src/gateway/auth.test.ts- Added role-scope authorization test for
node.location.set.
- Added role-scope authorization test for
Validation Run
pnpm test:run src/gateway/protocol.test.ts src/gateway/auth.test.ts src/gateway/handlers/node.test.ts src/gateway/handlers/handlers.test.ts src/gateway/server.test.ts src/config/schema.test.ts
pnpm typecheck
pnpm build