@anselmdk/feature-spec-md 0.13.2-rc.2 → 0.13.2-rc.21

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/dist/cli.js CHANGED
@@ -262,7 +262,8 @@ FTP maintenance:
262
262
  --mode report Inventory only (default is not destructive; mode is required).
263
263
  --mode dry-run Show cleanup candidates without deleting them.
264
264
  --mode cleanup Delete old numbered builds and/or exact --paths.
265
- --keep-builds Numbered builds to retain (default: 10).
265
+ --keep-builds Numbered builds to retain (default: 30; reusable workflow default: 100).
266
+ --max-builds-to-delete Maximum expired builds removed per run (default: 10).
266
267
  --paths Comma-separated paths relative to the FTP root.
267
268
  `);
268
269
  }
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -15,8 +15,18 @@ export declare function runFtpMaintenance(options: FtpMaintenanceOptions): Promi
15
15
  export declare function parseFtpSizeResponse(response: string): number | undefined;
16
16
  export declare function parseFtpHeadSize(response: string): number | undefined;
17
17
  export declare function maintenanceInventoryRoots(mode: FtpMaintenanceMode, requestedPaths: string[]): string[] | undefined;
18
+ export declare function concurrencyLimiter(limit: number): <T>(operation: () => Promise<T>) => Promise<T>;
19
+ export declare function selectExpiredBuildBatch(names: string[], keepBuilds: number, maxBuildsToDelete: number, batchIndex?: number): string[];
18
20
  export declare function parseMaintenanceListingNames(listing: string): string[];
19
21
  export declare function selectMaintenanceNames(names: string[], directory: string, remoteDir: string, maximumNumberedEntries: number | undefined, requestedPaths: string[], restrictToRequestedPaths?: boolean): string[];
20
22
  export declare function cleanupCandidates(inventory: FtpInventoryEntry[], root: string, keepBuilds: number, requestedPaths: string[]): string[];
21
- export declare function ftpDeleteCommand(remotePath: string, kind: FtpInventoryEntry["kind"]): string;
23
+ export declare function presentCleanupTargets(paths: string[], inventory: FtpInventoryEntry[]): string[];
24
+ export declare function groupCleanupTargetsByBuild(paths: string[]): string[][];
25
+ export declare function groupFtpPathsByParent(paths: string[]): {
26
+ parent: string;
27
+ items: {
28
+ name: string;
29
+ path: string;
30
+ }[];
31
+ }[];
22
32
  //# sourceMappingURL=githubActionFtpMaintenance.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"githubActionFtpMaintenance.d.ts","sourceRoot":"","sources":["../src/githubActionFtpMaintenance.ts"],"names":[],"mappings":"AACA,OAAO,EAOL,KAAK,mBAAmB,EACzB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,MAAM,kBAAkB,GAC1B,YAAY,GACZ,QAAQ,GACR,SAAS,GACT,SAAS,CAAC;AAEd,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,mBAAmB,CAAC;AAExD,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,qBAAqB;;;;;GAkIrE;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,sBAGpD;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,sBAGhD;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,kBAAkB,EACxB,cAAc,EAAE,MAAM,EAAE,wBAUzB;AAuDD,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,YAQ3D;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,EAAE,EACf,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,sBAAsB,EAAE,MAAM,GAAG,SAAS,EAC1C,cAAc,EAAE,MAAM,EAAE,EACxB,wBAAwB,UAAQ,YA2CjC;AA2CD,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,iBAAiB,EAAE,EAC9B,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EAAE,YA8BzB;AAkCD,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,UAIhC"}
1
+ {"version":3,"file":"githubActionFtpMaintenance.d.ts","sourceRoot":"","sources":["../src/githubActionFtpMaintenance.ts"],"names":[],"mappings":"AAEA,OAAO,EAOL,KAAK,mBAAmB,EACzB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,MAAM,kBAAkB,GAC1B,YAAY,GACZ,QAAQ,GACR,SAAS,GACT,SAAS,CAAC;AAEd,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,mBAAmB,CAAC;AAExD,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,qBAAqB;;;;;GA+JrE;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,sBAGpD;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,sBAGhD;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,kBAAkB,EACxB,cAAc,EAAE,MAAM,EAAE,wBAUzB;AAmED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,IAMb,CAAC,EAAE,WAAW,MAAM,OAAO,CAAC,CAAC,CAAC,gBAYhE;AA4DD,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,EAAE,EACf,UAAU,EAAE,MAAM,EAClB,iBAAiB,EAAE,MAAM,EACzB,UAAU,SAAI,YAaf;AAED,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,YAQ3D;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,EAAE,EACf,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,sBAAsB,EAAE,MAAM,GAAG,SAAS,EAC1C,cAAc,EAAE,MAAM,EAAE,EACxB,wBAAwB,UAAQ,YA2CjC;AA2CD,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,iBAAiB,EAAE,EAC9B,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EAAE,YA8BzB;AAqED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,EAAE,EACf,SAAS,EAAE,iBAAiB,EAAE,YAO/B;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,cAQzD;AAiBD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE;;;cACN,MAAM;cAAQ,MAAM;;IASlE"}
@@ -1,4 +1,5 @@
1
1
  import { appendFile } from "node:fs/promises";
2
+ import { Client } from "basic-ftp";
2
3
  import { ftpConnectionConfig, listRemoteDirectory, pathJoin, runCurl, runWithConcurrency, } from "./githubActionFtp.js";
3
4
  export async function runFtpMaintenance(options) {
4
5
  const connection = ftpConnectionConfig(options);
@@ -35,48 +36,70 @@ export async function runFtpMaintenance(options) {
35
36
  const keepBuilds = positiveInteger(options["keep-builds"] ?? process.env.FEATURE_SPEC_FTP_KEEP_BUILDS, 30);
36
37
  const maxBuildsToScan = optionalPositiveInteger(options["max-builds-to-scan"] ??
37
38
  process.env.FEATURE_SPEC_FTP_MAX_BUILDS_TO_SCAN, "Maximum builds to scan");
39
+ const maxBuildsToDelete = positiveInteger(options["max-builds-to-delete"] ??
40
+ process.env.FEATURE_SPEC_FTP_MAX_BUILDS_TO_DELETE, 10);
38
41
  const requestedPaths = csv(options.paths ?? process.env.FEATURE_SPEC_FTP_PATHS);
39
- const inventoryRoots = maintenanceInventoryRoots(mode, requestedPaths);
40
- if (mode === "cleanup" &&
41
- maxBuildsToScan !== undefined &&
42
- (!requestedPaths.length || keepBuilds < maxBuildsToScan)) {
43
- throw new Error("Bounded cleanup requires --paths and --keep-builds greater than or equal to --max-builds-to-scan.");
44
- }
45
- const inventory = await inventoryRemoteDirectory(config.remoteDir, config, maxBuildsToScan, inventoryRoots, requestedPaths);
42
+ const retentionCleanup = (mode === "cleanup" || mode === "dry-run") && !requestedPaths.length;
43
+ const retentionPaths = retentionCleanup
44
+ ? await discoverRetentionCleanupPaths(config.remoteDir, config, keepBuilds, maxBuildsToDelete)
45
+ : [];
46
+ const effectivePaths = retentionCleanup
47
+ ? retentionPaths.map((path) => relativeChildPath(config.remoteDir, path))
48
+ : requestedPaths;
49
+ const inventoryRoots = maintenanceInventoryRoots(mode, effectivePaths);
50
+ const inventory = retentionCleanup && !effectivePaths.length
51
+ ? []
52
+ : await inventoryRemoteDirectory(config.remoteDir, config, retentionCleanup ? undefined : maxBuildsToScan, inventoryRoots, effectivePaths, effectivePaths.length > 0);
46
53
  const freeBytes = await remoteFreeBytes(config.remoteDir, config);
47
54
  const cleanupPaths = mode === "report"
48
55
  ? []
49
- : cleanupCandidates(inventory, config.remoteDir, keepBuilds, requestedPaths);
56
+ : retentionCleanup
57
+ ? retentionPaths
58
+ : cleanupCandidates(inventory, config.remoteDir, keepBuilds, requestedPaths);
59
+ let completedCleanupPaths = cleanupPaths;
50
60
  if (mode === "cleanup" && !requestedPaths.length && keepBuilds < 1) {
51
61
  throw new Error("Cleanup requires --keep-builds of at least 1 or --paths.");
52
62
  }
53
63
  if (mode === "cleanup") {
54
64
  await deletePaths(cleanupPaths, inventory, config);
55
65
  }
56
- const afterInventory = mode === "cleanup"
57
- ? await inventoryRemoteDirectory(config.remoteDir, config, maxBuildsToScan, inventoryRoots, requestedPaths)
58
- : inventory;
66
+ const afterInventory = mode === "cleanup" ? [] : inventory;
59
67
  if (mode === "cleanup") {
60
- const remainingPaths = cleanupPaths.filter((target) => afterInventory.some((entry) => entry.path === target || entry.path.startsWith(`${target}/`)));
61
- if (remainingPaths.length) {
62
- throw new Error(`FTP cleanup did not remove: ${remainingPaths.join(", ")}`);
68
+ const remainingPaths = await waitForRemotePathsToDisappear(cleanupPaths, config);
69
+ const pathsWithFiles = await remotePathsContainingFiles(remainingPaths, config);
70
+ completedCleanupPaths = cleanupPaths.filter((path) => !pathsWithFiles.includes(path));
71
+ const emptyRoots = remainingPaths.filter((path) => !pathsWithFiles.includes(path));
72
+ if (emptyRoots.length) {
73
+ console.warn(`FTP retained empty directory names after removing their report files: ${emptyRoots.join(", ")}`);
74
+ }
75
+ if (pathsWithFiles.length) {
76
+ const message = `FTP cleanup did not remove report files from: ${pathsWithFiles.join(", ")}`;
77
+ if (requestedPaths.length)
78
+ throw new Error(message);
79
+ console.warn(`${message}. They will be retried by a later retention run.`);
63
80
  }
64
81
  }
65
82
  const summary = formatSummary({
66
83
  config,
67
84
  mode,
68
85
  keepBuilds,
86
+ maxBuildsToDelete,
69
87
  maxBuildsToScan,
70
88
  requestedPaths,
71
89
  inventoryRoots,
72
90
  inventory,
73
- cleanupPaths,
91
+ cleanupPaths: completedCleanupPaths,
74
92
  freeBytes,
75
93
  afterInventory,
76
94
  });
77
- await writeSummary(summary, options, cleanupPaths);
95
+ await writeSummary(summary, options, completedCleanupPaths);
78
96
  console.log(summary);
79
- return { summary, inventory, cleanupPaths, freeBytes };
97
+ return {
98
+ summary,
99
+ inventory,
100
+ cleanupPaths: completedCleanupPaths,
101
+ freeBytes,
102
+ };
80
103
  }
81
104
  export function parseFtpSizeResponse(response) {
82
105
  const match = response.match(/(?:^|\s)(\d+)\s*$/m);
@@ -95,40 +118,111 @@ export function maintenanceInventoryRoots(mode, requestedPaths) {
95
118
  ...requestedPaths.map((item) => item.split("/")[0]),
96
119
  ]));
97
120
  }
98
- async function inventoryRemoteDirectory(remoteDir, config, maxBuildsToScan, inventoryRoots, requestedPaths = []) {
121
+ async function inventoryRemoteDirectory(remoteDir, config, maxBuildsToScan, inventoryRoots, requestedPaths = [], restrictToRequestedPaths = false) {
99
122
  const entries = [];
123
+ const runLimited = concurrencyLimiter(config.concurrency);
100
124
  await visit(remoteDir);
101
125
  return entries.sort((a, b) => a.path.localeCompare(b.path));
102
- async function visit(directory) {
103
- const listing = await listRemoteDirectory(directory, config, {
104
- fallbackToDefaultListing: false,
105
- });
126
+ async function visit(directory, knownListing) {
127
+ const listing = knownListing ??
128
+ (await runLimited(() => listRemoteDirectory(directory, config, {
129
+ fallbackToDefaultListing: false,
130
+ })));
106
131
  const names = parseMaintenanceListingNames(listing);
107
132
  const buildRoot = pathJoin(remoteDir, "build");
108
133
  const scopedNames = directory === remoteDir && inventoryRoots !== undefined
109
134
  ? names.filter((name) => inventoryRoots.includes(name))
110
135
  : names;
111
- const selectedNames = selectMaintenanceNames(scopedNames, directory, remoteDir, directory === buildRoot ? maxBuildsToScan : undefined, requestedPaths, maxBuildsToScan !== undefined && requestedPaths.length > 0);
136
+ const selectedNames = selectMaintenanceNames(scopedNames, directory, remoteDir, directory === buildRoot ? maxBuildsToScan : undefined, requestedPaths, restrictToRequestedPaths);
112
137
  await runWithConcurrency(selectedNames, config.concurrency, async (name) => {
113
138
  const child = pathJoin(directory, name);
139
+ let childListing;
114
140
  try {
115
- await listRemoteDirectory(child, config, {
141
+ childListing = await runLimited(() => listRemoteDirectory(child, config, {
116
142
  fallbackToDefaultListing: false,
117
- });
118
- entries.push({ path: child, kind: "directory", sizeBytes: 0 });
119
- await visit(child);
143
+ }));
120
144
  }
121
145
  catch {
122
- const sizeBytes = await remoteFileSize(child, config);
146
+ const sizeBytes = await runLimited(() => remoteFileSize(child, config));
123
147
  entries.push({
124
148
  path: child,
125
149
  kind: "file",
126
150
  sizeBytes: sizeBytes ?? 0,
127
151
  });
152
+ return;
128
153
  }
154
+ entries.push({ path: child, kind: "directory", sizeBytes: 0 });
155
+ await visit(child, childListing);
129
156
  });
130
157
  }
131
158
  }
159
+ export function concurrencyLimiter(limit) {
160
+ if (!Number.isInteger(limit) || limit < 1) {
161
+ throw new Error(`Concurrency limit must be a positive integer: ${limit}`);
162
+ }
163
+ let active = 0;
164
+ const waiting = [];
165
+ return async function runLimited(operation) {
166
+ if (active >= limit) {
167
+ await new Promise((resolve) => waiting.push(resolve));
168
+ }
169
+ active += 1;
170
+ try {
171
+ return await operation();
172
+ }
173
+ finally {
174
+ active -= 1;
175
+ waiting.shift()?.();
176
+ }
177
+ };
178
+ }
179
+ async function discoverRetentionCleanupPaths(remoteDir, config, keepBuilds, maxBuildsToDelete) {
180
+ const buildRoot = pathJoin(remoteDir, "build");
181
+ const buildNames = await listMaintenanceNames(buildRoot, config);
182
+ const expiredBuilds = selectExpiredBuildBatch(buildNames, keepBuilds, maxBuildsToDelete, Number(process.env.GITHUB_RUN_NUMBER ?? 0));
183
+ if (!expiredBuilds.length)
184
+ return [];
185
+ const expired = new Set(expiredBuilds);
186
+ const prRoot = pathJoin(remoteDir, "pr");
187
+ const pullRequests = (await listMaintenanceNames(prRoot, config)).filter((name) => /^\d+$/.test(name));
188
+ const pullRequestReports = [];
189
+ await runWithConcurrency(pullRequests, config.concurrency, async (pullRequest) => {
190
+ const directory = pathJoin(prRoot, pullRequest);
191
+ const reportBuilds = await listMaintenanceNames(directory, config);
192
+ for (const build of reportBuilds) {
193
+ if (expired.has(build)) {
194
+ pullRequestReports.push(pathJoin(directory, build));
195
+ }
196
+ }
197
+ });
198
+ const reportsByBuild = new Map();
199
+ for (const report of pullRequestReports.sort()) {
200
+ const build = pathJoin(report).split("/").at(-1);
201
+ if (build) {
202
+ reportsByBuild.set(build, [...(reportsByBuild.get(build) ?? []), report]);
203
+ }
204
+ }
205
+ return expiredBuilds.map((build) => reportsByBuild.get(build)?.[0] ?? pathJoin(buildRoot, build));
206
+ }
207
+ async function listMaintenanceNames(directory, config) {
208
+ const listing = await listRemoteDirectory(directory, config, {
209
+ fallbackToDefaultListing: false,
210
+ });
211
+ return parseMaintenanceListingNames(listing);
212
+ }
213
+ export function selectExpiredBuildBatch(names, keepBuilds, maxBuildsToDelete, batchIndex = 0) {
214
+ const expired = Array.from(new Set(names))
215
+ .filter((name) => /^\d+$/.test(name))
216
+ .sort((a, b) => Number(b) - Number(a))
217
+ .slice(keepBuilds)
218
+ .sort((a, b) => Number(a) - Number(b));
219
+ if (!expired.length)
220
+ return [];
221
+ const batchCount = Math.ceil(expired.length / maxBuildsToDelete);
222
+ const normalizedBatch = ((Math.trunc(batchIndex) % batchCount) + batchCount) % batchCount;
223
+ const start = normalizedBatch * maxBuildsToDelete;
224
+ return expired.slice(start, start + maxBuildsToDelete);
225
+ }
132
226
  export function parseMaintenanceListingNames(listing) {
133
227
  return listing
134
228
  .split(/\r?\n/)
@@ -233,27 +327,90 @@ export function cleanupCandidates(inventory, root, keepBuilds, requestedPaths) {
233
327
  return Array.from(new Set([...oldBuildPaths, ...oldPullRequestReportPaths, ...exact]));
234
328
  }
235
329
  async function deletePaths(paths, inventory, config) {
236
- for (const target of paths) {
237
- const descendants = inventory
238
- .filter((entry) => entry.path === target || entry.path.startsWith(`${target}/`))
239
- .sort((a, b) => b.path.length - a.path.length);
240
- for (const entry of descendants) {
241
- await deleteRemote(entry.path, entry.kind, config);
330
+ const targets = presentCleanupTargets(paths, inventory);
331
+ if (!targets.length)
332
+ return;
333
+ for (const group of groupCleanupTargetsByBuild(targets)) {
334
+ const client = new Client(config.maxTimeSeconds * 1000);
335
+ await client.access({
336
+ host: config.host,
337
+ port: config.port ? Number(config.port) : undefined,
338
+ user: config.user,
339
+ password: config.password,
340
+ secure: config.secure ? "implicit" : false,
341
+ });
342
+ try {
343
+ for (const target of group) {
344
+ const normalizedTarget = `/${pathJoin(target)}`;
345
+ const tombstone = `${normalizedTarget}.feature-spec-cleanup-${Date.now()}`;
346
+ await client.cd(normalizedTarget);
347
+ await client.clearWorkingDir();
348
+ await client.cd("/");
349
+ await client.rename(normalizedTarget, tombstone);
350
+ }
351
+ }
352
+ finally {
353
+ client.close();
242
354
  }
243
355
  }
244
356
  }
245
- async function deleteRemote(remotePath, kind, config) {
246
- const command = ftpDeleteCommand(remotePath, kind);
247
- try {
248
- await runCurl(ftpArgs(config, ["--quote", command, "--list-only"], ""));
357
+ async function waitForRemotePathsToDisappear(paths, config) {
358
+ const deadline = Date.now() + 120_000;
359
+ let remaining = await existingRemotePaths(paths, config);
360
+ while (remaining.length && Date.now() < deadline) {
361
+ await new Promise((resolve) => setTimeout(resolve, 5_000));
362
+ remaining = await existingRemotePaths(paths, config);
249
363
  }
250
- catch (error) {
251
- throw new Error(`Failed to delete FTP ${kind} ${remotePath}: ${error instanceof Error ? error.message : String(error)}`);
364
+ return remaining;
365
+ }
366
+ async function remotePathsContainingFiles(paths, config) {
367
+ if (!paths.length)
368
+ return [];
369
+ const relativePaths = paths.map((path) => relativeChildPath(config.remoteDir, path));
370
+ const inventory = await inventoryRemoteDirectory(config.remoteDir, config, undefined, maintenanceInventoryRoots("cleanup", relativePaths), relativePaths, true);
371
+ return paths.filter((target) => inventory.some((entry) => entry.kind === "file" && entry.path.startsWith(`${target}/`)));
372
+ }
373
+ export function presentCleanupTargets(paths, inventory) {
374
+ return paths.filter((target) => inventory.some((entry) => entry.path === target || entry.path.startsWith(`${target}/`)));
375
+ }
376
+ export function groupCleanupTargetsByBuild(paths) {
377
+ const groups = new Map();
378
+ for (const path of paths) {
379
+ const key = pathJoin(path).split("/").at(-1);
380
+ if (!key)
381
+ throw new Error(`Cannot group an empty FTP path: ${path}`);
382
+ groups.set(key, [...(groups.get(key) ?? []), path]);
383
+ }
384
+ return Array.from(groups.values());
385
+ }
386
+ async function existingRemotePaths(paths, config) {
387
+ const groups = groupFtpPathsByParent(paths);
388
+ const existing = [];
389
+ await runWithConcurrency(groups, config.concurrency, async (group) => {
390
+ const available = new Set(await listMaintenanceNames(group.parent, config));
391
+ for (const item of group.items) {
392
+ if (available.has(item.name))
393
+ existing.push(item.path);
394
+ }
395
+ });
396
+ return existing.sort();
397
+ }
398
+ export function groupFtpPathsByParent(paths) {
399
+ const groups = new Map();
400
+ for (const path of paths) {
401
+ const normalized = pathJoin(path);
402
+ const name = normalized.split("/").at(-1);
403
+ if (!name)
404
+ throw new Error(`Cannot inspect an empty FTP path: ${path}`);
405
+ const parent = ftpParentPath(normalized);
406
+ groups.set(parent, [...(groups.get(parent) ?? []), { name, path }]);
252
407
  }
408
+ return Array.from(groups, ([parent, items]) => ({ parent, items }));
253
409
  }
254
- export function ftpDeleteCommand(remotePath, kind) {
255
- const command = kind === "directory" ? "RMD" : "DELE";
256
- return `${command} /${pathJoin(remotePath)}`;
410
+ function ftpParentPath(remotePath) {
411
+ const parts = pathJoin(remotePath).split("/");
412
+ parts.pop();
413
+ return parts.join("/");
257
414
  }
258
415
  function formatSummary(input) {
259
416
  const lines = [
@@ -263,6 +420,7 @@ function formatSummary(input) {
263
420
  `- Root: \`${input.config.remoteDir || "/"}\``,
