Android agent
The project is a comprehensive development of a distributed automation system, including a server part, task queue, simple web interface, Android agent (APK), and a subsystem for data storage and export. The work is carried out in stages. The first stage involves design: creating the system architecture, ER diagram, draft OpenAPI, as well as a security plan describing secret storage, RBAC, and audit logs. The second stage includes the development of the backend part on Node.js/TypeScript using Fastify, PostgreSQL, Redis, and Bull queues, implementation of REST API (devices, tasks, proxy, JWT authentication with basic RBAC), as well as the creation of a minimal web panel for viewing devices, tasks, and logs. All services are packaged in Docker Compose with instructions for launching. The third stage involves the development of the Android agent in Kotlin: registration on the controller, heartbeat, receiving and executing tasks (navigate, wait, click, extract by CSS/XPath, screenshot, upload), as well as basic deduplication functions within root access without interfering with IMEI or serial. Preparation of scenario examples in JSON/YAML and assembly of APK with source code. The fourth stage implements an artifact storage system: MinIO/S3 for screenshots, PostgreSQL for results, data export to CSV/JSON, and API for unloading. The fifth stage includes integration, testing, and project handover: integration tests on real devices, smoke tests for load, bug fixing, preparation of documentation, acceptance checklist, and handover of all source codes, ER diagrams, OpenAPI, Docker Compose, and deployment instructions.