@ghl-ai/aw 0.1.36-beta.50 → 0.1.36-beta.51
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/commands/nuke.mjs +7 -5
- package/package.json +1 -1
package/commands/nuke.mjs
CHANGED
|
@@ -133,18 +133,20 @@ async function removeProjectSymlinks() {
|
|
|
133
133
|
// Append "|| true" so find's exit code is always 0 (find exits 1 on permission-denied dirs).
|
|
134
134
|
const { stdout: registryLinks } = await exec(
|
|
135
135
|
`find "${HOME}" -maxdepth 4 -name ".aw_registry" -type l 2>/dev/null || true`,
|
|
136
|
-
{ encoding: 'utf8', timeout:
|
|
136
|
+
{ encoding: 'utf8', timeout: 30000 }
|
|
137
137
|
);
|
|
138
138
|
for (const linkPath of registryLinks.trim().split('\n').filter(Boolean)) {
|
|
139
139
|
try { unlinkSync(linkPath); removed++; } catch { /* best effort */ }
|
|
140
140
|
}
|
|
141
141
|
|
|
142
142
|
// Find and remove stale project-level .aw git worktree directories.
|
|
143
|
-
//
|
|
143
|
+
// maxdepth 4 covers HOME/org/repo/.aw and completes in <1s on large home dirs.
|
|
144
|
+
// (maxdepth 6 took 12s+ due to Library/ and .claude/plugins/cache/ scanning)
|
|
145
|
+
// ~/.aw itself is skipped — Phase 6 handles it.
|
|
144
146
|
const AW_HOME_PATH = join(HOME, '.aw');
|
|
145
147
|
const { stdout: awDirs } = await exec(
|
|
146
|
-
`find "${HOME}" -maxdepth
|
|
147
|
-
{ encoding: 'utf8', timeout:
|
|
148
|
+
`find "${HOME}" -maxdepth 4 -name ".aw" -type d 2>/dev/null || true`,
|
|
149
|
+
{ encoding: 'utf8', timeout: 30000 }
|
|
148
150
|
);
|
|
149
151
|
for (const awDir of awDirs.trim().split('\n').filter(Boolean)) {
|
|
150
152
|
if (awDir === AW_HOME_PATH) continue; // ~/.aw removed in Phase 6
|
|
@@ -160,7 +162,7 @@ async function removeProjectSymlinks() {
|
|
|
160
162
|
let hooksRemoved = 0;
|
|
161
163
|
const { stdout: hookFiles } = await exec(
|
|
162
164
|
`find "${HOME}" -maxdepth 5 -path "*/.git/hooks/post-checkout" -type f 2>/dev/null || true`,
|
|
163
|
-
{ encoding: 'utf8', timeout:
|
|
165
|
+
{ encoding: 'utf8', timeout: 30000 }
|
|
164
166
|
);
|
|
165
167
|
for (const hookPath of hookFiles.trim().split('\n').filter(Boolean)) {
|
|
166
168
|
try {
|