Explanation¶
This section explains how SafeMode works internally and why specific design choices were made.
Available Deep Dives¶
Reading Strategy¶
If you are new to the codebase:
- Start with HTTPS flow.
- Continue with classification pipeline.
- Read runtime/process model to understand lifecycle behavior.
- Finish with filter update model.
Design Principles Used in SafeMode¶
- Keep startup responsive (async loading, background workers).
- Keep labels semantically strict (
ublockis notphishtank). - Prefer deterministic lifecycle order (start monitor, then proxy; stop monitor, then proxy off).
- Favor local processing and explicit user controls.