wicked-crew 0.7.17 → 0.7.18
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/api/routes.d.ts +4 -0
- package/dist/api/routes.d.ts.map +1 -1
- package/dist/api/routes.js +80 -0
- package/dist/api/routes.js.map +1 -1
- package/dist/core/estate-mcp-client.d.ts +70 -0
- package/dist/core/estate-mcp-client.d.ts.map +1 -0
- package/dist/core/estate-mcp-client.js +249 -0
- package/dist/core/estate-mcp-client.js.map +1 -0
- package/dist/interactive/chat-events.d.ts +2 -1
- package/dist/interactive/chat-events.d.ts.map +1 -1
- package/dist/interactive/chat-events.js +13 -3
- package/dist/interactive/chat-events.js.map +1 -1
- package/dist/interactive/draft-events.d.ts +26 -1
- package/dist/interactive/draft-events.d.ts.map +1 -1
- package/dist/interactive/draft-events.js +56 -3
- package/dist/interactive/draft-events.js.map +1 -1
- package/dist/interactive/edit-events.d.ts +2 -1
- package/dist/interactive/edit-events.d.ts.map +1 -1
- package/dist/interactive/edit-events.js +12 -4
- package/dist/interactive/edit-events.js.map +1 -1
- package/dist/studio/assets/{index-DDpidE4C.css → index-Cm_7U3Ys.css} +1 -1
- package/dist/studio/assets/{index-MVBENzHL.js → index-Dmv8_LV-.js} +88 -88
- package/dist/studio/index.html +2 -2
- package/dist/studio/testid-inventory.json +96 -4
- package/endpoint-manifest.json +34 -1
- package/package.json +3 -3
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The estate-MCP proposal-queue client (DES-MEM-FACETED-001 §5.0).
|
|
3
|
+
*
|
|
4
|
+
* # Why this exists
|
|
5
|
+
*
|
|
6
|
+
* The proposal queue (`proposal.list` / `proposal.approve` / `proposal.reject`, estate #162) lives
|
|
7
|
+
* ONLY on the estate MCP server — a JSON-RPC 2.0 process that speaks newline-delimited frames over
|
|
8
|
+
* stdio. Crew already reaches estate two other ways, and NEITHER carries these tools: the
|
|
9
|
+
* `wicked-estate` CLI (`projects/graph.ts` — indexing/query subcommands) and the wicked-core napi
|
|
10
|
+
* addon (the run engine). So the queue needs its own small client, and this is it.
|
|
11
|
+
*
|
|
12
|
+
* # The operator posture — NON-`--readonly`
|
|
13
|
+
*
|
|
14
|
+
* This is the OPERATOR surface: it must list, approve, AND reject. `proposal.approve` /
|
|
15
|
+
* `proposal.reject` mutate the active store / decide the queue, which the estate server REFUSES
|
|
16
|
+
* under `--readonly` (a -32601 backstop — see `wicked-estate-mcp/tests/proposals.rs`). So the
|
|
17
|
+
* server is spawned with NO `--readonly` flag. This is the deliberate inverse of the governed
|
|
18
|
+
* WORKER grounding client (DES-GROUNDING-001), which allow-lists the estate MCP `--readonly`
|
|
19
|
+
* precisely so a worker can never mutate the operator's stores.
|
|
20
|
+
*
|
|
21
|
+
* `WICKED_MEMORY_DB` is pinned to the operator global store (`${WICKED_HOME:-~/.wicked}/memory.db`,
|
|
22
|
+
* matching the server's own default in `wicked-estate-mcp/src/main.rs`) so the queue is read/written
|
|
23
|
+
* where the operator's memories actually live, regardless of the daemon's cwd/home.
|
|
24
|
+
*
|
|
25
|
+
* # Framing (mirrors `wicked-estate-mcp/src/main.rs`)
|
|
26
|
+
*
|
|
27
|
+
* The server reads one JSON object per line on stdin and writes one response object per line on
|
|
28
|
+
* stdout. A NOTIFICATION (no `id`) produces no output. The handshake is
|
|
29
|
+
* `initialize` (id 1) → `notifications/initialized` → `tools/call` (id 2); the tool result is
|
|
30
|
+
* wrapped in the MCP envelope `{ content: [{ type:'text', text: '<json>' }], isError }`, and a
|
|
31
|
+
* failure is a JSON-RPC `error` object. Spawn-per-call is fine for v1: the queue is an operator
|
|
32
|
+
* action, not a hot path.
|
|
33
|
+
*/
|
|
34
|
+
import { spawn as nodeSpawn } from 'node:child_process';
|
|
35
|
+
import { readFileSync } from 'node:fs';
|
|
36
|
+
import { homedir } from 'node:os';
|
|
37
|
+
import { join } from 'node:path';
|
|
38
|
+
import { fileURLToPath } from 'node:url';
|
|
39
|
+
/** The MCP protocol version crew declares in the handshake (the version the estate server speaks). */
|
|
40
|
+
export const ESTATE_MCP_PROTOCOL_VERSION = '2024-11-05';
|
|
41
|
+
/** JSON-RPC ids for the two request frames (the notification carries none). */
|
|
42
|
+
const INITIALIZE_ID = 1;
|
|
43
|
+
const TOOLS_CALL_ID = 2;
|
|
44
|
+
/** The handshake + call must complete inside this budget or the child is killed and the call fails.
|
|
45
|
+
* Generous because a cold `wicked-estate-mcp` may open a SQLite store on first use, but finite so
|
|
46
|
+
* a wedged/absent binary fails loudly instead of hanging the request. */
|
|
47
|
+
export const DEFAULT_ESTATE_MCP_TIMEOUT_MS = 30_000;
|
|
48
|
+
const CLIENT_NAME = 'wicked-crew';
|
|
49
|
+
/** Crew's own version for the handshake `clientInfo`. Read from package.json the same way
|
|
50
|
+
* `api/routes.ts` reads it (works under both the `src` and compiled `dist` layouts); a read
|
|
51
|
+
* failure is non-fatal — the server ignores `clientInfo` — so it degrades to a placeholder. */
|
|
52
|
+
const CLIENT_VERSION = (() => {
|
|
53
|
+
try {
|
|
54
|
+
const raw = readFileSync(fileURLToPath(new URL('../../package.json', import.meta.url)), 'utf8');
|
|
55
|
+
return JSON.parse(raw).version ?? '0.0.0';
|
|
56
|
+
}
|
|
57
|
+
catch {
|
|
58
|
+
return '0.0.0';
|
|
59
|
+
}
|
|
60
|
+
})();
|
|
61
|
+
/** A JSON-RPC error surfaced by the estate MCP (or a transport failure reaching it). `code` is the
|
|
62
|
+
* JSON-RPC error code when the failure came back as a JSON-RPC `error` (e.g. -32602 invalid
|
|
63
|
+
* params, -32601 method refused under --readonly, -32603 internal), absent for a transport fault. */
|
|
64
|
+
export class EstateMcpError extends Error {
|
|
65
|
+
code;
|
|
66
|
+
constructor(message, code) {
|
|
67
|
+
super(message);
|
|
68
|
+
this.name = 'EstateMcpError';
|
|
69
|
+
if (code !== undefined)
|
|
70
|
+
this.code = code;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
/** `wicked-estate-mcp`, overridable via `WICKED_ESTATE_MCP_EXE` (mirrors `WICKED_ESTATE_EXE` in
|
|
74
|
+
* `projects/graph.ts` and `WICKED_CORE_EXE` in the adapter). */
|
|
75
|
+
export function estateMcpExe(env = process.env) {
|
|
76
|
+
const override = env['WICKED_ESTATE_MCP_EXE'];
|
|
77
|
+
return override !== undefined && override !== '' ? override : 'wicked-estate-mcp';
|
|
78
|
+
}
|
|
79
|
+
/** The operator global memory store path: `WICKED_MEMORY_DB` wins, else `${WICKED_HOME:-~/.wicked}/memory.db`. */
|
|
80
|
+
export function resolveMemoryDbPath(env = process.env) {
|
|
81
|
+
const explicit = env['WICKED_MEMORY_DB'];
|
|
82
|
+
if (explicit !== undefined && explicit !== '')
|
|
83
|
+
return explicit;
|
|
84
|
+
const home = env['WICKED_HOME'];
|
|
85
|
+
const base = home !== undefined && home !== '' ? home : join(homedir(), '.wicked');
|
|
86
|
+
return join(base, 'memory.db');
|
|
87
|
+
}
|
|
88
|
+
/** The default spawn: `wicked-estate-mcp` with no `--readonly` flag and WICKED_MEMORY_DB pinned. */
|
|
89
|
+
function defaultSpawn(env) {
|
|
90
|
+
return nodeSpawn(estateMcpExe(env), [], {
|
|
91
|
+
stdio: ['pipe', 'pipe', 'pipe'],
|
|
92
|
+
env: { ...env, WICKED_MEMORY_DB: resolveMemoryDbPath(env) },
|
|
93
|
+
windowsHide: true,
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
function isRecord(v) {
|
|
97
|
+
return typeof v === 'object' && v !== null && !Array.isArray(v);
|
|
98
|
+
}
|
|
99
|
+
/** Cap any external text (upstream stderr / JSON-RPC error / tool-result body) carried into an
|
|
100
|
+
* {@link EstateMcpError}: route code surfaces `err.message` in a 502, so an uncapped body could
|
|
101
|
+
* leak large/sensitive payloads and bloat the HTTP error. */
|
|
102
|
+
function capText(s) {
|
|
103
|
+
return s.length > 200 ? `${s.slice(0, 200)}… (${s.length} chars)` : s;
|
|
104
|
+
}
|
|
105
|
+
/** Build an {@link EstateMcpError} from a JSON-RPC `error` object. */
|
|
106
|
+
function estateErrorFrom(err) {
|
|
107
|
+
const message = typeof err['message'] === 'string' ? capText(err['message']) : 'unknown estate-mcp error';
|
|
108
|
+
return typeof err['code'] === 'number' ? new EstateMcpError(message, err['code']) : new EstateMcpError(message);
|
|
109
|
+
}
|
|
110
|
+
/** Unwrap the `id:2` response: a JSON-RPC `error` throws; otherwise parse the MCP tool-result
|
|
111
|
+
* envelope's inner JSON text (`result.content[0].text`) and return it. An `isError:true` envelope
|
|
112
|
+
* (the R1 convention) is a failure too. */
|
|
113
|
+
function unwrapToolResult(msg) {
|
|
114
|
+
if (isRecord(msg['error']))
|
|
115
|
+
throw estateErrorFrom(msg['error']);
|
|
116
|
+
const result = msg['result'];
|
|
117
|
+
if (!isRecord(result)) {
|
|
118
|
+
throw new EstateMcpError('estate-mcp returned a response with no result');
|
|
119
|
+
}
|
|
120
|
+
const content = result['content'];
|
|
121
|
+
const first = Array.isArray(content) ? content[0] : undefined;
|
|
122
|
+
if (!isRecord(first) || typeof first['text'] !== 'string') {
|
|
123
|
+
throw new EstateMcpError('estate-mcp tool result had no text content');
|
|
124
|
+
}
|
|
125
|
+
const text = first['text'];
|
|
126
|
+
// Cap any raw tool-result text carried into an error: route code surfaces `err.message` in a 502,
|
|
127
|
+
let payload;
|
|
128
|
+
try {
|
|
129
|
+
payload = JSON.parse(text);
|
|
130
|
+
}
|
|
131
|
+
catch {
|
|
132
|
+
throw new EstateMcpError(`estate-mcp tool result text was not JSON: ${capText(text)}`);
|
|
133
|
+
}
|
|
134
|
+
if (result['isError'] === true) {
|
|
135
|
+
const detail = isRecord(payload) && typeof payload['message'] === 'string'
|
|
136
|
+
? capText(payload['message'])
|
|
137
|
+
: capText(text);
|
|
138
|
+
throw new EstateMcpError(detail);
|
|
139
|
+
}
|
|
140
|
+
return payload;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Call one `proposal.*` tool on the estate MCP and return its unwrapped result.
|
|
144
|
+
*
|
|
145
|
+
* Spawns the server, performs the handshake, issues the `tools/call`, reads the id-2 response
|
|
146
|
+
* (line-buffered), unwraps the MCP envelope, then closes stdin and kills the child. Throws
|
|
147
|
+
* {@link EstateMcpError} on a JSON-RPC error, a malformed response, an early process exit, a spawn
|
|
148
|
+
* failure, or the timeout.
|
|
149
|
+
*/
|
|
150
|
+
export async function callEstateProposalTool(tool, args, io = {}) {
|
|
151
|
+
const child = (io.spawn ?? (() => defaultSpawn(process.env)))();
|
|
152
|
+
const timeoutMs = io.timeoutMs ?? DEFAULT_ESTATE_MCP_TIMEOUT_MS;
|
|
153
|
+
return new Promise((resolvePromise, rejectPromise) => {
|
|
154
|
+
let settled = false;
|
|
155
|
+
let stdoutBuf = '';
|
|
156
|
+
let stderrBuf = '';
|
|
157
|
+
const finish = (fn) => {
|
|
158
|
+
if (settled)
|
|
159
|
+
return;
|
|
160
|
+
settled = true;
|
|
161
|
+
clearTimeout(timer);
|
|
162
|
+
try {
|
|
163
|
+
child.kill('SIGKILL');
|
|
164
|
+
}
|
|
165
|
+
catch {
|
|
166
|
+
/* already gone */
|
|
167
|
+
}
|
|
168
|
+
fn();
|
|
169
|
+
};
|
|
170
|
+
const timer = setTimeout(() => {
|
|
171
|
+
finish(() => rejectPromise(new EstateMcpError(`wicked-estate-mcp did not answer ${tool} within ${timeoutMs}ms`)));
|
|
172
|
+
}, timeoutMs);
|
|
173
|
+
if (child.stdout === null || child.stdin === null) {
|
|
174
|
+
finish(() => rejectPromise(new EstateMcpError('wicked-estate-mcp spawned without stdio pipes')));
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
177
|
+
const stdin = child.stdin;
|
|
178
|
+
child.stdout.setEncoding('utf8');
|
|
179
|
+
child.stdout.on('data', (chunk) => {
|
|
180
|
+
stdoutBuf += chunk;
|
|
181
|
+
let nl = stdoutBuf.indexOf('\n');
|
|
182
|
+
while (nl >= 0) {
|
|
183
|
+
const line = stdoutBuf.slice(0, nl).trim();
|
|
184
|
+
stdoutBuf = stdoutBuf.slice(nl + 1);
|
|
185
|
+
nl = stdoutBuf.indexOf('\n');
|
|
186
|
+
if (line === '')
|
|
187
|
+
continue;
|
|
188
|
+
let msg;
|
|
189
|
+
try {
|
|
190
|
+
msg = JSON.parse(line);
|
|
191
|
+
}
|
|
192
|
+
catch {
|
|
193
|
+
continue; // non-JSON noise on stdout — ignore, keep scanning for our id
|
|
194
|
+
}
|
|
195
|
+
if (!isRecord(msg))
|
|
196
|
+
continue;
|
|
197
|
+
const id = msg['id'];
|
|
198
|
+
if (id === TOOLS_CALL_ID) {
|
|
199
|
+
finish(() => {
|
|
200
|
+
try {
|
|
201
|
+
resolvePromise(unwrapToolResult(msg));
|
|
202
|
+
}
|
|
203
|
+
catch (err) {
|
|
204
|
+
rejectPromise(err);
|
|
205
|
+
}
|
|
206
|
+
});
|
|
207
|
+
return;
|
|
208
|
+
}
|
|
209
|
+
// A failure of the handshake itself (initialize error, or a parse error with id:null)
|
|
210
|
+
// arrives before the tool result and is fatal — surface it rather than time out.
|
|
211
|
+
if ((id === INITIALIZE_ID || id === null) && isRecord(msg['error'])) {
|
|
212
|
+
finish(() => rejectPromise(estateErrorFrom(msg['error'])));
|
|
213
|
+
return;
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
});
|
|
217
|
+
if (child.stderr !== null) {
|
|
218
|
+
child.stderr.setEncoding('utf8');
|
|
219
|
+
child.stderr.on('data', (c) => {
|
|
220
|
+
stderrBuf += c;
|
|
221
|
+
});
|
|
222
|
+
}
|
|
223
|
+
child.on('error', (err) => {
|
|
224
|
+
finish(() => rejectPromise(new EstateMcpError(`failed to spawn wicked-estate-mcp: ${err.message}`)));
|
|
225
|
+
});
|
|
226
|
+
child.on('close', () => {
|
|
227
|
+
finish(() => rejectPromise(new EstateMcpError(`wicked-estate-mcp exited before answering ${tool}` +
|
|
228
|
+
(stderrBuf.trim() !== '' ? `: ${capText(stderrBuf.trim())}` : ''))));
|
|
229
|
+
});
|
|
230
|
+
// Handshake + call, then EOF so the server drains its buffered lines and exits cleanly.
|
|
231
|
+
const write = (obj) => {
|
|
232
|
+
stdin.write(`${JSON.stringify(obj)}\n`);
|
|
233
|
+
};
|
|
234
|
+
write({
|
|
235
|
+
jsonrpc: '2.0',
|
|
236
|
+
id: INITIALIZE_ID,
|
|
237
|
+
method: 'initialize',
|
|
238
|
+
params: {
|
|
239
|
+
protocolVersion: ESTATE_MCP_PROTOCOL_VERSION,
|
|
240
|
+
capabilities: {},
|
|
241
|
+
clientInfo: { name: CLIENT_NAME, version: CLIENT_VERSION },
|
|
242
|
+
},
|
|
243
|
+
});
|
|
244
|
+
write({ jsonrpc: '2.0', method: 'notifications/initialized', params: {} });
|
|
245
|
+
write({ jsonrpc: '2.0', id: TOOLS_CALL_ID, method: 'tools/call', params: { name: tool, arguments: args } });
|
|
246
|
+
stdin.end();
|
|
247
|
+
});
|
|
248
|
+
}
|
|
249
|
+
//# sourceMappingURL=estate-mcp-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"estate-mcp-client.js","sourceRoot":"","sources":["../../src/core/estate-mcp-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -48,6 +48,7 @@
|
|
|
48
48
|
* SAME message id on a user-driven resend, so a retry that reached the bus twice dedupes),
|
|
49
49
|
* else the bus `event_id` (pure redelivery). Never the doc lifetime.
|
|
50
50
|
*/
|
|
51
|
+
import { type RecallIntent } from './draft-events.js';
|
|
51
52
|
import { InteractiveHandoffLedger } from './ledger.js';
|
|
52
53
|
import type { CoreAdapter } from '../core/adapter.js';
|
|
53
54
|
import type { WorkflowDef } from '../core/types.js';
|
|
@@ -139,7 +140,7 @@ export declare function isAnswerableDocKind(kind: string): boolean;
|
|
|
139
140
|
* live-repo path in the task (wicked-core#294). Revision grounding returns when either of
|
|
140
141
|
* those is fixed.
|
|
141
142
|
*/
|
|
142
|
-
export declare function chatProblem(ask: ChatAsk, currentPath: string, outPath: string): string;
|
|
143
|
+
export declare function chatProblem(ask: ChatAsk, currentPath: string, outPath: string, intent?: RecallIntent): string;
|
|
143
144
|
/** Options for {@link startInteractiveChatSubscriber}. */
|
|
144
145
|
export interface InteractiveChatOptions {
|
|
145
146
|
/** Bus SQLite db path. Omit to let wicked-bus resolve its own default
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-events.d.ts","sourceRoot":"","sources":["../../src/interactive/chat-events.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;
|
|
1
|
+
{"version":3,"file":"chat-events.d.ts","sourceRoot":"","sources":["../../src/interactive/chat-events.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
import { copyFileSync, existsSync, mkdirSync, readFileSync, statSync } from 'node:fs';
|
|
52
52
|
import { basename, join } from 'node:path';
|
|
53
53
|
import { randomUUID } from 'node:crypto';
|
|
54
|
-
import { DOC_NAME, DRAFT_COMPLETED, INTERACTIVE_DOMAIN, INTERACTIVE_PRODUCER, STATUS_POSTED, oneLine, } from './draft-events.js';
|
|
54
|
+
import { DOC_NAME, DRAFT_COMPLETED, INTERACTIVE_DOMAIN, INTERACTIVE_PRODUCER, STATUS_POSTED, oneLine, proposeClause, recallClause, } from './draft-events.js';
|
|
55
55
|
import { InteractiveHandoffLedger } from './ledger.js';
|
|
56
56
|
import { crewStateHome } from '../projects/state-home.js';
|
|
57
57
|
import { resolveProjectGraphBinding } from '../projects/graph.js';
|
|
@@ -230,10 +230,16 @@ export function isAnswerableDocKind(kind) {
|
|
|
230
230
|
* live-repo path in the task (wicked-core#294). Revision grounding returns when either of
|
|
231
231
|
* those is fixed.
|
|
232
232
|
*/
|
|
233
|
-
export function chatProblem(ask, currentPath, outPath) {
|
|
233
|
+
export function chatProblem(ask, currentPath, outPath, intent) {
|
|
234
|
+
// The recall clause (DES-MEM-FACETED-001 Phase 3): the revision leg carries no repo grounding
|
|
235
|
+
// (see the split above), but recall is a repo-LESS estate MCP call, so it rides here too — `''`
|
|
236
|
+
// when the intent carries no axis, keeping the proven CREW-UX-5 shape for an unfiled ask.
|
|
237
|
+
const recall = recallClause(intent);
|
|
238
|
+
const propose = proposeClause();
|
|
234
239
|
return (`Revise the wicked-interactive document "${ask.documentId}" per the user's ask. ` +
|
|
235
240
|
`The user's ask: ${oneLine(ask.text, 2000)} ` +
|
|
236
241
|
`The document's CURRENT version is the HTML file at this absolute path — read it first: ${currentPath} ` +
|
|
242
|
+
`${recall}${propose}` +
|
|
237
243
|
`The revised COMPLETE document MUST be written to exactly this absolute file path: ${outPath}`);
|
|
238
244
|
}
|
|
239
245
|
/** The seam's durable state (handoff ledger + working dirs) follows the daemon's state home —
|
|
@@ -582,7 +588,11 @@ export async function startInteractiveChatSubscriber(adapter, opts = {}) {
|
|
|
582
588
|
}
|
|
583
589
|
try {
|
|
584
590
|
await adapter.launchRun({
|
|
585
|
-
|
|
591
|
+
// DES-MEM-FACETED-001 Phase 3: thread the ask's project as the recall intent's `project`
|
|
592
|
+
// axis (the reliably-available axis on this seam). An unfiled ask leaves it undefined, so
|
|
593
|
+
// the clause is omitted. Phase 6: thread cli/repo (no single cli is in scope here — the
|
|
594
|
+
// launch carries the whole council roster via `clisJson`, not one assigned seat).
|
|
595
|
+
problem: chatProblem(ask, currentPath, outPath, ask.projectId !== undefined ? { project: ask.projectId } : undefined),
|
|
586
596
|
sessionId: runId,
|
|
587
597
|
clisJson: opts.clisJson ?? JSON.stringify(rosterOf(adapter)),
|
|
588
598
|
workflow: INTERACTIVE_CHAT_WORKFLOW,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-events.js","sourceRoot":"","sources":["../../src/interactive/chat-events.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chat-events.js","sourceRoot":"","sources":["../../src/interactive/chat-events.ts"],"names":[],"mappings":"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"}
|
|
@@ -152,6 +152,31 @@ export declare const SNAPSHOT_PATH_MAX = 300;
|
|
|
152
152
|
* (the PTY seat runner refuses embedded newlines — and `oneLine`'s whitespace collapse would
|
|
153
153
|
* respell the path, so it is never applied to paths) and within the prompt budget. */
|
|
154
154
|
export declare function groundablePath(path: string): boolean;
|
|
155
|
+
/** The facet axes a recall intent can carry. Every axis is OPTIONAL and only defined ones ride the
|
|
156
|
+
* clause — `memory.recall` matches on a subset, so a `{project}`-only intent is legitimate.
|
|
157
|
+
* `project` is the reliably-available axis threaded today; `cli`/`repo` are Phase 6. */
|
|
158
|
+
export interface RecallIntent {
|
|
159
|
+
project?: string;
|
|
160
|
+
cli?: string;
|
|
161
|
+
repo?: string;
|
|
162
|
+
}
|
|
163
|
+
/** The non-empty subset of DEFINED axes for a recall intent, or `undefined` when no axis is set.
|
|
164
|
+
* Only defined axes are included, so `JSON.stringify` never emits `undefined`/`null` keys — the
|
|
165
|
+
* clause carries exactly the facets that were threaded. */
|
|
166
|
+
export declare function recallIntentObject(intent?: RecallIntent): Record<string, string> | undefined;
|
|
167
|
+
/** The recall clause (DES-MEM-FACETED-001 Phase 3): instruct the worker to call the read-only
|
|
168
|
+
* wicked-estate MCP `memory.recall` with the faceted intent BEFORE it starts, then ground its
|
|
169
|
+
* work in what returns. Empty (no axis) ⇒ `''` — omitted entirely, exactly like the grounding
|
|
170
|
+
* clause omits the snapshot fallback when there is no snapshot. SINGLE-LINE by contract (the PTY
|
|
171
|
+
* seat runner refuses embedded newlines; `JSON.stringify` of a flat string map never emits one). */
|
|
172
|
+
export declare function recallClause(intent?: RecallIntent): string;
|
|
173
|
+
/** The propose clause (DES-MEM-FACETED-001 write side): instruct the worker to record a reusable
|
|
174
|
+
* learning by calling the wicked-estate MCP `proposal.submit` tool. This is a SAFE write — the
|
|
175
|
+
* proposal lands in a review queue, inert (never recalled or applied) until an operator approves
|
|
176
|
+
* it, so it can never pollute anything. Unconditional (every worker may propose). SINGLE-LINE by
|
|
177
|
+
* contract (the PTY seat runner refuses embedded newlines). Provenance is stamped by the server
|
|
178
|
+
* from the run env, so the worker supplies only content/facets. */
|
|
179
|
+
export declare function proposeClause(): string;
|
|
155
180
|
/**
|
|
156
181
|
* The run's problem statement (the engine scopes it per phase and folds each phase's
|
|
157
182
|
* instructions on top). Carries everything doc-specific: identity, brief, sources, style, and
|
|
@@ -177,7 +202,7 @@ export declare function groundablePath(path: string): boolean;
|
|
|
177
202
|
* SINGLE-LINE by contract: the PTY seat runner refuses any embedded newline (FINDING-011), so
|
|
178
203
|
* every fragment here stays on one line and the brief is flattened+capped by {@link oneLine}.
|
|
179
204
|
*/
|
|
180
|
-
export declare function draftProblem(doc: SourceDocCreated, outPath: string, snapshotDir?: string): string;
|
|
205
|
+
export declare function draftProblem(doc: SourceDocCreated, outPath: string, snapshotDir?: string, intent?: RecallIntent): string;
|
|
181
206
|
/** Deterministic bus idempotency key for the one draft this seam may land per document. */
|
|
182
207
|
export declare function draftIdempotencyKey(documentId: string): string;
|
|
183
208
|
export { InteractiveHandoffLedger, type HandoffLedgerEntry } from './ledger.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"draft-events.d.ts","sourceRoot":"","sources":["../../src/interactive/draft-events.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAOH,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAGvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAI/D,eAAO,MAAM,kBAAkB,uBAAuB,CAAC;AACvD,eAAO,MAAM,WAAW,mCAAmC,CAAC;AAC5D,eAAO,MAAM,eAAe,uCAAuC,CAAC;AACpE,eAAO,MAAM,aAAa,qCAAqC,CAAC;AAEhE,gGAAgG;AAChG,eAAO,MAAM,sBAAsB,sDAAyC,CAAC;AAE7E;kFACkF;AAClF,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE;;;+CAG+C;AAC/C,eAAO,MAAM,oBAAoB,YAAY,CAAC;AAE9C;;6EAE6E;AAC7E,eAAO,MAAM,QAAQ,QAA8B,CAAC;AAIpD,eAAO,MAAM,0BAA0B,sBAAsB,CAAC;AAE9D;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,8BAA8B,EAAE,WAqC5C,CAAC;AAIF,iDAAiD;AACjD,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd;;;;;yFAKqF;IACrF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,gBAAgB,GAAG,IAAI,CAelG;AAED;;2EAE2E;AAC3E,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAGzD;AAED,4EAA4E;AAC5E,MAAM,WAAW,WAAW;IAC1B;yGACqG;IACrG,OAAO,EAAE,MAAM,CAAC;IAChB;;mGAE+F;IAC/F,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,MAAM,EACjB,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAC9B,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAsBlC;AAED;;;;mFAImF;AACnF,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC;;uFAEuF;AACvF,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,YAAY,
|
|
1
|
+
{"version":3,"file":"draft-events.d.ts","sourceRoot":"","sources":["../../src/interactive/draft-events.ts"],"names":[],"mappings":"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"}
|
|
@@ -211,6 +211,51 @@ export const SNAPSHOT_PATH_MAX = 300;
|
|
|
211
211
|
export function groundablePath(path) {
|
|
212
212
|
return path.length <= SNAPSHOT_PATH_MAX && !/[\n\r\t]/.test(path);
|
|
213
213
|
}
|
|
214
|
+
/** The non-empty subset of DEFINED axes for a recall intent, or `undefined` when no axis is set.
|
|
215
|
+
* Only defined axes are included, so `JSON.stringify` never emits `undefined`/`null` keys — the
|
|
216
|
+
* clause carries exactly the facets that were threaded. */
|
|
217
|
+
export function recallIntentObject(intent) {
|
|
218
|
+
if (intent === undefined)
|
|
219
|
+
return undefined;
|
|
220
|
+
const obj = {};
|
|
221
|
+
if (intent.project !== undefined)
|
|
222
|
+
obj['project'] = intent.project;
|
|
223
|
+
if (intent.cli !== undefined)
|
|
224
|
+
obj['cli'] = intent.cli;
|
|
225
|
+
if (intent.repo !== undefined)
|
|
226
|
+
obj['repo'] = intent.repo;
|
|
227
|
+
return Object.keys(obj).length > 0 ? obj : undefined;
|
|
228
|
+
}
|
|
229
|
+
/** The recall clause (DES-MEM-FACETED-001 Phase 3): instruct the worker to call the read-only
|
|
230
|
+
* wicked-estate MCP `memory.recall` with the faceted intent BEFORE it starts, then ground its
|
|
231
|
+
* work in what returns. Empty (no axis) ⇒ `''` — omitted entirely, exactly like the grounding
|
|
232
|
+
* clause omits the snapshot fallback when there is no snapshot. SINGLE-LINE by contract (the PTY
|
|
233
|
+
* seat runner refuses embedded newlines; `JSON.stringify` of a flat string map never emits one). */
|
|
234
|
+
export function recallClause(intent) {
|
|
235
|
+
const intentObj = recallIntentObject(intent);
|
|
236
|
+
if (intentObj === undefined)
|
|
237
|
+
return '';
|
|
238
|
+
return (`Before you start, recall relevant prior learnings and decisions for this work: call the ` +
|
|
239
|
+
`wicked-estate MCP memory.recall tool with intent ${JSON.stringify(intentObj)} and a query ` +
|
|
240
|
+
`describing the task, then ground your work in what it returns (it may be empty — that is fine). `);
|
|
241
|
+
}
|
|
242
|
+
/** The propose clause (DES-MEM-FACETED-001 write side): instruct the worker to record a reusable
|
|
243
|
+
* learning by calling the wicked-estate MCP `proposal.submit` tool. This is a SAFE write — the
|
|
244
|
+
* proposal lands in a review queue, inert (never recalled or applied) until an operator approves
|
|
245
|
+
* it, so it can never pollute anything. Unconditional (every worker may propose). SINGLE-LINE by
|
|
246
|
+
* contract (the PTY seat runner refuses embedded newlines). Provenance is stamped by the server
|
|
247
|
+
* from the run env, so the worker supplies only content/facets. */
|
|
248
|
+
export function proposeClause() {
|
|
249
|
+
return (`When you learn something reusable that would help a future run — a CLI quirk, a repo build ` +
|
|
250
|
+
`gotcha, a tool behavior, a project decision — record it: call the wicked-estate MCP ` +
|
|
251
|
+
`proposal.submit tool with kind_type "memory", payload {"content":"<the learning>","tier":"procedural"}, ` +
|
|
252
|
+
`and facets tagging ONLY the natural axis it is about (e.g. {"cli":"codex"} for a codex quirk, not ` +
|
|
253
|
+
`tied to this repo). NEVER include secrets, credentials, tokens, API keys, or personal data — a ` +
|
|
254
|
+
`promoted proposal becomes shared memory. proposal.submit is a PERMITTED safe write even though your ` +
|
|
255
|
+
`estate MCP is otherwise read-only (it refuses your other writes) — the proposal is inert (never ` +
|
|
256
|
+
`recalled or applied) until a human reviews it, so proposing costs nothing and pollutes nothing; ` +
|
|
257
|
+
`capturing nothing is fine; never fabricate. `);
|
|
258
|
+
}
|
|
214
259
|
/**
|
|
215
260
|
* The run's problem statement (the engine scopes it per phase and folds each phase's
|
|
216
261
|
* instructions on top). Carries everything doc-specific: identity, brief, sources, style, and
|
|
@@ -236,7 +281,7 @@ export function groundablePath(path) {
|
|
|
236
281
|
* SINGLE-LINE by contract: the PTY seat runner refuses any embedded newline (FINDING-011), so
|
|
237
282
|
* every fragment here stays on one line and the brief is flattened+capped by {@link oneLine}.
|
|
238
283
|
*/
|
|
239
|
-
export function draftProblem(doc, outPath, snapshotDir) {
|
|
284
|
+
export function draftProblem(doc, outPath, snapshotDir, intent) {
|
|
240
285
|
const sources = doc.sourcePaths.length > 0
|
|
241
286
|
? `Source materials to read: ${doc.sourcePaths.join(', ')}.`
|
|
242
287
|
: 'There are no source files — the brief alone is the spec.';
|
|
@@ -248,8 +293,12 @@ export function draftProblem(doc, outPath, snapshotDir) {
|
|
|
248
293
|
(snapshotDir !== undefined
|
|
249
294
|
? `If the estate tools are unavailable, fall back to the offline repository snapshot at ${snapshotDir} instead. `
|
|
250
295
|
: '');
|
|
296
|
+
// The recall clause (DES-MEM-FACETED-001 Phase 3) sits right beside grounding; `''` when the
|
|
297
|
+
// intent carries no axis, so an unfiled draft reads exactly as it did before this phase.
|
|
298
|
+
const recall = recallClause(intent);
|
|
299
|
+
const propose = proposeClause();
|
|
251
300
|
return (`Produce the first draft of the wicked-interactive document "${doc.documentId}" ` +
|
|
252
|
-
`(requested style: ${doc.style}). The user's brief: ${brief} ${sources} ${grounding}` +
|
|
301
|
+
`(requested style: ${doc.style}). The user's brief: ${brief} ${sources} ${grounding}${recall}${propose}` +
|
|
253
302
|
`The finished draft MUST be written to exactly this absolute file path: ${outPath}`);
|
|
254
303
|
}
|
|
255
304
|
/** Deterministic bus idempotency key for the one draft this seam may land per document. */
|
|
@@ -689,7 +738,11 @@ export async function startInteractiveDraftSubscriber(adapter, opts = {}) {
|
|
|
689
738
|
}
|
|
690
739
|
try {
|
|
691
740
|
await adapter.launchRun({
|
|
692
|
-
|
|
741
|
+
// DES-MEM-FACETED-001 Phase 3: thread the doc's project as the recall intent's `project`
|
|
742
|
+
// axis (the reliably-available axis on this seam). An unfiled doc leaves it undefined, so
|
|
743
|
+
// the clause is omitted. Phase 6: thread cli/repo (no single cli is in scope here — the
|
|
744
|
+
// launch carries the whole council roster via `clisJson`, not one assigned seat).
|
|
745
|
+
problem: draftProblem(doc, outPath, snapshotDir, doc.projectId !== undefined ? { project: doc.projectId } : undefined),
|
|
693
746
|
sessionId: runId,
|
|
694
747
|
clisJson: opts.clisJson ?? JSON.stringify(rosterOf(adapter)),
|
|
695
748
|
workflow: INTERACTIVE_DRAFT_WORKFLOW,
|