Skip to content

OUT-4032: update default client home copy - #233

Merged
SandipBajracharya merged 4 commits into
mainfrom
OUT-4032
Aug 11, 2026
Merged

OUT-4032: update default client home copy#233
SandipBajracharya merged 4 commits into
mainfrom
OUT-4032

Conversation

@SandipBajracharya

Copy link
Copy Markdown
Collaborator

Linear: OUT-4032

Changes

  • Replaced the default Client Home body (defaultContent) with the approved "How we'll work together" copy — three sections (🏠 home base, 🔔 we'll keep you posted, 💬 just message us). Removed the old example callout, duplicate Welcome H1, working-hours table and portal sections.
  • Updated the greeting subheading default to Everything you need to work with {{workspace.brand}}, all in one place. (the heading default already matched Welcome, {{client.firstName}}, so it was left unchanged).
  • Extracted a shared defaultSubheading constant (@settings/constants) consumed by both the schema column default and the data-migration seed so the two can't drift.
  • Added Drizzle migration 20260810044541_update-default-client-home-subheading (ALTER COLUMN "subheading" SET DEFAULT ...).

Testing Criteria

  • pnpm typecheck — passes.
  • pnpm lint — passes, 0 warnings.
  • pnpm drizzle-kit generate reports "No schema changes" after the constant refactor, confirming the generated migration matches the schema.
  • Manual: create a new workspace / trigger default settings creation → Client Home renders the new subheading (with brand autofill) and the "How we'll work together" body; existing workspaces are unaffected. Loom to be added.

Notes

  • Migration must be applied on deploy (pnpm drizzle-kit migrate). It only changes the column default — existing rows keep their content.
  • The new hero image referenced in the ticket is handled separately (out of scope for this PR).
  • No "Send us a message" link existed in code; the approved copy uses plain "Use the Messages tab on the left…" text, so nothing to unlink.

Impact & Surface Area of Change

  • Affects only newly created default settings rows (SettingsActionsService.getForWorkspacecreateOne, which omits subheading/content-defaults). Existing client homes are untouched.
  • defaultContent / defaultSubheading are also referenced by scripts/data-migration/settings.ts (legacy import tool) — now uses the shared constant.
  • No changes to rendering components; the greeting subheading renders through MinimalEditor and the new value is correctly wrapped in a single <p> block (matches the editor's single-block document model).

SandipBajracharya and others added 2 commits August 10, 2026 17:31
Replace the example default Client Home body with the approved
"How we'll work together" copy, and set the greeting subheading
default to the approved brand-personalized line via a shared
defaultSubheading constant.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Replace the hardcoded legacy subheading literal with the shared
defaultSubheading constant so the seed never drifts from the schema
default.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@linear-code

linear-code Bot commented Aug 10, 2026

Copy link
Copy Markdown

OUT-4032

@vercel

vercel Bot commented Aug 10, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
client-home-v3 Ready Ready Preview Aug 11, 2026 7:14am

Request Review

@greptile-apps

greptile-apps Bot commented Aug 10, 2026

Copy link
Copy Markdown

Greptile Summary

The PR updates the default Client Home body, greeting subheading, and default banner path for newly created settings while adding the corresponding database-default migration.

  • Extracts the default subheading into a shared constant used by the schema and legacy data migration.
  • Adds a Drizzle migration and metadata snapshot for the new subheading default.
  • Conditionally suppresses the action-items card while a Client Home is classified as untouched default content.
  • Replaces the configured default banner media path.

Confidence Score: 5/5

The PR appears safe to merge because no blocking failure remains within the eligible follow-up-review scope.

No blocking failure remains.

Important Files Changed

Filename Overview
src/features/settings/constants.ts Defines the approved default body and shared subheading HTML used by settings creation paths.
src/features/settings/lib/settings/settings.schema.ts Uses the shared subheading constant as the database schema default.
src/db/migrations/20260810044541_update-default-client-home-subheading.sql Updates the PostgreSQL default for newly inserted settings rows without modifying existing rows.
src/features/editor/utils/content.ts Adds helpers for classifying untouched default Client Homes and controlling action-card rendering.
src/features/editor/components/ClientEditorWrapper.tsx Suppresses the read-only action-items card for Client Homes classified as untouched defaults.
src/features/editor/components/EditorWrapper.tsx Applies default-home action-card suppression in the editable Client Home view.
src/features/editor/components/Preview/Preview.tsx Applies the same action-card suppression to preview rendering.
src/features/media/constants.ts Points newly created settings at the new default banner media path.
scripts/data-migration/settings.ts Reuses the shared subheading constant when seeding migrated settings.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[Create default settings] --> B[Shared default subheading]
    A --> C[New default body copy]
    A --> D[Default banner media lookup]
    B --> E[Settings schema default]
    B --> F[Legacy data migration seed]
    G[Render Client Home] --> H{Classified as untouched default?}
    H -->|Yes| I[Hide action-items card]
    H -->|No| J[Render action-items card]
Loading

Reviews (2): Last reviewed commit: "feat(OUT-4032): update default client ho..." | Re-trigger Greptile

@priosshrsth priosshrsth left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

SandipBajracharya and others added 2 commits August 11, 2026 12:58
Gate the "Your actions" card on all three render sites (IU editor, IU
preview, CU client) behind isDefaultClientHome — hide it while the body
still matches the seed copy or the settings row was never saved. The
never-saved (createdAt === updatedAt) check is robust to editor
normalization and legacy rows with older default copy.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Point the default banner to common/Container_14.png.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@SandipBajracharya SandipBajracharya changed the title feat(OUT-4032): update default client home copy OUT-4032: update default client home copy Aug 11, 2026
@SandipBajracharya

Copy link
Copy Markdown
Collaborator Author

@greptileai review PR again

@priosshrsth priosshrsth left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@SandipBajracharya
SandipBajracharya merged commit c6b758d into main Aug 11, 2026
8 checks passed
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.

2 participants