Files
lightcraft/.github/workflows/brand.yml
T
Andrew FrahnandClaude Opus 5.5 6cbc0eb5a9 Phase 0: configurable brand, MIT licence, plan/ and Immich tracker
- brand.toml is the only place the product name lives; every crate and app
  reads it through dac-brand (env vars with legacy fallback, settings folder
  with copy-only migration, default library, preset extensions, i18n {app})
- cargo xtask brand check|test, run|install|package, docs, rename-crates,
  deny and immich; packaging files are templates rendered from brand.toml
- icons regenerated from brand/icon.svg; upstream branding removed
- MIT licence (segment and fetch stay Apache-2.0); cargo deny licence policy
- clean-room rules in AGENTS.md/CLAUDE.md; docs/upstream-merge.md
- plan/ rebuilt and committed; parity tracker reopens Classic rows, adds
  PLAN.md section 2 rows and the IMM Immich section; plan/immich.md and a
  pinned Immich test server

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-10 10:30:06 +11:00

63 lines
1.7 KiB
YAML

# The product name lives only in brand.toml (PLAN_phase_0.md §0.2.4), and the licence policy is
# enforced by cargo-deny (§0.4.6):
# - check: `cargo xtask brand check` (no product name outside brand.toml and the allowlist),
# `cargo xtask docs --check` (rendered docs up to date);
# - deny: `cargo deny check licenses` with deny.toml;
# - throw-away brand: `cargo xtask brand test` builds the CLI with xtask/test-brand.toml
# ("Zzyzx Test") and checks its help, headless UI snapshot, MCP serverInfo and config/log paths.
name: Brand
on:
push:
branches: [main]
pull_request:
workflow_dispatch:
permissions:
contents: read
concurrency:
group: brand-${{ github.ref }}
cancel-in-progress: true
env:
CARGO_TERM_COLOR: always
CARGO_INCREMENTAL: 0
jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
key: brand-check
- name: brand check
run: cargo xtask brand check
- name: docs up to date
run: cargo xtask docs --check
deny:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: taiki-e/install-action@v2
with:
tool: cargo-deny
- name: cargo deny check licenses
run: cargo deny check licenses
test-brand:
name: throw-away brand
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
key: brand-test
workspaces: ". -> target/brand-test"
- name: cargo xtask brand test
run: cargo xtask brand test