264
421
  `- Scan scope: **${input.inventoryRoots?.map((item) => `\`${item}\``).join(", ") ?? "all top-level paths"}**`,
265
422
  `- Build scan: **${input.maxBuildsToScan === undefined ? "all numbered builds" : `newest ${input.maxBuildsToScan} numbered build${input.maxBuildsToScan === 1 ? "" : "s"}`}**`,
423
+ `- Cleanup batch: **at most ${input.maxBuildsToDelete} expired builds**`,
266
424
  `- Files: **${input.inventory.filter((entry) => entry.kind === "file").length}**`,
267
425
  `- Used: **${formatBytes(totalBytes(input.inventory))}**`,
268
426
  `- Available: **${input.freeBytes === undefined ? "not reported by server" : formatBytes(input.freeBytes)}**`,
@@ -321,14 +479,24 @@ function ftpArgs(config, args, remotePath) {
321
479
  .filter(Boolean)
322
480
  .map(encodeURIComponent)
323
481
  .join("/");
482
+ const directorySlash = remotePath.endsWith("/") && encodedPath ? "/" : "";
324
483
  return [
325
484
  "--silent",
326
485
  "--show-error",
327
486
  "--fail",
487
+ "--connect-timeout",
488
+ String(config.connectTimeoutSeconds),
489
+ "--max-time",
490
+ String(config.maxTimeSeconds),
491
+ "--retry",
492
+ "1",
493
+ "--retry-all-errors",
494
+ "--retry-delay",
495
+ "1",
328
496
  "-u",
329
497
  `${config.user}:${config.password}`,
330
498
  ...args,
331
- `${protocol}://${config.host}${port}/${encodedPath}`,
499
+ `${protocol}://${config.host}${port}/${encodedPath}${directorySlash}`,
332
500
  ];
