@cyanautomation/kaseki-agent 1.5.1 → 1.5.2
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/add-js-extensions.js +16 -8
- package/dist/add-js-extensions.js.map +1 -1
- package/dist/check-dist-dynamic-imports.d.ts +10 -0
- package/dist/check-dist-dynamic-imports.d.ts.map +1 -0
- package/dist/check-dist-dynamic-imports.js +62 -0
- package/dist/check-dist-dynamic-imports.js.map +1 -0
- package/dist/cli/KasekiCLI.js +8 -8
- package/dist/cli/KasekiCLI.js.map +1 -1
- package/package.json +6 -4
|
@@ -10,18 +10,26 @@ import path from 'path';
|
|
|
10
10
|
import { fileURLToPath } from 'url';
|
|
11
11
|
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
12
12
|
const distDir = __dirname;
|
|
13
|
+
function hasExtension(importPath) {
|
|
14
|
+
return path.extname(importPath) !== '';
|
|
15
|
+
}
|
|
13
16
|
function addJsExtensions(filePath) {
|
|
14
17
|
let content = fs.readFileSync(filePath, 'utf8');
|
|
15
|
-
// Match imports/exports from relative paths without extensions
|
|
16
|
-
// Pattern: from './path.js', from
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
// Match static imports/exports from relative paths without extensions.
|
|
19
|
+
// Pattern: from './path.js', from "../path.js", from '../../path.js', etc.
|
|
20
|
+
content = content.replace(/(from\s+)(['"])(\.{1,2}[/\\][^'"]*?)(\2)/g, (match, prefix, quote, importPath) => {
|
|
21
|
+
if (hasExtension(importPath)) {
|
|
22
|
+
return match;
|
|
23
|
+
}
|
|
24
|
+
return `${prefix}${quote}${importPath}.js${quote}`;
|
|
25
|
+
});
|
|
26
|
+
// Match dynamic imports from relative paths without extensions.
|
|
27
|
+
// Pattern: import('./path.js'), import("../path.js"), import('../../path.js'), etc.
|
|
28
|
+
content = content.replace(/(import\(\s*)(['"])(\.{1,2}[/\\][^'"]*?)(\2\s*\))/g, (match, prefix, quote, importPath, suffix) => {
|
|
29
|
+
if (hasExtension(importPath)) {
|
|
21
30
|
return match;
|
|
22
31
|
}
|
|
23
|
-
|
|
24
|
-
return `from '${importPath}.js'`;
|
|
32
|
+
return `${prefix}${quote}${importPath}.js${suffix}`;
|
|
25
33
|
});
|
|
26
34
|
fs.writeFileSync(filePath, content, 'utf8');
|
|
27
35
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-js-extensions.js","sourceRoot":"","sources":["../src/add-js-extensions.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/D,MAAM,OAAO,GAAG,SAAS,CAAC;AAE1B,SAAS,eAAe,CAAC,QAAgB;IACvC,IAAI,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAEhD
|
|
1
|
+
{"version":3,"file":"add-js-extensions.js","sourceRoot":"","sources":["../src/add-js-extensions.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/D,MAAM,OAAO,GAAG,SAAS,CAAC;AAE1B,SAAS,YAAY,CAAC,UAAkB;IACtC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;AACzC,CAAC;AAED,SAAS,eAAe,CAAC,QAAgB;IACvC,IAAI,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAEhD,uEAAuE;IACvE,kEAAkE;IAClE,OAAO,GAAG,OAAO,CAAC,OAAO,CACvB,2CAA2C,EAC3C,CAAC,KAAa,EAAE,MAAc,EAAE,KAAa,EAAE,UAAkB,EAAE,EAAE;QACnE,IAAI,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,UAAU,MAAM,KAAK,EAAE,CAAC;IACrD,CAAC,CACF,CAAC;IAEF,gEAAgE;IAChE,2EAA2E;IAC3E,OAAO,GAAG,OAAO,CAAC,OAAO,CACvB,oDAAoD,EACpD,CAAC,KAAa,EAAE,MAAc,EAAE,KAAa,EAAE,UAAkB,EAAE,MAAc,EAAE,EAAE;QACnF,IAAI,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,UAAU,MAAM,MAAM,EAAE,CAAC;IACtD,CAAC,CACF,CAAC;IAEF,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAW;IACnC,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAElC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACtC,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEnC,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACvB,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAC7B,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;AACH,CAAC;AAED,IAAI,CAAC;IACH,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;IAC5D,CAAC;AACH,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IACf,MAAM,GAAG,GAAG,KAAc,CAAC;IAC3B,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* check-dist-dynamic-imports.ts
|
|
4
|
+
*
|
|
5
|
+
* Fails the build if emitted JavaScript contains extensionless relative dynamic
|
|
6
|
+
* imports. Node.js ESM requires emitted relative specifiers to include the
|
|
7
|
+
* final .js extension.
|
|
8
|
+
*/
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=check-dist-dynamic-imports.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check-dist-dynamic-imports.d.ts","sourceRoot":"","sources":["../src/check-dist-dynamic-imports.ts"],"names":[],"mappings":";AACA;;;;;;GAMG"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* check-dist-dynamic-imports.ts
|
|
4
|
+
*
|
|
5
|
+
* Fails the build if emitted JavaScript contains extensionless relative dynamic
|
|
6
|
+
* imports. Node.js ESM requires emitted relative specifiers to include the
|
|
7
|
+
* final .js extension.
|
|
8
|
+
*/
|
|
9
|
+
import fs from 'fs';
|
|
10
|
+
import path from 'path';
|
|
11
|
+
import { fileURLToPath } from 'url';
|
|
12
|
+
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
13
|
+
const distDir = __dirname;
|
|
14
|
+
const extensionlessRelativeDynamicImportPattern = /import\(\s*(['"])(\.\{1,2\}\/(?:[^'"]*?(?:\/|^))?[^'"./]+)\1\s*\)/g;
|
|
15
|
+
function findJavaScriptFiles(dir) {
|
|
16
|
+
const entries = fs.readdirSync(dir, { withFileTypes: true });
|
|
17
|
+
const files = [];
|
|
18
|
+
for (const entry of entries) {
|
|
19
|
+
const entryPath = path.join(dir, entry.name);
|
|
20
|
+
if (entry.isDirectory()) {
|
|
21
|
+
files.push(...findJavaScriptFiles(entryPath));
|
|
22
|
+
}
|
|
23
|
+
else if (entry.isFile() && entry.name.endsWith('.js')) {
|
|
24
|
+
files.push(entryPath);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return files;
|
|
28
|
+
}
|
|
29
|
+
function getLineAndColumn(content, index) {
|
|
30
|
+
const beforeMatch = content.slice(0, index);
|
|
31
|
+
const lines = beforeMatch.split('\n');
|
|
32
|
+
return {
|
|
33
|
+
line: lines.length,
|
|
34
|
+
column: lines[lines.length - 1].length + 1,
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
function findExtensionlessRelativeDynamicImports(filePath) {
|
|
38
|
+
const content = fs.readFileSync(filePath, 'utf8');
|
|
39
|
+
const results = [];
|
|
40
|
+
for (const match of content.matchAll(extensionlessRelativeDynamicImportPattern)) {
|
|
41
|
+
const specifier = match[2];
|
|
42
|
+
const index = match.index ?? 0;
|
|
43
|
+
const { line, column } = getLineAndColumn(content, index);
|
|
44
|
+
results.push({ filePath, line, column, specifier });
|
|
45
|
+
}
|
|
46
|
+
return results;
|
|
47
|
+
}
|
|
48
|
+
if (!fs.existsSync(distDir)) {
|
|
49
|
+
console.error(`dist directory does not exist: ${distDir}`);
|
|
50
|
+
process.exit(1);
|
|
51
|
+
}
|
|
52
|
+
const matches = findJavaScriptFiles(distDir).flatMap(findExtensionlessRelativeDynamicImports);
|
|
53
|
+
if (matches.length > 0) {
|
|
54
|
+
console.error('Found extensionless relative dynamic imports in emitted JavaScript:');
|
|
55
|
+
for (const match of matches) {
|
|
56
|
+
const relativePath = path.relative(distDir, match.filePath);
|
|
57
|
+
console.error(`${relativePath}:${match.line}:${match.column} import('${match.specifier}')`);
|
|
58
|
+
}
|
|
59
|
+
process.exit(1);
|
|
60
|
+
}
|
|
61
|
+
console.log('✓ No extensionless relative dynamic imports found in dist/');
|
|
62
|
+
//# sourceMappingURL=check-dist-dynamic-imports.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check-dist-dynamic-imports.js","sourceRoot":"","sources":["../src/check-dist-dynamic-imports.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/KasekiCLI.js
CHANGED
|
@@ -24,7 +24,7 @@ export class KasekiCLI {
|
|
|
24
24
|
name: 'setup',
|
|
25
25
|
description: 'Interactive setup wizard (first-time configuration)',
|
|
26
26
|
execute: async (args) => {
|
|
27
|
-
const { SetupCommand } = await import('./commands/SetupCommand');
|
|
27
|
+
const { SetupCommand } = await import('./commands/SetupCommand.js');
|
|
28
28
|
const cmd = new SetupCommand(this.configManager);
|
|
29
29
|
return cmd.execute(args);
|
|
30
30
|
},
|
|
@@ -33,7 +33,7 @@ export class KasekiCLI {
|
|
|
33
33
|
name: 'run',
|
|
34
34
|
description: 'Run kaseki agent on target repository',
|
|
35
35
|
execute: async (args) => {
|
|
36
|
-
const { RunCommand } = await import('./commands/RunCommand');
|
|
36
|
+
const { RunCommand } = await import('./commands/RunCommand.js');
|
|
37
37
|
const cmd = new RunCommand(this.configManager);
|
|
38
38
|
return cmd.execute(args);
|
|
39
39
|
},
|
|
@@ -42,7 +42,7 @@ export class KasekiCLI {
|
|
|
42
42
|
name: 'doctor',
|
|
43
43
|
description: 'Health checks and dependency validation',
|
|
44
44
|
execute: async (args) => {
|
|
45
|
-
const { DoctorCommand } = await import('./commands/DoctorCommand');
|
|
45
|
+
const { DoctorCommand } = await import('./commands/DoctorCommand.js');
|
|
46
46
|
const cmd = new DoctorCommand(this.configManager);
|
|
47
47
|
return cmd.execute(args);
|
|
48
48
|
},
|
|
@@ -51,7 +51,7 @@ export class KasekiCLI {
|
|
|
51
51
|
name: 'serve',
|
|
52
52
|
description: 'Start REST API service for async execution',
|
|
53
53
|
execute: async (args) => {
|
|
54
|
-
const { ServeCommand } = await import('./commands/ServeCommand');
|
|
54
|
+
const { ServeCommand } = await import('./commands/ServeCommand.js');
|
|
55
55
|
const cmd = new ServeCommand(this.configManager);
|
|
56
56
|
return cmd.execute(args);
|
|
57
57
|
},
|
|
@@ -60,7 +60,7 @@ export class KasekiCLI {
|
|
|
60
60
|
name: 'config',
|
|
61
61
|
description: 'Manage configuration',
|
|
62
62
|
execute: async (args) => {
|
|
63
|
-
const { ConfigCommand } = await import('./commands/ConfigCommand');
|
|
63
|
+
const { ConfigCommand } = await import('./commands/ConfigCommand.js');
|
|
64
64
|
const cmd = new ConfigCommand(this.configManager);
|
|
65
65
|
return cmd.execute(args);
|
|
66
66
|
},
|
|
@@ -69,7 +69,7 @@ export class KasekiCLI {
|
|
|
69
69
|
name: 'list',
|
|
70
70
|
description: 'List all kaseki instances',
|
|
71
71
|
execute: async (args) => {
|
|
72
|
-
const { ListCommand } = await import('./commands/ListCommand');
|
|
72
|
+
const { ListCommand } = await import('./commands/ListCommand.js');
|
|
73
73
|
const cmd = new ListCommand(this.configManager);
|
|
74
74
|
return cmd.execute(args);
|
|
75
75
|
},
|
|
@@ -78,7 +78,7 @@ export class KasekiCLI {
|
|
|
78
78
|
name: 'report',
|
|
79
79
|
description: 'Generate report for completed instance',
|
|
80
80
|
execute: async (args) => {
|
|
81
|
-
const { ReportCommand } = await import('./commands/ReportCommand');
|
|
81
|
+
const { ReportCommand } = await import('./commands/ReportCommand.js');
|
|
82
82
|
const cmd = new ReportCommand(this.configManager);
|
|
83
83
|
return cmd.execute(args);
|
|
84
84
|
},
|
|
@@ -87,7 +87,7 @@ export class KasekiCLI {
|
|
|
87
87
|
name: 'secrets',
|
|
88
88
|
description: 'Manage stored secrets (keyring/file)',
|
|
89
89
|
execute: async (args) => {
|
|
90
|
-
const { SecretsCommand } = await import('./commands/SecretsCommand');
|
|
90
|
+
const { SecretsCommand } = await import('./commands/SecretsCommand.js');
|
|
91
91
|
const cmd = new SecretsCommand(this.configManager);
|
|
92
92
|
return cmd.execute(args);
|
|
93
93
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KasekiCLI.js","sourceRoot":"","sources":["../../src/cli/KasekiCLI.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAGzC,MAAM,MAAM,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;AAQ1C,MAAM,OAAO,SAAS;IACZ,aAAa,CAAgB;IAC7B,QAAQ,CAA0B;IAE1C,YAAY,aAA4B;QACtC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACK,gBAAgB;QACtB,qEAAqE;QACrE,0BAA0B;QAC1B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE;YACzB,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,qDAAqD;YAClE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"KasekiCLI.js","sourceRoot":"","sources":["../../src/cli/KasekiCLI.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cyanautomation/kaseki-agent",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.2",
|
|
4
4
|
"description": "Ephemeral coding-agent runner: orchestrates Pi CLI via Docker for automated code modifications with validation",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"engines": {
|
|
8
|
-
"node": ">=
|
|
8
|
+
"node": ">=24"
|
|
9
9
|
},
|
|
10
10
|
"os": [
|
|
11
11
|
"linux"
|
|
@@ -42,13 +42,14 @@
|
|
|
42
42
|
},
|
|
43
43
|
"homepage": "https://github.com/CyanAutomation/kaseki-agent#readme",
|
|
44
44
|
"scripts": {
|
|
45
|
-
"build": "tsc && node dist/add-js-extensions.js && chmod 0755 dist/*.js",
|
|
45
|
+
"build": "tsc && node dist/add-js-extensions.js && npm run check:dist-dynamic-imports && chmod 0755 dist/*.js",
|
|
46
46
|
"prepublishOnly": "npm run build",
|
|
47
47
|
"type-check": "tsc --noEmit",
|
|
48
48
|
"check": "npm run type-check && npm run lint",
|
|
49
49
|
"test": "npm run test:unit",
|
|
50
50
|
"test:unit": "jest --passWithNoTests",
|
|
51
51
|
"test:cli": "npm run build && npm run test:cli:install && npm run test:cli:verify",
|
|
52
|
+
"test:publish-smoke": "npm run build && npm pack --dry-run && node dist/cli.js --version && node dist/cli.js list && npm run check:dist-dynamic-imports",
|
|
52
53
|
"test:cli:install": "npm run test:cli:install-local && npm run test:cli:install-npx",
|
|
53
54
|
"test:cli:install-local": "npm link && kaseki-agent --version && npm unlink -g @cyanautomation/kaseki-agent",
|
|
54
55
|
"test:cli:install-npx": "npx . --version 2>&1 | grep -q 'version' && echo 'npx test passed'",
|
|
@@ -66,7 +67,8 @@
|
|
|
66
67
|
"type-check:changed": "tsc --noEmit -p tsconfig.changed.json",
|
|
67
68
|
"benchmark:pi-event-filter": "npm run build && RUN_PI_EVENT_FILTER_PERF=1 jest --testMatch \"<rootDir>/perf/**/*.benchmark.test.ts\" --runInBand",
|
|
68
69
|
"release": "semantic-release",
|
|
69
|
-
"release:dry": "semantic-release --dry-run"
|
|
70
|
+
"release:dry": "semantic-release --dry-run",
|
|
71
|
+
"check:dist-dynamic-imports": "node dist/check-dist-dynamic-imports.js"
|
|
70
72
|
},
|
|
71
73
|
"dependencies": {
|
|
72
74
|
"express": "^4.18.2",
|