From 42dc46a513f02a7b978f1097a7e13cf626110152 Mon Sep 17 00:00:00 2001 From: Mario Zechner Date: Sat, 9 Aug 2025 18:05:28 +0200 Subject: [PATCH] Fix process.cwd() error when running from deleted directory - Defer process.cwd() call in logger to avoid initialization errors - Resolve log file path only when actually writing logs - Bump version to 0.5.2 --- package-lock.json | 10 +++++----- packages/agent/package-lock.json | 4 ++-- packages/agent/package.json | 4 ++-- packages/pods/package-lock.json | 4 ++-- packages/pods/package.json | 4 ++-- packages/tui/package-lock.json | 4 ++-- packages/tui/package.json | 2 +- packages/tui/src/logger.ts | 16 +++++++++++++--- 8 files changed, 29 insertions(+), 19 deletions(-) diff --git a/package-lock.json b/package-lock.json index 89ba79a6..55e8ebf9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -778,10 +778,10 @@ }, "packages/agent": { "name": "@mariozechner/pi-agent", - "version": "0.5.1", + "version": "0.5.2", "license": "MIT", "dependencies": { - "@mariozechner/pi-tui": "^0.5.0", + "@mariozechner/pi-tui": "^0.5.1", "@types/glob": "^8.1.0", "chalk": "^5.5.0", "glob": "^11.0.3", @@ -1222,10 +1222,10 @@ }, "packages/pods": { "name": "@mariozechner/pi", - "version": "0.5.1", + "version": "0.5.2", "license": "MIT", "dependencies": { - "@mariozechner/pi-agent": "^0.5.0", + "@mariozechner/pi-agent": "^0.5.1", "chalk": "^5.5.0" }, "bin": { @@ -1238,7 +1238,7 @@ }, "packages/tui": { "name": "@mariozechner/pi-tui", - "version": "0.5.1", + "version": "0.5.2", "license": "MIT", "dependencies": { "@types/mime-types": "^2.1.4", diff --git a/packages/agent/package-lock.json b/packages/agent/package-lock.json index f2d8dcad..8deb5fa6 100644 --- a/packages/agent/package-lock.json +++ b/packages/agent/package-lock.json @@ -1,12 +1,12 @@ { "name": "@mariozechner/pi-agent", - "version": "0.5.1", + "version": "0.5.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@mariozechner/pi-agent", - "version": "0.5.1", + "version": "0.5.2", "license": "MIT", "dependencies": { "@mariozechner/tui": "^0.1.1", diff --git a/packages/agent/package.json b/packages/agent/package.json index 59decd4a..1436aa87 100644 --- a/packages/agent/package.json +++ b/packages/agent/package.json @@ -1,6 +1,6 @@ { "name": "@mariozechner/pi-agent", - "version": "0.5.1", + "version": "0.5.2", "description": "General-purpose agent with tool calling and session persistence", "type": "module", "bin": { @@ -18,7 +18,7 @@ "prepublishOnly": "npm run clean && npm run build" }, "dependencies": { - "@mariozechner/pi-tui": "^0.5.1", + "@mariozechner/pi-tui": "^0.5.2", "@types/glob": "^8.1.0", "chalk": "^5.5.0", "glob": "^11.0.3", diff --git a/packages/pods/package-lock.json b/packages/pods/package-lock.json index cd9651bb..26d9df75 100644 --- a/packages/pods/package-lock.json +++ b/packages/pods/package-lock.json @@ -1,12 +1,12 @@ { "name": "@mariozechner/pi", - "version": "0.5.1", + "version": "0.5.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@mariozechner/pi", - "version": "0.5.1", + "version": "0.5.2", "license": "MIT", "dependencies": { "@ai-sdk/openai": "^2.0.5", diff --git a/packages/pods/package.json b/packages/pods/package.json index f7f0baac..e0092043 100644 --- a/packages/pods/package.json +++ b/packages/pods/package.json @@ -1,6 +1,6 @@ { "name": "@mariozechner/pi", - "version": "0.5.1", + "version": "0.5.2", "description": "CLI tool for managing vLLM deployments on GPU pods", "type": "module", "bin": { @@ -33,7 +33,7 @@ "node": ">=20.0.0" }, "dependencies": { - "@mariozechner/pi-agent": "^0.5.1", + "@mariozechner/pi-agent": "^0.5.2", "chalk": "^5.5.0" }, "devDependencies": {} diff --git a/packages/tui/package-lock.json b/packages/tui/package-lock.json index 0e6cc971..d3a2c899 100644 --- a/packages/tui/package-lock.json +++ b/packages/tui/package-lock.json @@ -1,12 +1,12 @@ { "name": "@mariozechner/tui", - "version": "0.5.1", + "version": "0.5.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@mariozechner/tui", - "version": "0.5.1", + "version": "0.5.2", "license": "MIT", "dependencies": { "@types/mime-types": "^2.1.4", diff --git a/packages/tui/package.json b/packages/tui/package.json index dd4e8289..14b5840e 100644 --- a/packages/tui/package.json +++ b/packages/tui/package.json @@ -1,6 +1,6 @@ { "name": "@mariozechner/pi-tui", - "version": "0.5.1", + "version": "0.5.2", "description": "Terminal User Interface library with differential rendering for efficient text-based applications", "type": "module", "main": "dist/index.js", diff --git a/packages/tui/src/logger.ts b/packages/tui/src/logger.ts index 9252c917..1654437d 100644 --- a/packages/tui/src/logger.ts +++ b/packages/tui/src/logger.ts @@ -10,7 +10,7 @@ export interface LoggerConfig { class Logger { private config: LoggerConfig = { enabled: false, - logFile: join(process.cwd(), "tui-debug.log"), + logFile: "tui-debug.log", // Will be resolved when needed logLevel: "debug", }; @@ -20,7 +20,12 @@ class Logger { if (this.config.enabled) { // Clear log file on startup try { - writeFileSync(this.config.logFile, `=== TUI Debug Log Started ${new Date().toISOString()} ===\n`); + // Resolve log file path when needed + const logFile = this.config.logFile.startsWith("/") + ? this.config.logFile + : join(process.cwd(), this.config.logFile); + + writeFileSync(logFile, `=== TUI Debug Log Started ${new Date().toISOString()} ===\n`); } catch (error) { // Silently fail if we can't write to log file } @@ -45,7 +50,12 @@ class Logger { const dataStr = data ? ` | Data: ${JSON.stringify(data)}` : ""; const logLine = `[${timestamp}] ${level.toUpperCase()} [${component}] ${message}${dataStr}\n`; - appendFileSync(this.config.logFile, logLine); + // Resolve log file path when needed + const logFile = this.config.logFile.startsWith("/") + ? this.config.logFile + : join(process.cwd(), this.config.logFile); + + appendFileSync(logFile, logLine); } catch (error) { // Silently fail if we can't write to log file }