333
501
  }
334
502
  function safeChildPath(root, value) {
@@ -337,6 +505,16 @@ function safeChildPath(root, value) {
337
505
  }
338
506
  return pathJoin(root, value);
339
507
  }
508
+ function relativeChildPath(root, value) {
509
+ const normalizedRoot = pathJoin(root);
510
+ const normalizedValue = pathJoin(value);
511
+ if (!normalizedRoot)
512
+ return normalizedValue;
513
+ if (!normalizedValue.startsWith(`${normalizedRoot}/`)) {
514
+ throw new Error(`FTP path is outside the configured root: ${value}`);
515
+ }
516
+ return normalizedValue.slice(normalizedRoot.length + 1);
517
+ }
340
518
  function maintenanceMode(value) {
341
519
  if (value === "smoke-test" ||
342
520
  value === "report" ||
@@ -1 +1 @@
1
- {"version":3,"file":"githubActionFtpMaintenance.js","sourceRoot":"","sources":["../src/githubActionFtpMaintenance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"githubActionFtpMaintenance.js","sourceRoot":"","sources":["../src/githubActionFtpMaintenance.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@anselmdk/feature-spec-md",
3
- "version": "0.13.2-rc.2",
3
+ "version": "0.13.2-rc.21",
4
4
  "description": "Markdown specs for AI-assisted, testable spec driven development across model, feature, stack, and design documents.",
5
5
  "type": "module",
6
6
  "repository": {
@@ -65,6 +65,7 @@
65
65
  ],
66
66
  "license": "MIT",
67
67
  "dependencies": {
68
+ "basic-ftp": "^6.2.1",
68
69
  "pngjs": "^7.0.0"
69
70
  },
70
71
  "devDependencies": {