cc-permissions 0.1.13 → 0.1.15

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.
Files changed (55) hide show
  1. package/README.md +17 -6
  2. package/dist/analyze.d.ts +19 -1
  3. package/dist/analyze.d.ts.map +1 -1
  4. package/dist/analyze.js +171 -96
  5. package/dist/analyze.js.map +1 -1
  6. package/dist/build-info.json +3 -3
  7. package/dist/cli.js +120 -136
  8. package/dist/cli.js.map +1 -1
  9. package/dist/format.d.ts +124 -0
  10. package/dist/format.d.ts.map +1 -0
  11. package/dist/format.js +187 -0
  12. package/dist/format.js.map +1 -0
  13. package/dist/index.d.ts +1 -0
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +2 -0
  16. package/dist/index.js.map +1 -1
  17. package/dist/output.d.ts.map +1 -1
  18. package/dist/output.js +13 -13
  19. package/dist/output.js.map +1 -1
  20. package/dist/permissions.d.ts.map +1 -1
  21. package/dist/permissions.js +5 -4
  22. package/dist/permissions.js.map +1 -1
  23. package/dist/templates/loader.d.ts.map +1 -1
  24. package/dist/templates/loader.js +6 -0
  25. package/dist/templates/loader.js.map +1 -1
  26. package/dist/types.d.ts +1 -0
  27. package/dist/types.d.ts.map +1 -1
  28. package/package.json +1 -1
  29. package/templates/android.jsonc +15 -19
  30. package/templates/aws-mcp.jsonc +73 -0
  31. package/templates/aws.jsonc +2 -1
  32. package/templates/database.jsonc +2 -2
  33. package/templates/docker-mcp.jsonc +24 -0
  34. package/templates/flutter.jsonc +2 -0
  35. package/templates/gitea-mcp.jsonc +124 -0
  36. package/templates/gitea.jsonc +4 -112
  37. package/templates/github-mcp.jsonc +168 -0
  38. package/templates/gitlab-mcp.jsonc +59 -0
  39. package/templates/gitlab.jsonc +4 -47
  40. package/templates/go.jsonc +1 -1
  41. package/templates/gradle.jsonc +66 -0
  42. package/templates/java.jsonc +31 -70
  43. package/templates/kubernetes.jsonc +2 -1
  44. package/templates/maven.jsonc +69 -0
  45. package/templates/nodejs.jsonc +2 -1
  46. package/templates/php.jsonc +1 -1
  47. package/templates/playwright-mcp.jsonc +82 -0
  48. package/templates/playwright.jsonc +1 -2
  49. package/templates/postgres-mcp.jsonc +17 -0
  50. package/templates/python.jsonc +2 -1
  51. package/templates/ruby.jsonc +1 -1
  52. package/templates/rust.jsonc +1 -1
  53. package/templates/sqlite-mcp.jsonc +26 -0
  54. package/templates/template.schema.json +4 -0
  55. package/templates/terraform.jsonc +2 -1
package/README.md CHANGED
@@ -105,13 +105,20 @@ cc-permissions apply nodejs --level permissive
105
105
  |----------|-------------|
106
106
  | [dotnet](docs/templates/dotnet.md) | dotnet CLI, NuGet, MSBuild |
107
107
  | [go](docs/templates/go.md) | Go development and golangci-lint |
108
- | [java](docs/templates/java.md) | Maven, Gradle, Java, and JVM development |
108
+ | [java](docs/templates/java.md) | Java and JVM runtime |
109
109
  | [nodejs](docs/templates/nodejs.md) | Node.js, npm, pnpm, yarn, and bun |
110
110
  | [php](docs/templates/php.md) | PHP, Composer, and Laravel Artisan |
111
111
  | [python](docs/templates/python.md) | pip, python, venv, pytest, and common data tools |
112
112
  | [ruby](docs/templates/ruby.md) | Ruby, Bundler, Rails, and Rake |
113
113
  | [rust](docs/templates/rust.md) | Cargo, rustc, and rustup |
114
114
 
