1
0
forked from BRT/arc
Commit Graph

92 Commits

Author SHA1 Message Date
slava
44e60fc09f Introduce TaskDumpRecorder for centralized task dump management:
- Add TaskDumpRecorder to save task-related XML dumps and upload failure info to Telegram.
- Integrate TaskDumpRecorder into `PayByPhoneScript` and `PayByCardScript` for Dushanbe and Ozon banks.
- Extend ADB utilities to record XML dumps with TaskDumpRecorder and refine keyboard dismissal logic.
- Enhance freeze detection with consecutive dump checks in CommonScript and payment scripts.
- Update mock server profiles and scenario configurations with new material IDs.
2026-04-26 19:22:40 +07:00
slava
cd1828e2b5 Optimize button verification in payment scripts:
- Refactor retry logic for visibility and tappability of key payment buttons.
- Enhance error messaging for obstructed or missing buttons.
2026-04-24 22:22:24 +07:00
slava
a92610f9e5 Improve "Перевести" button handling in PayByCardScript:
- Add keyboard dismissal and retry logic to ensure button visibility and tappability.
- Update error messages to differentiate between missing or obstructed button scenarios.
2026-04-24 22:10:06 +07:00
slava
af47dc5888 Improve "Продолжить" button handling in PayByPhoneScript:
- Add keyboard dismissal and retry logic to ensure button visibility and tappability.
2026-04-24 22:07:34 +07:00
slava
f5be380292 Improve ADB Keyboard activation reliability:
- Add retries for `ime enable` to handle delayed IME registration after installation.
- Introduce flag to distinguish newly installed keyboards for adaptive retry logic.
2026-04-24 21:56:20 +07:00
slava
ac8b5922ad Enable reliable activation of ADB Keyboard and improve fallback handling:
- Add comprehensive verification and logging for IME activation steps in `AdbUtils`.
- Update `PayByPhoneScript` to handle IME activation failures with error reporting.
- Improve edit text detection in `ScreenXmlParser` for devices with missing hint attributes.
2026-04-24 21:31:37 +07:00
slava
f200eae2bd Add closeGooglePlayBannerIfVisible to handle Google Play update banners across scripts:
- Integrate banner dismissal in retry loops for XML parsing in payment and profile scripts.
- Add detection logic for permission deny buttons and update banner handling in `ScreenXmlParser`.
- Ensure reliable operation during input field detection, transactions fetching, and confirmation screens.
2026-04-24 16:39:38 +07:00
slava
d480cc51b0 Enhance input field detection and retry logic across payment scripts:
- Add retry loops for input fields in `PayByPhoneScript` and `PayByCardScript` to improve reliability.
- Update window title in `MainWindow` with version info from `config.ini`.
2026-04-24 16:09:36 +07:00
slava
8c2be04787 Improve button loading and error handling in PayByCardScript:
- Add checks for the "По номеру карты" button on the payments screen.
- Refine error messages to distinguish missing button vs. incomplete screen load.
2026-04-23 21:13:31 +07:00
slava
0a460d10a0 Add exclusive material activation logic to MaterialDAO and improve card selection in BankSetupWizard. 2026-04-23 20:44:44 +07:00
slava
a2c9118c82 Increase maxScrolls limit to 30 in GetLastTransactionsScript for better transaction fetching. 2026-04-19 09:00:10 +07:00
slava
248fae6061 Improve scroll recovery logic in GetLastTransactionsScript:
- Add upward scroll handling to recover header visibility when the target header scrolls out of view.
2026-04-18 20:08:45 +07:00
slava
bac36aa5d2 Refine date header visibility logic and scroll behavior in GetLastTransactionsScript:
- Add `computeDateYCount` to detect overlapping date headers and improve visibility checks.
- Adjust swipe logic for better handling of target and older dates during transaction fetching.
-
2026-04-18 19:46:06 +07:00
slava
779e3cd74c Fix for windows 2026-04-18 19:23:56 +07:00
slava
d59bf51416 Add closeGooglePlayBannerIfVisible to handle Google Play update banners:
- Ensure banners are closed during transaction fetching in `GetLastTransactionsScript`.
- Update XML parsing workflow to accommodate banner dismissal logic.
2026-04-18 18:52:28 +07:00
slava
d0330a509a Refine transaction amount parsing and improve banner closing in Ozon scripts:
- Handle fractional amounts during transaction parsing in mock server.
- Add support for closing Google Play update banners in `Ozon` homepage handling logic.
2026-04-18 17:27:12 +07:00
slava
d9479cd3ea Refactor EventHandler and Dushanbe scripts to centralize screenshot handling:
- Introduce `connectScreenshotDushanbe` for consistent signal-slot connections in `EventHandler`.
- Emit screenshots via `CommonScript` across `PayByCard`, `PayByPhone`, and `GetLastTransactions`.
- Eliminate redundant screenshot signals in `GetLastTransactionsScript`.
2026-04-17 11:17:59 +07:00
slava
312e0b37dd Simplify adb broadcast command construction in AdbUtils for cleaner and more concise execution logic. 2026-04-16 17:29:20 +07:00
slava
899f4ff6d6 Add support for mock server state persistence, error tracking, and screenshot handling. Extend bootstrapping logic and monitoring endpoints for enhanced debugging and task management. 2026-04-14 18:46:34 +07:00
slava
628323184f Refine transaction fetching and parsing:
- Add date header parsing and swipe functionality for streamlined `Ozon` transactions list processing.
- Improve deduplication logic, date assignment, and scroll behavior in `Dushanbe` and `Ozon` scripts.
- Introduce screenshot handling for debugging transaction fetching workflows.
- Add cancellation logic by `materialId` in `EventDAO`.
- Update mock server for enhanced filename generation and PATCH support for bank profiles.
2026-04-13 22:41:15 +07:00
slava
e5e8500534 Improve logging and control flow in NetworkService and EventHandler; fix tapped assignment in GetLastTransactionsScript. 2026-04-13 18:55:08 +07:00
slava
db88cf373e Add currency mapping logic to GetCardInfoScript in all platforms and update .gitignore for mock server scenarios 2026-04-13 18:37:01 +07:00
slava
967397b5d5 Add scenarios for "FETCH_TRANSACTIONS" testing and improve bank-specific bootstrapping logic in mock server. 2026-04-12 17:29:48 +07:00
slava
dfbe1cbf72 Fix for windows 2026-04-12 16:54:34 +07:00
slava
0ab71db506 Fix for windows 2026-04-12 15:52:19 +07:00
slava
c2fc0104c6 Fix for windows 2026-04-12 15:17:28 +07:00
slava
23c3f366b1 Add mock server for local ARC backend integration tests, update config.ini for local API usage. 2026-04-12 12:11:39 +07:00
slava
d235508c70 Emit parsed transaction data as a signal to streamline GetLastTransactionsScript integration with EventHandler. 2026-04-11 19:29:47 +07:00
slava
33c8420910 Refine transaction parsing and handling logic:
- Add fast path for avoiding unnecessary app restarts if already on the home or PIN screen.
- Improve PIN code and home screen detection with fallback mechanisms.
- Implement URL and error sanitization for network messages to hide sensitive data from logs.
- Add embedded transaction parsing from content description with adjusted tap positioning logic.
- Refactor transaction fetching to use direct signal-based parsed data instead of database queries.
2026-04-11 16:37:14 +07:00
slava
d79dd93514 Refine transaction filtering logic by adjusting time-based pre-filtering with wraparound midnight support and improving detail parsing for extracting transaction metadata. 2026-04-10 19:03:35 +07:00
slava
ffb206303e Refine transaction ID generation by replacing history-based retrieval with timestamp-based fallback logic. Adjust source card selection and transaction grouping in payment scripts. 2026-04-10 18:46:33 +07:00
slava
fd99281dfb Add device timezone handling in transaction filtering and refine match logic by amount and timestamp 2026-04-10 18:14:52 +07:00
slava
76ceaed0eb Refine pin code validation logic, add device timezone support in transaction scripts, and improve XML node logging for error handling. 2026-04-10 17:55:45 +07:00
slava
14ca8348c3 Add timeout handling and process kill logic for ADB operations. Refine date and time validation in transaction fetching. Adjust EventHandler to handle "ozon" bank accounts separately. Use blocking queued connection for stopping EventHandler. 2026-04-10 15:44:55 +07:00
slava
87d74e7747 Add warning log for failed balance updates in GetCardInfoScript to improve error visibility. 2026-04-09 22:25:43 +07:00
slava
4c1ff0af0f Refine card number parsing logic in GetCardInfoScript and improve node filtering in ScreenXmlParser. 2026-04-09 22:21:05 +07:00
slava
d27f4b6b22 Add phone number to makePayment and implement fallback logic for generating transaction IDs in payment scripts. 2026-04-08 21:34:54 +07:00
slava
7931a10b88 Fix for windows 2026-04-08 15:43:59 +07:00
slava
73461b93bf - Add OCR-based fallback logic to extract bankTrExternalId in GetLastTransactionsScript when missing.
- Copy required images, trained data, and config files to the build directory during the CMake process.
2026-04-06 20:57:48 +07:00
slava
a046a27569 Fix for windows 2026-04-06 19:53:05 +07:00
slava
8ec9f37160 Replace nullptr with QCoreApplication::applicationDirPath() in OCR initialization across automation scripts to ensure correct Tesseract setup paths. Add UI overlay updates in AccountSettingsWindow for better progress visibility and enhance error handling in EventHandler for transactions missing bank_transaction_id. 2026-04-06 19:45:51 +07:00
slava
013a00c972 Add debug logging for card details in GetCardInfoScript to enhance troubleshooting. 2026-04-06 18:40:03 +07:00
slava
6647a91c88 Handle error dialog in GetLastTransactionsScript with "OK" tap and pull-to-refresh; add time pre-filtering and enhanced match validation for transactions. 2026-04-06 17:18:42 +07:00
slava
41bb5e33fd Add pause/resume functionality for active profiles in AccountSettingsWindow and improve automation scripts with OCR-based transaction ID extraction, card balance waits, and absolute value handling in event parsing. 2026-04-06 17:02:52 +07:00
slava
3ed2d4da20 Add PayByCardScript and PayByPhoneScript for Dushanbe automation, including transaction flow, OCR-based operation ID extraction, and enhanced logging. 2026-04-06 12:51:18 +07:00
slava
37b72938e8 Add CommonScript framework and implement bank-specific automation scripts including GetCardInfoScript, GetProfileInfoScript, and GetLastTransactionsScript. 2026-04-04 23:32:26 +07:00
slava
8d0eae8ec0 - Remove app_logs table and related logic, transitioning to general_logs.
- Add `pinCheckOnly` parameter in scripts to support conditional account checks.
- Prevent activation of bank profiles without active cards in `AccountSettingsWindow` and `DeviceWidget`.
- Adjust logging flow in `AppLogger` for unified data handling.
2026-03-31 14:07:23 +07:00
slava
a6509b5653 - Add database migration for screenshot column in general_logs.
- Implement `cleanupOldData` in `DatabaseManager` to remove outdated entries and optimize storage.
- Introduce `unlockScreen` in `AdbUtils` and integrate it into common scripts for screen unlocking.
- Enhance `GeneralLogDAO` to support screenshot storage and retrieval.
- Expand `FileLogWindow` with screenshot viewer and horizontal layout.
- Add device ID migration logic in `BankProfileDAO` and `MaterialDAO`.
- Improve error handling in `EventHandler` by saving and logging screenshots for critical events.
2026-03-31 13:08:02 +07:00
slava
de8c2e84d0 - Add toggleMaterial logic to NetworkService for enabling/disabling materials via PATCH request.
- Implement `toggleMaterialStatus` in `AccountSettingsWindow` for UI control and threading integration.
- Enhance `MaterialDAO` with numeric validation for `lastNumbers` field to ensure data integrity.
- Update `PayByCardScript` and `PayByPhoneScript` to handle PIN entry if required after payment confirmation.
- Introduce dynamic UI adjustments for material toggling, including a new toggle button and layout refinements.
- Add documentation for task logic in `ozon_tasks.md` and `black_tasks.md`.
- Switch default currency in `GetCardInfoScript` (Black app) from USD to ARS.
2026-03-31 11:40:34 +07:00
slava
bceceb516b Remove AccountDAO, ApplicationDAO, and related models, replacing them with BankProfileDAO and BankProfileInfo. 2026-03-31 00:11:50 +07:00