COMPO · POSTER ENGINE · API-FIRST

Единый мотор
для композиций.

Этот контракт описывает, как сайт, Figma, Hermes и внешняя ИИ передают задачу одному композиционному движку и получают воспроизводимую сцену для рендера.

COMPO / Poster Engine / API contracts
TASK-023 · DONE
4 versioned JSON schemas · bounded clients/statuses · idempotency · provenance · smoke-test PASS.

Как работает запрос

1 · ClientWeb, Figma, Hermes, внешний API или batch.
2 · CreativeRequestБриф, профиль, ассеты, формат и idempotency key.
3 · CreativeJobОграниченная очередь и прозрачный статус.
4 · CompositionSceneРедактируемая сцена: canvas, элементы, связи, предупреждения.
5 · RendererPNG/WebP, HTML, Figma или другой адаптер.

Границы ответственности

Poster Engine

Владеет CreativeProfile, анализом композиции, кандидатами размещения и CompositionScene.

Hermes

Владеет контент-планом, текстами, расписанием и публикацией. Передаёт immutable ContentBatch.

Vision / генерация

Дают evidence или candidate assets. Низкая уверенность не превращается в факт: используется UNKNOWN.

Машинные контракты

Схемы опубликованы рядом с этой страницей и являются источником формата. Имена и версия не менять без отдельного change request.

creative_request.schema.jsonвходная задача
creative_profile.schema.jsonверсионируемый стиль и предпочтения
creative_job.schema.jsonсостояние выполнения
composition_scene.schema.jsonrenderer-neutral результат
creative_job_state_machine.jsonдопустимые переходы и terminal states
image_poster_draft_001.schema.jsonпервый draft-сценарий без исполнения
vision_adapter_contract.schema.jsonграница запроса к Vision
vision_observation.schema.jsonнаблюдения, confidence, evidence и UNKNOWN
deterministic_metrics.schema.jsonгеометрия, цвет, контраст, края и whitespace
asset_intake.schema.jsonhash, MIME, права, retention и asset:// ссылка
image_metrics_adapter.schema.jsonдетерминированный запуск измерений без Vision
vision_result.schema.jsonединый result envelope и human override
brief_roles.schema.jsonроли, ограничения и unresolved questions
golden_fixture_registry.schema.jsonвоспроизводимые synthetic/real benchmark fixtures
golden_benchmark_report.json5 synthetic PASS · 3 real pending · 0 failures
poster_candidate.schema.jsonbounded draft candidate без автопринятия

Параллельная подготовка TASK-010: draft-контракт кандидата уже проверен, но production candidate loop не запускается до закрытия golden real fixtures.

layout_candidate_set.schema.jsonограниченный набор вариантов и причины отклонения

Параллельная подготовка TASK-011: planner-контракт ограничивает число вариантов, сохраняет rejection reasons и требует human review.

semantic_collision_warning.schema.jsonлица, текст, логотипы, края и негативный смысл

Параллельная подготовка TASK-012: collision warnings только фиксируют риск и evidence; repair request всегда mutation_allowed=false.

draft_renderer.schema.jsonчерновой render, artifacts и сохранение originals
decision_trace.schema.jsonWHY/WHY-NOT, evidence и deterministic replay
generation_adapter.schema.jsonallowlisted Flux Klein draft request
generation_manifest.schema.jsonseed, prompt hash, model, inputs/outputs и secrets excluded
web_optimization.schema.jsonweb-size, quality и сохранение исходника
private_result_publication.schema.jsonowner-gated private result без индексации
human_review.schema.jsonрешение владельца, причины и комментарий
feedback_record.schema.jsonвыбор, причины, confidence и контекст вопроса
ai_handoff.schema.jsonконтекст для другой ИИ, ссылки и open items
acceptance_report.schema.jsonacceptance: проверки, блокеры и следующий шаг

Открыть текущий acceptance-отчёт →

onboarding_questionnaire.schema.jsonкороткая анкета предпочтений и ограничений

Открыть пример onboarding →

reference_calibration.schema.jsonизвлечение свойств референса и proposal профиля

Открыть пример calibration →

figma_adapter.schema.jsonимпорт/экспорт CompositionScene в Figma с review gate

Открыть пример Figma mapping →

hermes_content_plan_adapter.schema.jsonsnapshot контент-плана Hermes без прямой DB-связи

Открыть пример Hermes snapshot →

content_batch.schema.jsonпакет задач, порядок, статусы и unresolved items

Открыть пример ContentBatch →

external_api_policy.schema.jsonauth, tenant isolation, quotas и idempotency

Открыть пример API policy →

status_webhook_sdk.schema.jsonстатусы job, webhook и SDK polling

Открыть пример status/webhook →

website_quick_order.schema.jsonбыстрый заказ и optional profile onboarding

Открыть пример quick order →

integration_acceptance.schema.jsonintegration, load, privacy, retention и recovery gate

Открыть acceptance suite →

runtime_qualification.schema.jsonфактический статус Workbench, ComfyUI, Ollama и Vision worker

Открыть runtime qualification →

bounded_render_qualification.schema.jsonфактический PASS первого приватного рендера

Открыть render qualification →

vision_bridge_qualification.schema.jsonквалификация локального Vision bridge через Ollama

Открыть vision qualification →

Открыть staged Golden candidates →

Открыть понятную карту прогресса Poster Engine →

Что нужно для подключения трёх real fixtures →

Обязательные правила

TASK-025 · DONE
State machine опубликована: 11 допустимых переходов, review gate и terminal states проверены smoke-тестом.
TASK-002 · DONE
IMAGE-POSTER-DRAFT-001 зафиксирован: один raster asset, hash/MIME/size/canvas bounds, draft-only execution.
TASK-003 · DONE
Vision boundary опубликована: allowlisted describe action, structured observations, confidence/evidence, UNKNOWN и mutation_allowed=false.
TASK-004 · DONE
Deterministic metrics опубликованы: geometry, color, contrast, edge, whitespace, single owner, provenance и N/A/UNKNOWN без universal score.
TASK-005 · DONE
Asset intake опубликован: asset:// reference, hash/MIME/size, rights, retention и provenance; server paths и SSH отсутствуют.
TASK-006 · DONE
Image metrics adapter опубликован: geometry/color/contrast/edge/whitespace, версия алгоритма, regions и mutation_allowed=false.
TASK-007 · DONE
Vision result envelope опубликован: provider/status/logs, reusable observations, human override, partial/unknown и mutation_allowed=false.
TASK-008 · DONE
Brief-to-roles опубликован: роли, constraints, приоритеты, provenance, confidence и unresolved questions; размещение объектов ещё не выполняется.
TASK-009 · В РАБОТЕ
Benchmark промежуточно: 5/5 synthetic PASS, 3 authorized-real слота PENDING_ASSET, 0 failures. Полное закрытие будет только после подключения трёх разрешённых изображений.

Следующий блок не открываю: сначала подключить 3 разрешённых real fixtures.

VISITS / ...