feat: enhance UI with commit pulsing animation and improved copy icon

Co-Authored-By: sketch <hello@sketch.dev>
Change-ID: s80fdaac660ea645ek
diff --git a/loop/server/loophttp_test.go b/loop/server/loophttp_test.go
index e3d144b..949a95a 100644
--- a/loop/server/loophttp_test.go
+++ b/loop/server/loophttp_test.go
@@ -242,7 +242,7 @@
 func (m *mockAgent) SuggestReprompt(ctx context.Context) (string, error) { return "", nil }
 func (m *mockAgent) IsInContainer() bool                                 { return false }
 func (m *mockAgent) FirstMessageIndex() int                              { return 0 }
-func (m *mockAgent) DetectGitChanges(ctx context.Context)                {} // TestSSEStream tests the SSE stream endpoint
+func (m *mockAgent) DetectGitChanges(ctx context.Context) error          { return nil } // TestSSEStream tests the SSE stream endpoint
 func TestSSEStream(t *testing.T) {
 	// Create a mock agent with initial messages
 	mockAgent := &mockAgent{