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>
55 lines
3.6 KiB
Markdown
55 lines
3.6 KiB
Markdown
# 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 dashboard** — `https://app.adspyglass.com/dashboard` — **best signal**, лайв графік показу реклами per site. Падіння = щось зламалось. Деталі: [ADS.md § Monitoring](ADS.md#monitoring).
|
||
2. **Telegram + email alerts** — критичні (downtime, errors).
|
||
3. **Billing dashboard** — статистика від Адміна, рідко.
|
||
4. **PSI manual** — `https://pagespeed.web.dev/` після великих змін, періодично. Деталі: [PERFORMANCE.md](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/...`)? — припускаємо так.
|