release: SofraPiwas branding + rename → sofrapiwas.com - #75
Conversation
…#71 follow-up) (#72) Filter fleetDevice/fleetSummary findMany by the registry's active tenant slugs so orphaned/decommissioned rows aren't loaded as the fleet grows. No-op at the current single-tenant scale; the deferred optimization from the #71 release review. Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
* feat(brand): SofraPiwas onion logo across header, favicon & OG
Replace the placeholder two-circle plate with the SofraPiwas onion mark
(traced from the owner's Stitch art) plus a "SofraPiwas" wordmark set in
Caveat — the existing `font-hand` — across the marketing header and the
control-plane shell (shared BrandMark component; mark is decorative, the
wordmark carries the accessible name).
Add favicon.svg (onion, replaces the two-circle plate), apple-touch-icon
and a 1200x630 OG/social image; wire openGraph + twitter cards via a
shared OG_IMAGE so every marketing page carries the logo.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* feat(brand): rename product "Sofra" → "SofraPiwas" across the site
Follows the logo rollout — the product is now presented as "SofraPiwas"
everywhere: marketing header + copy, control-plane, auth pages, meta
titles, openGraph siteName, JSON-LD organization name, transactional
email from/subjects, and llms.txt.
Done as a word-boundary rename (\bSofra\b → SofraPiwas), which deliberately
preserves the lowercase "sofra" wordplay — the Turkish word for a laid
table ("A «sofra» is a table laid for guests", "We lay your sofra") — and
the camelCase i18n keys (fitSofra, managedBySofra) and Turkish inflected
forms. The etymology one-liners (en/fr/de/nl meta.description + llms.txt)
were reworded to reference "sofra" accurately rather than claim the full
name means "a laid table"; tr/ar already phrase it with the word natively.
i18n key parity unchanged (587 leaf strings × 6 locales); tsc + eslint
clean; verified in-browser (marketing hero + footer + partner login).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* chore(deps): bump brace-expansion to clear GHSA-3jxr-9vmj-r5cp (high)
Newly-published high-severity advisory (ReDoS/DoS via exponential {} group
expansion) in the transitive brace-expansion dep, failing the required
npm-audit + OSV checks. Lockfile-only bump via npm 10 (keeps lockfileVersion
3 / node-22 CI compatible). Unrelated to the branding change; folded in to
keep this PR green.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* test(brand): update unit tests for the SofraPiwas rename
email-templates + seo unit tests asserted the old \"Sofra\" brand string
(brand shell + openGraph siteName); update to \"SofraPiwas\" to match the
renamed source. Same word-boundary rename applied to tests/. 125/125 pass.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* fix(brand): address Gemini review — explicit img dims + reuse OG_IMAGE
- BrandMark <img> gets explicit width/height (452x501, the mark.svg
intrinsic box) to reserve aspect-ratio and avoid CLS; CSS (h-10 w-auto)
still controls the rendered size.
- twitter.images now passes the shared OG_IMAGE object directly (locale
layout + marketingPageMetadata) instead of reconstructing {url, alt}.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* fix(brand): mark BrandMark props read-only (Sonar S6759)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
|
There was a problem hiding this comment.
Code Review
This pull request primarily rebrands the application from "Sofra" to "SofraPiwas" across metadata, layouts, API routes, email templates, translations, and unit tests. It also introduces a new BrandMark component for the static SVG logo and updates assets like the favicon and open-graph images. Feedback on the changes suggests reverting a non-critical database query optimization in the fleet admin page, advising that scale-ahead performance optimizations should be tracked as follow-up tasks rather than blocking release pull requests.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.



Release —
develop → mainShips the SofraPiwas rebrand to production (sofrapiwas.com).
Payload (2 commits)
feat(brand)— the SofraPiwas onion logo across the marketing + control-plane headers, favicon, apple-touch, OG/Twitter image; and the full "Sofra → SofraPiwas" product rename (copy, meta, emails, JSON-LD, all 6 locales, unit tests). Word-boundary rename preserves the lowercase "sofra" wordplay.perf(fleet)— scope/admin/fleetreads to registry tenant slugs (Gemini follow-up).Deploy notes
ghcr.io/piwas-21/sofra; rollout is manual on the staging box:docker compose -f docker-compose.prod.yml pull sofra && up -d sofra.