docs: sync all documentation for agent handoff (v0.1.34 + funcs-service v0.2.0)

This commit is contained in:
Naeel
2026-03-18 20:19:48 +03:00
parent a04dfb2d0c
commit 2c194f6a7f
6 changed files with 481 additions and 54 deletions
+6 -5
View File
@@ -37,7 +37,7 @@ Terraform уже работает по схеме: `source_dir` → zip → `POS
Обратная синхронизация (кластер → локальная папка): скачать zip из S3 → распаковать в `source_dir`.
Никаких структурных изменений не потребует. Реализовывать ПОСЛЕ web-консоли.
### Архитектура web-консоли (план, ветка feat/web-console)
### Архитектура web-консоли (реализовано, ветка feat/web-console, оператор v0.1.34 + funcs-service v0.2.0)
**Принцип:** минимум изменений в операторе, максимум логики в `sless-funcs-service`.
@@ -45,15 +45,16 @@ Terraform уже работает по схеме: `source_dir` → zip → `POS
| Метод | Путь | Что делает |
|-------|------|-----------|
| GET | `/v1/namespaces/{ns}/functions/{name}/source` | Читает zip из S3 → JSON `[{name, content}]` |
| GET | `/v1/namespaces/{ns}/functions/{name}/source` | Читает tar.gz из S3 (`Function.Spec.S3Key`) → JSON `[{name, content}]`, без Dockerfile |
| PATCH | `/v1/namespaces/{ns}/triggers/{name}` | `{"enabled": bool}` → обновляет Trigger CRD |
**`sless-funcs-service` — HTML режим:**
- Если запрос из браузера (`Accept: text/html`) → отдаёт HTML страницу
- Список функций — аккордеон; при раскрытии `fetch(/source)` подгружает файлы
- Список функций — аккордеон; при раскрытии `fetch(/funcs/{ns}/source/{fn})` подгружает файлы
- Подсветка синтаксиса: `highlight.js` с CDN (не требует сборки)
- Кнопки ▶ Старт / ■ Стоп → `PATCH /triggers/{name}` через fetch
- `text/plain` ответ для curl/CLI остаётся без изменений
- Кнопки ▶ Старт / ■ Стоп → `PATCH /funcs/{ns}/triggers/{name}` через fetch
- HTML шаблон `index.html` встроен в бинарник через `//go:embed index.html`
- `text/plain` ответ для curl/CLI остаётся без изменений (браузер шлёт `Accept: text/html`, curl — нет)
---