115
+ ### Build Tools
116
+
117
+ | Template | Description |
118
+ |----------|-------------|
119
+ | [gradle](docs/templates/gradle.md) | Gradle build tool and wrapper |
120
+ | [maven](docs/templates/maven.md) | Apache Maven build tool |
121
+
115
122
  ### Cloud Providers
116
123
 
117
124
  | Template | Description |
@@ -138,10 +145,17 @@ cc-permissions apply nodejs --level permissive
138
145
 
139
146
  | Template | Description |
140
147
  |----------|-------------|
141
- | [android](docs/templates/android.md) | Gradle, ADB, and Android development |
148
+ | [android](docs/templates/android.md) | Android SDK, ADB, and emulator |
142
149
  | [flutter](docs/templates/flutter.md) | Flutter SDK and Dart development |
143
150
  | [ios](docs/templates/ios.md) | Xcode, Swift, CocoaPods, and iOS development |
144
151
 
152
+ ### MCP Servers
153
+
154
+ | Template | Description |
155
+ |----------|-------------|
156
+ | [github-mcp](docs/templates/github-mcp.md) | GitHub MCP Server tools for repository and workflow management |
157
+ | [gitea](docs/templates/gitea.md) | Gitea MCP Server tools (also includes CLI commands) |
158
+
145
159
  ### Utilities
146
160
 
147
161
  | Template | Description |
@@ -187,11 +201,8 @@ cc-permissions list
187
201
  # View template permissions without applying
188
202
  cc-permissions template nodejs
189
203
 
190
- # Output as JSON only
204
+ # Output as JSON (for piping/scripting)
191
205
  cc-permissions template nodejs --format json
