Skip to content

Commit cbf6e42

Browse files
authored
Merge pull request #22 from tarik02/sync/upstream-update
sync: update from upstream
2 parents ce6fa59 + 94a5763 commit cbf6e42

67 files changed

Lines changed: 7935 additions & 3089 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

apps/desktop/src/backend/tailscaleEndpointProvider.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ export const resolveTailscaleAdvertisedEndpoints = Effect.fn("resolveTailscaleAd
121121
input.readMagicDnsName ??
122122
readTailscaleStatus.pipe(
123123
Effect.map((status) => status.magicDnsName),
124-
Effect.catch(() => Effect.succeed<string | null>(null)),
124+
Effect.orElseSucceed(() => null),
125125
);
126126
const dnsName =
127127
input.statusJson === undefined

apps/mobile/src/app/settings/index.tsx

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { useAuth, useUser, useUserProfileModal } from "@clerk/expo";
1+
import { useAuth, useUser } from "@clerk/expo";
22
import * as Notifications from "expo-notifications";
33
import { Link, Stack, useRouter } from "expo-router";
44
import { SymbolView } from "expo-symbols";
@@ -68,7 +68,6 @@ function ConfiguredSettingsRouteScreen() {
6868
const { push } = useRouter();
6969
const { getToken, isLoaded, isSignedIn } = useAuth({ treatPendingAsSignedOut: false });
7070
const { user } = useUser();
71-
const { isAvailable: isUserProfileModalAvailable, presentUserProfile } = useUserProfileModal();
7271
const { savedConnectionsById } = useRemoteEnvironmentState();
7372
const [notificationStatus, setNotificationStatus] = useState<NotificationStatus>("checking");
7473
const [liveActivityStatus, setLiveActivityStatus] = useState<LiveActivityStatus>("checking");
@@ -266,15 +265,11 @@ function ConfiguredSettingsRouteScreen() {
266265
push("/settings/waitlist");
267266
return;
268267
}
269-
if (isUserProfileModalAvailable) {
270-
void presentUserProfile();
271-
return;
272-
}
273268
Alert.alert(
274269
"T3 Cloud unavailable",
275270
"Native T3 Cloud account management is not available in this build.",
276271
);
277-
}, [isLoaded, isSignedIn, isUserProfileModalAvailable, presentUserProfile, push]);
272+
}, [isLoaded, isSignedIn, push]);
278273

279274
return (
280275
<View collapsable={false} className="flex-1 bg-sheet">

apps/server/scripts/acp-mock-agent.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ const emitXAiAskUserQuestion = process.env.T3_ACP_EMIT_XAI_ASK_USER_QUESTION ===
2222
const failSetConfigOption = process.env.T3_ACP_FAIL_SET_CONFIG_OPTION === "1";
2323
const exitOnSetConfigOption = process.env.T3_ACP_EXIT_ON_SET_CONFIG_OPTION === "1";
2424
const promptResponseText = process.env.T3_ACP_PROMPT_RESPONSE_TEXT;
25+
const promptDelayMs = Number(process.env.T3_ACP_PROMPT_DELAY_MS ?? "0");
2526
const permissionOptionIds = {
2627
allowOnce: process.env.T3_ACP_ALLOW_ONCE_OPTION_ID ?? "allow-once",
2728
allowAlways: process.env.T3_ACP_ALLOW_ALWAYS_OPTION_ID ?? "allow-always",
@@ -364,6 +365,10 @@ const program = Effect.gen(function* () {
364365
Effect.gen(function* () {
365366
const requestedSessionId = String(request.sessionId ?? sessionId);
366367

368+
if (Number.isFinite(promptDelayMs) && promptDelayMs > 0) {
369+
yield* Effect.sleep(`${promptDelayMs} millis`);
370+
}
371+
367372
if (emitInterleavedAssistantToolCalls) {
368373
const toolCallId = "tool-call-1";
369374

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
import { assert, it } from "@effect/vitest";
2+
3+
import { ProviderInstanceId } from "@t3tools/contracts";
4+
import { createModelSelection } from "@t3tools/shared/model";
5+
6+
import { getCodexServiceTierOptionValue } from "./codexModelOptions.ts";
7+
8+
it("returns the selected Codex service tier id", () => {
9+
const selection = createModelSelection(ProviderInstanceId.make("codex"), "gpt-5.5", [
10+
{ id: "serviceTier", value: "flex" },
11+
]);
12+
13+
assert.equal(getCodexServiceTierOptionValue(selection), "flex");
14+
});
15+
16+
it("keeps legacy persisted fast mode selections working", () => {
17+
const selection = createModelSelection(ProviderInstanceId.make("codex"), "gpt-5.4", [
18+
{ id: "fastMode", value: true },
19+
]);
20+
21+
assert.equal(getCodexServiceTierOptionValue(selection), "fast");
22+
});
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
import type { ModelSelection } from "@t3tools/contracts";
2+
import {
3+
getModelSelectionBooleanOptionValue,
4+
getModelSelectionStringOptionValue,
5+
} from "@t3tools/shared/model";
6+
7+
export function getCodexServiceTierOptionValue(
8+
modelSelection: ModelSelection | null | undefined,
9+
): string | undefined {
10+
return (
11+
getModelSelectionStringOptionValue(modelSelection, "serviceTier") ??
12+
(getModelSelectionBooleanOptionValue(modelSelection, "fastMode") === true ? "fast" : undefined)
13+
);
14+
}

apps/server/src/git/GitManager.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -747,7 +747,7 @@ export const makeGitManager = Effect.fn("makeGitManager")(function* () {
747747
);
748748
const readRemoteStatus = Effect.fn("readRemoteStatus")(function* (cwd: string) {
749749
const details = yield* gitCore
750-
.statusDetails(cwd)
750+
.statusDetailsRemote(cwd)
751751
.pipe(Effect.catchIf(isNotGitRepositoryError, () => Effect.succeed(null)));
752752
if (details === null || !details.isRepo) {
753753
return null;

0 commit comments

Comments
 (0)