Files
vtube/docs/ADMINS.md
goboss 981a0ad9b6 Document granular hook policy + ad architecture + 94-site scale
Hook redesign (guard-readonly.sh + guard-bash.sh):
- ALLOW edits: /home/nosfortube/frontend_<port>/ (digits-only, all subdirs)
  + /home/nosfortube/orest/ (user working zone + screenshots)
- DENY: lang variants (frontend_<port>_<lang>/), frontend_core/, .git/,
  system paths (/etc/, /usr/, /boot/, /var/* except /var/log/claude/)
- 19/19 readonly + 18/19 bash tests pass (1 pre-existing sed-i regex gap)
- Backup попередньої версії: .bak.2026-05-02

Doc updates:
- New: PROJECT.md, ARCHITECTURE.md, DEPLOY.md, ADS.md, PERFORMANCE.md,
  INTERLINKING.md, ADMINS.md (topic-split docs/)
- CLAUDE.md: 94-site scale, granular edit zones, doc index
- INFRASTRUCTURE.md: hook table updated
- SITES.md: scope note (14 backup-tracked of 94 total)
- RECOMMENDATIONS.md: W1 (hook conflict) → DONE; W2-W3, D1-D4 added

Site architecture findings (audit 2026-05-02):
- 94 frontend_<port>/ sites, 71 in site-name-routing.csv, 14 backup-tracked
- 3 ad-architectures coexist: 8148 modern bundle (1), modern partials (~23),
  legacy inline surstrom (31)
- 8148 unique: ad-bundle.min.js source files, build-ad-bundle.sh, terser
- Server IP 185.73.222.75 у t1.* allowlist (curl probes work)
- CDN: custom + Cloudflare на 8081 etc; purge-cache при prod deploy

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-02 13:26:25 +00:00

3.6 KiB
Raw Blame History

tubev — Admin Panels

Адмінки для керування контентом, перекладами, коментами, deploy-flow та моніторингом. Більшість per-site, кілька cross-site.

Status

🟢 Mapped — основні URL зафіксовано. Деталі scope наповнюємо по мірі використання.

Per-site adminkи

URL шаблон: https://<domain>/<panel-path>. Приклад нижче — для a.tubev.sex.

Назва URL Scope Що змінює Self-deploy?
Site index https://a.tubev.sex/admin/index Site dashboard Загальне керування Так
Settings https://a.tubev.sex/admin/settings Site config К-ть тумб per page, ін. налаштування (юзер рідко чіпає) Так
Languages https://a.tubev.sex/moderation/languages/langs I18n setup Набір мов на сайті Так
Translations https://a.tubev.sex/moderation/languages/translation/ UI strings Переклади змінних (Title_Desc_H1, categories/h3 тощо) per-language Так

Translation key example:

categories/h3   Title_Desc_H1   Discover XXX Themes
ProjectShort    Title_Desc_H1   Free sex videos
Top searches    Title_Desc_H1   Top searches

Сайти зазвичай multilingual.

Cross-site adminkи

Назва URL Scope Що дозволяє Обмеження
Site control (deploy) https://rss.g--o.info/admin/site/control Усі сайти Викатати оновлення з тесту → прод per-site НЕ оновлює var.lua, НЕ додає нові файли (через Адміна)
Site sitemap https://rss.g--o.info/admin/site Усі сайти Sitemap settings, інші системні нал.
Billing dashboard https://billing.g--o.info/cs/oursites/dashboard/ Усі сайти Статистика, моніторинг (від Адміна) Read-only переважно

Monitoring sources

Для діагностики проблем — пріоритет з low-noise → high-noise:

  1. adspyglass dashboardhttps://app.adspyglass.com/dashboardbest signal, лайв графік показу реклами per site. Падіння = щось зламалось. Деталі: ADS.md § Monitoring.
  2. Telegram + email alerts — критичні (downtime, errors).
  3. Billing dashboard — статистика від Адміна, рідко.
  4. PSI manualhttps://pagespeed.web.dev/ після великих змін, періодично. Деталі: PERFORMANCE.md.

Auth

  • Юзер логінений у браузері. Claude/боти adminkи не використовують — це юзер-side операції (деплоймент, перекладання, налаштування).
  • Прод-домени (наприклад a.tubev.sex) повертають 401 Unauthorized з сервера без cookies — підтверджено probe 2026-05-01. Це adminki + secured area, не публічний контент.

Open questions

  • Чи є API за adminkами (REST/GraphQL) для автоматизації?
  • Чи всі 94 сайти мають однакові admin paths (/admin/index, /moderation/languages/...)? — припускаємо так.