Files
felhom.eu/website/CHANGELOG.md
T
admin 13af252907 docs: scripts v1.22.0 + website grid CHANGELOGs, ROADMAP R-38 shipped, R-45/R-46, REPORT
R-38 flips to SHIPPED with the live-canary evidence. Two new items registered
from tonight's work: R-45 (unified async-job feedback — five one-off progress
surfaces now exist and agree on nothing; the two lessons any framework must
encode are "probe the terminal state, never infer it" and "a source reporting
nothing is normal, not broken") and R-46 (verification copies are now visible
but still cannot be browsed and never expire — the invisible-result gap and the
disk-lifecycle gap, designed together because they are the same object).

Pre-invite checklist gains the golden note: build-golden v2.1.0 makes goldens
>= 0.147.x carry all four infra images; no rebuild for this alone.

REPORT-<topic>.md per the parallel-session rule — another session is writing in
this clone tonight, so the shared REPORT.md is left alone.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Nn3VgQk9iwEGgyx6QJ2NvE
2026-07-19 10:00:10 +02:00

6.8 KiB
Raw Permalink Blame History

website/ changelog (newest on top)

2026-07-19 — Restored: the index grid background

The subtle grid behind the hero was not removed on purpose. It lived as a fixed body::before in index.html's inline <style> block and was dropped when bed8675 ("D3 Part 2") migrated the page onto the shared assets/site.css; dd54e4c, the commit that created site.css, has no body::before at all. A porting omission, and nothing took its place. No asset was lost — it was pure CSS (two stacked linear-gradients), so there was nothing missing from the worktree to notice.

Restored, not redesigned: same 50px cells, same 1px lines, same 3% opacity, same position:fixed / z-index:-1 so it does not scroll. One deliberate difference — the accent is the v2 --blue #0083D8 instead of the retired legacy #0088cc, which site_gates.py bans. Scoped to body.page-index, because index is the only page that ever had it.

site.css cache-bust bumped ?v=1?v=2 on all seven pages (nginx caches 7 days). Verified live on desktop and in a 376px viewport: grid renders, no horizontal overflow, mobile layout unchanged.

2026-07-18 — Pre-Facebook content refresh: capability-map alignment + „Zárt teszt" landing

The site's audience changes from zero-stakes to real Hungarian households arriving from a Facebook post, mostly on phones. Every claim re-checked against documentation/architecture/00-capability-map.md; overclaims cut, the last week's shipped capabilities added. No redesign — the design language, nav, footer, and CSS are untouched.

  • Naming ruling applied — „Felhő Felügyelő" is gone (0 occurrences site-wide). The brand is Felhom; the customer-facing interface is the vezérlőpult (matching the controller login page). 14 occurrences replaced across index.html + technologiak.html, incl. <title>, meta description, keywords, og/twitter descriptions, and the JSON-LD description.
  • index.html — new „Mit tud a doboz ma?" section (8 cards, every one map-traceable): photos/documents/media, Hálózati megosztás (Windows Intéző + Mac Finder, map §E PROVEN-LIVE 2026-07-18), two-tier automatic backup, the recovery code only the customer knows (zero-knowledge wording, map §A escrow PROVEN-LIVE), 53 apps, remote monitoring + automatic updates, LAN-works-when-the-internet-is-down, restore-when-something-breaks.
  • index.html — new „Zárt teszt" section (the Facebook post's landing target): what being a tester means, and the stated limitations — one shared household password for the vezérlőpult (map §E multi-user = MISSING), TV-re streamelés hamarosan (map §E DLNA = MISSING), and an explicit "you will find bugs, that's the point". CTA wires to the existing, live contact-mailer as /kapcsolat?tema=zart-teszt; no new backend.
  • kapcsolat.html — new „Zárt teszt — jelentkezem tesztelőnek" subject option + its label mapping (mail subject Jelentkezés — zárt teszt), and a ?tema= preselect that ignores unknown values.
  • og:image was a 404 site-wide — every page pointed at /assets/og-image.png, which did not exist (only .svg did). A branded 1200×630 card is now generated from the existing logo and brand tokens, plus og:image:width/height/alt. This was load-bearing for the Facebook post: the link previously would have rendered with no image.
  • App count corrected 45+ → 53 (real catalog count: 53 *.felhom.yml templates) in index.html, technologiak.html, and the four alkalmazasok.html head tags.
  • Overclaims cut:
    • The whole Kubernetes/k3s section in technologiak.html (+ its TOC entry and the multi-node hardware tier) — no customer-facing capability-map row backs it, and it carried a bare availability promise („a szolgáltatás nem állhat le") on a page now read by recruits.
    • Tailscale VPNWireGuard VPN (Tailscale is not what ships).
    • The RAID card → an honest two-tier backup card; the „4-8 TB (RAID)" spec row → „4-8 TB". (RAID has no map row; the shipped model is second-drive tier-2 + encrypted offsite.)
    • gyik.html multi-user answer rewritten in both copies (JSON-LD and the visible accordion — they must stay in sync): apps do have per-person accounts, the vezérlőpult has one shared household password. Previously it read „Minden családtag saját fiókot kap".
    • biztonsagimentes.html — „azonnal értesítést kapsz" softened (map §F health-degradation e-mail is IMPLEMENTED, never live-fired), and a new helyreállítási kód block stating both sides plainly: nobody else can read the remote backup, and without the code neither can we.
  • Gates: python scripts/site_gates.py green (BOM, emoji=0, nav/footer identical, analytics, no CDN, no legacy tokens, no <style>, cache-busted assets). Mobile verified by measurement at 380 px: scrollWidth == clientWidth == 365 (no horizontal scroll), CTA 275×58.

2026-07-02 — TASK-D3: design system v2 re-skin (content-preserving)

All seven pages re-skinned to the v2 language (documentation/design/design-system.md); URLs, copy, meta/SEO, analytics, and the contact form's functional markup unchanged.

  • One stylesheet: the seven near-identical embedded <style> blocks (≈120 KB combined) extracted into assets/site.css?v=1 — vendored @font-face, the v2 :root tokens, a deduped shared base, and per-page sections scoped by page-<name> body classes. Zero <style> blocks remain.
  • Self-hosted fonts: Plus Jakarta Sans + JetBrains Mono (variable woff2, latin+latin-ext, copied byte-identical from felhom-controller) served from /assets/fonts/ — the Google Fonts CDN (a GDPR exposure for a data-sovereignty product) is gone, preconnect hints included.
  • Icons: all 182 emoji replaced by a 70-symbol external Lucide sprite (/assets/icons.svg?v=1#i-name): feature tiles as .ico-tile 48px bg-2 squares, heading icons .ico-lg, inline .ico; the alkalmazasok "Open Source" green checkmark image → sprite check (.ico-yes, blue). CSS-generated ✓/✗/★ content → currentColor mask marks / plain text.
  • Nav/footer normalized across all seven pages (index's #szolgaltatasok/#szolgaltatasok); byte-identical after the active-marker strip.
  • Visual v2: navy tokens, single 2px radius, no shadows/gradients/hover-lifts, two-tone heading kept as solid --blue-bright, prefers-reduced-motion respected.
  • Gates: scripts/site_gates.py (BOM ×7, emoji, nav/footer, analytics, no-CDN, banned tokens, style-blocks, ?v= cache-busting) — baseline 84 problems + 182 emoji → all green.
  • kapcsolat: form fields/JS/endpoint byte-identical; live TESZT submission accepted (contact-mailer [OK] Email sent, resend id logged).