Lifecycle
The public release set contains @lemn-ltd/brand-contract,
@lemn-ltd/brand-runtime, @lemn-ltd/ui, and @lemn-ltd/brand-studio.
Consumers pin exact compatible versions; release metadata and migration
guidance make that compatibility explicit.
SemVer
Section titled “SemVer”- PATCH: compatible fixes, internal conformance improvements, and documentation corrections that do not change the public contract.
- MINOR: additive components, blocks, props, schema fields with preserving defaults, Studio steps, or provider-neutral capabilities.
- MAJOR: removed/renamed exports, changed semantics, incompatible schema or compiler behavior, or a migration-requiring provider replacement.
BrandingDefinition schema and compiler majors are compatibility boundaries. A
compiled artifact records its schema/compiler compatibility and is verified by
the consumer before use.
Provider update lifecycle
Section titled “Provider update lifecycle”- Detect an upstream release without changing production.
- Propose exact immutable origin, integrity, license/notice delta, and update status in the registry.
- Review API, behavior, accessibility, interaction, visual, SSR, and bundle deltas for only the selected capabilities.
- Update the adapter or explicit tracked patch without rewriting provider behavior.
- Run conformance, generate notices/SBOM, document migration impact, and add the correct changeset.
- Merge and publish through the normal release workflow.
Whole provider catalogs, floating versions, branch references, silent patches, and automatic production updates are forbidden.
Publication order
Section titled “Publication order”The coordinated order is:
@lemn-ltd/brand-contract@lemn-ltd/ui@lemn-ltd/brand-runtime@lemn-ltd/brand-studio- Docs and the Lemn UI Portal for the exact release identity
After publication, prove each package through a clean external install from
GitHub Packages—never through workspace:* or a local link—and then update
real consumers to exact versions.
Commands
Section titled “Commands”pnpm changeset:addpnpm validatepnpm checkpnpm testpnpm buildpnpm version:packagespnpm releaseMutating release commands run only from protected main. An already-published
version is immutable and must match the locally packed integrity; it is never
overwritten.
The production preflight accepts only PRODUCTION_CLOUDFLARE_API_TOKEN, scoped
to Account Lemn DEV with Workers Scripts: Edit (Workers Scripts Write in
the API) and Zone le-mn.com with Zone: Read plus Workers Routes: Edit
(Zone Workers Routes Write in the API). Broader credentials or authentication
modes fail closed.
That release deploys the single Worker lemn-ui-portal to
portal.ui.le-mn.com in Account Lemn DEV / Zone le-mn.com. The workflow
captures wrangler deployments list --json, verifies the candidate, and keeps
the exact prior version available to wrangler rollback before traffic moves.