> ## Documentation Index
> Fetch the complete documentation index at: https://docs-loja.usecorvex.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Publish Contract

> Contrato público de draft, publicação e loja ao vivo.

> Esta página é o **contrato canônico** para **Draft** e **Published** na Corvex.

Separa **código do tema** (bundle) de **conteúdo da loja** (composição e settings do merchant).

***

## Dois eixos de versionamento

| Eixo | O que versiona | Como atualiza |
| - | - | - |
| **Código do tema** | Sections, blocks, CSS, schemas | `corvex build`, `corvex sync`, `corvex publish` |
| **Conteúdo da loja** | Ordem/settings das sections, theme settings | Editor → Salvar → Publicar |

***

## Draft (rascunho)

### Conteúdo

* Composição de cada template (sections, settings, blocks)
* Theme settings globais (cores, fontes, …)
* Opcional: draft bundle de código após sync local

### Quem vê

* Merchant no Editor
* Preview autorizado (draft URL / aba Preview)

### MUST — salvar draft

Salvamento é **explícito** (botão Salvar) ou **silencioso** antes de preview/publicar — **sem** autosave periódico garantido.

Após salvar com sucesso, preview fora do canvas reflete o draft.

### Conflito de edição

Duas sessões no mesmo template não foram testadas. Não há, nesta página, uma regra confirmada de conflito de versão.

***

## Published (publicado)

### MUST — fluxo merchant

```text theme={"theme":{"light":"github-light","dark":"github-dark"}}
Salvar alterações (draft)
  → Publicar loja
  → Visitantes veem revisão publicada
```

Publicar congela o estado atual do draft em uma **revisão** servida ao storefront ao vivo.

### Quem vê

* Visitantes da loja (domínio / slug público)
* **Não** inclui alterações de draft não publicadas

***

## Código do tema na loja

| Estado | Uso no Editor | Uso no storefront |
| - | - | - |
| Draft bundle | Preferido após `sync` / edição de código | — |
| Versão de catálogo pinada | Fallback | Versão publicada do catálogo |

Merchant pode pinar `themeVersionId` — conteúdo draft ainda depende de Publicar.

***

## CLI `corvex publish`

Publica **pacote de tema** no catálogo (novas versões semver para instalação em lojas). **Não** substitui "Publicar loja" do Editor para conteúdo do merchant.

| Comando | Efeito |
| - | - |
| `corvex publish` | Nova versão no catálogo |
| `corvex sync` | Upload código + draft bundle na loja dev vinculada |
| Editor Publicar | Revisão de **conteúdo** da loja |

***

## Cache (abstração pública)

O atraso de cache depois de publicar não foi medido. Confira a loja na URL publicada, além da pré-visualização.

***

## MUST — validação antes de entregar tema

`corvex validate` MUST passar antes de `build` / `publish` / `sync`.

***

## MUST NOT

* MUST NOT assumir que `corvex publish` publica composição do merchant.
* MUST NOT editar apenas `templates/*.json` no ZIP e esperar mudança em loja já instalada sem sync/reinstall + publish de conteúdo.
* MUST NOT usar localStorage do browser como fonte de verdade da loja.

***

## Veja também

* [Preview Contract](https://docs-loja.usecorvex.com.br/reference/contracts/preview.md)
* [Theme Contract](https://docs-loja.usecorvex.com.br/reference/contracts/theme.md)
* [Page Contract](https://docs-loja.usecorvex.com.br/reference/contracts/page.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.