Skip to content

Remove chat empty-state splash screen β€” duplicates welcome messageΒ #511

@amiable-dev

Description

@amiable-dev

Description

When the GUI first loads, a splash screen with a large πŸ’¬ emoji and "No messages yet. Start a conversation!" appears in the chat panel before the actual welcome message loads. This is unnecessary and creates a flash of content β€” the proper welcome message ("Welcome to Conductor Chat! I can help you configure your MIDI controller...") renders shortly after once chatStore.initialize() completes.

Root Cause

ChatView.svelte has two competing empty-state presentations:

1. Empty state splash (lines 465-469) β€” renders immediately

{#if messages.length === 0}
  <div class="empty-state">
    <div class="empty-icon">πŸ’¬</div>
    <p>No messages yet. Start a conversation!</p>
  </div>

2. Welcome message (lines 376-385) β€” renders after async init

onMount(async () => {
  await chatStore.initialize(); // async β€” takes time
  if (!$hasMessages) {
    chatStore.addSystemMessage('Welcome to Conductor Chat! ...');
  }
});

The empty state renders while initialize() is in progress, then gets replaced by the welcome message once it completes. This creates a visible flash of the splash emoji before the real content appears.

Recommendation

Remove the empty-state splash block entirely (lines 465-469 and CSS at lines 793-807). The welcome addSystemMessage() already handles the empty state properly. If a loading indicator is needed during initialize(), show a subtle spinner rather than a splash with an emoji.

Priority

P4 β€” Visual flash on startup, no functional impact.

Acceptance Criteria

  • No πŸ’¬ emoji splash screen shown on initial load
  • Welcome message ("Welcome to Conductor Chat!...") is the first content shown
  • No flash of intermediate content before the welcome message
  • If initialize() takes time, either show nothing or a subtle loading indicator (not a splash)
  • Returning to an empty chat (e.g., after deleting all conversations) shows the welcome message, not the splash

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workinggui

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions