@kawacode/mcp 8.1.1 → 8.1.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/build/index.js +7 -1
- package/build/index.js.map +1 -1
- package/build/resources/active-intent.js +6 -2
- package/build/resources/active-intent.js.map +1 -1
- package/build/services/muninn-ipc.d.ts +44 -0
- package/build/services/muninn-ipc.js +40 -2
- package/build/services/muninn-ipc.js.map +1 -1
- package/build/tools/_relevant-context-refusal.test.d.ts +1 -0
- package/build/tools/_relevant-context-refusal.test.js +71 -0
- package/build/tools/_relevant-context-refusal.test.js.map +1 -0
- package/build/tools/_repo-access.test.d.ts +1 -0
- package/build/tools/_repo-access.test.js +98 -0
- package/build/tools/_repo-access.test.js.map +1 -0
- package/build/tools/complete-intent.d.ts +3 -2
- package/build/tools/complete-intent.js +1 -1
- package/build/tools/complete-intent.js.map +1 -1
- package/build/tools/get-relevant-context.js +6 -2
- package/build/tools/get-relevant-context.js.map +1 -1
- package/build/tools/resolve-origin.d.ts +3 -2
- package/build/tools/resolve-origin.js +4 -3
- package/build/tools/resolve-origin.js.map +1 -1
- package/package.json +1 -1
package/build/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
3
3
|
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
4
4
|
import { CallToolRequestSchema, ListToolsRequestSchema, ListPromptsRequestSchema, GetPromptRequestSchema, ListResourcesRequestSchema, ReadResourceRequestSchema, ErrorCode, McpError } from '@modelcontextprotocol/sdk/types.js';
|
|
5
|
-
import { connectToMuninn, disconnect, ensureRepo } from './services/muninn-ipc.js';
|
|
5
|
+
import { connectToMuninn, disconnect, ensureRepo, RepoAccessError, repoAccessToolOutput } from './services/muninn-ipc.js';
|
|
6
6
|
import { resolveMangledArgs, describeChainedArgs } from './tools/_mangled-args.js';
|
|
7
7
|
import { missingRequiredArgs, describeMissingArgs, requiredKeys } from './tools/_required-args.js';
|
|
8
8
|
import { allTools, getRelevantContext, checkActiveIntent, createAndActivateIntent, activateIntent, resumeIntent, getIntentsForFile, listTeamIntents, completeIntent, updateIntent, logWork, recordDecision, getSessionDecisions, getProjectDecisions, getDecisionDetail, editSessionDecision, detectIntentConflicts, inferHistory, getResolutionContext, arbiterResolve, arbiterApply } from './tools/index.js';
|
|
@@ -184,6 +184,12 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
184
184
|
// raised as McpError below.
|
|
185
185
|
if (error instanceof McpError)
|
|
186
186
|
throw error;
|
|
187
|
+
if (error instanceof RepoAccessError) {
|
|
188
|
+
return {
|
|
189
|
+
content: [{ type: 'text', text: JSON.stringify(repoAccessToolOutput(error, name), null, 2) }],
|
|
190
|
+
isError: true,
|
|
191
|
+
};
|
|
192
|
+
}
|
|
187
193
|
const message = error instanceof Error ? error.message : 'Tool execution failed';
|
|
188
194
|
return {
|
|
189
195
|
content: [
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { request, isConnected } from '../services/muninn-ipc.js';
|
|
1
|
+
import { request, isConnected, RepoAccessError, repoAccessToolOutput } from '../services/muninn-ipc.js';
|
|
2
2
|
export const activeIntentResource = {
|
|
3
3
|
uri: 'kawa://intent/active',
|
|
4
4
|
name: 'Active Intent',
|
|
@@ -41,7 +41,11 @@ export async function readActiveIntentResource(repoOrigin) {
|
|
|
41
41
|
}
|
|
42
42
|
}, null, 2);
|
|
43
43
|
}
|
|
44
|
-
catch {
|
|
44
|
+
catch (err) {
|
|
45
|
+
// A refusal is not a failed query: relay the structured, non-retryable output.
|
|
46
|
+
if (err instanceof RepoAccessError) {
|
|
47
|
+
return JSON.stringify(repoAccessToolOutput(err, activeIntentResource.uri), null, 2);
|
|
48
|
+
}
|
|
45
49
|
return JSON.stringify({
|
|
46
50
|
hasActiveIntent: false,
|
|
47
51
|
note: 'Failed to query Muninn for active intent.'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"active-intent.js","sourceRoot":"","sources":["../../src/resources/active-intent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"active-intent.js","sourceRoot":"","sources":["../../src/resources/active-intent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AASvG,MAAM,CAAC,MAAM,oBAAoB,GAAyB;IACxD,GAAG,EAAE,sBAAsB;IAC3B,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,0DAA0D;IACvE,QAAQ,EAAE,kBAAkB;CAC7B,CAAA;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,UAAmB;IAChE,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC,SAAS,CAAC;YACpB,eAAe,EAAE,KAAK;YACtB,IAAI,EAAE,6DAA6D;SACpE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IACb,CAAC;IAED,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE,YAAY,EAAE;YAChD,UAAU,EAAE,UAAU,IAAI,EAAE;SAC7B,CAAC,CAAA;QAEF,uDAAuD;QACvD,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;QACzB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC,SAAS,CAAC;gBACpB,eAAe,EAAE,KAAK;gBACtB,UAAU,EAAE,UAAU,IAAI,SAAS;gBACnC,IAAI,EAAE,UAAU;oBACd,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,+DAA+D;aACpE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;QACb,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;YACpB,eAAe,EAAE,IAAI;YACrB,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,UAAU;YAC3C,MAAM,EAAE;gBACN,EAAE,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE;gBACnB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,EAAE;gBACzB,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,EAAE;gBACrC,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,SAAS;gBAC9C,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,QAAQ;gBACjC,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,EAAE;gBACrC,UAAU,EAAE,CAAC;aACd;SACF,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IACb,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,+EAA+E;QAC/E,IAAI,GAAG,YAAY,eAAe,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,oBAAoB,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;QACrF,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC;YACpB,eAAe,EAAE,KAAK;YACtB,IAAI,EAAE,2CAA2C;SAClD,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IACb,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,oBAAoB,CAAC,CAAA"}
|
|
@@ -29,6 +29,12 @@
|
|
|
29
29
|
* lifts it into `IpcMessage.aid` and keys the per-session current pointer on it.
|
|
30
30
|
*/
|
|
31
31
|
export declare const SESSION_ID: string;
|
|
32
|
+
interface PendingRequest {
|
|
33
|
+
resolve: (data: any) => void;
|
|
34
|
+
reject: (error: Error) => void;
|
|
35
|
+
timer: ReturnType<typeof setTimeout>;
|
|
36
|
+
}
|
|
37
|
+
export declare const pendingRequests: Map<string, PendingRequest>;
|
|
32
38
|
export declare function setQuiet(value: boolean): void;
|
|
33
39
|
/**
|
|
34
40
|
* Connect to Muninn's Huginn IPC socket.
|
|
@@ -37,6 +43,43 @@ export declare function setQuiet(value: boolean): void;
|
|
|
37
43
|
* Throws if Muninn is not running or handshake fails.
|
|
38
44
|
*/
|
|
39
45
|
export declare function connectToMuninn(socketPath?: string): Promise<void>;
|
|
46
|
+
/**
|
|
47
|
+
* Kawa Code refused access to a repository (private repo without the GitHub App,
|
|
48
|
+
* unsupported host, not a member, ...). Carried as its own type so it survives
|
|
49
|
+
* `ensureRepo` and the dispatcher catch intact and the agent can be told to stop
|
|
50
|
+
* retrying. Muninn sends `{ success: false, code: 'no_repo_access', accessReason, error }`.
|
|
51
|
+
*/
|
|
52
|
+
export declare class RepoAccessError extends Error {
|
|
53
|
+
readonly code: "no_repo_access";
|
|
54
|
+
readonly accessReason: string;
|
|
55
|
+
constructor(message: string, accessReason: string);
|
|
56
|
+
}
|
|
57
|
+
/** Structured, non-retryable tool output for a repo-access refusal. */
|
|
58
|
+
export declare function repoAccessToolOutput(err: RepoAccessError, tool: string): {
|
|
59
|
+
success: boolean;
|
|
60
|
+
error: "no_repo_access";
|
|
61
|
+
reason: string;
|
|
62
|
+
retryable: boolean;
|
|
63
|
+
message: string;
|
|
64
|
+
tool: string;
|
|
65
|
+
};
|
|
66
|
+
/** Route an inbound response message to its waiting pendingRequest entry.
|
|
67
|
+
*
|
|
68
|
+
* Failure propagation has two layers:
|
|
69
|
+
* 1. Envelope-level: `msg.err` is set when the IPC dispatch itself failed
|
|
70
|
+
* (unknown domain, malformed message, etc.). Reject directly.
|
|
71
|
+
* 2. Application-level: Muninn handlers wrap their own failures INSIDE
|
|
72
|
+
* `msg.data` as `{ success: false, error: "..." }`. Without this check,
|
|
73
|
+
* tools silently received the failure object as a successful resolve and
|
|
74
|
+
* had to remember to inspect it themselves — which several built tools
|
|
75
|
+
* did not, leading to fake `success: true, intentId: ""` responses.
|
|
76
|
+
*
|
|
77
|
+
* Strict equality (`=== false`) is intentional. Async-start responses such as
|
|
78
|
+
* `{ started: true, message: "..." }` (inference run/evolve) and estimate
|
|
79
|
+
* responses (`{ estimate: {...} }`) carry no `success` field at all and must
|
|
80
|
+
* pass through unchanged.
|
|
81
|
+
*/
|
|
82
|
+
export declare function routeResponse(msg: any): void;
|
|
40
83
|
/**
|
|
41
84
|
* Send an IPC request to Muninn and await the correlated response.
|
|
42
85
|
*
|
|
@@ -75,3 +118,4 @@ export declare function isConnected(): boolean;
|
|
|
75
118
|
* Disconnect from Muninn.
|
|
76
119
|
*/
|
|
77
120
|
export declare function disconnect(): void;
|
|
121
|
+
export {};
|
|
@@ -47,7 +47,7 @@ let socket = null;
|
|
|
47
47
|
let connected = false;
|
|
48
48
|
let cawId = '';
|
|
49
49
|
let connectionPromise = null;
|
|
50
|
-
const pendingRequests = new Map();
|
|
50
|
+
export const pendingRequests = new Map();
|
|
51
51
|
/**
|
|
52
52
|
* Quiet mode: suppresses connection-lifecycle info logging (connect,
|
|
53
53
|
* handshake, close). Hook dispatchers enable it because Claude Code surfaces
|
|
@@ -219,6 +219,32 @@ function connectClientPipe(pipePath, resolve, reject) {
|
|
|
219
219
|
cleanup();
|
|
220
220
|
});
|
|
221
221
|
}
|
|
222
|
+
/**
|
|
223
|
+
* Kawa Code refused access to a repository (private repo without the GitHub App,
|
|
224
|
+
* unsupported host, not a member, ...). Carried as its own type so it survives
|
|
225
|
+
* `ensureRepo` and the dispatcher catch intact and the agent can be told to stop
|
|
226
|
+
* retrying. Muninn sends `{ success: false, code: 'no_repo_access', accessReason, error }`.
|
|
227
|
+
*/
|
|
228
|
+
export class RepoAccessError extends Error {
|
|
229
|
+
code = 'no_repo_access';
|
|
230
|
+
accessReason;
|
|
231
|
+
constructor(message, accessReason) {
|
|
232
|
+
super(message);
|
|
233
|
+
this.name = 'RepoAccessError';
|
|
234
|
+
this.accessReason = accessReason;
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
/** Structured, non-retryable tool output for a repo-access refusal. */
|
|
238
|
+
export function repoAccessToolOutput(err, tool) {
|
|
239
|
+
return {
|
|
240
|
+
success: false,
|
|
241
|
+
error: err.code,
|
|
242
|
+
reason: err.accessReason,
|
|
243
|
+
retryable: false,
|
|
244
|
+
message: `${err.message.replace(/[\s.]*$/, '')}. Do not retry. Tell the user the reason and what to do about it.`,
|
|
245
|
+
tool,
|
|
246
|
+
};
|
|
247
|
+
}
|
|
222
248
|
/** Route an inbound response message to its waiting pendingRequest entry.
|
|
223
249
|
*
|
|
224
250
|
* Failure propagation has two layers:
|
|
@@ -235,7 +261,7 @@ function connectClientPipe(pipePath, resolve, reject) {
|
|
|
235
261
|
* responses (`{ estimate: {...} }`) carry no `success` field at all and must
|
|
236
262
|
* pass through unchanged.
|
|
237
263
|
*/
|
|
238
|
-
function routeResponse(msg) {
|
|
264
|
+
export function routeResponse(msg) {
|
|
239
265
|
const msgId = msg._msgId;
|
|
240
266
|
if (msgId && pendingRequests.has(msgId)) {
|
|
241
267
|
const pending = pendingRequests.get(msgId);
|
|
@@ -246,6 +272,16 @@ function routeResponse(msg) {
|
|
|
246
272
|
return;
|
|
247
273
|
}
|
|
248
274
|
const data = msg.data || {};
|
|
275
|
+
if (data.success === false && data.code === 'no_repo_access') {
|
|
276
|
+
// A refusal must never take the structured-failure carve-out below: it may
|
|
277
|
+
// carry a string `reason`, which would resolve it as data and let a tool
|
|
278
|
+
// treat the refusal as success. Reject with the typed error instead.
|
|
279
|
+
const text = typeof data.error === 'string' && data.error.length > 0
|
|
280
|
+
? data.error
|
|
281
|
+
: 'Kawa Code refused access to this repository.';
|
|
282
|
+
pending.reject(new RepoAccessError(text, typeof data.accessReason === 'string' ? data.accessReason : 'unknown'));
|
|
283
|
+
return;
|
|
284
|
+
}
|
|
249
285
|
if (data.success === false) {
|
|
250
286
|
// Some handlers return structured failure shapes the calling tool is
|
|
251
287
|
// designed to interpret and present — these are data, not dispatch
|
|
@@ -329,6 +365,8 @@ export async function ensureRepo(repoPath) {
|
|
|
329
365
|
await request('code', 'add', { folder: repoPath });
|
|
330
366
|
}
|
|
331
367
|
catch (err) {
|
|
368
|
+
if (err instanceof RepoAccessError)
|
|
369
|
+
throw err;
|
|
332
370
|
throw new Error(`Could not register repository "${repoPath}" with Kawa Code: ${err.message}`);
|
|
333
371
|
}
|
|
334
372
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"muninn-ipc.js","sourceRoot":"","sources":["../../src/services/muninn-ipc.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,GAAG,MAAM,KAAK,CAAA;AAC1B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AACxB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAA;AAC5B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AACxB,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAA;AAEhC,MAAM,YAAY,GAAG,KAAK,CAAA;AAC1B,MAAM,iBAAiB,GAAG,CAAC,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;AAEpG;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,OAAO,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAA;AAC9G,MAAM,0BAA0B,GAAG,MAAM,CAAA;AACzC,MAAM,oBAAoB,GAAG,MAAM,CAAA;AAEnC;;;GAGG;AACH,MAAM,gBAAgB,GAAG,0BAA0B,CAAA;AAQnD,IAAI,MAAM,GAAsB,IAAI,CAAA;AACpC,IAAI,SAAS,GAAG,KAAK,CAAA;AACrB,IAAI,KAAK,GAAG,EAAE,CAAA;AACd,IAAI,iBAAiB,GAAyB,IAAI,CAAA;AAClD,MAAM,eAAe,GAAG,IAAI,GAAG,EAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"muninn-ipc.js","sourceRoot":"","sources":["../../src/services/muninn-ipc.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { test, before, after } from 'node:test';
|
|
2
|
+
import assert from 'node:assert/strict';
|
|
3
|
+
import net from 'node:net';
|
|
4
|
+
import fs from 'node:fs';
|
|
5
|
+
import os from 'node:os';
|
|
6
|
+
import path from 'node:path';
|
|
7
|
+
import { connectToMuninn, disconnect, RepoAccessError } from '../services/muninn-ipc.js';
|
|
8
|
+
import { getRelevantContext } from './get-relevant-context.js';
|
|
9
|
+
import { readActiveIntentResource } from '../resources/active-intent.js';
|
|
10
|
+
// A fake Kawa Code on a temp Unix socket: sends the handshake, then answers every
|
|
11
|
+
// request with whatever `reply` currently holds. MUNINN_SOCKET points the client at it,
|
|
12
|
+
// so the real socket is never touched.
|
|
13
|
+
let reply = {};
|
|
14
|
+
let server;
|
|
15
|
+
let dir;
|
|
16
|
+
before(async () => {
|
|
17
|
+
dir = fs.mkdtempSync(path.join(os.tmpdir(), 'kawa-mcp-'));
|
|
18
|
+
const sock = path.join(dir, 's');
|
|
19
|
+
server = net.createServer((c) => {
|
|
20
|
+
c.write(JSON.stringify({ flow: 'brdc', domain: 'system', action: 'handshake', data: { caw: 'test' } }) + '\n');
|
|
21
|
+
let buf = '';
|
|
22
|
+
c.on('data', (chunk) => {
|
|
23
|
+
buf += chunk.toString();
|
|
24
|
+
let nl;
|
|
25
|
+
while ((nl = buf.indexOf('\n')) >= 0) {
|
|
26
|
+
const msg = JSON.parse(buf.slice(0, nl));
|
|
27
|
+
buf = buf.slice(nl + 1);
|
|
28
|
+
c.write(JSON.stringify({ flow: 'res', domain: msg.domain, action: msg.action, _msgId: msg._msgId, data: reply }) + '\n');
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
await new Promise((r) => server.listen(sock, r));
|
|
33
|
+
process.env.MUNINN_SOCKET = sock;
|
|
34
|
+
await connectToMuninn();
|
|
35
|
+
});
|
|
36
|
+
after(async () => {
|
|
37
|
+
disconnect();
|
|
38
|
+
await new Promise((r) => server.close(r));
|
|
39
|
+
fs.rmSync(dir, { recursive: true, force: true });
|
|
40
|
+
});
|
|
41
|
+
const refusal = {
|
|
42
|
+
success: false,
|
|
43
|
+
code: 'no_repo_access',
|
|
44
|
+
accessReason: 'unsupported_host',
|
|
45
|
+
error: 'No access to this repository (unsupported_host)',
|
|
46
|
+
};
|
|
47
|
+
test('get_relevant_context relays a repo-access refusal instead of an empty "unavailable" result', async () => {
|
|
48
|
+
reply = refusal;
|
|
49
|
+
await assert.rejects(getRelevantContext({ repoOrigin: 'git@bitbucket.org:o/r.git', repoPath: '/x', prompt: 'p' }), (err) => err instanceof RepoAccessError && err.accessReason === 'unsupported_host');
|
|
50
|
+
});
|
|
51
|
+
test('get_relevant_context keeps the soft result for a real outage, without naming Muninn', async () => {
|
|
52
|
+
reply = { success: false, error: 'boom' };
|
|
53
|
+
const res = await getRelevantContext({ repoOrigin: 'git@github.com:o/r.git', repoPath: '/x', prompt: 'p' });
|
|
54
|
+
assert.deepEqual(res.relevantIntents, []);
|
|
55
|
+
assert.equal(res.error, 'Kawa Code unavailable: boom');
|
|
56
|
+
});
|
|
57
|
+
test('the active-intent resource relays a refusal as structured, non-retryable output', async () => {
|
|
58
|
+
reply = refusal;
|
|
59
|
+
const out = JSON.parse(await readActiveIntentResource('git@bitbucket.org:o/r.git'));
|
|
60
|
+
assert.equal(out.success, false);
|
|
61
|
+
assert.equal(out.error, 'no_repo_access');
|
|
62
|
+
assert.equal(out.reason, 'unsupported_host');
|
|
63
|
+
assert.equal(out.retryable, false);
|
|
64
|
+
});
|
|
65
|
+
test('the active-intent resource keeps its soft note for a real failure', async () => {
|
|
66
|
+
reply = { success: false, error: 'boom' };
|
|
67
|
+
const out = JSON.parse(await readActiveIntentResource('git@github.com:o/r.git'));
|
|
68
|
+
assert.equal(out.hasActiveIntent, false);
|
|
69
|
+
assert.match(out.note, /Failed to query/);
|
|
70
|
+
});
|
|
71
|
+
//# sourceMappingURL=_relevant-context-refusal.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_relevant-context-refusal.test.js","sourceRoot":"","sources":["../../src/tools/_relevant-context-refusal.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,WAAW,CAAA;AAC/C,OAAO,MAAM,MAAM,oBAAoB,CAAA;AACvC,OAAO,GAAG,MAAM,UAAU,CAAA;AAC1B,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AACxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAA;AAExE,kFAAkF;AAClF,wFAAwF;AACxF,uCAAuC;AACvC,IAAI,KAAK,GAA4B,EAAE,CAAA;AACvC,IAAI,MAAkB,CAAA;AACtB,IAAI,GAAW,CAAA;AAEf,MAAM,CAAC,KAAK,IAAI,EAAE;IAChB,GAAG,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,WAAW,CAAC,CAAC,CAAA;IACzD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAChC,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE;QAC9B,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA;QAC9G,IAAI,GAAG,GAAG,EAAE,CAAA;QACZ,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;YACrB,GAAG,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAA;YACvB,IAAI,EAAU,CAAA;YACd,OAAO,CAAC,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;gBACxC,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;gBACvB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA;YAC1H,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACF,MAAM,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IACtD,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAA;IAChC,MAAM,eAAe,EAAE,CAAA;AACzB,CAAC,CAAC,CAAA;AAEF,KAAK,CAAC,KAAK,IAAI,EAAE;IACf,UAAU,EAAE,CAAA;IACZ,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IACzC,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;AAClD,CAAC,CAAC,CAAA;AAEF,MAAM,OAAO,GAAG;IACd,OAAO,EAAE,KAAK;IACd,IAAI,EAAE,gBAAgB;IACtB,YAAY,EAAE,kBAAkB;IAChC,KAAK,EAAE,iDAAiD;CACzD,CAAA;AAED,IAAI,CAAC,4FAA4F,EAAE,KAAK,IAAI,EAAE;IAC5G,KAAK,GAAG,OAAO,CAAA;IACf,MAAM,MAAM,CAAC,OAAO,CAClB,kBAAkB,CAAC,EAAE,UAAU,EAAE,2BAA2B,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAS,CAAC,EACnG,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,YAAY,eAAe,IAAI,GAAG,CAAC,YAAY,KAAK,kBAAkB,CACxF,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,qFAAqF,EAAE,KAAK,IAAI,EAAE;IACrG,KAAK,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAA;IACzC,MAAM,GAAG,GAAG,MAAM,kBAAkB,CAAC,EAAE,UAAU,EAAE,wBAAwB,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAS,CAAC,CAAA;IAClH,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,CAAC,CAAA;IACzC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,6BAA6B,CAAC,CAAA;AACxD,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;IACjG,KAAK,GAAG,OAAO,CAAA;IACf,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,wBAAwB,CAAC,2BAA2B,CAAC,CAAC,CAAA;IACnF,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IAChC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAA;IACzC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;IAC5C,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;AACpC,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;IACnF,KAAK,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAA;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,wBAAwB,CAAC,wBAAwB,CAAC,CAAC,CAAA;IAChF,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,EAAE,KAAK,CAAC,CAAA;IACxC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;AAC3C,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { test } from 'node:test';
|
|
2
|
+
import assert from 'node:assert/strict';
|
|
3
|
+
import { RepoAccessError, repoAccessToolOutput, routeResponse, pendingRequests, } from '../services/muninn-ipc.js';
|
|
4
|
+
/** Register a pending request, route `data` to it, and report how it settled. */
|
|
5
|
+
async function settle(data, envelope = {}) {
|
|
6
|
+
const id = `test-${Math.random().toString(36).slice(2)}`;
|
|
7
|
+
const outcome = new Promise((resolve) => {
|
|
8
|
+
pendingRequests.set(id, {
|
|
9
|
+
resolve: (v) => resolve({ resolved: v }),
|
|
10
|
+
reject: (e) => resolve({ rejected: e }),
|
|
11
|
+
timer: setTimeout(() => { }, 0),
|
|
12
|
+
});
|
|
13
|
+
});
|
|
14
|
+
routeResponse({ _msgId: id, data, ...envelope });
|
|
15
|
+
return outcome;
|
|
16
|
+
}
|
|
17
|
+
test('a no_repo_access refusal rejects with a typed RepoAccessError', async () => {
|
|
18
|
+
const { rejected, resolved } = await settle({
|
|
19
|
+
success: false,
|
|
20
|
+
code: 'no_repo_access',
|
|
21
|
+
accessReason: 'app_not_installed',
|
|
22
|
+
error: 'Install the Kawa Code GitHub App.',
|
|
23
|
+
});
|
|
24
|
+
assert.equal(resolved, undefined);
|
|
25
|
+
assert.ok(rejected instanceof RepoAccessError);
|
|
26
|
+
assert.equal(rejected.code, 'no_repo_access');
|
|
27
|
+
assert.equal(rejected.accessReason, 'app_not_installed');
|
|
28
|
+
assert.equal(rejected.message, 'Install the Kawa Code GitHub App.');
|
|
29
|
+
});
|
|
30
|
+
test('a refusal that also carries a string `reason` is still rejected, never resolved as data', async () => {
|
|
31
|
+
const { rejected, resolved } = await settle({
|
|
32
|
+
success: false,
|
|
33
|
+
code: 'no_repo_access',
|
|
34
|
+
reason: 'app_not_installed',
|
|
35
|
+
accessReason: 'app_not_installed',
|
|
36
|
+
error: 'refused',
|
|
37
|
+
});
|
|
38
|
+
assert.equal(resolved, undefined);
|
|
39
|
+
assert.ok(rejected instanceof RepoAccessError);
|
|
40
|
+
});
|
|
41
|
+
test('the tool output is structured and non-retryable', () => {
|
|
42
|
+
const out = repoAccessToolOutput(new RepoAccessError('refused.', 'app_not_installed'), 'check_active_intent');
|
|
43
|
+
assert.equal(out.success, false);
|
|
44
|
+
assert.equal(out.error, 'no_repo_access');
|
|
45
|
+
assert.equal(out.reason, 'app_not_installed');
|
|
46
|
+
assert.equal(out.retryable, false);
|
|
47
|
+
assert.equal(out.tool, 'check_active_intent');
|
|
48
|
+
assert.match(out.message, /refused\./);
|
|
49
|
+
});
|
|
50
|
+
test('the tool output separates the refusal text from the instruction, whatever the text ends with', () => {
|
|
51
|
+
const noStop = repoAccessToolOutput(new RepoAccessError('No access (unsupported_host)', 'unsupported_host'), 't');
|
|
52
|
+
assert.match(noStop.message, /^No access \(unsupported_host\)\. Do not retry\./);
|
|
53
|
+
const stop = repoAccessToolOutput(new RepoAccessError('Install the App. ', 'app_not_installed'), 't');
|
|
54
|
+
assert.match(stop.message, /^Install the App\. Do not retry\./);
|
|
55
|
+
});
|
|
56
|
+
test('conflicts, frozen and transient-failure shapes still resolve as data', async () => {
|
|
57
|
+
const shapes = [
|
|
58
|
+
{ success: false, conflict: true, conflicts: [{ intentId: 'a' }] },
|
|
59
|
+
{ success: false, reason: 'conflicts', conflicts: [{ id: 'b' }] },
|
|
60
|
+
{ success: false, reason: 'transient-failure', error: 'x', failedStage: 'blocks' },
|
|
61
|
+
{ success: false, frozen: true, error: 'frozen' },
|
|
62
|
+
];
|
|
63
|
+
for (const shape of shapes) {
|
|
64
|
+
const { resolved, rejected } = await settle(shape);
|
|
65
|
+
assert.equal(rejected, undefined);
|
|
66
|
+
assert.deepEqual(resolved, shape);
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
test('a success:false without code still rejects with its error text', async () => {
|
|
70
|
+
const { rejected } = await settle({ success: false, error: 'API down' });
|
|
71
|
+
assert.ok(rejected instanceof Error);
|
|
72
|
+
assert.ok(!(rejected instanceof RepoAccessError));
|
|
73
|
+
assert.equal(rejected.message, 'API down');
|
|
74
|
+
});
|
|
75
|
+
test('a success response resolves unchanged', async () => {
|
|
76
|
+
const { resolved } = await settle({ success: true, intent: { id: 'i' } });
|
|
77
|
+
assert.deepEqual(resolved, { success: true, intent: { id: 'i' } });
|
|
78
|
+
});
|
|
79
|
+
// kawacode-on-stop wraps every request() in a catch that returns null / exits 0
|
|
80
|
+
// (main().catch(() => process.exit(0))). A refusal is an ordinary rejected
|
|
81
|
+
// promise, so it must take that same fail-open path and never escape.
|
|
82
|
+
test('a refusal rejection is absorbed by the Stop hook fail-open pattern', async () => {
|
|
83
|
+
const gate = async () => {
|
|
84
|
+
try {
|
|
85
|
+
await new Promise((_, reject) => {
|
|
86
|
+
const id = `stop-${Math.random().toString(36).slice(2)}`;
|
|
87
|
+
pendingRequests.set(id, { resolve: () => { }, reject, timer: setTimeout(() => { }, 0) });
|
|
88
|
+
routeResponse({ _msgId: id, data: { success: false, code: 'no_repo_access', accessReason: 'x', error: 'no' } });
|
|
89
|
+
});
|
|
90
|
+
return 'unexpected';
|
|
91
|
+
}
|
|
92
|
+
catch {
|
|
93
|
+
return null; // fail open, no gate
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
assert.equal(await gate(), null);
|
|
97
|
+
});
|
|
98
|
+
//# sourceMappingURL=_repo-access.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_repo-access.test.js","sourceRoot":"","sources":["../../src/tools/_repo-access.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,7 +31,8 @@ export type CompleteIntentInput = z.infer<typeof completeIntentSchema>;
|
|
|
31
31
|
* that conflict with previously-recorded ones. Since COMPLETION_CONFLICT_DECOUPLE.md
|
|
32
32
|
* these no longer block completion — the commit (status + blocks) already landed;
|
|
33
33
|
* each conflicting decision is *parked* for an async disposition in the
|
|
34
|
-
* Orchestration panel
|
|
34
|
+
* Orchestration panel, which owns the options — this file deliberately does
|
|
35
|
+
* not list them, so it cannot go stale when the panel gains one.
|
|
35
36
|
*/
|
|
36
37
|
export interface ConflictMatch {
|
|
37
38
|
/** Stable distillation id of the proposed decision; the panel keys the disposition on it. */
|
|
@@ -89,7 +90,7 @@ export interface CompleteIntentResponse {
|
|
|
89
90
|
* standards. Since COMPLETION_CONFLICT_DECOUPLE.md the completion still
|
|
90
91
|
* SUCCEEDED (success=true, status flipped, blocks captured) — these decisions
|
|
91
92
|
* are *deferred*: parked for an async disposition in the Orchestration panel
|
|
92
|
-
* (
|
|
93
|
+
* (the panel owns the options). There is nothing to retry.
|
|
93
94
|
*/
|
|
94
95
|
deferredConflicts?: ConflictMatch[];
|
|
95
96
|
/**
|
|
@@ -114,7 +114,7 @@ export async function completeIntent(input) {
|
|
|
114
114
|
// standards did NOT block the completion — they're parked for a disposition
|
|
115
115
|
// in the Orchestration panel. Surface the count; there is nothing to retry.
|
|
116
116
|
const deferredConflictPart = deferredConflicts.length > 0
|
|
117
|
-
? ` — ${deferredConflicts.length} distilled decision(s) need a disposition in the Orchestration panel
|
|
117
|
+
? ` — ${deferredConflicts.length} distilled decision(s) need a disposition in the Orchestration panel`
|
|
118
118
|
: '';
|
|
119
119
|
message = statusMsg + shaPart + distilledPart + deferredPart + collisionPart + deferredConflictPart;
|
|
120
120
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"complete-intent.js","sourceRoot":"","sources":["../../src/tools/complete-intent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAEnD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6EAA6E,CAAC;IACzH,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IAClE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2VAA2V,CAAC;IACrY,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yEAAyE,CAAC;IACpH,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;SAC5F,QAAQ,CAAC,4KAA4K,CAAC;IACzL,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2EAA2E,CAAC;IACzH,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qRAAqR,CAAC;CACtU,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"complete-intent.js","sourceRoot":"","sources":["../../src/tools/complete-intent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { request } from '../services/muninn-ipc.js';
|
|
2
|
+
import { request, RepoAccessError } from '../services/muninn-ipc.js';
|
|
3
3
|
import { resolveOrigin } from './resolve-origin.js';
|
|
4
4
|
import { emitInjection, estimateTokens } from '../telemetry.js';
|
|
5
5
|
export const getRelevantContextSchema = z.object({
|
|
@@ -37,8 +37,12 @@ export async function getRelevantContext(input) {
|
|
|
37
37
|
});
|
|
38
38
|
}
|
|
39
39
|
catch (err) {
|
|
40
|
+
// A refusal is not an outage: relay it so the dispatcher emits the structured,
|
|
41
|
+
// non-retryable no_repo_access output instead of an empty "nothing relevant" result.
|
|
42
|
+
if (err instanceof RepoAccessError)
|
|
43
|
+
throw err;
|
|
40
44
|
const msg = err?.message || String(err);
|
|
41
|
-
return { ...EMPTY_RESPONSE(actualOrigin, input.repoPath), error: `
|
|
45
|
+
return { ...EMPTY_RESPONSE(actualOrigin, input.repoPath), error: `Kawa Code unavailable: ${msg}` };
|
|
42
46
|
}
|
|
43
47
|
const response = {
|
|
44
48
|
projectOrigin: actualOrigin,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-relevant-context.js","sourceRoot":"","sources":["../../src/tools/get-relevant-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"get-relevant-context.js","sourceRoot":"","sources":["../../src/tools/get-relevant-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Resolves the
|
|
2
|
+
* Resolves the git remote origin URL for a repository path, as configured (the
|
|
3
|
+
* raw `remote.origin.url`). Kawa Code canonicalizes it server-side.
|
|
3
4
|
*
|
|
4
5
|
* Uses a local `git config` call instead of IPC to Muninn, avoiding
|
|
5
6
|
* project registration side effects (in-memory state changes, git operations,
|
|
@@ -8,6 +9,6 @@
|
|
|
8
9
|
*
|
|
9
10
|
* @param repoOrigin - User-provided git remote origin (fallback)
|
|
10
11
|
* @param repoPath - Local path to the repository root
|
|
11
|
-
* @returns The
|
|
12
|
+
* @returns The git remote origin URL
|
|
12
13
|
*/
|
|
13
14
|
export declare function resolveOrigin(repoOrigin: string | undefined, repoPath?: string): string;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { execSync } from 'child_process';
|
|
2
2
|
/**
|
|
3
|
-
* Resolves the
|
|
3
|
+
* Resolves the git remote origin URL for a repository path, as configured (the
|
|
4
|
+
* raw `remote.origin.url`). Kawa Code canonicalizes it server-side.
|
|
4
5
|
*
|
|
5
6
|
* Uses a local `git config` call instead of IPC to Muninn, avoiding
|
|
6
7
|
* project registration side effects (in-memory state changes, git operations,
|
|
@@ -9,7 +10,7 @@ import { execSync } from 'child_process';
|
|
|
9
10
|
*
|
|
10
11
|
* @param repoOrigin - User-provided git remote origin (fallback)
|
|
11
12
|
* @param repoPath - Local path to the repository root
|
|
12
|
-
* @returns The
|
|
13
|
+
* @returns The git remote origin URL
|
|
13
14
|
*/
|
|
14
15
|
export function resolveOrigin(repoOrigin, repoPath) {
|
|
15
16
|
if (repoPath) {
|
|
@@ -29,6 +30,6 @@ export function resolveOrigin(repoOrigin, repoPath) {
|
|
|
29
30
|
}
|
|
30
31
|
if (repoOrigin)
|
|
31
32
|
return repoOrigin;
|
|
32
|
-
throw new Error('Could not resolve git remote origin. Provide repoPath pointing to the repository root, or pass repoOrigin explicitly.');
|
|
33
|
+
throw new Error('Could not resolve git remote origin. Provide repoPath pointing to the repository root, or pass repoOrigin explicitly. Kawa Code needs a git remote on github.com or gitlab.com; local-only repositories are not supported.');
|
|
33
34
|
}
|
|
34
35
|
//# sourceMappingURL=resolve-origin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-origin.js","sourceRoot":"","sources":["../../src/tools/resolve-origin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC
|
|
1
|
+
{"version":3,"file":"resolve-origin.js","sourceRoot":"","sources":["../../src/tools/resolve-origin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,aAAa,CAAC,UAA8B,EAAE,QAAiB;IAC7E,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,QAAQ,CAAC,oCAAoC,EAAE;gBAC5D,GAAG,EAAE,QAAQ;gBACb,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC,IAAI,EAAE,CAAA;YACT,IAAI,MAAM;gBAAE,OAAO,MAAM,CAAA;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,sCAAsC;QACxC,CAAC;IACH,CAAC;IACD,IAAI,UAAU;QAAE,OAAO,UAAU,CAAA;IACjC,MAAM,IAAI,KAAK,CACb,4NAA4N,CAC7N,CAAA;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kawacode/mcp",
|
|
3
|
-
"version": "8.1.
|
|
3
|
+
"version": "8.1.2",
|
|
4
4
|
"description": "Team-aware memory for Claude Code, Cursor, and other AI coding assistants — intent tracking, decision history, real-time team conflict detection.",
|
|
5
5
|
"main": "build/index.js",
|
|
6
6
|
"bin": {
|