Files
felhom.eu/.claude/rules/website.md
T
admin a29ee9dd33
gates / gates (push) Successful in 2m38s
Decisions 149-150 recorded; instruction files kept true; R-890, R-891, R-644 closed, R-469 narrowed (142 -> 139)
Decision 150 (operator 13:25): sessions correct stale facts in instruction files themselves,
naming each edit; never loosen a rule. Added to unprompted-work.md §5 (all copies) and
PROMPT-TEMPLATE.md §9. CLAUDE.md gates paragraph (R-891), architecture pointer, docs/website
rules, the doubled R-286 sentence in the workspace CLAUDE.md.
Decision 149: vaultwarden's step proven on bench 9401 and box 9202 (evidence here).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
2026-10-06 13:52:28 +02:00

1.4 KiB
Raw Blame History

paths
paths
website/**

Website — build, deploy, and the encoding fences

Deploy

The website auto-deploys via git-sync from main — just push, live in 1–2 min. No ArgoCD sync, no image build. Emergency edits: https://files.felhom.eu.

Do NOT pin the website to the installer tag. The sparse-checkout used to cover /website/ and /scripts/ in one sync; pinning that would turn every copy edit into a release. The installer's tag-based publishing is a separate mechanism — see the R-110 fence in the repo core CLAUDE.md.

Gates

Website changes go through python3 scripts/repo_gates.py, which runs site_gates.py. A new page must be added to that gate's PAGES list or it is unchecked.

site_gates.py asserts: BOM, emoji, nav/footer consistency, analytics, CDN, design tokens, no embedded <style> blocks, and cache-busting.

The encoding fences

  • All website/ HTML is UTF-8 with BOM. Preserve it. An editor that strips the BOM is a silent, whole-file change.
  • Emoji count is zero. The design system forbids them; the gate enforces it.
  • Cache-busting: bump the asset query string when CSS or JS changes, or browsers serve the old file and the change looks like it did not deploy.

Copy

Customer-facing copy is Hungarian, and its tone and terminology rules live in the felhom-ui-design skill — use it rather than inventing phrasing. Operator-facing text is English.