fix: production hardening — bugs, perf, and offline support - #14
Merged
Conversation
- Fix camera handle leak in try_open_camera (release before fallback) - Fix socket leak in get_local_ip (try/finally) - Fix shell injection in send_notification (escape quotes) - Cache CLAHE object instead of recreating per frame - Lower JPEG quality from 95% to 75% for reduced CPU/bandwidth - Eliminate double night-mode processing on snapshot frames - Match stream sleep interval to --fps setting - Remove Google Fonts dependency for fully offline LAN usage
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
Comprehensive audit and fixes across the codebase for production readiness.
Bug fixes:
try_open_camera— firstVideoCapturewas never released when falling back to AVFoundationget_local_ip— socket now properly closed viatry/finallyinstead of only on success pathsend_notification— escape backslashes and double quotes in osascript stringsPerformance optimizations:
apply_night_modecall when snapshots + night mode are both enabled (reuse display frame)--fpssetting instead of hardcoded 30fps pollingProduction hardening:
-apple-system,SF Pro) — no external network requests on page loadTest plan