ThetaPrime v0.35.17
Download ThetaPrime-0.35.17-setup.exe
Fixed
/api/desktop_alertsis now exempt from the prod login gate.- Webhook notification config was missing its "Send Test" button; added.
- "Close Long Legs" button label corrected to "@ EOD" (was stale "@ 15:20").
[0.35.16] — 2026-08-27
Fixed
Batches 10-11 of the 2026-08-25 systematic bug hunt (findings #45-57), closing out all 58 findings. Full suite: 1232 passed (up from 1220).
_run_short_reentrynow reuses the parked long legs' actualunitsfor re-entered short legs instead of recomputingsizing.qty()fresh, which could land a different lot count undercapital_pctsizing days after entry — leaving the diagonal naked on mismatched lots.scanner.pyOI/price baselines no longer treat a genuine 0 (fresh-listed strike's previous-day OI, or a flat net_change) the same as missing/undefined — both now show their correct "Flat"/0 state instead of falling back to a misleading label.storage.pydecrypt/re-encrypt of pending DB files now attempts every file before raising, instead of one bad file blocking every later file in the list from being (de/re)crypted.app.py_leg_token_cachenow resets on a date change instead of growing unbounded for the life of the waitress process.- Rejected-leg reconciliation now matches the position-count change since a snapshot taken right before order placement, instead of raw broker quantity, so it can no longer mistake a coincidentally-same-sized pre-existing position for a genuine new fill.
storage.is_token_fresh()is now memoized per-request instead of doing 2 keyring reads twice per page load./api/marginsnow fetches all 3 brokers' margins concurrently instead of a slow broker blocking the others.- Strategy list + archived list are now computed from one directory scan instead of two.
run_monitornow batches oneltp()call per tick across all held legs instead of a separate round-trip per leg group.- Close-and-verify logic shared between
_close_legs/_close_for_reentry, and the OTM strike-scan shared acrossPremiumTarget/GammaTarget/DeltaOtm, are now single implementations (pure refactor, no behavior change). publish-release.ps1release notes now scope to the current version's changelog section instead of the whole file, avoiding GitHub's 125000-char release-body cap as CHANGELOG.md grows.