3252a8
687fc03e8c
fix: reset trial eligibility from web admin
2026-06-01 19:30:16 +03:00
3252a8
0d932b0915
style: ruff format panel dry-run service
2026-06-01 14:22:33 +03:00
3252a8
2b763efef9
fix: redact secrets and ids from panel dry-run logs
...
CodeQL flagged clear-text logging of sensitive information in the panel
dry-run logger: it dumped the full request payload (which can include
proxy credentials like trojanPassword/ssPassword and PII such as email
and telegramId) and the raw endpoint (embedding user UUIDs).
Recursively redact values under sensitive keys before building the
payload preview, and mask opaque id-like segments in logged endpoints.
2026-06-01 14:20:38 +03:00
3252a8
a0ea2261f4
feat: anonymous opt-out install telemetry beacon
...
Add a once-a-day anonymous heartbeat (PostHog) so maintainers can see
active installs and version/OS breakdowns. Self-hosted friendly: opt out
via TELEMETRY_ENABLED in .env or the Admin -> System toggle (applied
without a restart), or by clearing the endpoint/key.
- Share version resolution in bot/utils/app_version.py so the admin
sidebar and the beacon report the same build version
- TelemetryWorker sends an opaque install id plus coarse facts only
(version, OS/arch, python, locale, enabled providers, user-count
range); never tokens, domains or user data
- Register the worker in main_worker.py behind a Redis single-flight lock
- Expose TELEMETRY_* settings and an Admin -> System manifest toggle
- Document the payload and opt-out in docs/configuration/telemetry.md
- Cover bucketing, payload shape and anonymity with tests
2026-06-01 14:14:02 +03:00
3252a8 and GitHub
63ec3a6152
Merge pull request #18 from 3252a8/feature/multicurrency
...
Add ability to use different currency than rub
2026-06-01 11:26:18 +03:00
3252a8
3896c455b8
fix: decouple docs email previews from bot deps
2026-06-01 11:23:45 +03:00
3252a8
d97afbec18
fix: apply ruff formatting
2026-06-01 11:16:28 +03:00
3252a8
21079f78dc
fix: satisfy ruff line length
2026-06-01 11:11:15 +03:00
3252a8
391487811b
feat: add remnawave panel dry-run mode
2026-06-01 10:32:38 +03:00
3252a8
939bc37995
Merge branch 'dev' into feature/multicurrency
2026-06-01 08:18:25 +03:00
3252a8
ecf779763c
feat: audit outbound user notifications
2026-05-31 23:05:40 +03:00
3252a8
1578a9da36
fix: align traffic top-up flows and unlimited overrides
2026-05-31 23:05:29 +03:00
3252a8
80e5f0c80d
feat: add multicurrency tariff payments
2026-05-31 22:17:28 +03:00
3252a8
45543983c2
fix: run migrations after database restore
2026-05-31 14:57:32 +03:00
3252a8
eda5d3e633
fix: localize support email templates
2026-05-31 14:41:26 +03:00
3252a8
cf3af17243
fix: avoid Telegram notification probe messages
2026-05-31 00:17:20 +03:00
3252a8
acc222da41
feat: prompt users to start Telegram bot for notifications
2026-05-30 21:15:17 +03:00
3252a8
c6c5352813
fix: format premium traffic limits from bytes
2026-05-30 12:00:01 +03:00
3252a8
067d6fb59f
chore: clarify panel webhook subscription logs
2026-05-30 11:52:07 +03:00
3252a8
c3e55bc853
feature: sync user email notifications
2026-05-30 11:46:07 +03:00
3252a8
09be82aad5
fix: improve subscription email renewal flow
2026-05-30 00:23:53 +03:00
3252a8
6803c7801f
fix: configure referral bonuses per tariff period
2026-05-29 22:30:31 +03:00
3252a8
cab963dcdc
fix: prevent subscription worker deadlocks
2026-05-29 22:07:16 +03:00
3252a8
001e54cfe2
fix: preserve subscriptions on panel lookup failures
2026-05-29 21:46:42 +03:00
3252a8
19f0f27a3b
feat: mirror subscription lifecycle notifications
2026-05-29 18:08:28 +03:00
3252a8
d299a3c524
feature: Add local subscription notification worker
2026-05-28 22:48:48 +03:00
3252a8
ef4b493e65
chore: change backup archive name style
2026-05-27 23:01:42 +03:00
3252a8
ded044b4c0
fix: make support replies finish promptly
2026-05-27 22:21:24 +03:00
3252a8
bce78c4f28
chore: backup warning details
2026-05-27 19:08:49 +03:00
3252a8
f2fc335221
fix: anchor hwid pricing to paid period
2026-05-27 18:13:27 +03:00
3252a8
fe34edfe73
chore: verify formatting checks
2026-05-27 14:29:45 +03:00
3252a8
4706be53ab
feat: manual backup button
2026-05-27 14:25:37 +03:00
3252a8
4bd547f06a
chore: tune backup function and related docs
2026-05-27 14:11:22 +03:00
3252a8
3aede8fe95
feat: add backups feature
2026-05-27 13:53:30 +03:00
3252a8
c68cb97964
fix: bind HWID top-ups to subscription periods
2026-05-25 19:33:50 +03:00
3252a8
59fa301344
feat: add runtime locale overrides
2026-05-25 17:47:45 +03:00
3252a8
ba7811621e
fix: preserve premium topup squad access
2026-05-25 12:18:58 +03:00
3252a8
340afe1b80
fix: stop premium squad sync churn
2026-05-25 11:54:03 +03:00
3252a8
de1763cfe1
feat: enable payment provider for admin only
2026-05-25 11:19:54 +03:00
3252a8
82cc33587c
fix: stop panel description churn
2026-05-25 00:06:29 +03:00
3252a8
bafc5f4709
feat: show linked emails in telegram logs
2026-05-24 22:32:35 +03:00
3252a8
d9a23235e5
fix: stop syncing email in panel descriptions
2026-05-24 21:36:00 +03:00
3252a8
2b3078fcce
chore: fix formatting checks
2026-05-24 18:51:37 +03:00
3252a8
d1b9990bac
feat: manage trial settings on tariffs page
2026-05-24 18:46:23 +03:00
3252a8
0eeabc7b3a
fix: process yookassa hwid device topups
2026-05-23 22:28:05 +03:00
3252a8
d3925cad22
Merge branch 'dev' into feature/install-page
...
# Conflicts:
# backend/bot/app/web/admin_api_impl/settings.py
# backend/bot/app/web/webapp/cache_helpers.py
# frontend/src/admin/sections/SettingsSection.svelte
# tests/test_admin_settings_manifest_i18n.py
2026-05-22 22:57:24 +03:00
3252a8
19aa2ec9c9
fix: log account merge notifications
2026-05-22 22:02:28 +03:00
3252a8
f5023dc46b
fix: repair missing panel user references
2026-05-22 15:39:51 +03:00
3252a8
9e61a3d8a8
feat: install instruction inside web app
2026-05-22 13:58:34 +03:00
3252a8
044cb4de7e
refactor(redis): strengthen shared cache invalidation
2026-05-21 06:26:48 +03:00