ftown 0.26.0 → 0.28.0
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/attention-cli.d.ts +32 -0
- package/dist/attention-cli.js +310 -0
- package/dist/attention-cli.js.map +1 -0
- package/dist/attention-events.d.ts +2 -1
- package/dist/attention-events.js.map +1 -1
- package/dist/attention-store.d.ts +6 -3
- package/dist/attention-store.js +60 -2
- package/dist/attention-store.js.map +1 -1
- package/dist/brief-cli.d.ts +10 -0
- package/dist/brief-cli.js +163 -0
- package/dist/brief-cli.js.map +1 -0
- package/dist/command-rpc.d.ts +11 -0
- package/dist/command-rpc.js +83 -16
- package/dist/command-rpc.js.map +1 -1
- package/dist/coordination/attention-routing.d.ts +37 -0
- package/dist/coordination/attention-routing.js +154 -0
- package/dist/coordination/attention-routing.js.map +1 -0
- package/dist/coordination/board.js +82 -3
- package/dist/coordination/board.js.map +1 -1
- package/dist/coordination/contract-b.d.ts +206 -0
- package/dist/coordination/contract-b.js +58 -0
- package/dist/coordination/contract-b.js.map +1 -0
- package/dist/coordination/contract-c.d.ts +117 -0
- package/dist/coordination/contract-c.js +47 -0
- package/dist/coordination/contract-c.js.map +1 -0
- package/dist/coordination/contract.d.ts +8 -1
- package/dist/coordination/contract.js +1 -1
- package/dist/coordination/contract.js.map +1 -1
- package/dist/coordination/format.js +51 -12
- package/dist/coordination/format.js.map +1 -1
- package/dist/coordination/plan.d.ts +74 -0
- package/dist/coordination/plan.js +534 -0
- package/dist/coordination/plan.js.map +1 -0
- package/dist/coordination/routes-brief.d.ts +10 -0
- package/dist/coordination/routes-brief.js +149 -0
- package/dist/coordination/routes-brief.js.map +1 -0
- package/dist/coordination/routes-plan.d.ts +13 -0
- package/dist/coordination/routes-plan.js +182 -0
- package/dist/coordination/routes-plan.js.map +1 -0
- package/dist/coordination/routes-worktrees.d.ts +29 -0
- package/dist/coordination/routes-worktrees.js +138 -0
- package/dist/coordination/routes-worktrees.js.map +1 -0
- package/dist/coordination/wiring.d.ts +17 -2
- package/dist/coordination/wiring.js +81 -11
- package/dist/coordination/wiring.js.map +1 -1
- package/dist/coordination-cli.d.ts +6 -1
- package/dist/coordination-cli.js +23 -7
- package/dist/coordination-cli.js.map +1 -1
- package/dist/create-ftown-session.d.ts +26 -1
- package/dist/create-ftown-session.js +208 -104
- package/dist/create-ftown-session.js.map +1 -1
- package/dist/ftown-cli.js +14 -2
- package/dist/ftown-cli.js.map +1 -1
- package/dist/index.js +29 -0
- package/dist/index.js.map +1 -1
- package/dist/local-api-server.d.ts +24 -0
- package/dist/local-api-server.js +473 -32
- package/dist/local-api-server.js.map +1 -1
- package/dist/mail-delivery.d.ts +18 -4
- package/dist/mail-delivery.js +50 -8
- package/dist/mail-delivery.js.map +1 -1
- package/dist/plan-cli.d.ts +52 -0
- package/dist/plan-cli.js +357 -0
- package/dist/plan-cli.js.map +1 -0
- package/dist/security/bridge/permissions.js +55 -5
- package/dist/security/bridge/permissions.js.map +1 -1
- package/dist/session-controller.d.ts +17 -1
- package/dist/session-controller.js +93 -2
- package/dist/session-controller.js.map +1 -1
- package/dist/sessions-commands.js +75 -5
- package/dist/sessions-commands.js.map +1 -1
- package/dist/types.d.ts +9 -1
- package/dist/worktrees-cli.d.ts +39 -0
- package/dist/worktrees-cli.js +168 -0
- package/dist/worktrees-cli.js.map +1 -0
- package/dist/worktrees.d.ts +16 -0
- package/dist/worktrees.js +292 -0
- package/dist/worktrees.js.map +1 -0
- package/hooks/ftown-antigravity-hook.sh +12 -6
- package/package.json +2 -2
- package/skills/ftown/SKILL.md +88 -5
- package/skills/ftown/references/orchestrator.md +32 -29
- package/skills/ftown/references/sessions.md +155 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attention-store.js","sourceRoot":"","sources":["../src/attention-store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"attention-store.js","sourceRoot":"","sources":["../src/attention-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/** One local-API call; injectable so tests need no bridge. */
|
|
2
|
+
export type BriefApiFn = (method: string, path: string, body?: unknown) => Promise<unknown>;
|
|
3
|
+
export interface BriefCliDeps {
|
|
4
|
+
api: BriefApiFn;
|
|
5
|
+
env: NodeJS.ProcessEnv;
|
|
6
|
+
log: (text: string) => void;
|
|
7
|
+
errorLog: (text: string) => void;
|
|
8
|
+
readFile: (path: string) => Promise<Buffer>;
|
|
9
|
+
}
|
|
10
|
+
export declare function runBrief(argv: string[], deps?: Partial<BriefCliDeps>): Promise<number>;
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `ftown brief` — manager brief CLI (coordination phase B).
|
|
3
|
+
* Thin client over the local brief API (see coordination/contract-b.ts).
|
|
4
|
+
*/
|
|
5
|
+
import { readFile } from 'node:fs/promises';
|
|
6
|
+
import { Command, CommanderError } from 'commander';
|
|
7
|
+
import { api as request, loadPointer } from './cli-client.js';
|
|
8
|
+
import { UsageError } from './coordination-cli.js';
|
|
9
|
+
import { BRIEF_LIMITS, BRIEF_ROUTES } from './coordination/contract-b.js';
|
|
10
|
+
const BRIEF_USAGE = 'Usage: ftown brief show [--json] [--session-id <id>] | ' +
|
|
11
|
+
'ftown brief set (--file <path.md> | --text <t> | --clear) [--json] [--session-id <id>] | ' +
|
|
12
|
+
'ftown brief note <text...> [--json] [--session-id <id>]';
|
|
13
|
+
async function defaultApi(method, path, body) {
|
|
14
|
+
return request(loadPointer(), method, path, body);
|
|
15
|
+
}
|
|
16
|
+
function resolveDeps(partial) {
|
|
17
|
+
return {
|
|
18
|
+
api: partial?.api ?? defaultApi,
|
|
19
|
+
env: partial?.env ?? process.env,
|
|
20
|
+
log: partial?.log ?? ((text) => console.log(text)),
|
|
21
|
+
errorLog: partial?.errorLog ?? ((text) => console.error(text)),
|
|
22
|
+
readFile: partial?.readFile ?? ((path) => readFile(path)),
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
function requireSessionId(explicit, env) {
|
|
26
|
+
const id = (explicit ?? env.FTOWN_SESSION_ID)?.trim();
|
|
27
|
+
if (!id || !/^[A-Za-z0-9_-]{1,200}$/.test(id)) {
|
|
28
|
+
throw new UsageError('Supply a valid --session-id or set FTOWN_SESSION_ID');
|
|
29
|
+
}
|
|
30
|
+
return id;
|
|
31
|
+
}
|
|
32
|
+
function briefPath(sessionId) {
|
|
33
|
+
return BRIEF_ROUTES.brief.replace(':id', encodeURIComponent(sessionId));
|
|
34
|
+
}
|
|
35
|
+
function briefNotesPath(sessionId) {
|
|
36
|
+
return BRIEF_ROUTES.notes.replace(':id', encodeURIComponent(sessionId));
|
|
37
|
+
}
|
|
38
|
+
function formatNoteTime(ts) {
|
|
39
|
+
const date = new Date(ts);
|
|
40
|
+
const hours = String(date.getHours()).padStart(2, '0');
|
|
41
|
+
const minutes = String(date.getMinutes()).padStart(2, '0');
|
|
42
|
+
return `${hours}:${minutes}`;
|
|
43
|
+
}
|
|
44
|
+
function printBrief(deps, data, json) {
|
|
45
|
+
if (json) {
|
|
46
|
+
deps.log(JSON.stringify(data, null, 2));
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
const brief = data?.brief ?? null;
|
|
50
|
+
if (!brief) {
|
|
51
|
+
deps.log('No brief set.');
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
if (brief.text)
|
|
55
|
+
deps.log(brief.text);
|
|
56
|
+
deps.log('notes:');
|
|
57
|
+
for (const note of brief.notes.slice(-10)) {
|
|
58
|
+
deps.log(`${formatNoteTime(note.ts)} ${note.text}`);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
async function showBrief(deps, opts) {
|
|
62
|
+
const sessionId = requireSessionId(opts.sessionId, deps.env);
|
|
63
|
+
const data = await deps.api('GET', briefPath(sessionId));
|
|
64
|
+
printBrief(deps, data, opts.json === true);
|
|
65
|
+
}
|
|
66
|
+
async function setBrief(deps, opts) {
|
|
67
|
+
const sessionId = requireSessionId(opts.sessionId, deps.env);
|
|
68
|
+
const sources = [opts.file !== undefined, opts.text !== undefined, opts.clear === true].filter(Boolean).length;
|
|
69
|
+
if (sources !== 1) {
|
|
70
|
+
throw new UsageError('Supply exactly one of --file, --text or --clear', BRIEF_USAGE);
|
|
71
|
+
}
|
|
72
|
+
let text;
|
|
73
|
+
if (opts.clear === true) {
|
|
74
|
+
text = null;
|
|
75
|
+
}
|
|
76
|
+
else if (opts.file !== undefined) {
|
|
77
|
+
const content = await deps.readFile(opts.file);
|
|
78
|
+
if (content.length > BRIEF_LIMITS.text) {
|
|
79
|
+
throw new Error(`Brief file exceeds ${BRIEF_LIMITS.text} bytes`);
|
|
80
|
+
}
|
|
81
|
+
text = content.toString('utf8');
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
text = opts.text;
|
|
85
|
+
if ([...text].length > BRIEF_LIMITS.text) {
|
|
86
|
+
throw new Error(`Brief text exceeds ${BRIEF_LIMITS.text} characters`);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
const data = await deps.api('PUT', briefPath(sessionId), { text });
|
|
90
|
+
printBrief(deps, data, opts.json === true);
|
|
91
|
+
}
|
|
92
|
+
async function noteBrief(deps, textParts, opts) {
|
|
93
|
+
const sessionId = requireSessionId(opts.sessionId, deps.env);
|
|
94
|
+
const text = textParts.join(' ');
|
|
95
|
+
if (!text.trim())
|
|
96
|
+
throw new UsageError('Supply the note text', BRIEF_USAGE);
|
|
97
|
+
const data = await deps.api('POST', briefNotesPath(sessionId), { text });
|
|
98
|
+
printBrief(deps, data, opts.json === true);
|
|
99
|
+
}
|
|
100
|
+
function briefProgram(deps) {
|
|
101
|
+
const program = new Command()
|
|
102
|
+
.name('ftown brief')
|
|
103
|
+
.description("Show or update this session's manager brief");
|
|
104
|
+
program.exitOverride();
|
|
105
|
+
program.configureOutput({
|
|
106
|
+
writeOut: (text) => deps.log(text.trimEnd()),
|
|
107
|
+
writeErr: (text) => deps.errorLog(text.trimEnd()),
|
|
108
|
+
});
|
|
109
|
+
program
|
|
110
|
+
.command('show')
|
|
111
|
+
.description('Show the brief and its last 10 notes')
|
|
112
|
+
.option('--json', 'Machine-readable JSON output')
|
|
113
|
+
.option('--plain', 'Human-readable output (default)')
|
|
114
|
+
.option('--session-id <id>', 'Target session; defaults to FTOWN_SESSION_ID')
|
|
115
|
+
.action(async (opts) => {
|
|
116
|
+
await showBrief(deps, opts);
|
|
117
|
+
});
|
|
118
|
+
program
|
|
119
|
+
.command('set')
|
|
120
|
+
.description('Set or clear the brief text (notes are kept)')
|
|
121
|
+
.option('--file <path>', 'Read the brief text from a file')
|
|
122
|
+
.option('--text <t>', 'Brief text')
|
|
123
|
+
.option('--clear', 'Clear the brief text (notes are kept)')
|
|
124
|
+
.option('--json', 'Machine-readable JSON output')
|
|
125
|
+
.option('--plain', 'Human-readable output (default)')
|
|
126
|
+
.option('--session-id <id>', 'Target session; defaults to FTOWN_SESSION_ID')
|
|
127
|
+
.action(async (opts) => {
|
|
128
|
+
await setBrief(deps, opts);
|
|
129
|
+
});
|
|
130
|
+
program
|
|
131
|
+
.command('note')
|
|
132
|
+
.description('Append one note to the brief')
|
|
133
|
+
.argument('<text...>', 'Note text')
|
|
134
|
+
.option('--json', 'Machine-readable JSON output')
|
|
135
|
+
.option('--plain', 'Human-readable output (default)')
|
|
136
|
+
.option('--session-id <id>', 'Target session; defaults to FTOWN_SESSION_ID')
|
|
137
|
+
.action(async (textParts, opts) => {
|
|
138
|
+
await noteBrief(deps, textParts, opts);
|
|
139
|
+
});
|
|
140
|
+
return program;
|
|
141
|
+
}
|
|
142
|
+
export async function runBrief(argv, deps) {
|
|
143
|
+
const resolved = resolveDeps(deps);
|
|
144
|
+
try {
|
|
145
|
+
if (argv.length === 0)
|
|
146
|
+
throw new UsageError('Missing brief command', BRIEF_USAGE);
|
|
147
|
+
await briefProgram(resolved).parseAsync(argv, { from: 'user' });
|
|
148
|
+
return 0;
|
|
149
|
+
}
|
|
150
|
+
catch (error) {
|
|
151
|
+
if (error instanceof CommanderError)
|
|
152
|
+
return error.exitCode === 0 ? 0 : 2;
|
|
153
|
+
if (error instanceof UsageError) {
|
|
154
|
+
resolved.errorLog(`ftown brief: ${error.message}`);
|
|
155
|
+
if (error.usage)
|
|
156
|
+
resolved.errorLog(error.usage);
|
|
157
|
+
return 2;
|
|
158
|
+
}
|
|
159
|
+
resolved.errorLog(`ftown brief: ${error instanceof Error ? error.message : String(error)}`);
|
|
160
|
+
return 1;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
//# sourceMappingURL=brief-cli.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brief-cli.js","sourceRoot":"","sources":["../src/brief-cli.ts"],"names":[],"mappings":"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"}
|
package/dist/command-rpc.d.ts
CHANGED
|
@@ -2,6 +2,9 @@ import type { VerifiedApplication } from './security/protocol.js';
|
|
|
2
2
|
import type { BridgeSecurityService } from './security/bridge/security.js';
|
|
3
3
|
import type { PullRequestStatusService } from './pull-request-status.js';
|
|
4
4
|
import type { PrReviewService } from './pull-request-review-protocol.js';
|
|
5
|
+
import { type BoardSnapshot } from './coordination/contract-c.js';
|
|
6
|
+
import type { BoardQuery, TreeEventLogApi } from './coordination/contract.js';
|
|
7
|
+
import type { AttentionItem } from './attention-events.js';
|
|
5
8
|
import type { SessionController } from './session-controller.js';
|
|
6
9
|
import type { Session } from './types.js';
|
|
7
10
|
import { type AttentionStore } from './attention-store.js';
|
|
@@ -37,8 +40,16 @@ export interface CommandRpcDeps {
|
|
|
37
40
|
updateEffects?: UpdateEffects;
|
|
38
41
|
/** The bridge's long-lived model-routing service (get_model_routing / set_model_routing); resolved only when one of those commands runs. */
|
|
39
42
|
modelRouting?: () => ModelRoutingService;
|
|
43
|
+
/** Read-only board snapshot for `get_session_board`. Absent → unavailable. */
|
|
44
|
+
sessionBoard?: SessionBoardSource;
|
|
40
45
|
publishCommandResponse: (response: CommandResponse, verified?: VerifiedApplication) => Promise<void>;
|
|
41
46
|
}
|
|
47
|
+
/** Reads used to build a BoardSnapshot. Must not mutate sessions, plans, or attention. */
|
|
48
|
+
export interface SessionBoardSource {
|
|
49
|
+
board(query: BoardQuery): Promise<BoardSnapshot['board']>;
|
|
50
|
+
events: Pick<TreeEventLogApi, 'head' | 'read'>;
|
|
51
|
+
openAttention(sessionId: string): Promise<AttentionItem[]>;
|
|
52
|
+
}
|
|
42
53
|
/**
|
|
43
54
|
* Centrifugo commands:rpc adapter: a thin wire-marshaling switch around the
|
|
44
55
|
* transport-agnostic session controller. Commands addressed to another
|
package/dist/command-rpc.js
CHANGED
|
@@ -8,7 +8,9 @@ import { promisify } from 'node:util';
|
|
|
8
8
|
import { prReviewGeneration, toWireSession } from './session-wire.js';
|
|
9
9
|
import { normalizePullRequestUrl } from './pull-request-url.js';
|
|
10
10
|
import { PR_REVIEW_CHUNK_BYTES } from './pull-request-review-protocol.js';
|
|
11
|
-
import { WorkingDirMissingError } from './create-ftown-session.js';
|
|
11
|
+
import { PlanItemError, WorkingDirMissingError } from './create-ftown-session.js';
|
|
12
|
+
import { WorktreeError } from './coordination/contract-b.js';
|
|
13
|
+
import { BOARD_SNAPSHOT_EVENTS } from './coordination/contract-c.js';
|
|
12
14
|
import { AUTOMATION_REMOVED_CODE, AUTOMATION_REMOVED_MESSAGE, AutomationRemovedError, RETIRED_AUTOMATION_COMMANDS } from './retired-automation.js';
|
|
13
15
|
import { AttentionError } from './attention-store.js';
|
|
14
16
|
import { formatAttentionAnswerMail } from './attention-prompt.js';
|
|
@@ -29,6 +31,62 @@ function auditBridgeExec(payload) {
|
|
|
29
31
|
// Auditing is best-effort and must never block execution.
|
|
30
32
|
}
|
|
31
33
|
}
|
|
34
|
+
const PLAN_ITEM_ID = /^p\d{1,6}$/;
|
|
35
|
+
function planItemFromPayload(payload) {
|
|
36
|
+
return typeof payload.planItem === 'string' && PLAN_ITEM_ID.test(payload.planItem) ? payload.planItem : undefined;
|
|
37
|
+
}
|
|
38
|
+
async function newestRootEvents(events, rootId) {
|
|
39
|
+
const head = await events.head(rootId);
|
|
40
|
+
if (head <= 0)
|
|
41
|
+
return [];
|
|
42
|
+
const since = Math.max(0, head - Math.max(BOARD_SNAPSHOT_EVENTS, 500));
|
|
43
|
+
const page = await events.read(rootId, { since, limit: 500 });
|
|
44
|
+
return page.events.slice(-BOARD_SNAPSHOT_EVENTS);
|
|
45
|
+
}
|
|
46
|
+
async function handleGetSessionBoard(deps, command, verified) {
|
|
47
|
+
const payload = command.payload;
|
|
48
|
+
if (!payload || typeof payload !== 'object' || Array.isArray(payload)
|
|
49
|
+
|| payload.bridgeId !== deps.bridgeId
|
|
50
|
+
|| typeof payload.sessionId !== 'string'
|
|
51
|
+
|| !/^[A-Za-z0-9_-]+$/.test(payload.sessionId)
|
|
52
|
+
|| Object.keys(payload).some((key) => key !== 'bridgeId' && key !== 'sessionId')) {
|
|
53
|
+
throw new Error('Invalid board request');
|
|
54
|
+
}
|
|
55
|
+
if (deps.security && verified) {
|
|
56
|
+
await deps.security.policy.revalidate(verified.principal, 'read');
|
|
57
|
+
}
|
|
58
|
+
if (!deps.sessionBoard) {
|
|
59
|
+
return {
|
|
60
|
+
requestId: command.requestId,
|
|
61
|
+
success: false,
|
|
62
|
+
error: 'Board is not available on this bridge',
|
|
63
|
+
data: { code: 'unavailable' },
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
const session = await deps.sessionController.get(payload.sessionId);
|
|
67
|
+
if (!session || session.bridgeId !== deps.bridgeId)
|
|
68
|
+
throw new Error('Unknown session');
|
|
69
|
+
const board = await deps.sessionBoard.board({ sessionId: payload.sessionId, all: true });
|
|
70
|
+
const events = await newestRootEvents(deps.sessionBoard.events, board.rootId);
|
|
71
|
+
const attention = [];
|
|
72
|
+
for (const card of board.cards) {
|
|
73
|
+
if (card.archived)
|
|
74
|
+
continue;
|
|
75
|
+
try {
|
|
76
|
+
const items = await deps.sessionBoard.openAttention(card.sessionId);
|
|
77
|
+
for (const event of items) {
|
|
78
|
+
if (event.resolvedAt)
|
|
79
|
+
continue;
|
|
80
|
+
attention.push({ sessionId: card.sessionId, event });
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
catch (error) {
|
|
84
|
+
console.warn('[Bridge] Could not read child attention for board snapshot:', error instanceof Error ? error.message : error);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
const snapshot = { board, events, attention };
|
|
88
|
+
return { requestId: command.requestId, success: true, data: snapshot };
|
|
89
|
+
}
|
|
32
90
|
/**
|
|
33
91
|
* Centrifugo commands:rpc adapter: a thin wire-marshaling switch around the
|
|
34
92
|
* transport-agnostic session controller. Commands addressed to another
|
|
@@ -52,6 +110,10 @@ export function createCommandHandler(deps) {
|
|
|
52
110
|
if (deps.security && verified)
|
|
53
111
|
await deps.security.revalidate(verified.principal);
|
|
54
112
|
switch (command.type) {
|
|
113
|
+
case 'get_session_board': {
|
|
114
|
+
response = await handleGetSessionBoard(deps, command, verified);
|
|
115
|
+
break;
|
|
116
|
+
}
|
|
55
117
|
case 'preview_chat_list':
|
|
56
118
|
case 'preview_chat_send':
|
|
57
119
|
case 'preview_chat_reply': {
|
|
@@ -341,7 +403,7 @@ export function createCommandHandler(deps) {
|
|
|
341
403
|
throw new Error('Unknown session');
|
|
342
404
|
if (!deps.attentionStore)
|
|
343
405
|
throw new AttentionError('attention_not_ready', 'Attention store is not ready', 503);
|
|
344
|
-
const { item, snapshot, waiterLive } = await deps.attentionStore.answer(payload.sessionId, payload.eventId, payload.answers);
|
|
406
|
+
const { item, snapshot, waiterLive } = await deps.attentionStore.answer(payload.sessionId, payload.eventId, payload.answers, undefined, { kind: 'human' });
|
|
345
407
|
let delivery;
|
|
346
408
|
if (item.prompt?.channel === 'hook' || waiterLive)
|
|
347
409
|
delivery = 'waiter';
|
|
@@ -387,6 +449,7 @@ export function createCommandHandler(deps) {
|
|
|
387
449
|
initialInputDelay: payload.initialInputDelay,
|
|
388
450
|
suppressBriefing: payload.suppressBriefing,
|
|
389
451
|
createMissingWorkingDir: payload.createMissingWorkingDir,
|
|
452
|
+
planItem: planItemFromPayload(payload),
|
|
390
453
|
});
|
|
391
454
|
response = { requestId: command.requestId, success: true, data: { session: toWireSession(session) } };
|
|
392
455
|
break;
|
|
@@ -553,20 +616,24 @@ export function createCommandHandler(deps) {
|
|
|
553
616
|
? { requestId: command.requestId, success: false, error: 'Bridge update request could not be completed.', data: { code: err.code } }
|
|
554
617
|
: err instanceof AutomationRemovedError
|
|
555
618
|
? { requestId: command.requestId, success: false, error: AUTOMATION_REMOVED_MESSAGE, data: { code: AUTOMATION_REMOVED_CODE } }
|
|
556
|
-
: err instanceof
|
|
557
|
-
? { requestId: command.requestId, success: false, error:
|
|
558
|
-
: err instanceof
|
|
559
|
-
? {
|
|
560
|
-
|
|
561
|
-
success: false,
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
619
|
+
: err instanceof WorktreeError
|
|
620
|
+
? { requestId: command.requestId, success: false, error: errorMessage, data: { code: err.code } }
|
|
621
|
+
: err instanceof PlanItemError
|
|
622
|
+
? { requestId: command.requestId, success: false, error: errorMessage }
|
|
623
|
+
: err instanceof BridgeSecurityError
|
|
624
|
+
? { requestId: command.requestId, success: false, error: err.message, data: { code: err.code } }
|
|
625
|
+
: err instanceof WorkingDirMissingError
|
|
626
|
+
? {
|
|
627
|
+
requestId: command.requestId,
|
|
628
|
+
success: false,
|
|
629
|
+
error: errorMessage,
|
|
630
|
+
data: {
|
|
631
|
+
code: err.code,
|
|
632
|
+
workingDir: err.workingDir,
|
|
633
|
+
canCreate: true,
|
|
634
|
+
},
|
|
635
|
+
}
|
|
636
|
+
: { requestId: command.requestId, success: false, error: errorMessage };
|
|
570
637
|
}
|
|
571
638
|
try {
|
|
572
639
|
await deps.publishCommandResponse(response, verified);
|