fix: respect HOME env var in workspace init functions for Windows compat

On Windows, os.homedir() reads USERPROFILE, not HOME. Tests pass HOME
override for sandboxing. Use process.env.HOME with os.homedir() fallback
so tests work cross-platform.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Tom Boucher
2026-03-20 17:08:50 -04:00
parent 5c4d5e5f47
commit ef4453ebf5

View File

@@ -922,7 +922,7 @@ function detectChildRepos(dir) {
}
function cmdInitNewWorkspace(cwd, raw) {
const homedir = require('os').homedir();
const homedir = process.env.HOME || require('os').homedir();
const defaultBase = path.join(homedir, 'gsd-workspaces');
// Detect child git repos for interactive selection
@@ -948,7 +948,7 @@ function cmdInitNewWorkspace(cwd, raw) {
}
function cmdInitListWorkspaces(cwd, raw) {
const homedir = require('os').homedir();
const homedir = process.env.HOME || require('os').homedir();
const defaultBase = path.join(homedir, 'gsd-workspaces');
const workspaces = [];
@@ -994,7 +994,7 @@ function cmdInitListWorkspaces(cwd, raw) {
}
function cmdInitRemoveWorkspace(cwd, name, raw) {
const homedir = require('os').homedir();
const homedir = process.env.HOME || require('os').homedir();
const defaultBase = path.join(homedir, 'gsd-workspaces');
if (!name) {