diff --git a/bun.lock b/bun.lock index 58641de..3781f42 100644 --- a/bun.lock +++ b/bun.lock @@ -6,7 +6,7 @@ "name": "opencode-mission-control", "dependencies": { "@opencode-ai/plugin": "^1.0.85", - "zod": "^3.22.0", + "zod": "^4.3.6", }, "devDependencies": { "@types/bun": "latest", @@ -514,7 +514,7 @@ "yoctocolors": ["yoctocolors@2.1.2", "", {}, "sha512-CzhO+pFNo8ajLM2d2IW/R93ipy99LWjtwblvC1RsoSUMZgyLbYFr221TnSNT7GjGdYui6P459mw9JH/g/zW2ug=="], - "zod": ["zod@3.25.76", "", {}, "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ=="], + "zod": ["zod@4.3.6", "", {}, "sha512-rftlrkhHZOcjDwkGlnUtZZkvaPHCsDATp4pGpuOOMDaTdDDXF91wuVDJoWoPsKX/3YPQ5fHuF3STjcYyKr+Qhg=="], "@actions/http-client/undici": ["undici@6.23.0", "", {}, "sha512-VfQPToRA5FZs/qJxLIinmU59u0r7LXqoJkCzinq3ckNJp3vKEh7jTWN589YQ5+aoAC/TGRLyJLCPKcLQbM8r9g=="], diff --git a/package.json b/package.json index af1d746..6cf6cdb 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ }, "dependencies": { "@opencode-ai/plugin": "^1.0.85", - "zod": "^3.22.0" + "zod": "^4.3.6" }, "devDependencies": { "@types/bun": "latest", diff --git a/src/lib/config.ts b/src/lib/config.ts index ea0f90d..2cfd6a9 100644 --- a/src/lib/config.ts +++ b/src/lib/config.ts @@ -60,7 +60,7 @@ export async function loadConfig(): Promise { return result; } catch (error) { if (error instanceof z.ZodError) { - throw new Error(`Invalid config in ${filePath}: ${error.errors.map(e => `${e.path.join('.')}: ${e.message}`).join(', ')}`); + throw new Error(`Invalid config in ${filePath}: ${error.issues.map(e => `${e.path.join('.')}: ${e.message}`).join(', ')}`); } throw new Error(`Failed to load config from ${filePath}: ${error}`); } diff --git a/src/lib/job-state.ts b/src/lib/job-state.ts index 2d74f81..2ec90a3 100644 --- a/src/lib/job-state.ts +++ b/src/lib/job-state.ts @@ -76,7 +76,7 @@ export async function loadJobState(): Promise { return JobStateSchema.parse(parsed); } catch (error) { if (error instanceof z.ZodError) { - throw new Error(`Invalid job state in ${filePath}: ${error.errors.map(e => `${e.path.join('.')}: ${e.message}`).join(', ')}`); + throw new Error(`Invalid job state in ${filePath}: ${error.issues.map(e => `${e.path.join('.')}: ${e.message}`).join(', ')}`); } throw new Error(`Failed to load job state from ${filePath}: ${error}`); } diff --git a/src/lib/plan-state.ts b/src/lib/plan-state.ts index 3dba026..a4921cc 100644 --- a/src/lib/plan-state.ts +++ b/src/lib/plan-state.ts @@ -33,7 +33,7 @@ export async function loadPlan(): Promise { return PlanSpecSchema.parse(parsed); } catch (error) { if (error instanceof z.ZodError) { - throw new Error(`Invalid plan state in ${filePath}: ${error.errors.map(e => `${e.path.join('.')}: ${e.message}`).join(', ')}`); + throw new Error(`Invalid plan state in ${filePath}: ${error.issues.map(e => `${e.path.join('.')}: ${e.message}`).join(', ')}`); } throw new Error(`Failed to load plan state from ${filePath}: ${error}`); }