Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions apps/mobile/src/components/consent/consent-card.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -132,8 +132,8 @@ export function ConsentCard({ mode = 'onboarding' }: ConsentCardProps) {
const handleSecondaryAction = () => {
const message =
mode === 'review'
? 'Kilo Code needs this consent to function. Revoking will sign you out. You can accept again on next sign-in.'
: 'Kilo Code needs to share data with AI providers to work. If you decline, you will be signed out.';
? 'Kilo needs this consent to function. Revoking will sign you out. You can accept again on next sign-in.'
: 'Kilo needs to share data with AI providers to work. If you decline, you will be signed out.';

Alert.alert(actions.destructiveTitle, message, [
{ text: 'Cancel', style: 'cancel' },
Expand Down Expand Up @@ -190,13 +190,13 @@ export function ConsentCard({ mode = 'onboarding' }: ConsentCardProps) {
<View className="h-10 w-10 items-center justify-center rounded-lg bg-secondary">
<Shield size={20} color={colors.foreground} />
</View>
<Text className="text-base font-semibold text-foreground">Kilo Code</Text>
<Text className="text-base font-semibold text-foreground">Kilo</Text>
</View>

<Text className="mt-6 text-2xl font-bold text-foreground">Before we get started</Text>
<Text className="mt-3 text-base text-muted-foreground">
Kilo Code sends your messages to AI providers to generate responses. Here&apos;s
what&apos;s shared and with whom.
Kilo sends your messages to AI providers to generate responses. Here&apos;s what&apos;s
shared and with whom.
</Text>

<Text className="mt-6 text-sm font-semibold text-foreground">Required to use Kilo</Text>
Expand Down
2 changes: 1 addition & 1 deletion apps/mobile/src/components/login-screen.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -187,7 +187,7 @@ export function LoginScreen() {
>
<View className="w-full max-w-sm items-center gap-2">
<Image source={logo} className="mb-1 h-16 w-16" accessibilityLabel="Kilo logo" />
<Text className="text-center text-lg">Welcome to Kilo Code</Text>
<Text className="text-center text-lg">Welcome to Kilo</Text>
</View>

{/* Branch fade animations parked mid-flight on remount — e1 measured 2/2
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -136,15 +136,15 @@ describe('IdleAuth SSO recovery', () => {
});
});

describe('IdleAuth sign-in-or-create copy', () => {
it('shows the sign-in-or-create heading and a Continue button', async () => {
describe('IdleAuth email continue copy', () => {
it('shows a Continue button with email accessibility', async () => {
const start = vi.fn<StartFn>();
const renderer = await mountIdleAuth(start);

expect(texts(renderer.root)).toContain('Sign in or create an account');
expect(texts(renderer.root)).toContain('Continue');
expect(texts(renderer.root)).not.toContain('Sign in or create an account');

const btn = findButton(renderer.root, 'Continue with email, sign in or create an account');
const btn = findButton(renderer.root, 'Continue with email');
expect(btn).toBeTruthy();

act(() => {
Expand Down
3 changes: 1 addition & 2 deletions apps/mobile/src/components/login/idle-auth.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -210,7 +210,6 @@ export function IdleAuth({
</View>
)}

<Text className="text-base font-semibold text-foreground">Sign in or create an account</Text>
<FormField
label="Email address"
placeholder="you@example.com"
Expand All @@ -237,7 +236,7 @@ export function IdleAuth({
className="flex-row gap-2"
disabled={authBusy}
onPress={() => void handleSendCode()}
accessibilityLabel="Continue with email, sign in or create an account"
accessibilityLabel="Continue with email"
>
{busy === 'otp-send' ? <ActivityIndicator size="small" /> : null}
<Text>Continue</Text>
Expand Down
2 changes: 1 addition & 1 deletion apps/mobile/src/lib/auth/use-native-auth.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -417,7 +417,7 @@ describe('useNativeAuth created-account announcement', () => {
await result?.verifyEmailCode('user@example.com', '123456');
});

expect(announcingToast.success).toHaveBeenCalledWith('Account created. Welcome to Kilo Code.');
expect(announcingToast.success).toHaveBeenCalledWith('Account created. Welcome to Kilo.');
});

it('stays silent when created is absent', async () => {
Expand Down
6 changes: 3 additions & 3 deletions apps/mobile/src/lib/auth/use-native-auth.ts
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ export function useNativeAuth(): NativeAuthResult {
'expiresIn' in parsed ? parsed.expiresIn : undefined
);
if (parsed.created === true) {
announcingToast.success('Account created. Welcome to Kilo Code.');
announcingToast.success('Account created. Welcome to Kilo.');
}
} else if (result.errorCode === 'SSO_ERROR') {
handleSsoError(credential.email ?? '', result.ssoOrganizationId);
Expand Down Expand Up @@ -206,7 +206,7 @@ export function useNativeAuth(): NativeAuthResult {
'expiresIn' in parsed ? parsed.expiresIn : undefined
);
if (parsed.created === true) {
announcingToast.success('Account created. Welcome to Kilo Code.');
announcingToast.success('Account created. Welcome to Kilo.');
}
} else if (result.errorCode === 'SSO_ERROR') {
handleSsoError(response.data.user.email, result.ssoOrganizationId);
Expand Down Expand Up @@ -304,7 +304,7 @@ export function useNativeAuth(): NativeAuthResult {
'expiresIn' in parsed ? parsed.expiresIn : undefined
);
if (parsed.created === true) {
announcingToast.success('Account created. Welcome to Kilo Code.');
announcingToast.success('Account created. Welcome to Kilo.');
}
return true;
} catch (error) {
Expand Down
12 changes: 6 additions & 6 deletions packages/notifications/src/push-presentation.ts
Original file line number Diff line number Diff line change
Expand Up @@ -45,17 +45,17 @@ export function androidChannelIdForPushData(data: PushData): AndroidNotification
export function genericPushContentForPushData(data: PushData): { title: string; body: string } {
switch (data.type) {
case 'cloud_agent_session':
return { title: 'Kilo Code', body: 'Your agent session has an update' };
return { title: 'Kilo', body: 'Your agent session has an update' };
case 'chat.message':
return { title: 'Kilo Code', body: 'You have a new message' };
return { title: 'Kilo', body: 'You have a new message' };
case 'instance-lifecycle':
return { title: 'Kilo Code', body: 'Your instance has an update' };
return { title: 'Kilo', body: 'Your instance has an update' };
case 'scheduled-action':
return { title: 'Kilo Code', body: 'A scheduled action has an update' };
return { title: 'Kilo', body: 'A scheduled action has an update' };
case 'low_balance':
return { title: 'Kilo Code', body: 'Your balance needs attention' };
return { title: 'Kilo', body: 'Your balance needs attention' };
case 'security_finding':
return { title: 'Kilo Code', body: 'A security finding needs attention' };
return { title: 'Kilo', body: 'A security finding needs attention' };
default: {
// Exhaustiveness: new PushData variants must be handled above.
const _exhaustive: never = data;
Expand Down
4 changes: 2 additions & 2 deletions services/notifications/src/__tests__/dispatch-push.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1286,7 +1286,7 @@ describe('NotificationChannelDO preview mode and channel', () => {
const stub = getDO('user-generic');
await stub.dispatchPush(baseInput({ userId: 'user-generic', idempotencyKey: 'k-generic' }));
const [[messages]] = vi.mocked(sendPushNotifications).mock.calls;
expect(messages[0].title).toBe('Kilo Code');
expect(messages[0].title).toBe('Kilo');
expect(messages[0].title).not.toBe('T');
expect(messages[0].body).not.toBe('B');
});
Expand All @@ -1305,7 +1305,7 @@ describe('NotificationChannelDO preview mode and channel', () => {
const stub = getDO('user-throw');
await stub.dispatchPush(baseInput({ userId: 'user-throw', idempotencyKey: 'k-throw' }));
const [[messages]] = vi.mocked(sendPushNotifications).mock.calls;
expect(messages[0].title).toBe('Kilo Code');
expect(messages[0].title).toBe('Kilo');
expect(messages[0].body).not.toBe('B');
});
});