GET /api/collections/:id/last-applied-attempt — Последняя применённая генерация
Сгенерировано из матриц + кода. Правки вносить в источники (
docs/matrices/,server/routes/), не здесь.
| Поле | Значение |
|---|---|
| HTTP | GET /api/collections/:id/last-applied-attempt |
| Auth | requireCollectionOwnership — requireCollectionOwnership |
| Scope токена | read |
| PG-функции | api.get_last_applied_attempt |
| Таблицы | collection_generation_attempt |
| SRM | SRM-329 |
| RP (права) | — |
| Файл роута | server/routes/collections.js |
| Статус | done |
Аргументы запроса (best-effort из хендлера; путь-параметры опущены):
аргументов не обнаружено (подтвердить вручную по server/routes/collections.js)
Коды ответов/ошибок (из хендлера): 404 (+ 200) — уточнить причины вручную
Для человека
Как открыть: отдельно открывать не нужно — это служебный запрос. Орг-админ → раздел «Коллекции» → карточка коллекции → редактор → форма (пере)генерации вызывает его сама при открытии.
Возвращает последнюю успешно применённую генерацию коллекции: каким режимом и с каким качеством её строили, какие были рамки по осям, что в итоге получилось (сколько слоёв, блоков, специальностей) и когда. Форма перегенерации использует это, чтобы заранее подставить параметры прошлого прогона — не приходится вводить всё заново.
Учитываются только применённые прогоны: предпросмотры (которые ничего не записывали) и неудачные попытки сюда не попадают. Если коллекцию ещё ни разу не генерировали с записью, вернётся 404 — и форма просто откроется с пустыми полями.
Кто может. Только администратор-владелец коллекции (орг-админ организации-владельца или администратор платформы): запрос отдаёт историю заданных параметров, поэтому доступен ровно тем же, кто вправе перегенерировать. Чужой админ публичной коллекции сюда не пройдёт.
Для агента
Чтение — достаточно токена со scope read (см. Конвенции). Но доступ — не любой read-access: метод отдаёт историю заданных параметров и сообщений (form-hydrate), поэтому требует ownership — site-admin или org-admin организации-владельца коллекции, та же проверка, что у write-пути. Чужой org-admin даже публичной коллекции получит 403.
Тела запроса нет; коллекция задаётся в пути (:id).
Пример запроса:
curl https://specbuilder.vnimanie.ai/api/collections/a1b2c3d4-.../last-applied-attempt \ -H "Authorization: Bearer tak_..."Ответ 200:
{ "attempt_id": "f9e8d7c6-...", "mode": "initial", "quality": "pro", "params": { "layers": { "min": 3, "max": 5 }, "blocks": { "min": null, "max": 20 }, "specialties": { "min": null, "max": null } }, "messages": [{ "role": "user", "content": "Коллекция для precision agriculture" }], "result_summary": { "layers_count": 4, "blocks_count": 18, "specialties_count": 9 }, "created_at": "2026-06-22T10:14:00Z"}Возвращается только последняя попытка со status = success и applied = true. Если применённых попыток нет — 404 (ожидаемый кейс для свежей коллекции, не ошибка). Поля mode, quality, params, messages пригодны для прямой подстановки в тело перегенерации.
Связанные
- Экраны: Редактор коллекции
- Конвенции · Роли · Ошибки · Глоссарий