Skip to content

feat: Carnival themes, boot resilience, per-tenant versioning - #4

Merged
skdonthi merged 1 commit into
mainfrom
feat/carnival-themes
Jul 1, 2026
Merged

feat: Carnival themes, boot resilience, per-tenant versioning#4
skdonthi merged 1 commit into
mainfrom
feat/carnival-themes

Conversation

@skdonthi

@skdonthi skdonthi commented Jul 1, 2026

Copy link
Copy Markdown
Owner

Summary

  • Carnival themes — dropped the legacy theme; 4 brand themes (day/sea/sunset/night), 7-token set, selected via runtime.theme. App + Hello World are themed.
  • Boot resilience (bug fix) — the layout gateway now falls back to the bundled layout on any remote failure. Previously an unreachable head-end (layoutSource: liferay) threw and left a blank screen. CCL → local.
  • Blits fixesprops array → object notation (2.6 requirement); caption separator (MSDF font lacks middot); diagnostics mounts before Blits.Launch + try/catch; multithreaded: false.
  • LG signing — softened (unsigned .ipk is deployable; Pro:Centric optional).
  • Per-tenant versioningcustomers/<line>/release.json (engineering-owned; gradle-style). Precedence --version > XTV_APP_VERSION > release.json > package.json. Removed version from config.json.
  • Toolingclean/build:clean scripts, --sssp forwarded through the build, preview launch.json.
  • Docstheming.md, state-and-storage.md; signing.md + CLAUDE.md updates.

Verification

typecheck · 9 vitest tests · Biome (100 files) · Samsung signs + builds; verified rendering in-browser.

- Themes: drop legacy theme; 4 Carnival themes (day/sea/sunset/night) with a
  7-token set (incl. focus) in libs/themes; config picks one via runtime.theme;
  app + HelloWorld consume theme tokens (brand fonts, accent bar).
- Boot resilience: layout gateway falls back to the bundled layout on any remote
  failure (a TV must boot with the head-end down); CCL layoutSource -> local.
- Blits fixes: props array -> object notation; caption separator (MSDF lacks
  middot); diagnostics mounts before Blits.Launch + try/catch; multithreaded:false.
- LG signing softened (unsigned .ipk is deployable; Pro:Centric optional).
- Per-tenant release version: customers/<line>/release.json (engineering-owned),
  precedence --version > XTV_APP_VERSION > release.json > package.json. Removed
  version from config.json.
- Tooling: clean / build:clean scripts; --sssp forwarded through the build;
  .claude/launch.json for preview.
- Docs: theming.md, state-and-storage.md; signing.md + CLAUDE.md updates
  (LG install, release.json versioning, SSSP bump).
@skdonthi
skdonthi merged commit 335f5d5 into main Jul 1, 2026
2 checks passed
@skdonthi
skdonthi deleted the feat/carnival-themes branch July 1, 2026 14:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant