Add versioned design profile releases
This commit is contained in:
+11
-2
@@ -23,7 +23,7 @@
|
||||
Manifest фиксирует:
|
||||
|
||||
- identity, slug, draft status и версию;
|
||||
- ссылку на Design Profile и Dark/Light;
|
||||
- ссылку на конкретный Design Profile release (`id + version + status + theme`);
|
||||
- хотя бы одну страницу и pinned page-template version;
|
||||
- navigation visibility;
|
||||
- только заранее разрешённые feature flags;
|
||||
@@ -58,7 +58,11 @@ Catalog server предоставляет минимальный временн
|
||||
|
||||
## Design Profile lifecycle
|
||||
|
||||
Visual Library использует отдельный Hub-style selector профилей. Общая кнопка Save открывает каноническую модалку `Сохранить / Сохранить как новый`. Приложение хранит только pinned `profile id + version + theme`; media, favicon и material settings принадлежат Design Profile.
|
||||
Каноническая JSON Schema: `registry/schemas/design-profile-v0.1.schema.json`.
|
||||
|
||||
Visual Library использует отдельный Hub-style selector профилей. Общая кнопка Save открывает каноническую модалку `Сохранить / Сохранить как новый / Опубликовать`. Приложение хранит pinned `profile id + version + status + theme`; media, favicon и material settings принадлежат Design Profile.
|
||||
|
||||
`Draft` — изменяемая рабочая голова профиля. Каждое сохранение увеличивает patch-версию. `Published` — неизменяемый снимок конкретной версии: повторная публикация той же версии запрещена. Application Manifest может ссылаться на draft для внутренней разработки, но стабильный модуль должен фиксировать published release. Изменение будущего draft или публикация следующей версии не меняют уже закреплённое приложение.
|
||||
|
||||
Временный catalog server предоставляет:
|
||||
|
||||
@@ -66,4 +70,9 @@ Visual Library использует отдельный Hub-style selector про
|
||||
- `GET /api/design-profiles/:id`;
|
||||
- `POST /api/design-profiles`;
|
||||
- `PUT /api/design-profiles/:id`;
|
||||
- `GET /api/design-profiles/:id/versions`;
|
||||
- `GET /api/design-profiles/:id/versions/:version`;
|
||||
- `POST /api/design-profiles/:id/publish`;
|
||||
- `DELETE /api/applications/:id` с переносом draft в локальное deleted-storage.
|
||||
|
||||
Catalog server проверяет полный layout-контракт Design Profile и существование выбранной Application Manifest ссылки при создании и сохранении модуля. Опубликованные снимки лежат отдельно от draft-head в `runtime-data/design-profile-releases` и исключены из Git; в production этот lifecycle должен перейти в Platform `design-profile-core` без изменения публичного контракта.
|
||||
|
||||
Reference in New Issue
Block a user