@oalacea/daemon 0.5.1 → 0.6.1
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/cli.d.ts +42 -0
- package/dist/cli/cli.d.ts.map +1 -0
- package/dist/cli/cli.js +89 -0
- package/dist/cli/cli.js.map +1 -0
- package/dist/cli/commands/detect.command.d.ts +39 -0
- package/dist/cli/commands/detect.command.d.ts.map +1 -0
- package/dist/cli/commands/detect.command.js +111 -0
- package/dist/cli/commands/detect.command.js.map +1 -0
- package/dist/cli/commands/index.d.ts +14 -0
- package/dist/cli/commands/index.d.ts.map +1 -0
- package/dist/cli/commands/index.js +11 -0
- package/dist/cli/commands/index.js.map +1 -0
- package/dist/cli/commands/init.command.d.ts +41 -0
- package/dist/cli/commands/init.command.d.ts.map +1 -0
- package/dist/cli/commands/init.command.js +111 -0
- package/dist/cli/commands/init.command.js.map +1 -0
- package/dist/cli/commands/test.command.d.ts +58 -0
- package/dist/cli/commands/test.command.d.ts.map +1 -0
- package/dist/cli/commands/test.command.js +180 -0
- package/dist/cli/commands/test.command.js.map +1 -0
- package/dist/cli/index.d.ts +8 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +10 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/core/config/daemon.config.d.ts +32 -0
- package/dist/core/config/daemon.config.d.ts.map +1 -0
- package/dist/core/config/daemon.config.js +83 -0
- package/dist/core/config/daemon.config.js.map +1 -0
- package/dist/core/config/index.d.ts +5 -0
- package/dist/core/config/index.d.ts.map +1 -0
- package/dist/core/config/index.js +5 -0
- package/dist/core/config/index.js.map +1 -0
- package/dist/core/constants.d.ts +36 -0
- package/dist/core/constants.d.ts.map +1 -0
- package/dist/core/constants.js +56 -0
- package/dist/core/constants.js.map +1 -0
- package/dist/core/types/common.types.d.ts +250 -0
- package/dist/core/types/common.types.d.ts.map +1 -0
- package/dist/core/types/common.types.js +7 -0
- package/dist/core/types/common.types.js.map +1 -0
- package/dist/core/types/detection.types.d.ts +232 -0
- package/dist/core/types/detection.types.d.ts.map +1 -0
- package/dist/core/types/detection.types.js +22 -0
- package/dist/core/types/detection.types.js.map +1 -0
- package/dist/core/types/docker.types.d.ts +322 -0
- package/dist/core/types/docker.types.d.ts.map +1 -0
- package/dist/core/types/docker.types.js +7 -0
- package/dist/core/types/docker.types.js.map +1 -0
- package/dist/core/types/index.d.ts +11 -0
- package/dist/core/types/index.d.ts.map +1 -0
- package/dist/core/types/index.js +7 -0
- package/dist/core/types/index.js.map +1 -0
- package/dist/core/types/project.types.d.ts +74 -0
- package/dist/core/types/project.types.d.ts.map +1 -0
- package/dist/core/types/project.types.js +7 -0
- package/dist/core/types/project.types.js.map +1 -0
- package/dist/core/types/shared.types.d.ts +118 -0
- package/dist/core/types/shared.types.d.ts.map +1 -0
- package/dist/core/types/shared.types.js +7 -0
- package/dist/core/types/shared.types.js.map +1 -0
- package/dist/core/types/test.types.d.ts +230 -0
- package/dist/core/types/test.types.d.ts.map +1 -0
- package/dist/core/types/test.types.js +7 -0
- package/dist/core/types/test.types.js.map +1 -0
- package/dist/services/detection/__tests__/framework-detector.test.d.ts +5 -0
- package/dist/services/detection/__tests__/framework-detector.test.d.ts.map +1 -0
- package/dist/services/detection/__tests__/framework-detector.test.js +52 -0
- package/dist/services/detection/__tests__/framework-detector.test.js.map +1 -0
- package/dist/services/detection/framework-detector.d.ts +179 -0
- package/dist/services/detection/framework-detector.d.ts.map +1 -0
- package/dist/services/detection/framework-detector.js +636 -0
- package/dist/services/detection/framework-detector.js.map +1 -0
- package/dist/services/detection/index.d.ts +10 -0
- package/dist/services/detection/index.d.ts.map +1 -0
- package/dist/services/detection/index.js +7 -0
- package/dist/services/detection/index.js.map +1 -0
- package/dist/services/docker/__tests__/docker-manager.test.d.ts +5 -0
- package/dist/services/docker/__tests__/docker-manager.test.d.ts.map +1 -0
- package/dist/services/docker/__tests__/docker-manager.test.js +67 -0
- package/dist/services/docker/__tests__/docker-manager.test.js.map +1 -0
- package/dist/services/docker/docker-manager.d.ts +157 -0
- package/dist/services/docker/docker-manager.d.ts.map +1 -0
- package/dist/services/docker/docker-manager.js +516 -0
- package/dist/services/docker/docker-manager.js.map +1 -0
- package/dist/services/docker/index.d.ts +9 -0
- package/dist/services/docker/index.d.ts.map +1 -0
- package/dist/services/docker/index.js +9 -0
- package/dist/services/docker/index.js.map +1 -0
- package/dist/services/index.d.ts +10 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/index.js +8 -0
- package/dist/services/index.js.map +1 -0
- package/dist/shared/errors/__tests__/base.error.test.d.ts +5 -0
- package/dist/shared/errors/__tests__/base.error.test.d.ts.map +1 -0
- package/dist/shared/errors/__tests__/base.error.test.js +61 -0
- package/dist/shared/errors/__tests__/base.error.test.js.map +1 -0
- package/dist/shared/errors/__tests__/command.error.test.d.ts +5 -0
- package/dist/shared/errors/__tests__/command.error.test.d.ts.map +1 -0
- package/dist/shared/errors/__tests__/command.error.test.js +62 -0
- package/dist/shared/errors/__tests__/command.error.test.js.map +1 -0
- package/dist/shared/errors/__tests__/file.error.test.d.ts +5 -0
- package/dist/shared/errors/__tests__/file.error.test.d.ts.map +1 -0
- package/dist/shared/errors/__tests__/file.error.test.js +75 -0
- package/dist/shared/errors/__tests__/file.error.test.js.map +1 -0
- package/dist/shared/errors/__tests__/index.test.d.ts +5 -0
- package/dist/shared/errors/__tests__/index.test.d.ts.map +1 -0
- package/dist/shared/errors/__tests__/index.test.js +62 -0
- package/dist/shared/errors/__tests__/index.test.js.map +1 -0
- package/dist/shared/errors/__tests__/validation.error.test.d.ts +5 -0
- package/dist/shared/errors/__tests__/validation.error.test.d.ts.map +1 -0
- package/dist/shared/errors/__tests__/validation.error.test.js +79 -0
- package/dist/shared/errors/__tests__/validation.error.test.js.map +1 -0
- package/dist/shared/errors/base.error.d.ts +54 -0
- package/dist/shared/errors/base.error.d.ts.map +1 -0
- package/dist/shared/errors/base.error.js +85 -0
- package/dist/shared/errors/base.error.js.map +1 -0
- package/dist/shared/errors/command.error.d.ts +58 -0
- package/dist/shared/errors/command.error.d.ts.map +1 -0
- package/dist/shared/errors/command.error.js +102 -0
- package/dist/shared/errors/command.error.js.map +1 -0
- package/dist/shared/errors/detection.error.d.ts +42 -0
- package/dist/shared/errors/detection.error.d.ts.map +1 -0
- package/dist/shared/errors/detection.error.js +82 -0
- package/dist/shared/errors/detection.error.js.map +1 -0
- package/dist/shared/errors/docker.error.d.ts +142 -0
- package/dist/shared/errors/docker.error.d.ts.map +1 -0
- package/dist/shared/errors/docker.error.js +172 -0
- package/dist/shared/errors/docker.error.js.map +1 -0
- package/dist/shared/errors/file.error.d.ts +66 -0
- package/dist/shared/errors/file.error.d.ts.map +1 -0
- package/dist/shared/errors/file.error.js +93 -0
- package/dist/shared/errors/file.error.js.map +1 -0
- package/dist/shared/errors/index.d.ts +56 -0
- package/dist/shared/errors/index.d.ts.map +1 -0
- package/dist/shared/errors/index.js +86 -0
- package/dist/shared/errors/index.js.map +1 -0
- package/dist/shared/errors/validation.error.d.ts +67 -0
- package/dist/shared/errors/validation.error.d.ts.map +1 -0
- package/dist/shared/errors/validation.error.js +97 -0
- package/dist/shared/errors/validation.error.js.map +1 -0
- package/dist/shared/templates/index.d.ts +2 -0
- package/dist/shared/templates/index.d.ts.map +1 -0
- package/dist/shared/templates/index.js +2 -0
- package/dist/shared/templates/index.js.map +1 -0
- package/dist/shared/templates/prompt-builder.d.ts +2 -0
- package/dist/shared/templates/prompt-builder.d.ts.map +1 -0
- package/dist/shared/templates/prompt-builder.js +2 -0
- package/dist/shared/templates/prompt-builder.js.map +1 -0
- package/dist/shared/templates/template-engine.d.ts +2 -0
- package/dist/shared/templates/template-engine.d.ts.map +1 -0
- package/dist/shared/templates/template-engine.js +2 -0
- package/dist/shared/templates/template-engine.js.map +1 -0
- package/dist/shared/utils/__tests__/command-executor.test.d.ts +5 -0
- package/dist/shared/utils/__tests__/command-executor.test.d.ts.map +1 -0
- package/dist/shared/utils/__tests__/command-executor.test.js +45 -0
- package/dist/shared/utils/__tests__/command-executor.test.js.map +1 -0
- package/dist/shared/utils/__tests__/file-helper.test.d.ts +5 -0
- package/dist/shared/utils/__tests__/file-helper.test.d.ts.map +1 -0
- package/dist/shared/utils/__tests__/file-helper.test.js +71 -0
- package/dist/shared/utils/__tests__/file-helper.test.js.map +1 -0
- package/dist/shared/utils/__tests__/logger.test.d.ts +5 -0
- package/dist/shared/utils/__tests__/logger.test.d.ts.map +1 -0
- package/dist/shared/utils/__tests__/logger.test.js +83 -0
- package/dist/shared/utils/__tests__/logger.test.js.map +1 -0
- package/dist/shared/utils/command-executer.d.ts +2 -0
- package/dist/shared/utils/command-executer.d.ts.map +1 -0
- package/dist/shared/utils/command-executer.js +2 -0
- package/dist/shared/utils/command-executer.js.map +1 -0
- package/dist/shared/utils/command-executor.d.ts +255 -0
- package/dist/shared/utils/command-executor.d.ts.map +1 -0
- package/dist/shared/utils/command-executor.js +287 -0
- package/dist/shared/utils/command-executor.js.map +1 -0
- package/dist/shared/utils/file-helper.d.ts +86 -0
- package/dist/shared/utils/file-helper.d.ts.map +1 -0
- package/dist/shared/utils/file-helper.js +323 -0
- package/dist/shared/utils/file-helper.js.map +1 -0
- package/dist/shared/utils/index.d.ts +9 -0
- package/dist/shared/utils/index.d.ts.map +1 -0
- package/dist/shared/utils/index.js +9 -0
- package/dist/shared/utils/index.js.map +1 -0
- package/dist/shared/utils/logger.d.ts +163 -0
- package/dist/shared/utils/logger.d.ts.map +1 -0
- package/dist/shared/utils/logger.js +389 -0
- package/dist/shared/utils/logger.js.map +1 -0
- package/package.json +25 -6
- package/CHANGELOG.md +0 -46
- package/agents/deps-analyzer.js +0 -366
- package/agents/detector.js +0 -570
- package/agents/fix-engine.js +0 -305
- package/agents/lighthouse-scanner.js +0 -405
- package/agents/perf-analyzer.js +0 -294
- package/agents/perf-front-analyzer.js +0 -229
- package/agents/test-generator.js +0 -387
- package/agents/test-runner.js +0 -318
- package/bin/cli.js +0 -449
- package/lib/config.js +0 -250
- package/lib/docker.js +0 -207
- package/lib/reporter.js +0 -297
- package/scripts/dev.js +0 -106
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* FileSystemError - Errors related to file system operations.
|
|
3
|
+
*
|
|
4
|
+
* Provides specific error types for common file operations:
|
|
5
|
+
* - File not found
|
|
6
|
+
* - Permission denied
|
|
7
|
+
* - Invalid JSON
|
|
8
|
+
* - Directory creation failures
|
|
9
|
+
* - File operation failures
|
|
10
|
+
*/
|
|
11
|
+
import { DaemonError } from './base.error.js';
|
|
12
|
+
/**
|
|
13
|
+
* Base class for all file system related errors
|
|
14
|
+
*/
|
|
15
|
+
export class FileSystemError extends DaemonError {
|
|
16
|
+
constructor(message, code, options) {
|
|
17
|
+
super(message, code, options);
|
|
18
|
+
Object.setPrototypeOf(this, FileSystemError.prototype);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Thrown when a file or directory is not found
|
|
23
|
+
*/
|
|
24
|
+
export class FileNotFoundError extends FileSystemError {
|
|
25
|
+
constructor(filePath, options) {
|
|
26
|
+
super(`File or directory not found: ${filePath}`, 'FILE_001', { ...options, context: { ...options?.context, filePath } });
|
|
27
|
+
Object.setPrototypeOf(this, FileNotFoundError.prototype);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Thrown when lacking permission to access a file/directory
|
|
32
|
+
*/
|
|
33
|
+
export class FilePermissionError extends FileSystemError {
|
|
34
|
+
constructor(filePath, operation, options) {
|
|
35
|
+
super(`Permission denied for '${operation}' on: ${filePath}`, 'FILE_002', { ...options, context: { ...options?.context, filePath, operation } });
|
|
36
|
+
Object.setPrototypeOf(this, FilePermissionError.prototype);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Thrown when JSON parsing fails
|
|
41
|
+
*/
|
|
42
|
+
export class InvalidJsonError extends FileSystemError {
|
|
43
|
+
constructor(filePath, parseError, options) {
|
|
44
|
+
super(`Invalid JSON in file ${filePath}: ${parseError}`, 'FILE_003', { ...options, context: { ...options?.context, filePath, parseError } });
|
|
45
|
+
Object.setPrototypeOf(this, InvalidJsonError.prototype);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Thrown when directory creation fails
|
|
50
|
+
*/
|
|
51
|
+
export class DirectoryCreationError extends FileSystemError {
|
|
52
|
+
constructor(dirPath, options) {
|
|
53
|
+
super(`Failed to create directory: ${dirPath}`, 'FILE_004', { ...options, context: { ...options?.context, dirPath } });
|
|
54
|
+
Object.setPrototypeOf(this, DirectoryCreationError.prototype);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Thrown when file write operation fails
|
|
59
|
+
*/
|
|
60
|
+
export class FileWriteError extends FileSystemError {
|
|
61
|
+
constructor(filePath, options) {
|
|
62
|
+
super(`Failed to write to file: ${filePath}`, 'FILE_005', { ...options, context: { ...options?.context, filePath } });
|
|
63
|
+
Object.setPrototypeOf(this, FileWriteError.prototype);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Thrown when file read operation fails
|
|
68
|
+
*/
|
|
69
|
+
export class FileReadError extends FileSystemError {
|
|
70
|
+
constructor(filePath, options) {
|
|
71
|
+
super(`Failed to read file: ${filePath}`, 'FILE_006', { ...options, context: { ...options?.context, filePath } });
|
|
72
|
+
Object.setPrototypeOf(this, FileReadError.prototype);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Thrown when file copy operation fails
|
|
77
|
+
*/
|
|
78
|
+
export class FileCopyError extends FileSystemError {
|
|
79
|
+
constructor(sourcePath, destPath, options) {
|
|
80
|
+
super(`Failed to copy file from ${sourcePath} to ${destPath}`, 'FILE_007', { ...options, context: { ...options?.context, sourcePath, destPath } });
|
|
81
|
+
Object.setPrototypeOf(this, FileCopyError.prototype);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Thrown when file search operation fails
|
|
86
|
+
*/
|
|
87
|
+
export class FileSearchError extends FileSystemError {
|
|
88
|
+
constructor(dirPath, pattern, options) {
|
|
89
|
+
super(`Failed to search for files matching '${pattern}' in: ${dirPath}`, 'FILE_008', { ...options, context: { ...options?.context, dirPath, pattern } });
|
|
90
|
+
Object.setPrototypeOf(this, FileSearchError.prototype);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=file.error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file.error.js","sourceRoot":"","sources":["../../../src/shared/errors/file.error.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Daemon Error System
|
|
3
|
+
*
|
|
4
|
+
* Centralized error handling for the Daemon toolkit.
|
|
5
|
+
* All errors extend DaemonError base class with:
|
|
6
|
+
* - Unique error codes
|
|
7
|
+
* - Cause chaining support
|
|
8
|
+
* - Serialization capabilities
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```ts
|
|
12
|
+
* import {
|
|
13
|
+
* ContainerNotFoundError,
|
|
14
|
+
* UnsupportedFrameworkError,
|
|
15
|
+
* CommandFailedError
|
|
16
|
+
* } from '@pamacea/daemon/errors';
|
|
17
|
+
*
|
|
18
|
+
* throw new ContainerNotFoundError('my-container');
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export { DaemonError, type ErrorContext, type DaemonErrorOptions, } from './base.error.js';
|
|
22
|
+
import { DaemonError as DaemonErrorClass } from './base.error.js';
|
|
23
|
+
type DaemonError = DaemonErrorClass;
|
|
24
|
+
export { DockerErrors, BaseDockerError, ContainerNotFoundError, ImageBuildError, ContainerAlreadyExistsError, ContainerStartError, ContainerStopError, DockerDaemonUnavailableError, ImagePullError, } from './docker.error.js';
|
|
25
|
+
export { DetectionError, UnsupportedFrameworkError, } from './detection.error.js';
|
|
26
|
+
export { CommandExecutionError, CommandNotFoundError, CommandTimeoutError, CommandFailedError, InvalidCommandArgumentsError, CommandCancelledError, } from './command.error.js';
|
|
27
|
+
export { ValidationError, SchemaValidationError, RequiredFieldError, InvalidFormatError, ValueOutOfRangeError, ConfigurationValidationError, type ValidationErrorDetail, } from './validation.error.js';
|
|
28
|
+
export { FileSystemError, FileNotFoundError, FilePermissionError, InvalidJsonError, DirectoryCreationError, FileWriteError, FileReadError, FileCopyError, FileSearchError, } from './file.error.js';
|
|
29
|
+
/**
|
|
30
|
+
* Error code categories
|
|
31
|
+
*/
|
|
32
|
+
export declare enum ErrorCategory {
|
|
33
|
+
DAEMON = "DAEMON",
|
|
34
|
+
DOCKER = "DOCKER",
|
|
35
|
+
DETECTION = "DETECTION",
|
|
36
|
+
COMMAND = "COMMAND",
|
|
37
|
+
VALIDATION = "VALIDATION",
|
|
38
|
+
FILESYSTEM = "FILE"
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Check if an error is a DaemonError
|
|
42
|
+
*/
|
|
43
|
+
export declare function isDaemonError(error: unknown): error is DaemonError;
|
|
44
|
+
/**
|
|
45
|
+
* Check if an error belongs to a specific category
|
|
46
|
+
*/
|
|
47
|
+
export declare function isErrorCategory(error: unknown, category: ErrorCategory): boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Get a safe error message (handles unknown errors)
|
|
50
|
+
*/
|
|
51
|
+
export declare function getErrorMessage(error: unknown): string;
|
|
52
|
+
/**
|
|
53
|
+
* Get error code from any error (returns 'UNKNOWN' if not a DaemonError)
|
|
54
|
+
*/
|
|
55
|
+
export declare function getErrorCode(error: unknown): string;
|
|
56
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/errors/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,EACL,WAAW,EACX,KAAK,YAAY,EACjB,KAAK,kBAAkB,GACxB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,WAAW,IAAI,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAClE,KAAK,WAAW,GAAG,gBAAgB,CAAC;AAGpC,OAAO,EACL,YAAY,EACZ,eAAe,EACf,sBAAsB,EACtB,eAAe,EACf,2BAA2B,EAC3B,mBAAmB,EACnB,kBAAkB,EAClB,4BAA4B,EAC5B,cAAc,GACf,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,cAAc,EACd,yBAAyB,GAC1B,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,4BAA4B,EAC5B,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,4BAA4B,EAC5B,KAAK,qBAAqB,GAC3B,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,cAAc,EACd,aAAa,EACb,aAAa,EACb,eAAe,GAChB,MAAM,iBAAiB,CAAC;AAEzB;;GAEG;AACH,oBAAY,aAAa;IACvB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,UAAU,SAAS;CACpB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,WAAW,CAGlE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,GAAG,OAAO,CAOhF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAStD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAMnD"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Daemon Error System
|
|
3
|
+
*
|
|
4
|
+
* Centralized error handling for the Daemon toolkit.
|
|
5
|
+
* All errors extend DaemonError base class with:
|
|
6
|
+
* - Unique error codes
|
|
7
|
+
* - Cause chaining support
|
|
8
|
+
* - Serialization capabilities
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```ts
|
|
12
|
+
* import {
|
|
13
|
+
* ContainerNotFoundError,
|
|
14
|
+
* UnsupportedFrameworkError,
|
|
15
|
+
* CommandFailedError
|
|
16
|
+
* } from '@pamacea/daemon/errors';
|
|
17
|
+
*
|
|
18
|
+
* throw new ContainerNotFoundError('my-container');
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
// Base error
|
|
22
|
+
export { DaemonError, } from './base.error.js';
|
|
23
|
+
// Docker errors
|
|
24
|
+
export { DockerErrors, BaseDockerError, ContainerNotFoundError, ImageBuildError, ContainerAlreadyExistsError, ContainerStartError, ContainerStopError, DockerDaemonUnavailableError, ImagePullError, } from './docker.error.js';
|
|
25
|
+
// Detection errors
|
|
26
|
+
export { DetectionError, UnsupportedFrameworkError, } from './detection.error.js';
|
|
27
|
+
// Command errors
|
|
28
|
+
export { CommandExecutionError, CommandNotFoundError, CommandTimeoutError, CommandFailedError, InvalidCommandArgumentsError, CommandCancelledError, } from './command.error.js';
|
|
29
|
+
// Validation errors
|
|
30
|
+
export { ValidationError, SchemaValidationError, RequiredFieldError, InvalidFormatError, ValueOutOfRangeError, ConfigurationValidationError, } from './validation.error.js';
|
|
31
|
+
// File system errors
|
|
32
|
+
export { FileSystemError, FileNotFoundError, FilePermissionError, InvalidJsonError, DirectoryCreationError, FileWriteError, FileReadError, FileCopyError, FileSearchError, } from './file.error.js';
|
|
33
|
+
/**
|
|
34
|
+
* Error code categories
|
|
35
|
+
*/
|
|
36
|
+
export var ErrorCategory;
|
|
37
|
+
(function (ErrorCategory) {
|
|
38
|
+
ErrorCategory["DAEMON"] = "DAEMON";
|
|
39
|
+
ErrorCategory["DOCKER"] = "DOCKER";
|
|
40
|
+
ErrorCategory["DETECTION"] = "DETECTION";
|
|
41
|
+
ErrorCategory["COMMAND"] = "COMMAND";
|
|
42
|
+
ErrorCategory["VALIDATION"] = "VALIDATION";
|
|
43
|
+
ErrorCategory["FILESYSTEM"] = "FILE";
|
|
44
|
+
})(ErrorCategory || (ErrorCategory = {}));
|
|
45
|
+
/**
|
|
46
|
+
* Check if an error is a DaemonError
|
|
47
|
+
*/
|
|
48
|
+
export function isDaemonError(error) {
|
|
49
|
+
const err = error;
|
|
50
|
+
return err !== null && typeof err === 'object' && 'code' in err && 'message' in err;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Check if an error belongs to a specific category
|
|
54
|
+
*/
|
|
55
|
+
export function isErrorCategory(error, category) {
|
|
56
|
+
const err = error;
|
|
57
|
+
if (!isDaemonError(error)) {
|
|
58
|
+
return false;
|
|
59
|
+
}
|
|
60
|
+
const code = err.code;
|
|
61
|
+
return typeof code === 'string' && code.startsWith(category);
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Get a safe error message (handles unknown errors)
|
|
65
|
+
*/
|
|
66
|
+
export function getErrorMessage(error) {
|
|
67
|
+
if (typeof error === 'string') {
|
|
68
|
+
return error;
|
|
69
|
+
}
|
|
70
|
+
const err = error;
|
|
71
|
+
if (err !== null && typeof err === 'object' && 'message' in err && typeof err.message === 'string') {
|
|
72
|
+
return err.message;
|
|
73
|
+
}
|
|
74
|
+
return String(error);
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Get error code from any error (returns 'UNKNOWN' if not a DaemonError)
|
|
78
|
+
*/
|
|
79
|
+
export function getErrorCode(error) {
|
|
80
|
+
const err = error;
|
|
81
|
+
if (err !== null && typeof err === 'object' && 'code' in err && typeof err.code === 'string') {
|
|
82
|
+
return err.code;
|
|
83
|
+
}
|
|
84
|
+
return 'UNKNOWN';
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/shared/errors/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,aAAa;AACb,OAAO,EACL,WAAW,GAGZ,MAAM,iBAAiB,CAAC;AAMzB,gBAAgB;AAChB,OAAO,EACL,YAAY,EACZ,eAAe,EACf,sBAAsB,EACtB,eAAe,EACf,2BAA2B,EAC3B,mBAAmB,EACnB,kBAAkB,EAClB,4BAA4B,EAC5B,cAAc,GACf,MAAM,mBAAmB,CAAC;AAE3B,mBAAmB;AACnB,OAAO,EACL,cAAc,EACd,yBAAyB,GAC1B,MAAM,sBAAsB,CAAC;AAE9B,iBAAiB;AACjB,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,4BAA4B,EAC5B,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAE5B,oBAAoB;AACpB,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,4BAA4B,GAE7B,MAAM,uBAAuB,CAAC;AAE/B,qBAAqB;AACrB,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,cAAc,EACd,aAAa,EACb,aAAa,EACb,eAAe,GAChB,MAAM,iBAAiB,CAAC;AAEzB;;GAEG;AACH,MAAM,CAAN,IAAY,aAOX;AAPD,WAAY,aAAa;IACvB,kCAAiB,CAAA;IACjB,kCAAiB,CAAA;IACjB,wCAAuB,CAAA;IACvB,oCAAmB,CAAA;IACnB,0CAAyB,CAAA;IACzB,oCAAmB,CAAA;AACrB,CAAC,EAPW,aAAa,KAAb,aAAa,QAOxB;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,MAAM,GAAG,GAAG,KAAgC,CAAC;IAC7C,OAAO,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,IAAI,GAAG,IAAI,SAAS,IAAI,GAAG,CAAC;AACtF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,KAAc,EAAE,QAAuB;IACrE,MAAM,GAAG,GAAG,KAAgC,CAAC;IAC7C,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAc,CAAC;IAChC,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AAC/D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,GAAG,GAAG,KAAgC,CAAC;IAC7C,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,SAAS,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACnG,OAAO,GAAG,CAAC,OAAO,CAAC;IACrB,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,KAAc;IACzC,MAAM,GAAG,GAAG,KAAgC,CAAC;IAC7C,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7F,OAAO,GAAG,CAAC,IAAI,CAAC;IAClB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validation errors.
|
|
3
|
+
*
|
|
4
|
+
* Error codes:
|
|
5
|
+
* - VALIDATION_001: Generic validation error
|
|
6
|
+
* - VALIDATION_002: Schema validation error
|
|
7
|
+
* - VALIDATION_003: Required field missing
|
|
8
|
+
* - VALIDATION_004: Invalid format
|
|
9
|
+
* - VALIDATION_005: Value out of range
|
|
10
|
+
* - VALIDATION_006: Configuration validation error
|
|
11
|
+
*/
|
|
12
|
+
import { DaemonError, type DaemonErrorOptions } from './base.error.js';
|
|
13
|
+
/**
|
|
14
|
+
* Validation error details
|
|
15
|
+
*/
|
|
16
|
+
export interface ValidationErrorDetail {
|
|
17
|
+
field?: string;
|
|
18
|
+
value?: unknown;
|
|
19
|
+
constraint?: string;
|
|
20
|
+
message: string;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Base class for all validation-related errors
|
|
24
|
+
*/
|
|
25
|
+
export declare class ValidationError extends DaemonError {
|
|
26
|
+
readonly details: ValidationErrorDetail[];
|
|
27
|
+
constructor(message: string, details?: ValidationErrorDetail[], options?: DaemonErrorOptions);
|
|
28
|
+
/**
|
|
29
|
+
* Get all error messages as a flat array
|
|
30
|
+
*/
|
|
31
|
+
getErrorMessages(): string[];
|
|
32
|
+
/**
|
|
33
|
+
* Get errors for a specific field
|
|
34
|
+
*/
|
|
35
|
+
getFieldErrors(field: string): ValidationErrorDetail[];
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Thrown when schema validation fails
|
|
39
|
+
*/
|
|
40
|
+
export declare class SchemaValidationError extends ValidationError {
|
|
41
|
+
constructor(schemaName: string, details: ValidationErrorDetail[], options?: DaemonErrorOptions);
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Thrown when a required field is missing
|
|
45
|
+
*/
|
|
46
|
+
export declare class RequiredFieldError extends ValidationError {
|
|
47
|
+
constructor(field: string, options?: DaemonErrorOptions);
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Thrown when a value has an invalid format
|
|
51
|
+
*/
|
|
52
|
+
export declare class InvalidFormatError extends ValidationError {
|
|
53
|
+
constructor(field: string, expectedFormat: string, actualValue: unknown, options?: DaemonErrorOptions);
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Thrown when a value is out of allowed range
|
|
57
|
+
*/
|
|
58
|
+
export declare class ValueOutOfRangeError extends ValidationError {
|
|
59
|
+
constructor(field: string, min: number, max: number, actualValue: number, options?: DaemonErrorOptions);
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Thrown when configuration validation fails
|
|
63
|
+
*/
|
|
64
|
+
export declare class ConfigurationValidationError extends ValidationError {
|
|
65
|
+
constructor(configPath: string, details: ValidationErrorDetail[], options?: DaemonErrorOptions);
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=validation.error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.error.d.ts","sourceRoot":"","sources":["../../../src/shared/errors/validation.error.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,WAAW,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAEvE;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,WAAW;IAC9C,SAAgB,OAAO,EAAE,qBAAqB,EAAE,CAAC;gBAG/C,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,qBAAqB,EAAO,EACrC,OAAO,CAAC,EAAE,kBAAkB;IAa9B;;OAEG;IACH,gBAAgB,IAAI,MAAM,EAAE;IAI5B;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,qBAAqB,EAAE;CAGvD;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,EAAE,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAQ/F;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,eAAe;gBACzC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAQxD;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,eAAe;gBACzC,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAatG;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAavG;AAED;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,eAAe;gBACnD,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,EAAE,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAQ/F"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validation errors.
|
|
3
|
+
*
|
|
4
|
+
* Error codes:
|
|
5
|
+
* - VALIDATION_001: Generic validation error
|
|
6
|
+
* - VALIDATION_002: Schema validation error
|
|
7
|
+
* - VALIDATION_003: Required field missing
|
|
8
|
+
* - VALIDATION_004: Invalid format
|
|
9
|
+
* - VALIDATION_005: Value out of range
|
|
10
|
+
* - VALIDATION_006: Configuration validation error
|
|
11
|
+
*/
|
|
12
|
+
import { DaemonError } from './base.error.js';
|
|
13
|
+
/**
|
|
14
|
+
* Base class for all validation-related errors
|
|
15
|
+
*/
|
|
16
|
+
export class ValidationError extends DaemonError {
|
|
17
|
+
details;
|
|
18
|
+
constructor(message, details = [], options) {
|
|
19
|
+
super(message, 'VALIDATION_001', {
|
|
20
|
+
...options,
|
|
21
|
+
context: {
|
|
22
|
+
details,
|
|
23
|
+
...options?.context,
|
|
24
|
+
},
|
|
25
|
+
});
|
|
26
|
+
this.name = 'ValidationError';
|
|
27
|
+
this.details = details;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Get all error messages as a flat array
|
|
31
|
+
*/
|
|
32
|
+
getErrorMessages() {
|
|
33
|
+
return this.details.map(d => d.message);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Get errors for a specific field
|
|
37
|
+
*/
|
|
38
|
+
getFieldErrors(field) {
|
|
39
|
+
return this.details.filter(d => d.field === field);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Thrown when schema validation fails
|
|
44
|
+
*/
|
|
45
|
+
export class SchemaValidationError extends ValidationError {
|
|
46
|
+
constructor(schemaName, details, options) {
|
|
47
|
+
super(`Schema validation failed for ${schemaName}`, details, options);
|
|
48
|
+
this.name = 'SchemaValidationError';
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Thrown when a required field is missing
|
|
53
|
+
*/
|
|
54
|
+
export class RequiredFieldError extends ValidationError {
|
|
55
|
+
constructor(field, options) {
|
|
56
|
+
super(`Required field is missing: ${field}`, [{ field, message: `Field '${field}' is required` }], options);
|
|
57
|
+
this.name = 'RequiredFieldError';
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Thrown when a value has an invalid format
|
|
62
|
+
*/
|
|
63
|
+
export class InvalidFormatError extends ValidationError {
|
|
64
|
+
constructor(field, expectedFormat, actualValue, options) {
|
|
65
|
+
super(`Invalid format for field '${field}': expected ${expectedFormat}`, [{
|
|
66
|
+
field,
|
|
67
|
+
value: actualValue,
|
|
68
|
+
constraint: expectedFormat,
|
|
69
|
+
message: `Field '${field}' must be in ${expectedFormat} format`,
|
|
70
|
+
}], options);
|
|
71
|
+
this.name = 'InvalidFormatError';
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Thrown when a value is out of allowed range
|
|
76
|
+
*/
|
|
77
|
+
export class ValueOutOfRangeError extends ValidationError {
|
|
78
|
+
constructor(field, min, max, actualValue, options) {
|
|
79
|
+
super(`Value out of range for '${field}': ${actualValue} (expected: ${min}-${max})`, [{
|
|
80
|
+
field,
|
|
81
|
+
value: actualValue,
|
|
82
|
+
constraint: `${min}-${max}`,
|
|
83
|
+
message: `Field '${field}' must be between ${min} and ${max}`,
|
|
84
|
+
}], options);
|
|
85
|
+
this.name = 'ValueOutOfRangeError';
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Thrown when configuration validation fails
|
|
90
|
+
*/
|
|
91
|
+
export class ConfigurationValidationError extends ValidationError {
|
|
92
|
+
constructor(configPath, details, options) {
|
|
93
|
+
super(`Configuration validation failed for ${configPath}`, details, options);
|
|
94
|
+
this.name = 'ConfigurationValidationError';
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=validation.error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.error.js","sourceRoot":"","sources":["../../../src/shared/errors/validation.error.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,WAAW,EAA2B,MAAM,iBAAiB,CAAC;AAYvE;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,WAAW;IAC9B,OAAO,CAA0B;IAEjD,YACE,OAAe,EACf,UAAmC,EAAE,EACrC,OAA4B;QAE5B,KAAK,CAAC,OAAO,EAAE,gBAAgB,EAAE;YAC/B,GAAG,OAAO;YACV,OAAO,EAAE;gBACP,OAAO;gBACP,GAAG,OAAO,EAAE,OAAO;aACpB;SACF,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;IACrD,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,qBAAsB,SAAQ,eAAe;IACxD,YAAY,UAAkB,EAAE,OAAgC,EAAE,OAA4B;QAC5F,KAAK,CACH,gCAAgC,UAAU,EAAE,EAC5C,OAAO,EACP,OAAO,CACR,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,eAAe;IACrD,YAAY,KAAa,EAAE,OAA4B;QACrD,KAAK,CACH,8BAA8B,KAAK,EAAE,EACrC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,KAAK,eAAe,EAAE,CAAC,EACpD,OAAO,CACR,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,eAAe;IACrD,YAAY,KAAa,EAAE,cAAsB,EAAE,WAAoB,EAAE,OAA4B;QACnG,KAAK,CACH,6BAA6B,KAAK,eAAe,cAAc,EAAE,EACjE,CAAC;gBACC,KAAK;gBACL,KAAK,EAAE,WAAW;gBAClB,UAAU,EAAE,cAAc;gBAC1B,OAAO,EAAE,UAAU,KAAK,gBAAgB,cAAc,SAAS;aAChE,CAAC,EACF,OAAO,CACR,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,oBAAqB,SAAQ,eAAe;IACvD,YAAY,KAAa,EAAE,GAAW,EAAE,GAAW,EAAE,WAAmB,EAAE,OAA4B;QACpG,KAAK,CACH,2BAA2B,KAAK,MAAM,WAAW,eAAe,GAAG,IAAI,GAAG,GAAG,EAC7E,CAAC;gBACC,KAAK;gBACL,KAAK,EAAE,WAAW;gBAClB,UAAU,EAAE,GAAG,GAAG,IAAI,GAAG,EAAE;gBAC3B,OAAO,EAAE,UAAU,KAAK,qBAAqB,GAAG,QAAQ,GAAG,EAAE;aAC9D,CAAC,EACF,OAAO,CACR,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;IACrC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,4BAA6B,SAAQ,eAAe;IAC/D,YAAY,UAAkB,EAAE,OAAgC,EAAE,OAA4B;QAC5F,KAAK,CACH,uCAAuC,UAAU,EAAE,EACnD,OAAO,EACP,OAAO,CACR,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,8BAA8B,CAAC;IAC7C,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/templates/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/shared/templates/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt-builder.d.ts","sourceRoot":"","sources":["../../../src/shared/templates/prompt-builder.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt-builder.js","sourceRoot":"","sources":["../../../src/shared/templates/prompt-builder.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"template-engine.d.ts","sourceRoot":"","sources":["../../../src/shared/templates/template-engine.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"template-engine.js","sourceRoot":"","sources":["../../../src/shared/templates/template-engine.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-executor.test.d.ts","sourceRoot":"","sources":["../../../../src/shared/utils/__tests__/command-executor.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tests for CommandExecutor utility
|
|
3
|
+
*/
|
|
4
|
+
import { describe, it, expect, vi, beforeEach } from 'vitest';
|
|
5
|
+
import { CommandExecutor } from '../command-executor.js';
|
|
6
|
+
// Mock the child_process exec
|
|
7
|
+
vi.mock('node:child_process', () => ({
|
|
8
|
+
exec: vi.fn(),
|
|
9
|
+
}));
|
|
10
|
+
describe('CommandExecutor', () => {
|
|
11
|
+
let executor;
|
|
12
|
+
beforeEach(() => {
|
|
13
|
+
executor = new CommandExecutor();
|
|
14
|
+
vi.clearAllMocks();
|
|
15
|
+
});
|
|
16
|
+
it('should create executor with default options', () => {
|
|
17
|
+
expect(executor).toBeInstanceOf(CommandExecutor);
|
|
18
|
+
});
|
|
19
|
+
it('should create executor with custom options', () => {
|
|
20
|
+
const customExecutor = new CommandExecutor({
|
|
21
|
+
timeout: 10000,
|
|
22
|
+
retries: 3,
|
|
23
|
+
silent: true,
|
|
24
|
+
});
|
|
25
|
+
expect(customExecutor).toBeInstanceOf(CommandExecutor);
|
|
26
|
+
});
|
|
27
|
+
// Note: Full execution tests require mocking execAsync
|
|
28
|
+
// These are basic structure tests
|
|
29
|
+
describe('execute', () => {
|
|
30
|
+
it('should have execute method', () => {
|
|
31
|
+
expect(typeof executor.execute).toBe('function');
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
describe('executeParallel', () => {
|
|
35
|
+
it('should have executeParallel method', () => {
|
|
36
|
+
expect(typeof executor.executeParallel).toBe('function');
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
describe('executeSequence', () => {
|
|
40
|
+
it('should have executeParallel method', () => {
|
|
41
|
+
expect(typeof executor.executeParallel).toBe('function');
|
|
42
|
+
});
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
//# sourceMappingURL=command-executor.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-executor.test.js","sourceRoot":"","sources":["../../../../src/shared/utils/__tests__/command-executor.test.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,8BAA8B;AAC9B,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,GAAG,EAAE,CAAC,CAAC;IACnC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;CACd,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,IAAI,QAAyB,CAAC;IAE9B,UAAU,CAAC,GAAG,EAAE;QACd,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;QACjC,EAAE,CAAC,aAAa,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,cAAc,GAAG,IAAI,eAAe,CAAC;YACzC,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,CAAC;YACV,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;QAEH,MAAM,CAAC,cAAc,CAAC,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,uDAAuD;IACvD,kCAAkC;IAElC,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;QACvB,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;YACpC,MAAM,CAAC,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC/B,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;YAC5C,MAAM,CAAC,OAAO,QAAQ,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC/B,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;YAC5C,MAAM,CAAC,OAAO,QAAQ,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-helper.test.d.ts","sourceRoot":"","sources":["../../../../src/shared/utils/__tests__/file-helper.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tests for FileSystemHelper utility
|
|
3
|
+
*/
|
|
4
|
+
import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
|
|
5
|
+
import { FileSystemHelper } from '../file-helper.js';
|
|
6
|
+
// Mock fs promises
|
|
7
|
+
vi.mock('node:fs/promises', () => ({
|
|
8
|
+
readFile: vi.fn(),
|
|
9
|
+
writeFile: vi.fn(),
|
|
10
|
+
readdir: vi.fn(),
|
|
11
|
+
mkdir: vi.fn(),
|
|
12
|
+
stat: vi.fn(),
|
|
13
|
+
access: vi.fn(),
|
|
14
|
+
copyFile: vi.fn(),
|
|
15
|
+
}));
|
|
16
|
+
describe('FileSystemHelper', () => {
|
|
17
|
+
let fileHelper;
|
|
18
|
+
beforeEach(() => {
|
|
19
|
+
fileHelper = new FileSystemHelper();
|
|
20
|
+
vi.clearAllMocks();
|
|
21
|
+
});
|
|
22
|
+
afterEach(() => {
|
|
23
|
+
vi.restoreAllMocks();
|
|
24
|
+
});
|
|
25
|
+
describe('constructor', () => {
|
|
26
|
+
it('should create file helper', () => {
|
|
27
|
+
expect(fileHelper).toBeInstanceOf(FileSystemHelper);
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
describe('readFile', () => {
|
|
31
|
+
it('should have readFile method', () => {
|
|
32
|
+
expect(typeof fileHelper.readFile).toBe('function');
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
describe('writeFile', () => {
|
|
36
|
+
it('should have writeFile method', () => {
|
|
37
|
+
expect(typeof fileHelper.writeFile).toBe('function');
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
describe('readJson', () => {
|
|
41
|
+
it('should have readJson method', () => {
|
|
42
|
+
expect(typeof fileHelper.readJson).toBe('function');
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
describe('writeJson', () => {
|
|
46
|
+
it('should have writeJson method', () => {
|
|
47
|
+
expect(typeof fileHelper.writeJson).toBe('function');
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
describe('ensureDir', () => {
|
|
51
|
+
it('should have ensureDir method', () => {
|
|
52
|
+
expect(typeof fileHelper.ensureDir).toBe('function');
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
describe('findFiles', () => {
|
|
56
|
+
it('should have findFiles method', () => {
|
|
57
|
+
expect(typeof fileHelper.findFiles).toBe('function');
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
describe('copyFile', () => {
|
|
61
|
+
it('should have copyFile method', () => {
|
|
62
|
+
expect(typeof fileHelper.copyFile).toBe('function');
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
describe('exists', () => {
|
|
66
|
+
it('should have exists method', () => {
|
|
67
|
+
expect(typeof fileHelper.exists).toBe('function');
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
//# sourceMappingURL=file-helper.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-helper.test.js","sourceRoot":"","sources":["../../../../src/shared/utils/__tests__/file-helper.test.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,mBAAmB;AACnB,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC,CAAC;IACjC,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE;IACjB,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;IAClB,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;IAChB,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;IACd,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;IACb,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE;IACf,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE;CAClB,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,IAAI,UAA4B,CAAC;IAEjC,UAAU,CAAC,GAAG,EAAE;QACd,UAAU,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACpC,EAAE,CAAC,aAAa,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,EAAE,CAAC,eAAe,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACnC,MAAM,CAAC,UAAU,CAAC,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;QACxB,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACrC,MAAM,CAAC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;QACzB,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACtC,MAAM,CAAC,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;QACxB,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACrC,MAAM,CAAC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;QACzB,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACtC,MAAM,CAAC,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;QACzB,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACtC,MAAM,CAAC,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;QACzB,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACtC,MAAM,CAAC,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;QACxB,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACrC,MAAM,CAAC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;QACtB,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACnC,MAAM,CAAC,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.test.d.ts","sourceRoot":"","sources":["../../../../src/shared/utils/__tests__/logger.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|