codecane 1.0.206 → 1.0.235
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/code-map/languages.d.ts +0 -1
- package/dist/code-map/languages.js +23 -224
- package/dist/code-map/languages.js.map +1 -1
- package/dist/code-map/parse.js +1 -0
- package/dist/code-map/parse.js.map +1 -1
- package/dist/code-map/tsconfig.tsbuildinfo +1 -1
- package/dist/common/actions.d.ts +369 -826
- package/dist/common/actions.js +25 -31
- package/dist/common/actions.js.map +1 -1
- package/dist/common/api-keys/constants.d.ts +8 -0
- package/dist/common/api-keys/constants.js +26 -0
- package/dist/common/api-keys/constants.js.map +1 -0
- package/dist/common/api-keys/crypto.d.ts +24 -0
- package/dist/common/api-keys/crypto.js +186 -0
- package/dist/common/api-keys/crypto.js.map +1 -0
- package/dist/common/bigquery/client.d.ts +15 -0
- package/dist/common/bigquery/client.js +246 -0
- package/dist/common/bigquery/client.js.map +1 -0
- package/dist/common/bigquery/schema.d.ts +55 -0
- package/dist/common/bigquery/schema.js +24 -0
- package/dist/common/bigquery/schema.js.map +1 -0
- package/dist/common/billing/auto-topup.d.ts +8 -0
- package/dist/common/billing/auto-topup.js +192 -0
- package/dist/common/billing/auto-topup.js.map +1 -0
- package/dist/common/billing/balance-calculator.d.ts +57 -0
- package/dist/common/billing/balance-calculator.js +218 -0
- package/dist/common/billing/balance-calculator.js.map +1 -0
- package/dist/common/billing/conversion.d.ts +9 -0
- package/dist/common/billing/conversion.js +20 -0
- package/dist/common/billing/conversion.js.map +1 -0
- package/dist/common/billing/credit-conversion.d.ts +24 -0
- package/dist/common/billing/credit-conversion.js +48 -0
- package/dist/common/billing/credit-conversion.js.map +1 -0
- package/dist/common/billing/grant-credits.d.ts +43 -0
- package/dist/common/billing/grant-credits.js +266 -0
- package/dist/common/billing/grant-credits.js.map +1 -0
- package/dist/common/billing/plans.d.ts +13 -0
- package/dist/common/billing/plans.js +44 -0
- package/dist/common/billing/plans.js.map +1 -0
- package/dist/common/browser-actions.d.ts +1 -1
- package/dist/common/browser-actions.js +4 -4
- package/dist/common/browser-actions.js.map +1 -1
- package/dist/common/constants/grant-priorities.d.ts +2 -0
- package/dist/common/constants/grant-priorities.js +10 -0
- package/dist/common/constants/grant-priorities.js.map +1 -0
- package/dist/common/constants/tools.d.ts +2 -0
- package/dist/common/constants/tools.js +24 -3
- package/dist/common/constants/tools.js.map +1 -1
- package/dist/common/constants.d.ts +93 -5
- package/dist/common/constants.js +111 -10
- package/dist/common/constants.js.map +1 -1
- package/dist/common/db/env.mjs +5 -5
- package/dist/common/db/env.mjs.map +1 -1
- package/dist/common/db/schema.d.ts +413 -83
- package/dist/common/db/schema.js +70 -9
- package/dist/common/db/schema.js.map +1 -1
- package/dist/common/db/transaction.d.ts +12 -0
- package/dist/common/db/transaction.js +36 -0
- package/dist/common/db/transaction.js.map +1 -0
- package/dist/common/env.mjs +11 -8
- package/dist/common/env.mjs.map +1 -1
- package/dist/common/json-config/__tests__/__snapshots__/stringify-schema.test.js.snap +66 -0
- package/dist/common/json-config/__tests__/stringify-schema.test.js +66 -0
- package/dist/common/json-config/__tests__/stringify-schema.test.js.map +1 -0
- package/dist/common/json-config/constants.d.ts +82 -0
- package/dist/common/json-config/constants.js +48 -0
- package/dist/common/json-config/constants.js.map +1 -0
- package/dist/common/json-config/parser.d.ts +7 -0
- package/dist/common/json-config/parser.js +51 -0
- package/dist/common/json-config/parser.js.map +1 -0
- package/dist/common/json-config/stringify-schema.d.ts +10 -0
- package/dist/common/json-config/stringify-schema.js +102 -0
- package/dist/common/json-config/stringify-schema.js.map +1 -0
- package/dist/common/project-file-tree.d.ts +2 -1
- package/dist/common/project-file-tree.js +59 -27
- package/dist/common/project-file-tree.js.map +1 -1
- package/dist/common/types/agent-state.d.ts +25 -22
- package/dist/common/types/agent-state.js +2 -0
- package/dist/common/types/agent-state.js.map +1 -1
- package/dist/common/types/grant.d.ts +2 -0
- package/dist/common/types/grant.js +10 -0
- package/dist/common/types/grant.js.map +1 -0
- package/dist/common/types/usage.d.ts +37 -18
- package/dist/common/types/usage.js +9 -6
- package/dist/common/types/usage.js.map +1 -1
- package/dist/common/util/__tests__/saxy.test.js +262 -0
- package/dist/common/util/__tests__/saxy.test.js.map +1 -0
- package/dist/common/util/__tests__/string.test.js +2 -3
- package/dist/common/util/__tests__/string.test.js.map +1 -1
- package/dist/common/util/changes.d.ts +1 -0
- package/dist/common/util/changes.js +8 -2
- package/dist/common/util/changes.js.map +1 -1
- package/dist/common/util/dates.d.ts +10 -1
- package/dist/common/util/dates.js +11 -2
- package/dist/common/util/dates.js.map +1 -1
- package/dist/common/util/file.d.ts +10 -9
- package/dist/common/util/file.js +12 -4
- package/dist/common/util/file.js.map +1 -1
- package/dist/common/util/logger.d.ts +8 -0
- package/dist/common/util/logger.js +52 -0
- package/dist/common/util/logger.js.map +1 -0
- package/dist/common/util/lru-cache.d.ts +23 -2
- package/dist/common/util/lru-cache.js +44 -18
- package/dist/common/util/lru-cache.js.map +1 -1
- package/dist/common/util/messages.d.ts +3 -0
- package/dist/common/util/messages.js +50 -3
- package/dist/common/util/messages.js.map +1 -1
- package/dist/common/util/min-heap.js +2 -2
- package/dist/common/util/min-heap.js.map +1 -1
- package/dist/common/util/promise.d.ts +1 -1
- package/dist/common/util/promise.js +2 -2
- package/dist/common/util/promise.js.map +1 -1
- package/dist/common/util/saxy.d.ts +8 -0
- package/dist/common/util/saxy.js +35 -12
- package/dist/common/util/saxy.js.map +1 -1
- package/dist/common/util/string.d.ts +7 -1
- package/dist/common/util/string.js +20 -4
- package/dist/common/util/string.js.map +1 -1
- package/dist/common/util/stripe.d.ts +1 -0
- package/dist/common/util/stripe.js +10 -7
- package/dist/common/util/stripe.js.map +1 -1
- package/dist/common/util/sync-failure.d.ts +1 -0
- package/dist/common/util/sync-failure.js +57 -0
- package/dist/common/util/sync-failure.js.map +1 -0
- package/dist/common/websockets/websocket-client.d.ts +2 -1
- package/dist/common/websockets/websocket-client.js +34 -6
- package/dist/common/websockets/websocket-client.js.map +1 -1
- package/dist/common/websockets/websocket-schema.d.ts +1440 -2642
- package/dist/utils/__tests__/response-example-4-files.txt +621 -0
- package/package.json +20 -35
- package/dist/browser-runner.d.ts +0 -35
- package/dist/browser-runner.js +0 -674
- package/dist/browser-runner.js.map +0 -1
- package/dist/chat-storage.d.ts +0 -2
- package/dist/chat-storage.js +0 -93
- package/dist/chat-storage.js.map +0 -1
- package/dist/checkpoints/checkpoint-manager.d.ts +0 -73
- package/dist/checkpoints/checkpoint-manager.js +0 -193
- package/dist/checkpoints/checkpoint-manager.js.map +0 -1
- package/dist/checkpoints/file-manager.d.ts +0 -72
- package/dist/checkpoints/file-manager.js +0 -303
- package/dist/checkpoints/file-manager.js.map +0 -1
- package/dist/cli.d.ts +0 -48
- package/dist/cli.js +0 -604
- package/dist/cli.js.map +0 -1
- package/dist/client.d.ts +0 -229
- package/dist/client.js +0 -550
- package/dist/client.js.map +0 -1
- package/dist/common/billing/quota-manager.d.ts +0 -29
- package/dist/common/billing/quota-manager.js +0 -213
- package/dist/common/billing/quota-manager.js.map +0 -1
- package/dist/common/util/tools.d.ts +0 -2
- package/dist/common/util/tools.js +0 -13
- package/dist/common/util/tools.js.map +0 -1
- package/dist/config.d.ts +0 -3
- package/dist/config.js +0 -9
- package/dist/config.js.map +0 -1
- package/dist/create-template-project.d.ts +0 -1
- package/dist/create-template-project.js +0 -107
- package/dist/create-template-project.js.map +0 -1
- package/dist/credentials.d.ts +0 -4
- package/dist/credentials.js +0 -37
- package/dist/credentials.js.map +0 -1
- package/dist/fingerprint.d.ts +0 -1
- package/dist/fingerprint.js +0 -43
- package/dist/fingerprint.js.map +0 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.js +0 -108
- package/dist/index.js.map +0 -1
- package/dist/menu.d.ts +0 -3
- package/dist/menu.js +0 -117
- package/dist/menu.js.map +0 -1
- package/dist/project-files.d.ts +0 -110
- package/dist/project-files.js +0 -490
- package/dist/project-files.js.map +0 -1
- package/dist/tool-handlers.d.ts +0 -27
- package/dist/tool-handlers.js +0 -217
- package/dist/tool-handlers.js.map +0 -1
- package/dist/types.d.ts +0 -7
- package/dist/types.js +0 -3
- package/dist/types.js.map +0 -1
- package/dist/update-codebuff.d.ts +0 -1
- package/dist/update-codebuff.js +0 -156
- package/dist/update-codebuff.js.map +0 -1
- package/dist/utils/__tests__/xml-stream-parser.test.js +0 -221
- package/dist/utils/__tests__/xml-stream-parser.test.js.map +0 -1
- package/dist/utils/detect-shell.d.ts +0 -1
- package/dist/utils/detect-shell.js +0 -60
- package/dist/utils/detect-shell.js.map +0 -1
- package/dist/utils/logger.d.ts +0 -2
- package/dist/utils/logger.js +0 -33
- package/dist/utils/logger.js.map +0 -1
- package/dist/utils/spinner.d.ts +0 -11
- package/dist/utils/spinner.js +0 -87
- package/dist/utils/spinner.js.map +0 -1
- package/dist/utils/system-info.d.ts +0 -8
- package/dist/utils/system-info.js +0 -22
- package/dist/utils/system-info.js.map +0 -1
- package/dist/utils/terminal.d.ts +0 -27
- package/dist/utils/terminal.js +0 -335
- package/dist/utils/terminal.js.map +0 -1
- package/dist/utils/tool-renderers.d.ts +0 -16
- package/dist/utils/tool-renderers.js +0 -117
- package/dist/utils/tool-renderers.js.map +0 -1
- package/dist/utils/xml-stream-parser.d.ts +0 -9
- package/dist/utils/xml-stream-parser.js +0 -128
- package/dist/utils/xml-stream-parser.js.map +0 -1
- package/dist/web-scraper.d.ts +0 -3
- package/dist/web-scraper.js +0 -57
- package/dist/web-scraper.js.map +0 -1
- package/dist/workers/checkpoint-worker.js +0 -47
- package/dist/workers/checkpoint-worker.js.map +0 -1
- package/dist/workers/project-context.d.ts +0 -1
- package/dist/workers/project-context.js +0 -17
- package/dist/workers/project-context.js.map +0 -1
- /package/dist/{utils/__tests__/xml-stream-parser.test.d.ts → common/json-config/__tests__/stringify-schema.test.d.ts} +0 -0
- /package/dist/{workers/checkpoint-worker.d.ts → common/util/__tests__/saxy.test.d.ts} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"browser-runner.js","sourceRoot":"","sources":["../src/browser-runner.ts"],"names":[],"mappings":"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"}
|
package/dist/chat-storage.d.ts
DELETED
package/dist/chat-storage.js
DELETED
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.setMessages = setMessages;
|
|
27
|
-
const path = __importStar(require("path"));
|
|
28
|
-
const fs = __importStar(require("fs"));
|
|
29
|
-
const project_files_1 = require("./project-files");
|
|
30
|
-
const string_1 = require("./common/util/string");
|
|
31
|
-
const ts_pattern_1 = require("ts-pattern");
|
|
32
|
-
function setMessages(messages) {
|
|
33
|
-
// Clean up any screenshots and logs in previous messages
|
|
34
|
-
// Skip the last message as it may not have been processed by the backend yet
|
|
35
|
-
const lastIndex = messages.length - 1;
|
|
36
|
-
const cleanedMessages = messages.map((msg, index) => {
|
|
37
|
-
if (index === lastIndex) {
|
|
38
|
-
return msg; // Preserve the most recent message in its entirety
|
|
39
|
-
}
|
|
40
|
-
// Helper function to clean up message content
|
|
41
|
-
const cleanContent = (content) => {
|
|
42
|
-
// Keep only tool logs
|
|
43
|
-
content = (0, string_1.transformJsonInString)(content, 'logs', (logs) => logs.filter((log) => log.source === 'tool'), '(LOGS_REMOVED)');
|
|
44
|
-
// Remove metrics
|
|
45
|
-
content = (0, string_1.transformJsonInString)(content, 'metrics', () => '(METRICS_REMOVED)', '(METRICS_REMOVED)');
|
|
46
|
-
return content;
|
|
47
|
-
};
|
|
48
|
-
// Clean up message content
|
|
49
|
-
if (!msg.content)
|
|
50
|
-
return msg;
|
|
51
|
-
return (0, ts_pattern_1.match)(msg)
|
|
52
|
-
.with({ content: ts_pattern_1.P.array() }, (message) => ({
|
|
53
|
-
...message,
|
|
54
|
-
content: message.content.reduce((acc, contentObj) => [
|
|
55
|
-
...acc,
|
|
56
|
-
...(0, ts_pattern_1.match)(contentObj)
|
|
57
|
-
.with({ type: 'tool_result', content: ts_pattern_1.P.string }, (obj) => [
|
|
58
|
-
{
|
|
59
|
-
...obj,
|
|
60
|
-
content: cleanContent(obj.content),
|
|
61
|
-
},
|
|
62
|
-
])
|
|
63
|
-
.with({ type: 'text', text: ts_pattern_1.P.string }, (obj) => [
|
|
64
|
-
{
|
|
65
|
-
...obj,
|
|
66
|
-
text: cleanContent(obj.text),
|
|
67
|
-
},
|
|
68
|
-
])
|
|
69
|
-
.otherwise((obj) => [obj]),
|
|
70
|
-
], []),
|
|
71
|
-
}))
|
|
72
|
-
.with({ content: ts_pattern_1.P.string }, (message) => ({
|
|
73
|
-
...message,
|
|
74
|
-
content: cleanContent(message.content),
|
|
75
|
-
}))
|
|
76
|
-
.otherwise((message) => message);
|
|
77
|
-
});
|
|
78
|
-
// Save messages to chat directory
|
|
79
|
-
try {
|
|
80
|
-
const chatDir = (0, project_files_1.getCurrentChatDir)();
|
|
81
|
-
const messagesPath = path.join(chatDir, 'messages.json');
|
|
82
|
-
const messagesData = {
|
|
83
|
-
id: project_files_1.currentChatId,
|
|
84
|
-
messages: cleanedMessages,
|
|
85
|
-
updatedAt: new Date().toISOString(),
|
|
86
|
-
};
|
|
87
|
-
fs.writeFileSync(messagesPath, JSON.stringify(messagesData, null, 2));
|
|
88
|
-
}
|
|
89
|
-
catch (error) {
|
|
90
|
-
console.error('Failed to save messages to file:', error);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
//# sourceMappingURL=chat-storage.js.map
|
package/dist/chat-storage.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chat-storage.js","sourceRoot":"","sources":["../src/chat-storage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { AgentState } from '../common/types/agent-state';
|
|
2
|
-
/**
|
|
3
|
-
* Interface representing a checkpoint of agent state
|
|
4
|
-
*/
|
|
5
|
-
export interface Checkpoint {
|
|
6
|
-
agentStateString: string;
|
|
7
|
-
/** Promise resolving to the git commit hash for this checkpoint */
|
|
8
|
-
fileStateIdPromise: Promise<string>;
|
|
9
|
-
/** Number of messages in the agent's history at checkpoint time */
|
|
10
|
-
historyLength: number;
|
|
11
|
-
id: number;
|
|
12
|
-
timestamp: number;
|
|
13
|
-
/** User input that triggered this checkpoint */
|
|
14
|
-
userInput: string;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Manages checkpoints of agent state and file state using git operations in a worker thread.
|
|
18
|
-
* Each checkpoint contains both the agent's conversation state and a git commit
|
|
19
|
-
* representing the state of all tracked files at that point.
|
|
20
|
-
*/
|
|
21
|
-
export declare class CheckpointManager {
|
|
22
|
-
checkpoints: Array<Checkpoint>;
|
|
23
|
-
private bareRepoPath;
|
|
24
|
-
disabledReason: string | null;
|
|
25
|
-
/** Worker thread for git operations */
|
|
26
|
-
private worker;
|
|
27
|
-
/**
|
|
28
|
-
* Initialize or return the existing worker thread
|
|
29
|
-
* @returns The worker thread instance
|
|
30
|
-
*/
|
|
31
|
-
private initWorker;
|
|
32
|
-
/**
|
|
33
|
-
* Execute an operation in the worker thread with timeout handling
|
|
34
|
-
* @param message - The message describing the operation to perform
|
|
35
|
-
* @returns A promise that resolves with the operation result
|
|
36
|
-
* @throws Error if the operation fails or times out
|
|
37
|
-
*/
|
|
38
|
-
private runWorkerOperation;
|
|
39
|
-
/**
|
|
40
|
-
* Get the path to the bare git repository used for storing file states
|
|
41
|
-
* @returns The bare repo path
|
|
42
|
-
*/
|
|
43
|
-
private getBareRepoPath;
|
|
44
|
-
/**
|
|
45
|
-
* Add a new checkpoint of the current agent and file state
|
|
46
|
-
* @param agentState - The current agent state to checkpoint
|
|
47
|
-
* @param userInput - The user input that triggered this checkpoint
|
|
48
|
-
* @returns The created checkpoint, or null if checkpointing is disabled
|
|
49
|
-
*/
|
|
50
|
-
addCheckpoint(agentState: AgentState, userInput: string): Promise<Checkpoint | null>;
|
|
51
|
-
/**
|
|
52
|
-
* Get the most recent checkpoint
|
|
53
|
-
* @returns The most recent checkpoint or null if none exist
|
|
54
|
-
*/
|
|
55
|
-
getLatestCheckpoint(): Checkpoint | null;
|
|
56
|
-
/**
|
|
57
|
-
* Restore the file state from a specific checkpoint
|
|
58
|
-
* @param id - The ID of the checkpoint to restore
|
|
59
|
-
* @returns True if restoration succeeded, false if checkpoint not found
|
|
60
|
-
*/
|
|
61
|
-
restoreCheckointFileState(id: number): Promise<boolean>;
|
|
62
|
-
/**
|
|
63
|
-
* Clear all checkpoints
|
|
64
|
-
*/
|
|
65
|
-
clearCheckpoints(): void;
|
|
66
|
-
/**
|
|
67
|
-
* Get a formatted string representation of all checkpoints
|
|
68
|
-
* @param detailed Whether to include detailed information about each checkpoint
|
|
69
|
-
* @returns A formatted string representation of all checkpoints
|
|
70
|
-
*/
|
|
71
|
-
getCheckpointsAsString(detailed?: boolean): string;
|
|
72
|
-
}
|
|
73
|
-
export declare const checkpointManager: CheckpointManager;
|
|
@@ -1,193 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.checkpointManager = exports.CheckpointManager = void 0;
|
|
4
|
-
const path_1 = require("path");
|
|
5
|
-
const picocolors_1 = require("picocolors");
|
|
6
|
-
const worker_threads_1 = require("worker_threads");
|
|
7
|
-
const project_file_tree_1 = require("../common/project-file-tree");
|
|
8
|
-
const file_manager_1 = require("./file-manager");
|
|
9
|
-
const project_files_1 = require("../project-files");
|
|
10
|
-
/**
|
|
11
|
-
* Manages checkpoints of agent state and file state using git operations in a worker thread.
|
|
12
|
-
* Each checkpoint contains both the agent's conversation state and a git commit
|
|
13
|
-
* representing the state of all tracked files at that point.
|
|
14
|
-
*/
|
|
15
|
-
class CheckpointManager {
|
|
16
|
-
checkpoints = [];
|
|
17
|
-
bareRepoPath = null;
|
|
18
|
-
disabledReason = null;
|
|
19
|
-
/** Worker thread for git operations */
|
|
20
|
-
worker = null;
|
|
21
|
-
/**
|
|
22
|
-
* Initialize or return the existing worker thread
|
|
23
|
-
* @returns The worker thread instance
|
|
24
|
-
*/
|
|
25
|
-
initWorker() {
|
|
26
|
-
if (!this.worker) {
|
|
27
|
-
// NOTE: Uses the built worker-script-project-context.js within dist.
|
|
28
|
-
// So you need to run `bun run build` before running locally.
|
|
29
|
-
const workerPath = __filename.endsWith('.ts')
|
|
30
|
-
? (0, path_1.join)(__dirname, '../../dist', 'workers/checkpoint-worker.js')
|
|
31
|
-
: (0, path_1.join)(__dirname, '../workers/checkpoint-worker.js');
|
|
32
|
-
this.worker = new worker_threads_1.Worker(workerPath);
|
|
33
|
-
}
|
|
34
|
-
return this.worker;
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Execute an operation in the worker thread with timeout handling
|
|
38
|
-
* @param message - The message describing the operation to perform
|
|
39
|
-
* @returns A promise that resolves with the operation result
|
|
40
|
-
* @throws Error if the operation fails or times out
|
|
41
|
-
*/
|
|
42
|
-
async runWorkerOperation(message) {
|
|
43
|
-
const worker = this.initWorker();
|
|
44
|
-
return new Promise((resolve, reject) => {
|
|
45
|
-
const timeoutMs = 30000; // 30 seconds timeout
|
|
46
|
-
const handler = (response) => {
|
|
47
|
-
if (response.success) {
|
|
48
|
-
resolve(response.result);
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
reject(new Error(response.error));
|
|
52
|
-
}
|
|
53
|
-
worker.off('message', handler);
|
|
54
|
-
};
|
|
55
|
-
worker.on('message', handler);
|
|
56
|
-
worker.postMessage(message);
|
|
57
|
-
// Add timeout
|
|
58
|
-
setTimeout(() => {
|
|
59
|
-
worker.off('message', handler);
|
|
60
|
-
reject(new Error('Worker operation timed out'));
|
|
61
|
-
}, timeoutMs);
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* Get the path to the bare git repository used for storing file states
|
|
66
|
-
* @returns The bare repo path
|
|
67
|
-
*/
|
|
68
|
-
getBareRepoPath() {
|
|
69
|
-
if (!this.bareRepoPath) {
|
|
70
|
-
this.bareRepoPath = (0, file_manager_1.getBareRepoPath)((0, project_files_1.getProjectRoot)());
|
|
71
|
-
}
|
|
72
|
-
return this.bareRepoPath;
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Add a new checkpoint of the current agent and file state
|
|
76
|
-
* @param agentState - The current agent state to checkpoint
|
|
77
|
-
* @param userInput - The user input that triggered this checkpoint
|
|
78
|
-
* @returns The created checkpoint, or null if checkpointing is disabled
|
|
79
|
-
*/
|
|
80
|
-
async addCheckpoint(agentState, userInput) {
|
|
81
|
-
if (this.disabledReason !== null) {
|
|
82
|
-
return null;
|
|
83
|
-
}
|
|
84
|
-
const id = this.checkpoints.length + 1;
|
|
85
|
-
const projectDir = (0, project_files_1.getProjectRoot)();
|
|
86
|
-
const bareRepoPath = this.getBareRepoPath();
|
|
87
|
-
const relativeFilepaths = (0, project_file_tree_1.getAllFilePaths)(agentState.fileContext.fileTree);
|
|
88
|
-
if (relativeFilepaths.length >= project_file_tree_1.DEFAULT_MAX_FILES) {
|
|
89
|
-
this.disabledReason = 'Project too large';
|
|
90
|
-
return null;
|
|
91
|
-
}
|
|
92
|
-
const needToStage = await (0, file_manager_1.hasUnsavedChanges)({
|
|
93
|
-
projectDir,
|
|
94
|
-
bareRepoPath,
|
|
95
|
-
relativeFilepaths,
|
|
96
|
-
});
|
|
97
|
-
if (!needToStage && this.checkpoints.length > 0) {
|
|
98
|
-
return null;
|
|
99
|
-
}
|
|
100
|
-
const fileStateIdPromise = needToStage
|
|
101
|
-
? this.runWorkerOperation({
|
|
102
|
-
type: 'store',
|
|
103
|
-
projectDir,
|
|
104
|
-
bareRepoPath,
|
|
105
|
-
message: `Checkpoint ${id}`,
|
|
106
|
-
relativeFilepaths,
|
|
107
|
-
})
|
|
108
|
-
: (0, file_manager_1.getLatestCommit)({ bareRepoPath });
|
|
109
|
-
const checkpoint = {
|
|
110
|
-
agentStateString: JSON.stringify(agentState),
|
|
111
|
-
fileStateIdPromise,
|
|
112
|
-
historyLength: agentState.messageHistory.length,
|
|
113
|
-
id,
|
|
114
|
-
timestamp: Date.now(),
|
|
115
|
-
userInput,
|
|
116
|
-
};
|
|
117
|
-
this.checkpoints.push(checkpoint);
|
|
118
|
-
return checkpoint;
|
|
119
|
-
}
|
|
120
|
-
/**
|
|
121
|
-
* Get the most recent checkpoint
|
|
122
|
-
* @returns The most recent checkpoint or null if none exist
|
|
123
|
-
*/
|
|
124
|
-
getLatestCheckpoint() {
|
|
125
|
-
if (this.disabledReason !== null) {
|
|
126
|
-
return null;
|
|
127
|
-
}
|
|
128
|
-
return this.checkpoints.length === 0
|
|
129
|
-
? null
|
|
130
|
-
: this.checkpoints[this.checkpoints.length - 1];
|
|
131
|
-
}
|
|
132
|
-
/**
|
|
133
|
-
* Restore the file state from a specific checkpoint
|
|
134
|
-
* @param id - The ID of the checkpoint to restore
|
|
135
|
-
* @returns True if restoration succeeded, false if checkpoint not found
|
|
136
|
-
*/
|
|
137
|
-
async restoreCheckointFileState(id) {
|
|
138
|
-
const checkpoint = this.checkpoints[id - 1];
|
|
139
|
-
if (!checkpoint) {
|
|
140
|
-
return false;
|
|
141
|
-
}
|
|
142
|
-
const relativeFilepaths = (0, project_file_tree_1.getAllFilePaths)(JSON.parse(checkpoint.agentStateString).fileContext
|
|
143
|
-
.fileTree);
|
|
144
|
-
await this.runWorkerOperation({
|
|
145
|
-
type: 'restore',
|
|
146
|
-
projectDir: (0, project_files_1.getProjectRoot)(),
|
|
147
|
-
bareRepoPath: this.getBareRepoPath(),
|
|
148
|
-
commit: await checkpoint.fileStateIdPromise,
|
|
149
|
-
relativeFilepaths,
|
|
150
|
-
});
|
|
151
|
-
return true;
|
|
152
|
-
}
|
|
153
|
-
/**
|
|
154
|
-
* Clear all checkpoints
|
|
155
|
-
*/
|
|
156
|
-
clearCheckpoints() {
|
|
157
|
-
this.checkpoints = [];
|
|
158
|
-
}
|
|
159
|
-
/**
|
|
160
|
-
* Get a formatted string representation of all checkpoints
|
|
161
|
-
* @param detailed Whether to include detailed information about each checkpoint
|
|
162
|
-
* @returns A formatted string representation of all checkpoints
|
|
163
|
-
*/
|
|
164
|
-
getCheckpointsAsString(detailed = false) {
|
|
165
|
-
if (this.disabledReason !== null) {
|
|
166
|
-
return (0, picocolors_1.red)(`Checkpoints not enabled: ${this.disabledReason}`);
|
|
167
|
-
}
|
|
168
|
-
if (this.checkpoints.length === 0) {
|
|
169
|
-
return (0, picocolors_1.yellow)('No checkpoints available.');
|
|
170
|
-
}
|
|
171
|
-
const lines = [(0, picocolors_1.bold)((0, picocolors_1.underline)('Agent State Checkpoints:')), ''];
|
|
172
|
-
this.checkpoints.forEach((checkpoint) => {
|
|
173
|
-
const date = new Date(checkpoint.timestamp);
|
|
174
|
-
const formattedDate = date.toLocaleString();
|
|
175
|
-
const userInputOneLine = checkpoint.userInput.replaceAll('\n', ' ');
|
|
176
|
-
const userInput = userInputOneLine.length > 50
|
|
177
|
-
? userInputOneLine.substring(0, 47) + '...'
|
|
178
|
-
: userInputOneLine;
|
|
179
|
-
lines.push(`${(0, picocolors_1.cyan)((0, picocolors_1.bold)(`#${checkpoint.id}`))} ${(0, picocolors_1.gray)(`[${formattedDate}]`)}:`);
|
|
180
|
-
lines.push(` ${(0, picocolors_1.blue)('Input')}: ${userInput}`);
|
|
181
|
-
if (detailed) {
|
|
182
|
-
const messageCount = checkpoint.historyLength;
|
|
183
|
-
lines.push(` ${(0, picocolors_1.blue)('Messages')}: ${messageCount}`);
|
|
184
|
-
}
|
|
185
|
-
lines.push(''); // Empty line between checkpoints
|
|
186
|
-
});
|
|
187
|
-
return lines.join('\n');
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
exports.CheckpointManager = CheckpointManager;
|
|
191
|
-
// Export a singleton instance for use throughout the application
|
|
192
|
-
exports.checkpointManager = new CheckpointManager();
|
|
193
|
-
//# sourceMappingURL=checkpoint-manager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"checkpoint-manager.js","sourceRoot":"","sources":["../../src/checkpoints/checkpoint-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import fs from 'fs';
|
|
2
|
-
/**
|
|
3
|
-
* Generates a unique path for storing the bare git repository based on the project directory.
|
|
4
|
-
* Uses SHA-256 hashing to create a unique identifier.
|
|
5
|
-
* @param dir - The project directory path to hash
|
|
6
|
-
* @returns The full path where the bare repo should be stored
|
|
7
|
-
*/
|
|
8
|
-
export declare function getBareRepoPath(dir: string): string;
|
|
9
|
-
/**
|
|
10
|
-
* Checks if there are any uncommitted changes in the working directory.
|
|
11
|
-
* First attempts to use native git commands, falling back to isomorphic-git if unavailable.
|
|
12
|
-
* @param projectDir - The working tree directory path
|
|
13
|
-
* @param bareRepoPath - The bare git repository path
|
|
14
|
-
* @param relativeFilepaths - Array of file paths relative to projectDir to check
|
|
15
|
-
* @returns Promise resolving to true if there are uncommitted changes, false otherwise
|
|
16
|
-
*/
|
|
17
|
-
export declare function hasUnsavedChanges({ projectDir, bareRepoPath, relativeFilepaths, }: {
|
|
18
|
-
projectDir: string;
|
|
19
|
-
bareRepoPath: string;
|
|
20
|
-
relativeFilepaths: Array<string>;
|
|
21
|
-
}): Promise<boolean>;
|
|
22
|
-
/**
|
|
23
|
-
* Gets the hash of the latest commit in the repository.
|
|
24
|
-
* First attempts to use native git commands, falling back to isomorphic-git if unavailable.
|
|
25
|
-
* @param bareRepoPath - The bare git repository path
|
|
26
|
-
* @returns Promise resolving to the commit hash
|
|
27
|
-
*/
|
|
28
|
-
export declare function getLatestCommit({ bareRepoPath, }: {
|
|
29
|
-
bareRepoPath: string;
|
|
30
|
-
}): Promise<string>;
|
|
31
|
-
/**
|
|
32
|
-
* Initializes a bare git repository for tracking file changes.
|
|
33
|
-
* Creates the repository if it doesn't exist, otherwise uses the existing one.
|
|
34
|
-
* Makes an initial commit of the current file state.
|
|
35
|
-
* @param projectDir - The working tree directory path
|
|
36
|
-
* @param relativeFilepaths - Array of file paths relative to projectDir to track
|
|
37
|
-
*/
|
|
38
|
-
export declare function initializeCheckpointFileManager({ projectDir, relativeFilepaths, }: {
|
|
39
|
-
projectDir: string;
|
|
40
|
-
relativeFilepaths: Array<string>;
|
|
41
|
-
}): Promise<void>;
|
|
42
|
-
/**
|
|
43
|
-
* Creates a new commit with the current state of all tracked files.
|
|
44
|
-
* Stages all changes and creates a commit with the specified message.
|
|
45
|
-
* @param projectDir - The working tree directory path
|
|
46
|
-
* @param bareRepoPath - The bare git repository path
|
|
47
|
-
* @param message - The commit message
|
|
48
|
-
* @param relativeFilepaths - Array of file paths relative to projectDir to commit
|
|
49
|
-
* @returns Promise resolving to the new commit's hash
|
|
50
|
-
*/
|
|
51
|
-
export declare function storeFileState({ projectDir, bareRepoPath, message, relativeFilepaths: relativeFilepaths, }: {
|
|
52
|
-
projectDir: string;
|
|
53
|
-
bareRepoPath: string;
|
|
54
|
-
message: string;
|
|
55
|
-
relativeFilepaths: Array<string>;
|
|
56
|
-
}): Promise<string>;
|
|
57
|
-
/**
|
|
58
|
-
* Restores the working directory and index to match the specified commit.
|
|
59
|
-
* Equivalent to `git reset --hard`
|
|
60
|
-
* First attempts to use native git commands, falling back to isomorphic-git if unavailable.
|
|
61
|
-
* @param projectDir - The working tree directory path
|
|
62
|
-
* @param bareRepoPath - The bare git repository path
|
|
63
|
-
* @param commit - The commit hash to restore to
|
|
64
|
-
* @param relativeFilepaths - Array of file paths relative to projectDir to restore
|
|
65
|
-
*/
|
|
66
|
-
export declare function restoreFileState({ projectDir, bareRepoPath, commit, relativeFilepaths, }: {
|
|
67
|
-
projectDir: string;
|
|
68
|
-
bareRepoPath: string;
|
|
69
|
-
commit: string;
|
|
70
|
-
relativeFilepaths: Array<string>;
|
|
71
|
-
}): Promise<void>;
|
|
72
|
-
export { fs };
|