192
-
193
- # Output with summary
194
- cc-permissions template nodejs --format both
195
206
  ```
196
207
 
197
208
  ## Contributing
package/dist/analyze.d.ts CHANGED
@@ -1,4 +1,18 @@
1
- import type { AnalysisResult } from "./types.js";
1
+ import type { AnalysisResult, DetectionRules, DetectionType } from "./types.js";
2
+ interface DetectionResult {
3
+ type: DetectionType;
4
+ reason: string;
5
+ }
6
+ /**
7
+ * Detect if a template should be recommended based on its detection rules.
8
+ * Returns the detection type and reason if found, null otherwise.
9
+ *
10
+ * Logic:
11
+ * - If `requireAll` is true: AND mode - all specified criteria types must have at least one match
12
+ * - If `requireAll` is false/undefined: OR mode - first match wins (current behavior)
13
+ * - Within each criteria type (e.g., multiple files), still uses OR (any match works)
14
+ */
15
+ declare function detectTemplate(dir: string, detection: DetectionRules | undefined): DetectionResult | null;
2
16
  /**
3
17
  * Analyze a directory to recommend templates.
4
18
  */
@@ -7,4 +21,8 @@ export declare function analyzeDirectory(dir: string): AnalysisResult;
7
21
  * Format analysis result for display.
8
22
  */
9
23
  export declare function formatAnalysisResult(result: AnalysisResult): string;
24
+ export declare const _testing: {
25
+ detectTemplate: typeof detectTemplate;
26
+ };
27
+ export {};
10
28
  //# sourceMappingURL=analyze.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../src/analyze.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAsE,MAAM,YAAY,CAAC;AAoWrH;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CA4E5D;AA2DD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAuEnE"}
1
+ {"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../src/analyze.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAuC,aAAa,EAAE,MAAM,YAAY,CAAC;AAmRrH,UAAU,eAAe;IACvB,IAAI,EAAE,aAAa,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB;AA+ED;;;;;;;;GAQG;AACH,iBAAS,cAAc,CACrB,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,cAAc,GAAG,SAAS,GACpC,eAAe,GAAG,IAAI,CAqFxB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CA4E5D;AAiCD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAoEnE;AAGD,eAAO,MAAM,QAAQ;;CAEpB,CAAC"}
package/dist/analyze.js CHANGED
@@ -3,6 +3,7 @@ import { join, resolve, relative } from "node:path";
3
3
  import { execSync } from "node:child_process";
4
4
  import { PermissionLevel } from "./types.js";
5
5
  import { getTemplates } from "./templates/loader.js";
6
+ import { fmt, formatSafetyWarning } from "./format.js";
6
7
  // Cache for active MCP servers (avoid running `claude mcp list` multiple times)
7
8
  let cachedMcpServers = null;
8
9
  // Cache for available CLI commands (avoid running `which` multiple times)
@@ -251,69 +252,163 @@ function fileContains(dir, filename, searchText) {
251
252
  return false;
252
253
  }
253
254
  }
255
+ /**
256
+ * Check file patterns and return first match.
257
+ */
258
+ function checkFiles(dir, files) {
259
+ for (const pattern of files) {
260
+ const found = fileExists(dir, pattern);
261
+ if (found) {
262
+ return { type: "file", reason: found };
263
+ }
264
+ }
265
+ return null;
266
+ }
267
+ /**
268
+ * Check directory patterns and return first match.
269
+ */
270
+ function checkDirectories(dir, directories) {
271
+ for (const pattern of directories) {
272
+ const found = directoryExists(dir, pattern);
273
+ if (found) {
274
+ return { type: "directory", reason: found };
275
+ }
276
+ }
277
+ return null;
278
+ }
279
+ /**
280
+ * Check content patterns and return first match.
281
+ */
282
+ function checkContentPatterns(dir, contentPatterns) {
283
+ for (const { file, contains } of contentPatterns) {
284
+ if (fileContains(dir, file, contains)) {
285
+ return { type: "content", reason: `${file} contains "${contains}"` };
286
+ }
287
+ }
288
+ return null;
289
+ }
290
+ /**
291
+ * Check MCP servers and return first match.
292
+ */
293
+ function checkMcpServers(mcpServers) {
294
+ const found = hasMcpServer(mcpServers);
295
+ if (found) {
296
+ const serverName = found.replace("MCP:", "");
297
+ return { type: "mcp", reason: serverName };
298
+ }
299
+ return null;
300
+ }
301
+ /**
302
+ * Check CLI commands and return first match.
303
+ */
304
+ function checkCommands(commands) {
305
+ const found = hasCommand(commands);
306
+ if (found) {
307
+ const cmdName = found.replace("CLI:", "");
308
+ return { type: "file", reason: `${cmdName} installed` };
309
+ }
310
+ return null;
311
+ }
312
+ /**
313
+ * Check git remotes and return first match.
314
+ */
315
+ function checkGitRemotes(dir, gitRemotes) {
316
+ const found = hasGitRemote(dir, gitRemotes);
317
+ if (found) {
318
+ const pattern = found.replace("remote:", "");
319
+ return { type: "remote", reason: pattern };
320
+ }
321
+ return null;
322
+ }
254
323
  /**
255
324
  * Detect if a template should be recommended based on its detection rules.
256
325
  * Returns the detection type and reason if found, null otherwise.
326
+ *
327
+ * Logic:
328
+ * - If `requireAll` is true: AND mode - all specified criteria types must have at least one match
329
+ * - If `requireAll` is false/undefined: OR mode - first match wins (current behavior)
330
+ * - Within each criteria type (e.g., multiple files), still uses OR (any match works)
257
331
  */
258
332
  function detectTemplate(dir, detection) {
259
333
  if (!detection)
260
334
  return null;
261
- // Check if always recommended
335
+ // Check if always recommended (bypasses requireAll)
262
336
  if (detection.always) {
263
337
  return { type: "always", reason: "always included" };
264
338
  }
265
- // Check simple file patterns
266
- if (detection.files) {
267
- for (const pattern of detection.files) {
268
- const found = fileExists(dir, pattern);
269
- if (found) {
270
- return { type: "file", reason: found };
271
- }
339
+ // AND mode: all specified criteria types must match
340
+ if (detection.requireAll) {
341
+ const results = [];
342
+ // Check each criterion type - if specified but not matched, fail immediately
343
+ if (detection.files) {
344
+ const result = checkFiles(dir, detection.files);
345
+ if (!result)
346
+ return null;
347
+ results.push(result);
348
+ }
349
+ if (detection.directories) {
350
+ const result = checkDirectories(dir, detection.directories);
351
+ if (!result)
352
+ return null;
353
+ results.push(result);
272
354
  }
355
+ if (detection.contentPatterns) {
356
+ const result = checkContentPatterns(dir, detection.contentPatterns);
357
+ if (!result)
358
+ return null;
359
+ results.push(result);
360
+ }
361
+ if (detection.mcpServers) {
362
+ const result = checkMcpServers(detection.mcpServers);
363
+ if (!result)
364
+ return null;
365
+ results.push(result);
366
+ }
367
+ if (detection.commands) {
368
+ const result = checkCommands(detection.commands);
369
+ if (!result)
370
+ return null;
371
+ results.push(result);
372
+ }
373
+ if (detection.gitRemotes) {
374
+ const result = checkGitRemotes(dir, detection.gitRemotes);
375
+ if (!result)
376
+ return null;
377
+ results.push(result);
378
+ }
379
+ // All criteria matched - return the first result as the representative
380
+ return results.length > 0 ? results[0] : null;
381
+ }
382
+ // OR mode (default): first match wins
383
+ if (detection.files) {
384
+ const result = checkFiles(dir, detection.files);
385
+ if (result)
386
+ return result;
273
387
  }
274
- // Check directory patterns
275
388
  if (detection.directories) {
276
- for (const pattern of detection.directories) {
277
- const found = directoryExists(dir, pattern);
278
- if (found) {
279
- return { type: "directory", reason: found };
280
- }
281
- }
389
+ const result = checkDirectories(dir, detection.directories);
390
+ if (result)
391
+ return result;
282
392
  }
283
- // Check content patterns
284
393
  if (detection.contentPatterns) {
285
- for (const { file, contains } of detection.contentPatterns) {
286
- if (fileContains(dir, file, contains)) {
287
- return { type: "content", reason: `${file} contains "${contains}"` };
288
- }
289
- }
394
+ const result = checkContentPatterns(dir, detection.contentPatterns);
395
+ if (result)
396
+ return result;
290
397
  }
291
- // Check MCP servers
292
398
  if (detection.mcpServers) {
293
- const found = hasMcpServer(detection.mcpServers);
294
- if (found) {
295
- // Extract server name from "MCP:servername"
296
- const serverName = found.replace("MCP:", "");
297
- return { type: "mcp", reason: serverName };
298
- }
399
+ const result = checkMcpServers(detection.mcpServers);
400
+ if (result)
401
+ return result;
299
402
  }
300
- // Check CLI commands
301
403
  if (detection.commands) {
302
- const found = hasCommand(detection.commands);
303
- if (found) {
304
- // Extract command name from "CLI:command"
305
- const cmdName = found.replace("CLI:", "");
306
- return { type: "file", reason: `${cmdName} installed` };
307
- }
404
+ const result = checkCommands(detection.commands);
405
+ if (result)
406
+ return result;
308
407
  }
309
- // Check git remotes
310
408
  if (detection.gitRemotes) {
311
- const found = hasGitRemote(dir, detection.gitRemotes);
312
- if (found) {
313
- // Extract pattern from "remote:pattern"
314
- const pattern = found.replace("remote:", "");
315
- return { type: "remote", reason: pattern };
316
- }
409
+ const result = checkGitRemotes(dir, detection.gitRemotes);
410
+ if (result)
411
+ return result;
317
412
  }
318
413
  return null;
319
414
  }
@@ -389,56 +484,35 @@ export function analyzeDirectory(dir) {
389
484
  suggestedCommand,
390
485
  };
391
486
  }
392
- // ANSI color codes
393
- const colors = {
394
- reset: "\x1b[0m",
395
- bold: "\x1b[1m",
396
- dim: "\x1b[2m",
397
- cyan: "\x1b[36m",
398
- green: "\x1b[32m",
399
- yellow: "\x1b[33m",
400
- blue: "\x1b[34m",
401
- magenta: "\x1b[35m",
402
- gray: "\x1b[90m",
403
- };
404
- // Check if colors should be used (not piped, supports colors)
405
- function useColors() {
406
- return process.stdout.isTTY ?? false;
407
- }
408
- // Apply color if terminal supports it
409
- function color(text, ...codes) {
410
- if (!useColors())
411
- return text;
412
- return codes.join("") + text + colors.reset;
413
- }
414
- // Format detection for display with colored type prefix and emoji
487
+ // Format detection for display with colored type prefix (no emojis for consistent alignment)
415
488
  function formatDetection(type, reason) {
416
- const typeInfo = {
417
- file: { prefix: "file:", emoji: "📄", color: colors.green },
418
- directory: { prefix: "dir:", emoji: "📁", color: colors.green },
419
- content: { prefix: "content:", emoji: "📝", color: colors.yellow },
420
- mcp: { prefix: "mcp:", emoji: "🔌", color: colors.magenta },
421
- remote: { prefix: "remote:", emoji: "🌐", color: colors.blue },
422
- always: { prefix: "", emoji: "", color: colors.gray },
423
- };
424
- const info = typeInfo[type] || { prefix: `${type}:`, emoji: "•", color: colors.reset };
425
- if (type === "always") {
426
- return `${info.emoji} ` + color(reason, info.color);
489
+ switch (type) {
490
+ case "file":
491
+ return fmt.fileDetection("file:") + " " + reason;
492
+ case "directory":
493
+ return fmt.dirDetection("dir:") + " " + reason;
494
+ case "content":
495
+ return fmt.contentDetection("content:") + " " + reason;
496
+ case "mcp":
497
+ return fmt.mcpDetection("mcp:") + " " + reason;
498
+ case "remote":
499
+ return fmt.remoteDetection("remote:") + " " + reason;
500
+ case "always":
501
+ return fmt.alwaysDetection(reason);
502
+ default:
503
+ return `${type}: ${reason}`;
427
504
  }
428
- return `${info.emoji} ` + color(info.prefix, info.color) + " " + reason;
429
505
  }
430
506
  // Get plain text length of detection (without color codes)
431
- // Emoji is treated as 2 chars wide for terminal alignment
432
507
  function getDetectionLength(type, reason) {
433
508
  const prefixes = {
434
509
  file: "file:", directory: "dir:", content: "content:",
435
510
  mcp: "mcp:", remote: "remote:", always: "",
436
511
  };
437
512
  const prefix = prefixes[type] || `${type}:`;
438
- const emojiWidth = 2; // emoji + space
439
513
  if (type === "always")
440
- return emojiWidth + reason.length;
441
- return emojiWidth + prefix.length + 1 + reason.length; // emoji + prefix + space + reason
514
+ return reason.length;
515
+ return prefix.length + 1 + reason.length; // prefix + space + reason
442
516
  }
443
517
  /**
444
518
  * Format analysis result for display.
@@ -446,8 +520,7 @@ function getDetectionLength(type, reason) {
446
520
  export function formatAnalysisResult(result) {
447
521
  const lines = [
448
522
  ``,
449
- color(`🔍 Project Analysis`, colors.bold, colors.cyan),
450
- color(`═══════════════════`, colors.cyan),
523
+ fmt.title(`Project Analysis`, "═"),
451
524
  ``,
452
525
  ];
453
526
  if (result.detections.length === 0) {
@@ -469,35 +542,37 @@ export function formatAnalysisResult(result) {
469
542
  const topBorder = `${box.topLeft}${box.horizontal.repeat(templateWidth + 2)}${box.topT}${box.horizontal.repeat(detectedByWidth + 2)}${box.topRight}`;
470
543
  const headerSep = `${box.leftT}${box.horizontal.repeat(templateWidth + 2)}${box.cross}${box.horizontal.repeat(detectedByWidth + 2)}${box.rightT}`;
471
544
  const bottomBorder = `${box.bottomLeft}${box.horizontal.repeat(templateWidth + 2)}${box.bottomT}${box.horizontal.repeat(detectedByWidth + 2)}${box.bottomRight}`;
472
- const header = `${color(box.vertical, colors.dim)} ${color("Template".padEnd(templateWidth), colors.bold)} ${color(box.vertical, colors.dim)} ${color("Detected By".padEnd(detectedByWidth), colors.bold)} ${color(box.vertical, colors.dim)}`;
473
- lines.push(color(topBorder, colors.dim));
545
+ const header = `${fmt.dim(box.vertical)} ${fmt.section("Template".padEnd(templateWidth))} ${fmt.dim(box.vertical)} ${fmt.section("Detected By".padEnd(detectedByWidth))} ${fmt.dim(box.vertical)}`;
546
+ lines.push(fmt.dim(topBorder));
474
547
  lines.push(header);
475
- lines.push(color(headerSep, colors.dim));
548
+ lines.push(fmt.dim(headerSep));
476
549
  for (const detection of result.detections) {
477
550
  const detectionText = formatDetection(detection.type, detection.reason);
478
551
  const detectionLen = getDetectionLength(detection.type, detection.reason);
479
552
  const padding = " ".repeat(detectedByWidth - detectionLen);
480
- const row = `${color(box.vertical, colors.dim)} ${detection.template.padEnd(templateWidth)} ${color(box.vertical, colors.dim)} ${detectionText}${padding} ${color(box.vertical, colors.dim)}`;
553
+ const row = `${fmt.dim(box.vertical)} ${fmt.item(detection.template.padEnd(templateWidth))} ${fmt.dim(box.vertical)} ${detectionText}${padding} ${fmt.dim(box.vertical)}`;
481
554
  lines.push(row);
482
555
  }
483
- lines.push(color(bottomBorder, colors.dim));
556
+ lines.push(fmt.dim(bottomBorder));
484
557
  }
485
558
  lines.push(``);
486
- lines.push(`🎚️ ${color("Suggested Level:", colors.bold)} ${result.suggestedLevel}`);
559
+ lines.push(`${fmt.section("Suggested Level:")} ${fmt.value(result.suggestedLevel)}`);
487
560
  lines.push(``);
488
- lines.push(`💻 ${color("Apply Permissions:", colors.bold)}`);
489
- lines.push(` ${color(result.suggestedCommand, colors.green)}`);
561
+ lines.push(`${fmt.section("Apply Permissions:")}`);
562
+ lines.push(` ${fmt.example(result.suggestedCommand)}`);
490
563
  lines.push(``);
491
564
  // Show template details command with an example template
492
565
  const exampleTemplate = result.recommendedTemplates.find(t => t !== "shell") || result.recommendedTemplates[0];
493
566
  if (exampleTemplate) {
494
- lines.push(`📋 ${color("View Template Details:", colors.bold)}`);
495
- lines.push(` ${color(`cc-permissions template ${exampleTemplate}`, colors.cyan)}`);
567
+ lines.push(`${fmt.section("View Template Details:")}`);
568
+ lines.push(` ${fmt.command(`cc-permissions template ${exampleTemplate}`)}`);
496
569
  lines.push(``);
497
570
  }
498
- lines.push(color(`─────────────────────────────────────────────────────────────────────────`, colors.dim));
499
- lines.push(`⚠️ ${color("Warning:", colors.bold, colors.yellow)} This approach is inherently less safe than a fully`);
500
- lines.push(` isolated environment. You're trading sandbox protection for convenience.`);
571
+ lines.push(formatSafetyWarning());
501
572
  return lines.join("\n");
502
573
  }
574
+ // Export for testing (prefixed with _ to indicate internal use)
575
+ export const _testing = {
576
+ detectTemplate,
577
+ };
503
578
  //# sourceMappingURL=analyze.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"analyze.js","sourceRoot":"","sources":["../src/analyze.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analyze.js","sourceRoot":"","sources":["../src/analyze.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
- "commitHash": "002e68e",
3
- "commitHashFull": "002e68e05578f01b5dd1acb4fa6d902c6d1b0eea",
2
+ "commitHash": "356afda",
3
+ "commitHashFull": "356afdaf2ba4137cb4bd989e19be0727bd528133",
4
4
  "dirty": false,
5
- "buildTime": "2026-01-24T23:45:11.203Z"
5
+ "buildTime": "2026-01-28T19:16:48.166Z"
6
6
  }