Skip to content

Commit 63272c3

Browse files
committed
merge: resolve conflicts with main
- Settings.tsx: keep dead code removal (local-mode Show wrapper) - VersionIndicator.test.tsx: keep both clipboard tests and dev mode test
2 parents e2c631e + 0d361d5 commit 63272c3

30 files changed

+592
-278
lines changed

.changeset/curvy-banks-take.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
---
2+
---
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"manifest": patch
3+
---
4+
5+
fix: remove Anthropic-specific cache_control from Google Gemini system instruction parts

.changeset/fix-unused-variables.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"manifest": patch
3+
---
4+
5+
Remove unused variables

.github/workflows/release.yml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,12 @@ jobs:
1313
release:
1414
runs-on: ubuntu-latest
1515
steps:
16+
- name: Generate GitHub App token
17+
id: app-token
18+
uses: actions/create-github-app-token@v1
19+
with:
20+
app-id: ${{ secrets.APP_ID }}
21+
private-key: ${{ secrets.APP_PRIVATE_KEY }}
1622
- uses: actions/checkout@v4
1723
- uses: actions/setup-node@v4
1824
with:
@@ -29,7 +35,7 @@ jobs:
2935
version: npm run version-packages
3036
title: "chore: version packages"
3137
env:
32-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
38+
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
3339
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
3440
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
3541
NPM_CONFIG_PROVENANCE: true

packages/backend/src/analytics/services/agent-analytics.service.spec.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,12 @@ describe('AgentAnalyticsService', () => {
77
let service: AgentAnalyticsService;
88
let mockGetRawOne: jest.Mock;
99
let mockGetRawMany: jest.Mock;
10-
let qbCallIndex: number;
1110

1211
const scope = { tenantId: 't1', agentId: 'a1' };
1312

1413
beforeEach(async () => {
1514
mockGetRawOne = jest.fn();
1615
mockGetRawMany = jest.fn();
17-
qbCallIndex = 0;
1816

1917
const mockQb = {
2018
select: jest.fn().mockReturnThis(),

packages/backend/src/auth/auth.instance.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ if (!isLocalMode && nodeEnv !== 'test' && (!betterAuthSecret || betterAuthSecret
3131
throw new Error('BETTER_AUTH_SECRET must be set to a value of at least 32 characters');
3232
}
3333

34-
import { getLocalAuthSecret } from '../common/constants/local-mode.constants';
3534

3635
function buildTrustedOrigins(): string[] {
3736
const origins: string[] = [];

packages/backend/src/auth/local-auth.guard.spec.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ jest.mock('../common/constants/local-mode.constants', () => ({
77
import { ExecutionContext } from '@nestjs/common';
88
import { Reflector } from '@nestjs/core';
99
import { LocalAuthGuard } from './local-auth.guard';
10-
import { IS_PUBLIC_KEY } from '../common/decorators/public.decorator';
1110
import { readLocalNotificationEmail } from '../common/constants/local-mode.constants';
1211

1312
function createMockContext(overrides: {

packages/backend/src/common/utils/period.util.spec.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,9 @@ describe('computePeriodResetDate', () => {
8181
const reset = new Date(result.replace(' ', 'T') + 'Z');
8282
expect(reset.getUTCHours()).toBe(0);
8383
expect(reset.getUTCMinutes()).toBe(0);
84-
const expectedDate = new Date(Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate() + 1));
84+
const expectedDate = new Date(
85+
Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate() + 1),
86+
);
8587
expect(reset.getUTCDate()).toBe(expectedDate.getUTCDate());
8688
});
8789

packages/backend/src/common/utils/period.util.ts

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,9 @@ export function computePeriodBoundaries(period: string): PeriodBoundaries {
1111

1212
switch (period) {
1313
case 'hour':
14-
start = new Date(Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), now.getUTCHours() - 1));
14+
start = new Date(
15+
Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), now.getUTCHours() - 1),
16+
);
1517
break;
1618
case 'day':
1719
start = new Date(Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate()));
@@ -26,7 +28,9 @@ export function computePeriodBoundaries(period: string): PeriodBoundaries {
2628
start = new Date(Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), 1));
2729
break;
2830
default:
29-
start = new Date(Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), now.getUTCHours() - 1));
31+
start = new Date(
32+
Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), now.getUTCHours() - 1),
33+
);
3034
}
3135

3236
const end = new Date(now.getTime());
@@ -39,22 +43,28 @@ export function computePeriodResetDate(period: string): string {
3943

4044
switch (period) {
4145
case 'hour':
42-
reset = new Date(Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), now.getUTCHours() + 1));
46+
reset = new Date(
47+
Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), now.getUTCHours() + 1),
48+
);
4349
break;
4450
case 'day':
4551
reset = new Date(Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate() + 1));
4652
break;
4753
case 'week': {
4854
const dayOfWeek = now.getUTCDay();
49-
const daysUntilMonday = ((8 - dayOfWeek) % 7) || 7;
50-
reset = new Date(Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate() + daysUntilMonday));
55+
const daysUntilMonday = (8 - dayOfWeek) % 7 || 7;
56+
reset = new Date(
57+
Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate() + daysUntilMonday),
58+
);
5159
break;
5260
}
5361
case 'month':
5462
reset = new Date(Date.UTC(now.getUTCFullYear(), now.getUTCMonth() + 1, 1));
5563
break;
5664
default:
57-
reset = new Date(Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), now.getUTCHours() + 1));
65+
reset = new Date(
66+
Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), now.getUTCHours() + 1),
67+
);
5868
}
5969

6070
return fmt(reset);

packages/backend/src/notifications/emails/reset-password.tsx

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,8 @@ export function ResetPasswordEmail(props: ResetPasswordEmailProps) {
3737
<Section style={card}>
3838
<Text style={heading}>Reset your password</Text>
3939
<Text style={paragraph}>
40-
Hi {userName}, we received a request to reset your password. Click
41-
the button below to choose a new one.
40+
Hi {userName}, we received a request to reset your password. Click the button below to
41+
choose a new one.
4242
</Text>
4343

4444
<Section style={buttonContainer}>
@@ -48,16 +48,15 @@ export function ResetPasswordEmail(props: ResetPasswordEmailProps) {
4848
</Section>
4949

5050
<Text style={hint}>
51-
This link expires in 1 hour. If you didn't request a password
52-
reset, you can safely ignore this email.
51+
This link expires in 1 hour. If you didn't request a password reset, you can safely
52+
ignore this email.
5353
</Text>
5454
</Section>
5555

5656
{/* Fallback link */}
5757
<Section style={fallbackSection}>
5858
<Text style={fallbackText}>
59-
If the button above doesn't work, copy and paste this link into
60-
your browser:
59+
If the button above doesn't work, copy and paste this link into your browser:
6160
</Text>
6261
<Text style={fallbackUrl}>{resetUrl}</Text>
6362
</Section>

0 commit comments

Comments
 (0)