Repository navigation
v2.0.0
Added
- Decoupled Presence Engine (
core.presence):- Introduced immutable
PresencePayloadData Transfer Object (DTO) encapsulating all Discord rich presence state fields (state,details,large_image,large_text,small_image,small_text,start_timestamp,pid). - Completely decoupled
DiscordRPCManagerfrom the UI layer (ExpeditionTrayApp) and domain models: the presence client exclusively consumesPresencePayload, enabling pure headless operation and isolated unit testing.
- Introduced immutable
- Native Platform Abstraction Layer (
core.platform):- Consolidated all operating system interactions into a unified platform module (
core.platform):PlatformMutex: Named Win32 Mutex on Windows with automatic POSIX advisory file lock (fcntl.flock) fallback on Linux/macOS.FileLock: Robust cross-platform non-blocking file locking for atomic configuration updates.PlatformRegistry: Safe abstraction over Windows Registry (winreg) with no-op fallbacks for POSIX platforms.
- Completely eliminated direct low-level Win32 ctypes and winreg imports from application business logic.
- Consolidated all operating system interactions into a unified platform module (
- Interactive Telemetry Simulation Harness (
tools/simulate_telemetry.py):- Added standalone developer CLI tool for simulating game lifecycles, combat transitions, Endless Tower trials, and location changes in real-time or automated batch mode.
- Added automated simulation regression tests (
tests/detection/test_simulate_telemetry.pyandtests/e2e/test_process_lifecycle.py), expanding test suite to 175 automated tests.
Changed
- Zero Static Type Suppressions & 100% Pyright Strict Safety:
- Eradicated all 12 static type suppressions (
type: ignore) across production and test code. - Full codebase strict type compliance validated under Python 3.12+ and Pyright with 0 errors and 0 warnings.
- Eradicated all 12 static type suppressions (
- Detection Kernel Purification & LRU Caching:
- Standardized domain combat and exploration states around canonical
Exploringdomain tokens. - Replaced complex lazy data structures with standard Python
functools.lru_cacheand direct protocol bindings (BridgeProviderProtocol). - Implemented adaptive idle polling in detector to minimize background CPU usage when the game is not running.
- Standardized domain combat and exploration states around canonical
- Package Entrypoint Lazy Exports:
- Modernized
src/expedition33_rpc/__init__.pywith PEP 562 module-level__getattr__and__dir__, ensuring fast startup times by deferring heavyweight imports until accessed.
- Modernized
Verification & Security
SHA-256 Checksums
43f0e593e5612ad31bbae3eee3c247805f3c865d41e55d2b73017866d2b2523a Expedition33_RPC.exe
a0d04701a34331d045ae91fb7d003129ad859ec8e1d3bd6c4364c20665530ee7 bridge.zip
VirusTotal Analysis Reports
- Expedition33_RPC.exe: VirusTotal Report
- bridge.zip: VirusTotal Report (65/66 Clean)