Files
ReVoltVPN/.gitignore
T
esefxdzandClaude Opus 5 6fcde9dd7b refactor(app): debloat 3.3.1 and fix startup restoration
Maintainer changes on top of PR #2 (Naveax). Reduces the release to two
deliberate connection modes and resolves the issues found in review:

- Lock-screen privacy: move VISIBILITY_PRIVATE and a generic publicVersion
  into MainActivity.updateVpnNotification. The PR's fix lived in an
  unreferenced class and never reached the live notification.
- Haptics: restore the default to off, and reduce HapticSettings to a
  single success() on connect/disconnect via the native channel.
- SOCKS5: make it a real proxyOnly local-proxy mode rather than a TUN
  connection under a different label. TUN stays the default.
- Health probe: restore the idle-only guard so /health is no longer polled
  every 30s while connected.
- Recovery: add a _connectionEpoch counter so connect() aborts an
  in-flight Extreme recovery.
- Startup restoration: rebuild the recovery snapshot from the still-active
  session after an app-process restart (TUN), and surface an honest
  orphaned state with a Reconnect action in proxy mode.

Drops per-app routing entirely. It only ever functioned in TUN --
addDisallowedApplication lives inside the VPN-interface setup that
proxyOnly skips -- and its allowlist half had no Dart caller.

Also removes flutter_local_notifications, the global tap-haptic surface,
and unused runtime telemetry.

Co-Authored-By: Claude Opus 5 <[email protected]>
2026-08-31 23:31:51 +03:00

97 lines
3.2 KiB
Plaintext

# =============================================================================
# ReVoltVPN — .gitignore
#
# Type-based by design. This repo ships Dart, Kotlin, XML and image assets;
# everything else is excluded by extension or directory rather than by being
# listed individually. A new file is therefore ignored by default instead of
# needing to be named here, and this file does not enumerate what it protects.
# =============================================================================
# ── Secrets ────────────────────────────────────────────────────────────────
*.keystore
*.jks
android/key.properties
android/admob.properties
# Real IPs and IDs. app_config.example.dart is the committed template.
lib/logic/app_config.dart
# ── File types the shipped app does not contain ────────────────────────────
*.py
*.pyc
*.json
*.conf
*.sh
*.txt
*.html
*.zip
*.log
*.class
# ── Documentation ──────────────────────────────────────────────────────────
# The published set is allow-listed; anything else, at any depth, is not.
# Leading slashes anchor these to the repo root so a same-named file in a
# subdirectory is NOT re-included by the negation.
*.md
!/README.md
!/CHANGELOG.md
!/CONTRIBUTING.md
!/PRIVACY_POLICY.md
# ── Working directories ────────────────────────────────────────────────────
# Material that is not part of the app. These need directory rules rather
# than type rules, because they can hold source-file types the rules above
# deliberately do not cover.
.local/
internal/
hivemind/
scraped/
backup/
backups/
lib/logic/backup/
server_files/
# ── Flutter / Dart build output ────────────────────────────────────────────
.dart_tool/
*.dart_tool/
.flutter-plugins
.flutter-plugins-dependencies
.pub-cache/
.pub/
build/
**/build/
local_packages/*/build/
local_packages/*/.dart_tool/
**/doc/api/
**/ios/Flutter/.last_build_id
# ── Android build output ───────────────────────────────────────────────────
**/android/.gradle
**/android/.cxx/
**/android/app/build/
**/android/captures/
**/android/gradlew
**/android/gradlew.bat
**/android/local.properties
**/android/**/gradle-wrapper.jar
**/android/**/GeneratedPluginRegistrant.java
**/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java
**/android/app/crashlytics-build.properties
# ── Editors, tooling & OS ──────────────────────────────────────────────────
.claude/
.codewhale/
.idea/
.vscode/
.atom/
.history
.svn/
.java-version
.DS_Store
*.swp
__pycache__/
devtools_options.yaml
#why are you even looking at this file? it's a secret. go away.
whatsthis