chore: generate
This commit is contained in:
@@ -2,9 +2,7 @@
|
|||||||
"version": "7",
|
"version": "7",
|
||||||
"dialect": "sqlite",
|
"dialect": "sqlite",
|
||||||
"id": "8bc2d11d-97fa-4ba8-8bfa-6c5956c49aeb",
|
"id": "8bc2d11d-97fa-4ba8-8bfa-6c5956c49aeb",
|
||||||
"prevIds": [
|
"prevIds": ["068758ed-a97a-46f6-8a59-6c639ae7c20c"],
|
||||||
"068758ed-a97a-46f6-8a59-6c639ae7c20c"
|
|
||||||
],
|
|
||||||
"ddl": [
|
"ddl": [
|
||||||
{
|
{
|
||||||
"name": "project",
|
"name": "project",
|
||||||
@@ -605,13 +603,9 @@
|
|||||||
"table": "session_share"
|
"table": "session_share"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["session_id"],
|
||||||
"session_id"
|
|
||||||
],
|
|
||||||
"tableTo": "session",
|
"tableTo": "session",
|
||||||
"columnsTo": [
|
"columnsTo": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"onUpdate": "NO ACTION",
|
"onUpdate": "NO ACTION",
|
||||||
"onDelete": "CASCADE",
|
"onDelete": "CASCADE",
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
@@ -620,13 +614,9 @@
|
|||||||
"table": "message"
|
"table": "message"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["message_id"],
|
||||||
"message_id"
|
|
||||||
],
|
|
||||||
"tableTo": "message",
|
"tableTo": "message",
|
||||||
"columnsTo": [
|
"columnsTo": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"onUpdate": "NO ACTION",
|
"onUpdate": "NO ACTION",
|
||||||
"onDelete": "CASCADE",
|
"onDelete": "CASCADE",
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
@@ -635,13 +625,9 @@
|
|||||||
"table": "part"
|
"table": "part"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["project_id"],
|
||||||
"project_id"
|
|
||||||
],
|
|
||||||
"tableTo": "project",
|
"tableTo": "project",
|
||||||
"columnsTo": [
|
"columnsTo": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"onUpdate": "NO ACTION",
|
"onUpdate": "NO ACTION",
|
||||||
"onDelete": "CASCADE",
|
"onDelete": "CASCADE",
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
@@ -650,13 +636,9 @@
|
|||||||
"table": "permission"
|
"table": "permission"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["project_id"],
|
||||||
"project_id"
|
|
||||||
],
|
|
||||||
"tableTo": "project",
|
"tableTo": "project",
|
||||||
"columnsTo": [
|
"columnsTo": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"onUpdate": "NO ACTION",
|
"onUpdate": "NO ACTION",
|
||||||
"onDelete": "CASCADE",
|
"onDelete": "CASCADE",
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
@@ -665,13 +647,9 @@
|
|||||||
"table": "session"
|
"table": "session"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["session_id"],
|
||||||
"session_id"
|
|
||||||
],
|
|
||||||
"tableTo": "session",
|
"tableTo": "session",
|
||||||
"columnsTo": [
|
"columnsTo": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"onUpdate": "NO ACTION",
|
"onUpdate": "NO ACTION",
|
||||||
"onDelete": "CASCADE",
|
"onDelete": "CASCADE",
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
@@ -680,13 +658,9 @@
|
|||||||
"table": "todo"
|
"table": "todo"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["session_id"],
|
||||||
"session_id"
|
|
||||||
],
|
|
||||||
"tableTo": "session",
|
"tableTo": "session",
|
||||||
"columnsTo": [
|
"columnsTo": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"onUpdate": "NO ACTION",
|
"onUpdate": "NO ACTION",
|
||||||
"onDelete": "CASCADE",
|
"onDelete": "CASCADE",
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
@@ -695,64 +669,49 @@
|
|||||||
"table": "session_share"
|
"table": "session_share"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["session_id", "position"],
|
||||||
"session_id",
|
|
||||||
"position"
|
|
||||||
],
|
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
"name": "todo_pk",
|
"name": "todo_pk",
|
||||||
"entityType": "pks",
|
"entityType": "pks",
|
||||||
"table": "todo"
|
"table": "todo"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
"name": "project_pk",
|
"name": "project_pk",
|
||||||
"table": "project",
|
"table": "project",
|
||||||
"entityType": "pks"
|
"entityType": "pks"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
"name": "message_pk",
|
"name": "message_pk",
|
||||||
"table": "message",
|
"table": "message",
|
||||||
"entityType": "pks"
|
"entityType": "pks"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
"name": "part_pk",
|
"name": "part_pk",
|
||||||
"table": "part",
|
"table": "part",
|
||||||
"entityType": "pks"
|
"entityType": "pks"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["project_id"],
|
||||||
"project_id"
|
|
||||||
],
|
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
"name": "permission_pk",
|
"name": "permission_pk",
|
||||||
"table": "permission",
|
"table": "permission",
|
||||||
"entityType": "pks"
|
"entityType": "pks"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
"name": "session_pk",
|
"name": "session_pk",
|
||||||
"table": "session",
|
"table": "session",
|
||||||
"entityType": "pks"
|
"entityType": "pks"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["session_id"],
|
||||||
"session_id"
|
|
||||||
],
|
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
"name": "session_share_pk",
|
"name": "session_share_pk",
|
||||||
"table": "session_share",
|
"table": "session_share",
|
||||||
|
|||||||
@@ -2,9 +2,7 @@
|
|||||||
"version": "7",
|
"version": "7",
|
||||||
"dialect": "sqlite",
|
"dialect": "sqlite",
|
||||||
"id": "d2736e43-700f-4e9e-8151-9f2f0d967bc8",
|
"id": "d2736e43-700f-4e9e-8151-9f2f0d967bc8",
|
||||||
"prevIds": [
|
"prevIds": ["8bc2d11d-97fa-4ba8-8bfa-6c5956c49aeb"],
|
||||||
"8bc2d11d-97fa-4ba8-8bfa-6c5956c49aeb"
|
|
||||||
],
|
|
||||||
"ddl": [
|
"ddl": [
|
||||||
{
|
{
|
||||||
"name": "control_account",
|
"name": "control_account",
|
||||||
@@ -689,13 +687,9 @@
|
|||||||
"table": "session_share"
|
"table": "session_share"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["session_id"],
|
||||||
"session_id"
|
|
||||||
],
|
|
||||||
"tableTo": "session",
|
"tableTo": "session",
|
||||||
"columnsTo": [
|
"columnsTo": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"onUpdate": "NO ACTION",
|
"onUpdate": "NO ACTION",
|
||||||
"onDelete": "CASCADE",
|
"onDelete": "CASCADE",
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
@@ -704,13 +698,9 @@
|
|||||||
"table": "message"
|
"table": "message"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["message_id"],
|
||||||
"message_id"
|
|
||||||
],
|
|
||||||
"tableTo": "message",
|
"tableTo": "message",
|
||||||
"columnsTo": [
|
"columnsTo": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"onUpdate": "NO ACTION",
|
"onUpdate": "NO ACTION",
|
||||||
"onDelete": "CASCADE",
|
"onDelete": "CASCADE",
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
@@ -719,13 +709,9 @@
|
|||||||
"table": "part"
|
"table": "part"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["project_id"],
|
||||||
"project_id"
|
|
||||||
],
|
|
||||||
"tableTo": "project",
|
"tableTo": "project",
|
||||||
"columnsTo": [
|
"columnsTo": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"onUpdate": "NO ACTION",
|
"onUpdate": "NO ACTION",
|
||||||
"onDelete": "CASCADE",
|
"onDelete": "CASCADE",
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
@@ -734,13 +720,9 @@
|
|||||||
"table": "permission"
|
"table": "permission"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["project_id"],
|
||||||
"project_id"
|
|
||||||
],
|
|
||||||
"tableTo": "project",
|
"tableTo": "project",
|
||||||
"columnsTo": [
|
"columnsTo": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"onUpdate": "NO ACTION",
|
"onUpdate": "NO ACTION",
|
||||||
"onDelete": "CASCADE",
|
"onDelete": "CASCADE",
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
@@ -749,13 +731,9 @@
|
|||||||
"table": "session"
|
"table": "session"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["session_id"],
|
||||||
"session_id"
|
|
||||||
],
|
|
||||||
"tableTo": "session",
|
"tableTo": "session",
|
||||||
"columnsTo": [
|
"columnsTo": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"onUpdate": "NO ACTION",
|
"onUpdate": "NO ACTION",
|
||||||
"onDelete": "CASCADE",
|
"onDelete": "CASCADE",
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
@@ -764,13 +742,9 @@
|
|||||||
"table": "todo"
|
"table": "todo"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["session_id"],
|
||||||
"session_id"
|
|
||||||
],
|
|
||||||
"tableTo": "session",
|
"tableTo": "session",
|
||||||
"columnsTo": [
|
"columnsTo": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"onUpdate": "NO ACTION",
|
"onUpdate": "NO ACTION",
|
||||||
"onDelete": "CASCADE",
|
"onDelete": "CASCADE",
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
@@ -779,74 +753,56 @@
|
|||||||
"table": "session_share"
|
"table": "session_share"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["email", "url"],
|
||||||
"email",
|
|
||||||
"url"
|
|
||||||
],
|
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
"name": "control_account_pk",
|
"name": "control_account_pk",
|
||||||
"entityType": "pks",
|
"entityType": "pks",
|
||||||
"table": "control_account"
|
"table": "control_account"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["session_id", "position"],
|
||||||
"session_id",
|
|
||||||
"position"
|
|
||||||
],
|
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
"name": "todo_pk",
|
"name": "todo_pk",
|
||||||
"entityType": "pks",
|
"entityType": "pks",
|
||||||
"table": "todo"
|
"table": "todo"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
"name": "project_pk",
|
"name": "project_pk",
|
||||||
"table": "project",
|
"table": "project",
|
||||||
"entityType": "pks"
|
"entityType": "pks"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
"name": "message_pk",
|
"name": "message_pk",
|
||||||
"table": "message",
|
"table": "message",
|
||||||
"entityType": "pks"
|
"entityType": "pks"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
"name": "part_pk",
|
"name": "part_pk",
|
||||||
"table": "part",
|
"table": "part",
|
||||||
"entityType": "pks"
|
"entityType": "pks"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["project_id"],
|
||||||
"project_id"
|
|
||||||
],
|
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
"name": "permission_pk",
|
"name": "permission_pk",
|
||||||
"table": "permission",
|
"table": "permission",
|
||||||
"entityType": "pks"
|
"entityType": "pks"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["id"],
|
||||||
"id"
|
|
||||||
],
|
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
"name": "session_pk",
|
"name": "session_pk",
|
||||||
"table": "session",
|
"table": "session",
|
||||||
"entityType": "pks"
|
"entityType": "pks"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": ["session_id"],
|
||||||
"session_id"
|
|
||||||
],
|
|
||||||
"nameExplicit": false,
|
"nameExplicit": false,
|
||||||
"name": "session_share_pk",
|
"name": "session_share_pk",
|
||||||
"table": "session_share",
|
"table": "session_share",
|
||||||
|
|||||||
@@ -1,70 +1,65 @@
|
|||||||
// IMPORTANT: Set env vars BEFORE any imports from src/ directory
|
// IMPORTANT: Set env vars BEFORE any imports from src/ directory
|
||||||
// xdg-basedir reads env vars at import time, so we must set these first
|
// xdg-basedir reads env vars at import time, so we must set these first
|
||||||
import os from "os";
|
import os from "os"
|
||||||
import path from "path";
|
import path from "path"
|
||||||
import fs from "fs/promises";
|
import fs from "fs/promises"
|
||||||
import fsSync from "fs";
|
import fsSync from "fs"
|
||||||
import { afterAll } from "bun:test";
|
import { afterAll } from "bun:test"
|
||||||
|
|
||||||
// Set XDG env vars FIRST, before any src/ imports
|
// Set XDG env vars FIRST, before any src/ imports
|
||||||
const dir = path.join(os.tmpdir(), "opencode-test-data-" + process.pid);
|
const dir = path.join(os.tmpdir(), "opencode-test-data-" + process.pid)
|
||||||
await fs.mkdir(dir, { recursive: true });
|
await fs.mkdir(dir, { recursive: true })
|
||||||
afterAll(() => {
|
afterAll(() => {
|
||||||
fsSync.rmSync(dir, { recursive: true, force: true });
|
fsSync.rmSync(dir, { recursive: true, force: true })
|
||||||
});
|
})
|
||||||
|
|
||||||
process.env["XDG_DATA_HOME"] = path.join(dir, "share");
|
process.env["XDG_DATA_HOME"] = path.join(dir, "share")
|
||||||
process.env["XDG_CACHE_HOME"] = path.join(dir, "cache");
|
process.env["XDG_CACHE_HOME"] = path.join(dir, "cache")
|
||||||
process.env["XDG_CONFIG_HOME"] = path.join(dir, "config");
|
process.env["XDG_CONFIG_HOME"] = path.join(dir, "config")
|
||||||
process.env["XDG_STATE_HOME"] = path.join(dir, "state");
|
process.env["XDG_STATE_HOME"] = path.join(dir, "state")
|
||||||
process.env["OPENCODE_MODELS_PATH"] = path.join(
|
process.env["OPENCODE_MODELS_PATH"] = path.join(import.meta.dir, "tool", "fixtures", "models-api.json")
|
||||||
import.meta.dir,
|
|
||||||
"tool",
|
|
||||||
"fixtures",
|
|
||||||
"models-api.json",
|
|
||||||
);
|
|
||||||
|
|
||||||
// Set test home directory to isolate tests from user's actual home directory
|
// Set test home directory to isolate tests from user's actual home directory
|
||||||
// This prevents tests from picking up real user configs/skills from ~/.claude/skills
|
// This prevents tests from picking up real user configs/skills from ~/.claude/skills
|
||||||
const testHome = path.join(dir, "home");
|
const testHome = path.join(dir, "home")
|
||||||
await fs.mkdir(testHome, { recursive: true });
|
await fs.mkdir(testHome, { recursive: true })
|
||||||
process.env["OPENCODE_TEST_HOME"] = testHome;
|
process.env["OPENCODE_TEST_HOME"] = testHome
|
||||||
|
|
||||||
// Set test managed config directory to isolate tests from system managed settings
|
// Set test managed config directory to isolate tests from system managed settings
|
||||||
const testManagedConfigDir = path.join(dir, "managed");
|
const testManagedConfigDir = path.join(dir, "managed")
|
||||||
process.env["OPENCODE_TEST_MANAGED_CONFIG_DIR"] = testManagedConfigDir;
|
process.env["OPENCODE_TEST_MANAGED_CONFIG_DIR"] = testManagedConfigDir
|
||||||
|
|
||||||
// Write the cache version file to prevent global/index.ts from clearing the cache
|
// Write the cache version file to prevent global/index.ts from clearing the cache
|
||||||
const cacheDir = path.join(dir, "cache", "opencode");
|
const cacheDir = path.join(dir, "cache", "opencode")
|
||||||
await fs.mkdir(cacheDir, { recursive: true });
|
await fs.mkdir(cacheDir, { recursive: true })
|
||||||
await fs.writeFile(path.join(cacheDir, "version"), "14");
|
await fs.writeFile(path.join(cacheDir, "version"), "14")
|
||||||
|
|
||||||
// Clear provider env vars to ensure clean test state
|
// Clear provider env vars to ensure clean test state
|
||||||
delete process.env["ANTHROPIC_API_KEY"];
|
delete process.env["ANTHROPIC_API_KEY"]
|
||||||
delete process.env["OPENAI_API_KEY"];
|
delete process.env["OPENAI_API_KEY"]
|
||||||
delete process.env["GOOGLE_API_KEY"];
|
delete process.env["GOOGLE_API_KEY"]
|
||||||
delete process.env["GOOGLE_GENERATIVE_AI_API_KEY"];
|
delete process.env["GOOGLE_GENERATIVE_AI_API_KEY"]
|
||||||
delete process.env["AZURE_OPENAI_API_KEY"];
|
delete process.env["AZURE_OPENAI_API_KEY"]
|
||||||
delete process.env["AWS_ACCESS_KEY_ID"];
|
delete process.env["AWS_ACCESS_KEY_ID"]
|
||||||
delete process.env["AWS_PROFILE"];
|
delete process.env["AWS_PROFILE"]
|
||||||
delete process.env["AWS_REGION"];
|
delete process.env["AWS_REGION"]
|
||||||
delete process.env["AWS_BEARER_TOKEN_BEDROCK"];
|
delete process.env["AWS_BEARER_TOKEN_BEDROCK"]
|
||||||
delete process.env["OPENROUTER_API_KEY"];
|
delete process.env["OPENROUTER_API_KEY"]
|
||||||
delete process.env["GROQ_API_KEY"];
|
delete process.env["GROQ_API_KEY"]
|
||||||
delete process.env["MISTRAL_API_KEY"];
|
delete process.env["MISTRAL_API_KEY"]
|
||||||
delete process.env["PERPLEXITY_API_KEY"];
|
delete process.env["PERPLEXITY_API_KEY"]
|
||||||
delete process.env["TOGETHER_API_KEY"];
|
delete process.env["TOGETHER_API_KEY"]
|
||||||
delete process.env["XAI_API_KEY"];
|
delete process.env["XAI_API_KEY"]
|
||||||
delete process.env["DEEPSEEK_API_KEY"];
|
delete process.env["DEEPSEEK_API_KEY"]
|
||||||
delete process.env["FIREWORKS_API_KEY"];
|
delete process.env["FIREWORKS_API_KEY"]
|
||||||
delete process.env["CEREBRAS_API_KEY"];
|
delete process.env["CEREBRAS_API_KEY"]
|
||||||
delete process.env["SAMBANOVA_API_KEY"];
|
delete process.env["SAMBANOVA_API_KEY"]
|
||||||
|
|
||||||
// Now safe to import from src/
|
// Now safe to import from src/
|
||||||
const { Log } = await import("../src/util/log");
|
const { Log } = await import("../src/util/log")
|
||||||
|
|
||||||
Log.init({
|
Log.init({
|
||||||
print: false,
|
print: false,
|
||||||
dev: true,
|
dev: true,
|
||||||
level: "DEBUG",
|
level: "DEBUG",
|
||||||
});
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user