Repository navigation
feat(detector): Hidden Camera Detector — full multi-sensor app - #15
Draft
cloudygetty-ai wants to merge 4 commits into
Draft
cloudygetty-ai wants to merge 4 commits into
cloudygetty-ai wants to merge 4 commits into
Conversation
Full-sensor hidden camera detection system replacing the game entry point. Detects cameras via magnetic field anomalies, network scanning, BLE, and threat scoring. Features: - ALL-SENSOR SWEEP: magnetometer + network + BLE running in parallel - MAGNETIC DETECTOR: 10 Hz rolling baseline anomaly tracking with live graph - NETWORK SCANNER: HTTP probe of 254 subnet hosts across 9 camera ports with signature fingerprinting (Hikvision, Dahua, Axis, ONVIF, RTSP etc.) - BLUETOOTH SCANNER: BLE device scan with name-pattern and manufacturer-ID camera detection - THREAT ENGINE: weighted multi-signal scoring (NET 45%, BLE 30%, MAG 25%) producing 0-100 score + level - SCAN HISTORY: persisted log of up to 100 scans with camera summaries - Haptic alerts on high/critical threat detection - Dark luxury aesthetic: obsidian #0D0A14, gold #C9A84C, violet #8B5CF6 - Full abstraction layer — swap mock sensors for react-native-sensors + ble-plx with zero logic changes Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Ls9aDv92vFN3PHSusCAVnE
- Fix TS7006: add explicit `(v: string, k: string)` types on Headers.forEach in network.service.ts (was causing type-check to fail) - Run prettier across all 21 detector files to resolve prettier/prettier lint errors introduced by our formatting style type-check: 0 errors · lint: 0 errors in detector/ · tests: 107/107 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Ls9aDv92vFN3PHSusCAVnE
- Remove unused imports: GameState (HUD), GravityZone/TimeEchoZone/HelixRelay (GameEngine), BuildingMaterial (gameStore) - Remove dead code: abilityCooldownPct (HUD), makeMaterials() (gameStore) - Auto-fix prettier formatting across characters.ts, portraits.ts, GameEngine.ts, MeteorManager.ts, gameStore.ts, game.ts, LobbyScreen.tsx - Re-run prettier on detector files touched by eslint --fix Result: 0 errors (23 inline-style warnings, warnings-only) type-check: clean · lint: 0 errors · test: 107/107 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Ls9aDv92vFN3PHSusCAVnE
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
Complete hidden camera detector app built in React Native / TypeScript, replacing the game entry point. All sensors run in parallel — designed to surface a threat reading in under 2 seconds.
Detection Methods
Threat Engine
ThreatScore(0–100) aggregates all three signals with configurable weights. Levels: SAFE → LOW RISK → SUSPICIOUS → THREAT DETECTED → CAMERA FOUND. Haptic vibration triggers on HIGH and CRITICAL.Screens (5-tab navigation)
Architecture
Native Package Swap-in (zero logic changes)
All sensor services use
useMock = truewith clearly markedNOTE[P1]comments. To enable real sensors:npm i react-native-sensorsand flip flagnpm i react-native-ble-plxand flip flagnpm i react-native-wifi-rebornfor real subnet inferenceAesthetic
Dark luxury: obsidian
#0D0A14· gold#C9A84C· violet#8B5CF6· DM Mono throughout.Test plan
SWEEPtab renders, radar shows idle state