openclaw/apps/ios/Sources
ronitchidara 56926e73ec security: wire transformation phase audit fixes
Fix all 7 issues identified in the ChatGPT audit of transformation work:

1. Android build break: Remove duplicate normalizeMainKey/isCanonicalMainSessionKey
   from NodeGatewaySync.kt (they're already in SessionKey.kt). Align both Android
   and iOS implementations to use "main" as canonical (case-insensitive match).

2. Rate limiting: Wire rateLimiter through GatewayRequestContext and enforce:
   - Auth failure backoff (recordAuthFailure on auth failure, clearAuthFailure on success)
   - Request rate limiting before handleGatewayRequest
   - Channel message rate limiting in send handler
   - Add TOO_MANY_REQUESTS error code

3. Injection defenses: Call sanitizeIncomingMessage in chat.send and chat.inject
   handlers to detect prompt injection attempts.

4. RBAC enforcement: Add canAccessAgent check in chat.send handler and
   canExecuteCommand check in node-host runner for exec commands.

5. WhatsApp encrypted backup restore: Update maybeRestoreCredsFromBackup to
   handle encrypted backup files (.bak.enc -> .json.enc restoration).

6. Exec blocklist bypass: Add evaluateBlocklist check in argv-only code path
   in runner.ts (previously only checked for rawCommand path).

7. iOS voice transcript: Fix line 329 in NodeAppModel.swift to use computed
   'key' variable instead of original 'sessionKey' parameter.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 17:01:41 +05:30
..
Assets.xcassets Rebrand app icons from Clawdis to Clawdbot 2026-01-08 23:31:24 +01:00
Camera refactor: rename clawdbot to moltbot with legacy compat 2026-01-27 12:21:02 +00:00
Chat mobile: Phase 4 polish - refactoring, app store prep, and infrastructure 2026-01-28 17:01:20 +05:30
Gateway Branding: update bot.molt bundle IDs + launchd labels 2026-01-27 14:46:50 -06:00
Location refactor: rename clawdbot to moltbot with legacy compat 2026-01-27 12:21:02 +00:00
Model security: wire transformation phase audit fixes 2026-01-28 17:01:41 +05:30
Push mobile: Phase 4 polish - refactoring, app store prep, and infrastructure 2026-01-28 17:01:20 +05:30
Resources mobile: Phase 4 polish - refactoring, app store prep, and infrastructure 2026-01-28 17:01:20 +05:30
Screen Branding: update bot.molt bundle IDs + launchd labels 2026-01-27 14:46:50 -06:00
Settings mobile: Phase 4 polish - refactoring, app store prep, and infrastructure 2026-01-28 17:01:20 +05:30
Status refactor: migrate iOS gateway to unified ws 2026-01-19 10:08:33 +00:00
Voice Branding: update bot.molt bundle IDs + launchd labels 2026-01-27 14:46:50 -06:00
ClawdbotApp.swift mobile: Phase 4 polish - refactoring, app store prep, and infrastructure 2026-01-28 17:01:20 +05:30
Info.plist mobile: Phase 4 polish - refactoring, app store prep, and infrastructure 2026-01-28 17:01:20 +05:30
RootCanvas.swift refactor: migrate iOS gateway to unified ws 2026-01-19 10:08:33 +00:00
RootTabs.swift mobile: Phase 4 polish - refactoring, app store prep, and infrastructure 2026-01-28 17:01:20 +05:30
SessionKey.swift security: wire transformation phase audit fixes 2026-01-28 17:01:41 +05:30