@grunnverk/core 1.0.0

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 (47) hide show
  1. package/LICENSE +190 -0
  2. package/README.md +61 -0
  3. package/dist/index.d.ts +2 -0
  4. package/dist/index.js +3227 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/src/constants.d.ts +235 -0
  7. package/dist/src/constants.d.ts.map +1 -0
  8. package/dist/src/content/diff.d.ts +25 -0
  9. package/dist/src/content/diff.d.ts.map +1 -0
  10. package/dist/src/content/files.d.ts +10 -0
  11. package/dist/src/content/files.d.ts.map +1 -0
  12. package/dist/src/content/log.d.ts +11 -0
  13. package/dist/src/content/log.d.ts.map +1 -0
  14. package/dist/src/errors.d.ts +82 -0
  15. package/dist/src/errors.d.ts.map +1 -0
  16. package/dist/src/index.d.ts +20 -0
  17. package/dist/src/index.d.ts.map +1 -0
  18. package/dist/src/logging.d.ts +18 -0
  19. package/dist/src/logging.d.ts.map +1 -0
  20. package/dist/src/transactionLog.d.ts +53 -0
  21. package/dist/src/transactionLog.d.ts.map +1 -0
  22. package/dist/src/types.d.ts +1445 -0
  23. package/dist/src/types.d.ts.map +1 -0
  24. package/dist/src/util/aiAdapter.d.ts +7 -0
  25. package/dist/src/util/aiAdapter.d.ts.map +1 -0
  26. package/dist/src/util/errorHandler.d.ts +34 -0
  27. package/dist/src/util/errorHandler.d.ts.map +1 -0
  28. package/dist/src/util/fileLock.d.ts +63 -0
  29. package/dist/src/util/fileLock.d.ts.map +1 -0
  30. package/dist/src/util/general.d.ts +83 -0
  31. package/dist/src/util/general.d.ts.map +1 -0
  32. package/dist/src/util/gitMutex.d.ts +66 -0
  33. package/dist/src/util/gitMutex.d.ts.map +1 -0
  34. package/dist/src/util/interactive.d.ts +36 -0
  35. package/dist/src/util/interactive.d.ts.map +1 -0
  36. package/dist/src/util/loggerAdapter.d.ts +6 -0
  37. package/dist/src/util/loggerAdapter.d.ts.map +1 -0
  38. package/dist/src/util/progressTracker.d.ts +54 -0
  39. package/dist/src/util/progressTracker.d.ts.map +1 -0
  40. package/dist/src/util/stopContext.d.ts +27 -0
  41. package/dist/src/util/stopContext.d.ts.map +1 -0
  42. package/dist/src/util/storageAdapter.d.ts +8 -0
  43. package/dist/src/util/storageAdapter.d.ts.map +1 -0
  44. package/dist/src/util/validation.d.ts +21 -0
  45. package/dist/src/util/validation.d.ts.map +1 -0
  46. package/guide/index.md +64 -0
  47. package/package.json +76 -0
