fix: resolve agent dir in onboarding

This commit is contained in:
Peter Steinberger
2026-01-05 07:12:13 +01:00
parent 17ef7b3b0e
commit 9be1a14a08
5 changed files with 19 additions and 11 deletions

View File

@@ -1,11 +1,9 @@
import fs from "node:fs/promises";
import os from "node:os";
import path from "node:path";
import { describe, expect, it, vi } from "vitest";
import type { Api, Model } from "@mariozechner/pi-ai";
import { discoverAuthStorage } from "@mariozechner/pi-coding-agent";
import { describe, expect, it, vi } from "vitest";
const oauthFixture = {
access: "access-token",
@@ -17,9 +15,7 @@ const oauthFixture = {
describe("getApiKeyForModel", () => {
it("migrates legacy oauth.json into auth.json", async () => {
const previousStateDir = process.env.CLAWDBOT_STATE_DIR;
const tempDir = await fs.mkdtemp(
path.join(os.tmpdir(), "clawdbot-oauth-"),
);
const tempDir = await fs.mkdtemp(path.join(os.tmpdir(), "clawdbot-oauth-"));
try {
process.env.CLAWDBOT_STATE_DIR = tempDir;

View File

@@ -98,9 +98,15 @@ export function ensureOAuthStorage(): void {
importLegacyOAuthIfNeeded(oauthPath);
}
function isValidOAuthCredential(entry: OAuthCredentials | undefined): entry is OAuthCredentials {
function isValidOAuthCredential(
entry: OAuthCredentials | undefined,
): entry is OAuthCredentials {
if (!entry) return false;
return Boolean(entry.access?.trim() && entry.refresh?.trim() && Number.isFinite(entry.expires));
return Boolean(
entry.access?.trim() &&
entry.refresh?.trim() &&
Number.isFinite(entry.expires),
);
}
function migrateOAuthStorageToAuthStorage(