Commit graph

226 commits

Author SHA1 Message Date
81002cd76d The Plumbing now allows for the service to provide it's own function_choice when it returns a result. Separetly, a new type_checker wrapper is now available for use. And finally, the config model now passes around the same instance as a singleton to avoid new file operations to just read 2026-10-14 18:16:13 -04:00
7ba8e1e6d3 Plumbing stable for GUI to call upon via inserted ENUM DICT 2026-10-13 21:19:49 -04:00
69f4e7114f Refactored billing to have core doing more, and GUI doing less. Also heavily relying upon the singleton pattern to transfer data between UI pages and core functions 2026-10-12 20:24:04 -04:00
9e4fd54eb6 Introduced MTU tools. MTU set for session configs automatically, for systemwide the testing is setup but not yet implemented. Also introduced server reply objects and a new v2 wg endpoint that doesn't require location codes. 2026-10-11 20:18:52 -04:00
10e46cd8ea New refactored Use of tickets and payment of tickets loops/state, integrated with existing system 2026-10-11 12:33:21 -04:00
6a445eba41 Ticket Inovices Stable with Big Bang Refactor. Still need to resolve issues with ticket billing invoice config already existing 2026-10-10 18:27:02 -04:00
f9698ced68 Support for multiple invoices being managed through a global payment cycle 2026-10-10 15:25:36 -04:00
4aa6e2fb8b Instance checks and wipe on complete 2026-10-09 14:33:19 -04:00
430696b480 Resume Payments for individual profiles stable. Also fixed a bug with errors in filtering invalid replies to getting new wireguard conifgs 2026-10-07 18:33:16 -04:00
52b3e1ba94 Big Bang Refactor of Payments. Introduced a new paymentdata singleton that stores data across pages and on disk. Also introduced a suite of functions for handling payments 2026-10-07 13:29:19 -04:00
57774ae697 Infrastructure for payments overhaul. With state storage for billing, type checking, enums, and serialization. Also plan sql further refined 2026-10-04 20:07:56 -04:00
90dd9b309f Confirm Location's protocol support on edit 2026-10-03 17:27:34 -04:00
b132265a04 Location model shifts to boolean types. This will force a migration via Constants DB version. 2026-10-03 16:55:22 -04:00
9627b1861d Introduced new model: Plan. This differs from the legacy subscriptions because its based on time in months and supports multiple protocols at once in a list enum format 2026-10-03 14:47:38 -04:00
f2922b02a0 Enabled support for editing systemwide profile protocols including vless/hysteria2 2026-10-03 11:39:57 -04:00
dba8d79db8 vless client-server model match format 2026-10-01 18:44:33 -04:00
80415e2b28 client-side models to match server-side output 2026-10-01 18:24:39 -04:00
6982f46c37 ServerReply model initiated client-side, and used for wireguard config replies. 2026-09-30 18:50:19 -04:00
77c7123d73 Prepartion of univerisal cross-platform plumbing. And introduction of v2 billing/invoices 2026-09-28 17:30:08 -04:00
a34121d3c6 Miller loop loaded on appimage via an .so C module. 2026-09-22 17:43:21 -04:00
d35fc0db4b Bug fixes and tweaks for transitions 2026-09-21 12:35:37 -04:00
b29a44cf95 Phasing out legacy dict for Result Objects 2026-08-27 11:47:01 -04:00
ced69bfa4f Use Ticket Controller returns Return objects 2026-08-26 09:56:38 -04:00
f038f7a8da Error type handling 2026-08-24 16:06:03 -04:00
44558fb514 Large changes to the flow for using tickets. More formalized updating of JSON with explicit tools, instead of generic JSON functions. Orchestration returns Return objects, which are then formatted to dict for the GUI. 2026-08-24 15:57:42 -04:00
fcf469bd03 Manual Explicit Wireguard enable via nmcli for Improved Cross-Linux distro support. 2026-08-24 11:50:34 -04:00
0983d1a68d Changed bash generic commands to no longer use blocking methods to search through the terminal output to help with broken pipe errors, and instead select. But kept it non-blocking for the entire terminal itself. Also refactored Use Ticket Controller to reduce nesting if statements. 2026-08-24 11:24:23 -04:00
39efcaa174 Cython for Miller's Loop Cryptography first introduced, which dramatically reduces verification times. Includes a setup.py option for manual builds if desired. README for manual compile if desired. And a fallback import using the legacy python-only system. 2026-08-22 20:48:22 -04:00
a69b87817c Improved Connection Observer Feedback for all systemwide protocols 2026-08-21 15:31:52 -04:00
8968d89c5c Fallback for AppImage to preloaded YAMLs via pathlib 2026-08-21 12:38:32 -04:00
7fa65f80ba Database error types 2026-08-21 11:48:46 -04:00
90e7ee8da5 Sync Insert for unknown fields now drops the unknown fields, and proceeds. 2026-08-21 11:46:58 -04:00
6d8b457593 Improved error handling and consolidation on ticket purchase flow 2026-08-20 18:00:58 -04:00
e1221d4c45 Renamed do_we_have_billing_id to ticket_config_tools 2026-08-20 17:25:28 -04:00
e18fec84f2 Fixed Repeat 'already have ticket, do you want to wipe?' errors, by actually wiping it before starting over. Not just starting over directly, like before 2026-08-20 17:20:37 -04:00
07f0cf8007 Cleanup of Legacy code and commented sections 2026-08-20 14:06:28 -04:00
fe19044928 Singbox enable now reads the output file to confirm it's up 2026-08-20 14:00:17 -04:00
bdfb933548 Sudo config management. Properly delete the config for protocol changes, and install it using the generic commands module 2026-08-20 12:23:37 -04:00
5923cc8a7f Vless is now working. Config Parsing and setup is stable, and increased the wait time for connection testing. But this is a temporary solution. The real answer is not a static time check, but a dynamic result reading for when to test. Which then has it's own timeout time 2026-08-20 10:18:16 -04:00
c8811c93bb Linter undefined or missing import bugs 2026-08-19 21:40:36 -04:00
bdb4a285de Delete commented out legacy functions from before the move months ago to an isolated wireguard key module 2026-08-18 14:58:30 -04:00
24c4648054 Bug-Typo Fix: interface_name changed to interface to match the other singbox module 2026-08-18 13:27:05 -04:00
ff54373b0f Failed Assassin disable raises error 2026-08-18 13:03:16 -04:00
6dac98835f Assassin mode Introduced! The assassin_tools allows for creation/use of a session profile with random attributes, ephemeral wireguard config, and coordinates using a ticket for it. This tools module also allows for wiping the assassin's ticket & wireguard config on disable. Additionally, this git commit sees ProfileController using these assassin_tools functions for a working implementation if the profile is marked assassin=True. Also the associated eco-system of ApplicationController starting apps, the existing non-ticket legacy subscription handlers, and even GUI needed to be adjusted to allow for this new assassin flow. Finally, the generic JSON utilities have been improved to make this feature more robust and reliable. 2026-08-18 12:54:54 -04:00
a78747e8e5 Bug fix in subscriptions missing re import after the prior isolation transition to the new module 2026-08-15 17:45:06 -04:00
5ab57ab287 When a profile is deleted, it now automatically respawns the ticket if it's a ticket profile. Also fixed some bugs with fetching the server's public key with the APIResponse object being used, when it expected a regular dictionary. This is a left-over from the prior transition to API objects. 2026-08-15 17:34:08 -04:00
829feb5939 The profile object now has a ticket field. It's now none by default. Also the profile object is passed in, for the use of tickets, both for GUI and core. 2026-08-15 14:09:34 -04:00
31488f790e Introduced Ticket/Billing-Code Respawn, with dual paths on the ticket prep orchestration, it's helper functions, and the main prep controller. This introduced the functions, which were tested with a demo CLI client and local server, and appears to be stable. Server-side endpoints will be pushed as well. Note: This update couples profile slot ids more closely with which ticket slot id is being used for it, but they are not yet officially tied. In the future, they should be. 2026-08-14 19:36:22 -04:00
1695e0314e Download of file deletes the temp folder from setup 2026-08-13 08:24:33 -04:00
73c74d339f Improved use of connection observers & fixed a bug in compare versions if it was the same version 2026-08-13 08:09:38 -04:00