rename ss-tools to superset-tools across the entire project

- Replace all occurrences of 'ss-tools' with 'superset-tools' in 104 files
- Rename git bundle file ss-tools.bundle → superset-tools.bundle
- Update .gitignore pattern accordingly
- Preserve variable names (hasSsTools etc.) and code identifiers
This commit is contained in:
2026-06-16 11:15:19 +03:00
parent d75db60343
commit ec6421de35
129 changed files with 467 additions and 467 deletions

View File

@@ -65,7 +65,7 @@
|---|-----------|--------|-------|
| 5.1 | I — Semantic Contract First | ✅ PASS | Все изменённые функции получат/обновят GRACE-Poly контракты. Новые контракты C3-C4 с @RATIONALE/@REJECTED. |
| 5.2 | II — Decision Memory | ✅ PASS | ADR будет создан на этапе `/speckit.plan` с записью rejected-путей (aiohttp, multiprocessing, async SQLAlchemy). |
| 5.3 | III — External Orchestrator | ✅ PASS | Топология не меняется. ss-tools остаётся внешним оркестратором. |
| 5.3 | III — External Orchestrator | ✅ PASS | Топология не меняется. superset-tools остаётся внешним оркестратором. |
| 5.4 | IV — Module Discipline | ✅ PASS | Модули не превысят 400 строк. Рефакторинг `network.py` (542 строки) потребует декомпозиции. |
| 5.5 | V — RBAC Enforcement | ✅ PASS | Проверки прав не затрагиваются. |
| 5.6 | VI — Frontend Svelte 5 Runes Only | ✅ PASS | Фронтенд не меняется. |

View File

@@ -30,7 +30,7 @@
|---|-----------|--------|---------------|
| I | Semantic Contract First | PASS | Все изменённые функции получат/обновят C3-C4 контракты. Новый `AsyncAPIClient` C4 с @PRE/@POST/@SIDE_EFFECT. |
| II | Decision Memory | PASS | ADR-0011 будет создан с записью rejected-путей (aiohttp, multiprocessing, async SQLAlchemy). @RATIONALE/@REJECTED в каждом C4+ контракте. |
| III | External Orchestrator | PASS | Топология не меняется. ss-tools остаётся внешним оркестратором над Superset. |
| III | External Orchestrator | PASS | Топология не меняется. superset-tools остаётся внешним оркестратором над Superset. |
| IV | Module Discipline | PASS | `network.py` (542 строки) Tombstone. `async_network.py` (<400 строк) canonical async client, расширяется семафором. `SupersetAuthCache` уже выделен. |
| V | RBAC Enforcement | PASS | Проверки прав не затрагиваются. Ручки сохраняют `Depends(has_permission(...))`. |
| VI | Frontend Svelte 5 Runes Only | N/A | Фронтенд не меняется. |

View File

@@ -11,7 +11,7 @@
### Scope: ~15 файлов, ~45 блокирующих вызовов
**Корневая причина**: `APIClient` (`core/utils/network.py`, 542 строки) — центральный HTTP-клиент на `requests.Session`. Через него проходит **весь** трафик ss-tools к Superset. Все 13 методов-миксинов `SupersetClient` используют его синхронно. Любой запрос к Superset (получение дашбордов, экспорт, импорт, SQL Lab, chart data, скриншоты) блокирует event loop.
**Корневая причина**: `APIClient` (`core/utils/network.py`, 542 строки) — центральный HTTP-клиент на `requests.Session`. Через него проходит **весь** трафик superset-tools к Superset. Все 13 методов-миксинов `SupersetClient` используют его синхронно. Любой запрос к Superset (получение дашбордов, экспорт, импорт, SQL Lab, chart data, скриншоты) блокирует event loop.
### Migration Strategy

View File

@@ -7,9 +7,9 @@
## 1. User Persona & Context
- **Who is the user?**:
- **Оператор ss-tools** — настраивает и запускает задачи (переводы, бэкапы, деплои, миграции). Может быть несколько операторов одновременно.
- **Оператор superset-tools** — настраивает и запускает задачи (переводы, бэкапы, деплои, миграции). Может быть несколько операторов одновременно.
- **Администратор** — мониторит состояние системы, просматривает дашборды, управляет окружениями.
- **API-клиент** — внешние системы, вызывающие API ss-tools (например, CI/CD pipeline для деплоя).
- **API-клиент** — внешние системы, вызывающие API superset-tools (например, CI/CD pipeline для деплоя).
- **What is their goal?**: Выполнять несколько операций параллельно без блокировок. Видеть отзывчивый интерфейс независимо от того, какие фоновые задачи выполняются.
- **Context**: Работа через веб-интерфейс SvelteKit SPA или напрямую через REST API. Один экземпляр сервера обслуживает нескольких пользователей.