@@ -0,0 +1,235 @@
1
+ import { MergeMethod } from './types';
2
+ export declare const VERSION = "__VERSION__ (__GIT_BRANCH__/__GIT_COMMIT__ __GIT_TAGS__ __GIT_COMMIT_DATE__) __SYSTEM_INFO__";
3
+ export declare const PROGRAM_NAME = "kodrdriv";
4
+ export declare const DEFAULT_CHARACTER_ENCODING = "utf-8";
5
+ export declare const DEFAULT_BINARY_TO_TEXT_ENCODING = "base64";
6
+ export declare const DEFAULT_DIFF = true;
7
+ export declare const DEFAULT_LOG = false;
8
+ export declare const DEFAULT_OVERRIDES = false;
9
+ export declare const DATE_FORMAT_MONTH_DAY = "MM-DD";
10
+ export declare const DATE_FORMAT_YEAR = "YYYY";
11
+ export declare const DATE_FORMAT_YEAR_MONTH = "YYYY-MM";
12
+ export declare const DATE_FORMAT_YEAR_MONTH_DAY = "YYYY-MM-DD";
13
+ export declare const DATE_FORMAT_YEAR_MONTH_DAY_SLASH = "YYYY/MM/DD";
14
+ export declare const DATE_FORMAT_YEAR_MONTH_DAY_HOURS_MINUTES = "YYYY-MM-DD-HHmm";
15
+ export declare const DATE_FORMAT_YEAR_MONTH_DAY_HOURS_MINUTES_SECONDS = "YYYY-MM-DD-HHmmss";
16
+ export declare const DATE_FORMAT_YEAR_MONTH_DAY_HOURS_MINUTES_SECONDS_MILLISECONDS = "YYYY-MM-DD-HHmmss.SSS";
17
+ export declare const DATE_FORMAT_SHORT_TIMESTAMP = "YYMMdd-HHmm";
18
+ export declare const DATE_FORMAT_MONTH = "MM";
19
+ export declare const DATE_FORMAT_DAY = "DD";
20
+ export declare const DATE_FORMAT_HOURS = "HHmm";
21
+ export declare const DATE_FORMAT_MINUTES = "mm";
22
+ export declare const DATE_FORMAT_SECONDS = "ss";
23
+ export declare const DATE_FORMAT_MILLISECONDS = "SSS";
24
+ export declare const DEFAULT_VERBOSE = false;
25
+ export declare const DEFAULT_DRY_RUN = false;
26
+ export declare const DEFAULT_DEBUG = false;
27
+ export declare const DEFAULT_MODEL = "gpt-4o-mini";
28
+ export declare const DEFAULT_MODEL_STRONG = "gpt-4o";
29
+ export declare const DEFAULT_OPENAI_REASONING = "low";
30
+ export declare const DEFAULT_OPENAI_MAX_OUTPUT_TOKENS = 10000;
31
+ export declare const DEFAULT_OUTPUT_DIRECTORY = "output/kodrdriv";
32
+ export declare const DEFAULT_GIT_COMMAND_MAX_BUFFER: number;
33
+ export declare const DEFAULT_CONTEXT_DIRECTORIES: string[];
34
+ export declare const DEFAULT_CONFIG_DIR = ".kodrdriv";
35
+ export declare const DEFAULT_PREFERENCES_DIRECTORY: string;
36
+ export declare const DEFAULT_FROM_COMMIT_ALIAS = "main";
37
+ export declare const DEFAULT_TO_COMMIT_ALIAS = "HEAD";
38
+ export declare const DEFAULT_ADD = false;
39
+ export declare const DEFAULT_CACHED = false;
40
+ export declare const DEFAULT_SENDIT_MODE = false;
41
+ export declare const DEFAULT_INTERACTIVE_MODE = false;
42
+ export declare const DEFAULT_AMEND_MODE = false;
43
+ export declare const DEFAULT_MESSAGE_LIMIT = 3;
44
+ export declare const DEFAULT_MAX_DIFF_BYTES = 20480;
45
+ export declare const DEFAULT_MERGE_METHOD: MergeMethod;
46
+ export declare const DEFAULT_EXCLUDED_PATTERNS: string[];
47
+ export declare const COMMAND_COMMIT = "commit";
48
+ export declare const COMMAND_AUDIO_COMMIT = "audio-commit";
49
+ export declare const COMMAND_SELECT_AUDIO = "select-audio";
50
+ export declare const COMMAND_RELEASE = "release";
51
+ export declare const COMMAND_REVIEW = "review";
52
+ export declare const COMMAND_AUDIO_REVIEW = "audio-review";
53
+ export declare const COMMAND_PUBLISH = "publish";
54
+ export declare const COMMAND_TREE = "tree";
55
+ export declare const COMMAND_LINK = "link";
56
+ export declare const COMMAND_UNLINK = "unlink";
57
+ export declare const COMMAND_CLEAN = "clean";
58
+ export declare const COMMAND_PRECOMMIT = "precommit";
59
+ export declare const COMMAND_DEVELOPMENT = "development";
60
+ export declare const COMMAND_VERSIONS = "versions";
61
+ export declare const COMMAND_UPDATES = "updates";
62
+ export declare const COMMAND_CHECK_CONFIG = "check-config";
63
+ export declare const COMMAND_INIT_CONFIG = "init-config";
64
+ export declare const ALLOWED_COMMANDS: string[];
65
+ export declare const DEFAULT_COMMAND = "commit";
66
+ export declare const DEFAULT_INSTRUCTIONS_DIR = "instructions";
67
+ export declare const DEFAULT_PERSONA_DIR = "personas";
68
+ export declare const DEFAULT_INSTRUCTIONS_COMMIT_FILE = "instructions/commit.md";
69
+ export declare const DEFAULT_INSTRUCTIONS_RELEASE_FILE = "instructions/release.md";
70
+ export declare const DEFAULT_INSTRUCTIONS_REVIEW_FILE = "instructions/review.md";
71
+ export declare const DEFAULT_PERSONA_RELEASER_FILE = "personas/releaser.md";
72
+ export declare const DEFAULT_PERSONA_YOU_FILE = "personas/you.md";
73
+ export declare const DEFAULT_INSTRUCTIONS_MAP: {
74
+ commit: string;
75
+ "audio-commit": string;
76
+ release: string;
77
+ review: string;
78
+ "audio-review": string;
79
+ };
80
+ export declare const DEFAULT_PERSONA_MAP: {
81
+ commit: string;
82
+ "audio-commit": string;
83
+ release: string;
84
+ review: string;
85
+ "audio-review": string;
86
+ };
87
+ export declare const DEFAULT_PATH_SEPARATOR = "/";
88
+ export declare const DEFAULT_IGNORE_PATTERNS: string[];
89
+ export declare const DEFAULT_DIRECTORY_PREFIX = ".kodrdriv";
90
+ export declare const INTERNAL_DEFAULT_OUTPUT_FILE = "output.txt";
91
+ export declare const INTERNAL_DATETIME_FORMAT = "YYYY-MM-DD_HH-mm-ss";
92
+ export declare const KODRDRIV_DEFAULTS: {
93
+ dryRun: boolean;
94
+ verbose: boolean;
95
+ debug: boolean;
96
+ overrides: boolean;
97
+ model: string;
98
+ openaiReasoning: "low" | "medium" | "high";
99
+ openaiMaxOutputTokens: number;
100
+ contextDirectories: string[];
101
+ commandName: string;
102
+ configDirectory: string;
103
+ outputDirectory: string;
104
+ preferencesDirectory: string;
105
+ commit: {
106
+ add: boolean;
107
+ cached: boolean;
108
+ sendit: boolean;
109
+ interactive: boolean;
110
+ amend: boolean;
111
+ messageLimit: number;
112
+ skipFileCheck: boolean;
113
+ maxDiffBytes: number;
114
+ contextFiles: undefined;
115
+ openaiReasoning: "low" | "medium" | "high";
116
+ openaiMaxOutputTokens: number;
117
+ };
118
+ release: {
119
+ from: string;
120
+ to: string;
121
+ messageLimit: number;
122
+ interactive: boolean;
123
+ maxDiffBytes: number;
124
+ contextFiles: undefined;
125
+ noMilestones: boolean;
126
+ openaiReasoning: "low" | "medium" | "high";
127
+ openaiMaxOutputTokens: number;
128
+ };
129
+ audioCommit: {
130
+ maxRecordingTime: number;
131
+ audioDevice: undefined;
132
+ openaiReasoning: "low" | "medium" | "high";
133
+ openaiMaxOutputTokens: number;
134
+ };
135
+ review: {
136
+ includeCommitHistory: boolean;
137
+ includeRecentDiffs: boolean;
138
+ includeReleaseNotes: boolean;
139
+ includeGithubIssues: boolean;
140
+ commitHistoryLimit: number;
141
+ diffHistoryLimit: number;
142
+ releaseNotesLimit: number;
143
+ githubIssuesLimit: number;
144
+ sendit: boolean;
145
+ openaiReasoning: "low" | "medium" | "high";
146
+ openaiMaxOutputTokens: number;
147
+ };
148
+ audioReview: {
149
+ includeCommitHistory: boolean;
150
+ includeRecentDiffs: boolean;
151
+ includeReleaseNotes: boolean;
152
+ includeGithubIssues: boolean;
153
+ commitHistoryLimit: number;
154
+ diffHistoryLimit: number;
155
+ releaseNotesLimit: number;
156
+ githubIssuesLimit: number;
157
+ sendit: boolean;
158
+ maxRecordingTime: number;
159
+ audioDevice: undefined;
160
+ directory: undefined;
161
+ openaiReasoning: "low" | "medium" | "high";
162
+ openaiMaxOutputTokens: number;
163
+ };
164
+ publish: {
165
+ mergeMethod: "squash";
166
+ from: string;
167
+ targetVersion: string;
168
+ interactive: boolean;
169
+ requiredEnvVars: string[];
170
+ linkWorkspacePackages: boolean;
171
+ unlinkWorkspacePackages: boolean;
172
+ sendit: boolean;
173
+ targetBranch: string;
174
+ noMilestones: boolean;
175
+ checksTimeout: number;
176
+ releaseWorkflowsTimeout: number;
177
+ };
178
+ link: {
179
+ scopeRoots: {};
180
+ dryRun: boolean;
181
+ packageArgument: undefined;
182
+ externals: never[];
183
+ };
184
+ unlink: {
185
+ scopeRoots: {};
186
+ workspaceFile: undefined;
187
+ dryRun: boolean;
188
+ cleanNodeModules: boolean;
189
+ packageArgument: undefined;
190
+ externals: never[];
191
+ };
192
+ tree: {
193
+ directories: undefined;
194
+ exclude: undefined;
195
+ startFrom: undefined;
196
+ stopAt: undefined;
197
+ cmd: undefined;
198
+ builtInCommand: undefined;
199
+ continue: boolean;
200
+ packageArgument: undefined;
201
+ cleanNodeModules: boolean;
202
+ externals: never[];
203
+ };
204
+ development: {
205
+ targetVersion: string;
206
+ noMilestones: boolean;
207
+ };
208
+ versions: {
209
+ subcommand: undefined;
210
+ directories: undefined;
211
+ };
212
+ updates: {
213
+ scope: undefined;
214
+ directories: undefined;
215
+ };
216
+ excludedPatterns: string[];
217
+ branches: {
218
+ working: {
219
+ targetBranch: string;
220
+ developmentBranch: boolean;
221
+ version: {
222
+ type: "prerelease";
223
+ increment: boolean;
224
+ incrementLevel: "patch";
225
+ tag: string;
226
+ };
227
+ };
228
+ main: {
229
+ version: {
230
+ type: "release";
231
+ };
232
+ };
233
+ };
234
+ };
235
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ #!/usr/bin/env node
2
+ export interface Instance {
3
+ get(): Promise<string>;
4
+ }
5
+ export declare const getReviewExcludedPatterns: (basePatterns: string[]) => string[];
6
+ export declare const hasCriticalExcludedChanges: () => Promise<{
7
+ hasChanges: boolean;
8
+ files: string[];
9
+ }>;
10
+ export declare const getMinimalExcludedPatterns: (basePatterns: string[]) => string[];
11
+ export declare const truncateLargeDiff: (diffContent: string, maxLength?: number) => string;
12
+ export declare const truncateDiffByFiles: (diffContent: string, maxDiffBytes: number) => string;
13
+ export declare const create: (options: {
14
+ from?: string;
15
+ to?: string;
16
+ cached?: boolean;
17
+ excludedPatterns: string[];
18
+ maxDiffBytes?: number;
19
+ }) => Promise<Instance>;
20
+ export declare const hasStagedChanges: () => Promise<boolean>;
21
+ export declare const getRecentDiffsForReview: (options: {
22
+ limit?: number;
23
+ baseExcludedPatterns: string[];
24
+ }) => Promise<string>;
25
+ //# sourceMappingURL=diff.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../src/content/diff.ts"],"names":[],"mappings":";AAMA,MAAM,WAAW,QAAQ;IACrB,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CAC1B;AAMD,eAAO,MAAM,yBAAyB,GAAI,cAAc,MAAM,EAAE,KAAG,MAAM,EAgGxE,CAAC;AAGF,eAAO,MAAM,0BAA0B,QAAa,OAAO,CAAC;IAAE,UAAU,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,CA+BnG,CAAC;AAGF,eAAO,MAAM,0BAA0B,GAAI,cAAc,MAAM,EAAE,KAAG,MAAM,EAgBzE,CAAC;AAGF,eAAO,MAAM,iBAAiB,GAAI,aAAa,MAAM,EAAE,YAAW,MAAa,KAAG,MAyBjF,CAAC;AAGF,eAAO,MAAM,mBAAmB,GAAI,aAAa,MAAM,EAAE,cAAc,MAAM,KAAG,MA4E/E,CAAC;AAEF,eAAO,MAAM,MAAM,GAAU,SAAS;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,KAAG,OAAO,CAAC,QAAQ,CAwD3J,CAAA;AAED,eAAO,MAAM,gBAAgB,QAAa,OAAO,CAAC,OAAO,CAkBxD,CAAA;AAGD,eAAO,MAAM,uBAAuB,GAAU,SAAS;IACnD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oBAAoB,EAAE,MAAM,EAAE,CAAC;CAClC,KAAG,OAAO,CAAC,MAAM,CA2CjB,CAAC"}
@@ -0,0 +1,10 @@
1
+ #!/usr/bin/env node
2
+ export interface Instance {
3
+ get(): Promise<string>;
4
+ }
5
+ export declare const create: (options: {
6
+ excludedPatterns: string[];
7
+ maxTotalBytes?: number;
8
+ workingDirectory?: string;
9
+ }) => Promise<Instance>;
10
+ //# sourceMappingURL=files.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../../src/content/files.ts"],"names":[],"mappings":";AAOA,MAAM,WAAW,QAAQ;IACrB,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CAC1B;AA6ED,eAAO,MAAM,MAAM,GAAU,SAAS;IAClC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC5B,KAAG,OAAO,CAAC,QAAQ,CAsHnB,CAAC"}
@@ -0,0 +1,11 @@
1
+ #!/usr/bin/env node
2
+ export interface Instance {
3
+ get(): Promise<string>;
4
+ }
5
+ export declare const create: (options: {
6
+ from?: string;
7
+ to?: string;
8
+ limit?: number;
9
+ currentBranchOnly?: boolean;
10
+ }) => Promise<Instance>;
11
+ //# sourceMappingURL=log.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log.d.ts","sourceRoot":"","sources":["../../../src/content/log.ts"],"names":[],"mappings":";AAMA,MAAM,WAAW,QAAQ;IACrB,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CAC1B;AAED,eAAO,MAAM,MAAM,GAAU,SAAS;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAAE,KAAG,OAAO,CAAC,QAAQ,CAwEnI,CAAA"}
@@ -0,0 +1,82 @@
1
+ /**
2
+ * Structured error types for kodrdriv operations
3
+ *
4
+ * These errors provide detailed context for MCP integrations and AI agents
5
+ * to understand failures and provide actionable recovery steps.
6
+ */
7
+ export interface KodrdrivErrorContext {
8
+ operation: string;
9
+ package?: string;
10
+ phase?: string;
11
+ files?: string[];
12
+ command?: string;
13
+ exitCode?: number;
14
+ stdout?: string;
15
+ stderr?: string;
16
+ stack?: string;
17
+ }
18
+ /**
19
+ * Base error class for all kodrdriv operations
20
+ */
21
+ export declare class KodrdrivError extends Error {
22
+ context: KodrdrivErrorContext;
23
+ recoverable: boolean;
24
+ constructor(message: string, context: KodrdrivErrorContext, recoverable?: boolean);
25
+ }
26
+ /**
27
+ * Error specific to publish operations
28
+ */
29
+ export declare class PublishError extends KodrdrivError {
30
+ constructor(message: string, context: Omit<KodrdrivErrorContext, 'operation'>);
31
+ }
32
+ /**
33
+ * Error specific to tree operations (monorepo orchestration)
34
+ */
35
+ export declare class TreeExecutionError extends KodrdrivError {
36
+ failedPackages: string[];
37
+ completedPackages: string[];
38
+ checkpointPath?: string | undefined;
39
+ constructor(message: string, context: Omit<KodrdrivErrorContext, 'operation'>, failedPackages?: string[], completedPackages?: string[], checkpointPath?: string | undefined);
40
+ }
41
+ /**
42
+ * Error for validation failures (pre-flight checks)
43
+ */
44
+ export declare class ValidationError extends KodrdrivError {
45
+ validationErrors: Array<{
46
+ check: string;
47
+ message: string;
48
+ files?: string[];
49
+ }>;
50
+ validationWarnings: Array<{
51
+ check: string;
52
+ message: string;
53
+ }>;
54
+ constructor(message: string, context: Omit<KodrdrivErrorContext, 'operation'>, validationErrors?: Array<{
55
+ check: string;
56
+ message: string;
57
+ files?: string[];
58
+ }>, validationWarnings?: Array<{
59
+ check: string;
60
+ message: string;
61
+ }>);
62
+ }
63
+ /**
64
+ * Error for workspace structure issues
65
+ */
66
+ export declare class WorkspaceError extends KodrdrivError {
67
+ expectedStructure?: string | undefined;
68
+ constructor(message: string, context: Omit<KodrdrivErrorContext, 'operation'>, expectedStructure?: string | undefined);
69
+ }
70
+ /**
71
+ * Format error for MCP tool responses
72
+ */
73
+ export declare function formatErrorForMCP(error: Error): {
74
+ message: string;
75
+ context: Record<string, any>;
76
+ recovery?: string[];
77
+ };
78
+ /**
79
+ * Extract error details from command execution errors
80
+ */
81
+ export declare function extractCommandErrorDetails(error: any): Partial<KodrdrivErrorContext>;
82
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,oBAAoB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,KAAK;IAGzB,OAAO,EAAE,oBAAoB;IAC7B,WAAW,EAAE,OAAO;gBAF3B,OAAO,EAAE,MAAM,EACR,OAAO,EAAE,oBAAoB,EAC7B,WAAW,GAAE,OAAc;CASzC;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,aAAa;gBAC/B,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,WAAW,CAAC;CAIhF;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,aAAa;IAItC,cAAc,EAAE,MAAM,EAAE;IACxB,iBAAiB,EAAE,MAAM,EAAE;IAC3B,cAAc,CAAC,EAAE,MAAM;gBAJ9B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,WAAW,CAAC,EACzC,cAAc,GAAE,MAAM,EAAO,EAC7B,iBAAiB,GAAE,MAAM,EAAO,EAChC,cAAc,CAAC,EAAE,MAAM,YAAA;CAKrC;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,aAAa;IAInC,gBAAgB,EAAE,KAAK,CAAC;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;KACpB,CAAC;IACK,kBAAkB,EAAE,KAAK,CAAC;QAC7B,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;KACnB,CAAC;gBAVF,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,WAAW,CAAC,EACzC,gBAAgB,GAAE,KAAK,CAAC;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;KACpB,CAAM,EACA,kBAAkB,GAAE,KAAK,CAAC;QAC7B,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;KACnB,CAAM;CAKd;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,aAAa;IAIlC,iBAAiB,CAAC,EAAE,MAAM;gBAFjC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,WAAW,CAAC,EACzC,iBAAiB,CAAC,EAAE,MAAM,YAAA;CAKxC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB,CA4HA;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA2BpF"}
@@ -0,0 +1,20 @@
1
+ export * as Diff from './content/diff';
2
+ export * as Log from './content/log';
3
+ export * as Files from './content/files';
4
+ export * from './util/general';
5
+ export * from './util/interactive';
6
+ export * from './util/stopContext';
7
+ export * from './util/gitMutex';
8
+ export * from './util/aiAdapter';
9
+ export * from './util/storageAdapter';
10
+ export * from './util/loggerAdapter';
11
+ export * from './util/validation';
12
+ export * from './util/fileLock';
13
+ export * from './util/errorHandler';
14
+ export * from './util/progressTracker';
15
+ export * from './types';
16
+ export * from './constants';
17
+ export * from './logging';
18
+ export * from './errors';
19
+ export * from './transactionLog';
20
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC;AACvC,OAAO,KAAK,GAAG,MAAM,eAAe,CAAC;AACrC,OAAO,KAAK,KAAK,MAAM,iBAAiB,CAAC;AAGzC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { default as winston } from 'winston';
2
+ export interface LogContext {
3
+ [key: string]: any;
4
+ }
5
+ export declare const setLogLevel: (level: string) => void;
6
+ export declare const getLogger: () => winston.Logger;
7
+ /**
8
+ * Get a logger that automatically formats messages for dry-run mode
9
+ */
10
+ export declare const getDryRunLogger: (isDryRun: boolean) => winston.Logger | {
11
+ info: (message: string, ...args: any[]) => winston.Logger;
12
+ warn: (message: string, ...args: any[]) => winston.Logger;
13
+ error: (message: string, ...args: any[]) => winston.Logger;
14
+ debug: (message: string, ...args: any[]) => winston.Logger;
15
+ verbose: (message: string, ...args: any[]) => winston.Logger;
16
+ silly: (message: string, ...args: any[]) => winston.Logger;
17
+ };
18
+ //# sourceMappingURL=logging.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging.d.ts","sourceRoot":"","sources":["../../src/logging.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAO9B,MAAM,WAAW,UAAU;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AA8MD,eAAO,MAAM,WAAW,GAAI,OAAO,MAAM,SAexC,CAAC;AAEF,eAAO,MAAM,SAAS,sBAAe,CAAC;AAEtC;;GAEG;AACH,eAAO,MAAM,eAAe,GAAI,UAAU,OAAO;oBAOzB,MAAM,WAAW,GAAG,EAAE;oBACtB,MAAM,WAAW,GAAG,EAAE;qBACrB,MAAM,WAAW,GAAG,EAAE;qBACtB,MAAM,WAAW,GAAG,EAAE;uBACpB,MAAM,WAAW,GAAG,EAAE;qBACxB,MAAM,WAAW,GAAG,EAAE;CAE9C,CAAC"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Transaction log for tracking and rolling back operations
3
+ *
4
+ * Provides a way to track operations and roll them back if something fails,
5
+ * leaving the repository in a clean state.
6
+ */
7
+ export interface TransactionOperation {
8
+ type: string;
9
+ timestamp: Date;
10
+ details: any;
11
+ rollback: () => Promise<void>;
12
+ }
13
+ export declare class TransactionLog {
14
+ private operations;
15
+ private logger;
16
+ /**
17
+ * Record an operation with its rollback function
18
+ */
19
+ record(type: string, details: any, rollback: () => Promise<void>): Promise<void>;
20
+ /**
21
+ * Roll back all operations in reverse order
22
+ */
23
+ rollbackAll(): Promise<void>;
24
+ /**
25
+ * Clear the transaction log without rolling back
26
+ */
27
+ clear(): void;
28
+ /**
29
+ * Get the number of recorded operations
30
+ */
31
+ get count(): number;
32
+ /**
33
+ * Get all operations
34
+ */
35
+ getOperations(): Readonly<TransactionOperation[]>;
36
+ /**
37
+ * Check if there are any recorded operations
38
+ */
39
+ hasOperations(): boolean;
40
+ }
41
+ /**
42
+ * Create a no-op rollback function for operations that can't be rolled back
43
+ */
44
+ export declare function noopRollback(): Promise<void>;
45
+ /**
46
+ * Helper to create a file restore rollback
47
+ */
48
+ export declare function createFileRestoreRollback(filePath: string, originalContent: string): () => Promise<void>;
49
+ /**
50
+ * Helper to create a git command rollback
51
+ */
52
+ export declare function createGitRollback(command: string): () => Promise<void>;
53
+ //# sourceMappingURL=transactionLog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transactionLog.d.ts","sourceRoot":"","sources":["../../src/transactionLog.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,WAAW,oBAAoB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,EAAE,GAAG,CAAC;IACb,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACjC;AAED,qBAAa,cAAc;IACvB,OAAO,CAAC,UAAU,CAA8B;IAChD,OAAO,CAAC,MAAM,CAAe;IAE7B;;OAEG;IACG,MAAM,CACR,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAC9B,OAAO,CAAC,IAAI,CAAC;IAWhB;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IA6BlC;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,IAAI,KAAK,IAAI,MAAM,CAElB;IAED;;OAEG;IACH,aAAa,IAAI,QAAQ,CAAC,oBAAoB,EAAE,CAAC;IAIjD;;OAEG;IACH,aAAa,IAAI,OAAO;CAG3B;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAE5C;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACrC,QAAQ,EAAE,MAAM,EAChB,eAAe,EAAE,MAAM,GACxB,MAAM,OAAO,CAAC,IAAI,CAAC,CAMrB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAKtE"}