repoburg 1.3.105 → 1.3.106
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/backend/.repoburg/hooks/eslint-hook.ts +22 -10
- package/backend/.repoburg/hooks/example-hook.ts +10 -11
- package/backend/dist/src/main.js +6 -0
- package/backend/dist/src/main.js.map +1 -1
- package/backend/dist/tsconfig.build.tsbuildinfo +1 -1
- package/backend/package.json +4 -1
- package/daemon/dist/index.js +0 -0
- package/package.json +1 -1
- package/backend/.env +0 -23
- package/daemon/dist/api/system.js +0 -25
- package/daemon/dist/daemon.blob +0 -0
- package/visual-editor-proxy/.repoburg/data.sqlite +0 -0
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* ESLint Validation Hook
|
|
3
3
|
*
|
|
4
|
-
* Usage: Attach as 'after' hook to 'create_file', '
|
|
4
|
+
* Usage: Attach as 'after' hook to 'create_file', 'overwrite_file', 'patch'.
|
|
5
|
+
*
|
|
6
|
+
* With native tool calling, errors should be returned in the result object
|
|
7
|
+
* instead of pushing to validationErrors. This hook is kept for reference
|
|
8
|
+
* but may need adjustment based on your use case.
|
|
5
9
|
*/
|
|
6
10
|
import { exec } from 'child_process';
|
|
7
11
|
import { promisify } from 'util';
|
|
@@ -13,10 +17,16 @@ export interface HookContext {
|
|
|
13
17
|
action: {
|
|
14
18
|
tool_name: string;
|
|
15
19
|
args: { file_path?: string; [key: string]: any };
|
|
20
|
+
result?: {
|
|
21
|
+
status: 'SUCCESS' | 'FAILURE';
|
|
22
|
+
output?: string;
|
|
23
|
+
error?: string;
|
|
24
|
+
};
|
|
16
25
|
};
|
|
17
26
|
plan_context: {
|
|
18
|
-
|
|
19
|
-
|
|
27
|
+
flags: {
|
|
28
|
+
should_halt: boolean;
|
|
29
|
+
halt_reason?: string;
|
|
20
30
|
};
|
|
21
31
|
};
|
|
22
32
|
}
|
|
@@ -29,18 +39,20 @@ export default async function(context: HookContext) {
|
|
|
29
39
|
|
|
30
40
|
try {
|
|
31
41
|
// Adjust command as needed for your project structure
|
|
32
|
-
// We use --no-color to keep
|
|
42
|
+
// We use --no-color to keep error message clean for AI
|
|
33
43
|
await execAsync(`npx eslint "${filePath}" --no-color`);
|
|
44
|
+
console.log(`[Hook] ESLint passed for ${filePath}`);
|
|
34
45
|
} catch (e: any) {
|
|
35
46
|
const errorOutput = e.stdout || e.stderr || e.message;
|
|
36
47
|
|
|
37
48
|
console.log(`[Hook] ESLint failed for ${filePath}`);
|
|
38
49
|
|
|
39
|
-
//
|
|
40
|
-
// The
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
50
|
+
// Log the error - it will be captured in execution logs
|
|
51
|
+
// The AI will see this in the tool result via native tool calling
|
|
52
|
+
console.error(`ESLint check failed:\n${errorOutput}`);
|
|
53
|
+
|
|
54
|
+
// Optionally halt the plan if ESLint fails critically
|
|
55
|
+
// context.plan_context.flags.should_halt = true;
|
|
56
|
+
// context.plan_context.flags.halt_reason = `ESLint failed: ${errorOutput}`;
|
|
45
57
|
}
|
|
46
58
|
}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
* Example Hook Script
|
|
3
|
+
*
|
|
4
|
+
* Usage:
|
|
5
|
+
* 1. Attach to 'patch' or 'overwrite_file' tool as a 'before' hook.
|
|
6
|
+
* 2. It will block edits to any file with 'lock' in the name.
|
|
7
|
+
*/
|
|
9
8
|
// --- Type Definitions ---
|
|
10
9
|
|
|
11
10
|
export interface HookAction {
|
|
@@ -22,17 +21,17 @@ export interface HookAction {
|
|
|
22
21
|
export interface HookContext {
|
|
23
22
|
hook_type: 'before' | 'after';
|
|
24
23
|
action: HookAction;
|
|
25
|
-
plan_context: any; // Shared state of
|
|
24
|
+
plan_context: any; // Shared state of current AI plan
|
|
26
25
|
}
|
|
27
26
|
|
|
28
27
|
export interface HookOutput {
|
|
29
|
-
// If true,
|
|
28
|
+
// If true, AI plan stops immediately.
|
|
30
29
|
should_halt_plan?: boolean;
|
|
31
30
|
|
|
32
|
-
// Optional message to log in
|
|
31
|
+
// Optional message to log in UI
|
|
33
32
|
message?: string;
|
|
34
33
|
|
|
35
|
-
// Optional data to merge back into
|
|
34
|
+
// Optional data to merge back into plan context
|
|
36
35
|
update_context?: Record<string, any>;
|
|
37
36
|
}
|
|
38
37
|
|
package/backend/dist/src/main.js
CHANGED
|
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
4
4
|
const dotenv = require("dotenv");
|
|
5
5
|
dotenv.config();
|
|
6
6
|
const tracing_1 = require("./tracing");
|
|
7
|
+
const undici_1 = require("undici");
|
|
7
8
|
const core_1 = require("@nestjs/core");
|
|
8
9
|
const app_module_1 = require("./app.module");
|
|
9
10
|
const http_exception_filter_1 = require("./http-exception.filter");
|
|
@@ -40,6 +41,11 @@ async function findAvailablePort(startPort) {
|
|
|
40
41
|
}
|
|
41
42
|
async function bootstrap() {
|
|
42
43
|
await (0, tracing_1.initTracing)();
|
|
44
|
+
(0, undici_1.setGlobalDispatcher)(new undici_1.Agent({
|
|
45
|
+
headersTimeout: 1_200_000,
|
|
46
|
+
bodyTimeout: 1_200_000,
|
|
47
|
+
connect: { timeout: 60_000 },
|
|
48
|
+
}));
|
|
43
49
|
if (process.env.REPOBURG_PROJECT_PATH) {
|
|
44
50
|
try {
|
|
45
51
|
process.chdir(process.env.REPOBURG_PROJECT_PATH);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":";;;AACA,iCAAiC;AACjC,MAAM,CAAC,MAAM,EAAE,CAAC;AAGhB,uCAAwC;AAExC,uCAA2C;AAC3C,6CAAyC;AACzC,mEAA8D;AAC9D,2CAAgD;AAChD,+DAA2D;AAC3D,+DAA2D;AAC3D,qCAA2C;AAC3C,+CAA2C;AAC3C,2BAA2B;AAC3B,qDAAgD;AAChD,6CAAiE;AAEjE,SAAS,WAAW,CAAC,IAAY;IAC/B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC;QAClC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,GAAQ,EAAE,EAAE;YAChC,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC9B,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC;QACH,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;YAC5B,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE;gBAChB,OAAO,CAAC,KAAK,CAAC,CAAC;YACjB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,SAAiB;IAChD,IAAI,IAAI,GAAG,SAAS,CAAC;IACrB,OAAO,MAAM,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,IAAI,EAAE,CAAC;IACT,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,SAAS;IAEtB,MAAM,IAAA,qBAAW,GAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"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"}
|