Files
cloud-host/backend
keyhan 8ca787d46e feat(lifecycle): add billing lifecycle with auto-suspend/delete
- New AppLifecycleService with cron-based scanner (60s interval)
- State machine: ACTIVE → SUSPENDED → PENDING_DELETION → DELETED
- Auto-renew hourly plans from wallet
- Admin-configurable grace periods via PlatformSettings table
- New LifecycleController (GET/PATCH /lifecycle/settings)
- PlatformSetting entity for runtime admin config
- BillingService: calculateCostForApp, deductWallet
- Application entity: planId, billingCycle, lifecycleStatus, planExpiresAt
- New enums: AppLifecycleStatus, BillingCycle
2026-04-22 16:44:20 +03:30
..
2026-04-05 15:22:01 +03:30
2026-04-05 15:22:01 +03:30
2026-04-05 15:22:01 +03:30
2026-04-05 15:22:01 +03:30
2026-04-05 15:22:01 +03:30
2026-04-05 15:22:01 +03:30
2026-04-05 15:22:01 +03:30
2026-04-05 15:22:01 +03:30