@namzu/cli 12.1.0 → 14.0.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/README.md +35 -2
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +119 -60
- package/dist/cli.js.map +1 -1
- package/dist/commands/acp.d.ts +24 -8
- package/dist/commands/acp.d.ts.map +1 -1
- package/dist/commands/acp.js +221 -80
- package/dist/commands/acp.js.map +1 -1
- package/dist/commands/drain.d.ts.map +1 -1
- package/dist/commands/drain.js +45 -9
- package/dist/commands/drain.js.map +1 -1
- package/dist/commands/login.d.ts +2 -0
- package/dist/commands/login.d.ts.map +1 -1
- package/dist/commands/login.js +79 -21
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/prior-messages.d.ts +11 -0
- package/dist/commands/prior-messages.d.ts.map +1 -0
- package/dist/commands/prior-messages.js +280 -0
- package/dist/commands/prior-messages.js.map +1 -0
- package/dist/commands/resume.d.ts.map +1 -1
- package/dist/commands/resume.js +21 -19
- package/dist/commands/resume.js.map +1 -1
- package/dist/commands/run-stream.d.ts +5 -3
- package/dist/commands/run-stream.d.ts.map +1 -1
- package/dist/commands/run-stream.js +66 -62
- package/dist/commands/run-stream.js.map +1 -1
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +50 -37
- package/dist/commands/run.js.map +1 -1
- package/dist/config/debug.d.ts +55 -0
- package/dist/config/debug.d.ts.map +1 -0
- package/dist/config/debug.js +126 -0
- package/dist/config/debug.js.map +1 -0
- package/dist/config/load.d.ts +88 -4
- package/dist/config/load.d.ts.map +1 -1
- package/dist/config/load.js +386 -56
- package/dist/config/load.js.map +1 -1
- package/dist/config/schema.d.ts +87 -5
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +5 -5
- package/dist/config/schema.js.map +1 -1
- package/dist/config/trusted-project-context.d.ts +11 -0
- package/dist/config/trusted-project-context.d.ts.map +1 -0
- package/dist/config/trusted-project-context.js +28 -0
- package/dist/config/trusted-project-context.js.map +1 -0
- package/dist/context/project-path.d.ts +3 -0
- package/dist/context/project-path.d.ts.map +1 -0
- package/dist/context/project-path.js +16 -0
- package/dist/context/project-path.js.map +1 -0
- package/dist/context/project-tracker.d.ts +30 -0
- package/dist/context/project-tracker.d.ts.map +1 -0
- package/dist/context/project-tracker.js +217 -0
- package/dist/context/project-tracker.js.map +1 -0
- package/dist/context/sandbox.d.ts +29 -9
- package/dist/context/sandbox.d.ts.map +1 -1
- package/dist/context/sandbox.js +8 -0
- package/dist/context/sandbox.js.map +1 -1
- package/dist/doctor/checks/credentials.d.ts.map +1 -1
- package/dist/doctor/checks/credentials.js +7 -1
- package/dist/doctor/checks/credentials.js.map +1 -1
- package/dist/exit-codes.d.ts +5 -4
- package/dist/exit-codes.d.ts.map +1 -1
- package/dist/exit-codes.js +5 -4
- package/dist/exit-codes.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/integrations/clipboard/text.d.ts +43 -0
- package/dist/integrations/clipboard/text.d.ts.map +1 -0
- package/dist/integrations/clipboard/text.js +43 -0
- package/dist/integrations/clipboard/text.js.map +1 -0
- package/dist/integrations/mcp/servers.d.ts +9 -0
- package/dist/integrations/mcp/servers.d.ts.map +1 -1
- package/dist/integrations/mcp/servers.js +11 -4
- package/dist/integrations/mcp/servers.js.map +1 -1
- package/dist/integrations/notifications/terminal.d.ts +32 -0
- package/dist/integrations/notifications/terminal.d.ts.map +1 -0
- package/dist/integrations/notifications/terminal.js +46 -0
- package/dist/integrations/notifications/terminal.js.map +1 -0
- package/dist/integrations/plugins/runtime.d.ts +17 -0
- package/dist/integrations/plugins/runtime.d.ts.map +1 -0
- package/dist/integrations/plugins/runtime.js +100 -0
- package/dist/integrations/plugins/runtime.js.map +1 -0
- package/dist/integrations/providers/codex-device-login.d.ts +27 -0
- package/dist/integrations/providers/codex-device-login.d.ts.map +1 -0
- package/dist/integrations/providers/codex-device-login.js +195 -0
- package/dist/integrations/providers/codex-device-login.js.map +1 -0
- package/dist/integrations/providers/codex-oauth.d.ts +10 -0
- package/dist/integrations/providers/codex-oauth.d.ts.map +1 -0
- package/dist/integrations/providers/codex-oauth.js +95 -0
- package/dist/integrations/providers/codex-oauth.js.map +1 -0
- package/dist/integrations/providers/credential-store.d.ts +40 -4
- package/dist/integrations/providers/credential-store.d.ts.map +1 -1
- package/dist/integrations/providers/credential-store.js +236 -18
- package/dist/integrations/providers/credential-store.js.map +1 -1
- package/dist/integrations/providers/discover.d.ts +25 -13
- package/dist/integrations/providers/discover.d.ts.map +1 -1
- package/dist/integrations/providers/discover.js +98 -44
- package/dist/integrations/providers/discover.js.map +1 -1
- package/dist/integrations/providers/harness-credentials.d.ts +36 -0
- package/dist/integrations/providers/harness-credentials.d.ts.map +1 -0
- package/dist/integrations/providers/harness-credentials.js +146 -0
- package/dist/integrations/providers/harness-credentials.js.map +1 -0
- package/dist/integrations/providers/identity.d.ts +8 -15
- package/dist/integrations/providers/identity.d.ts.map +1 -1
- package/dist/integrations/providers/identity.js +8 -15
- package/dist/integrations/providers/identity.js.map +1 -1
- package/dist/integrations/providers/index.d.ts +7 -4
- package/dist/integrations/providers/index.d.ts.map +1 -1
- package/dist/integrations/providers/index.js +6 -3
- package/dist/integrations/providers/index.js.map +1 -1
- package/dist/integrations/providers/keychain.d.ts +0 -13
- package/dist/integrations/providers/keychain.d.ts.map +1 -1
- package/dist/integrations/providers/keychain.js +0 -76
- package/dist/integrations/providers/keychain.js.map +1 -1
- package/dist/integrations/providers/oauth.d.ts +46 -17
- package/dist/integrations/providers/oauth.d.ts.map +1 -1
- package/dist/integrations/providers/oauth.js +175 -45
- package/dist/integrations/providers/oauth.js.map +1 -1
- package/dist/integrations/providers/register.d.ts.map +1 -1
- package/dist/integrations/providers/register.js +9 -1
- package/dist/integrations/providers/register.js.map +1 -1
- package/dist/integrations/providers/registry.d.ts +8 -1
- package/dist/integrations/providers/registry.d.ts.map +1 -1
- package/dist/integrations/providers/registry.js +29 -0
- package/dist/integrations/providers/registry.js.map +1 -1
- package/dist/integrations/providers/subscription-login.d.ts +2 -0
- package/dist/integrations/providers/subscription-login.d.ts.map +1 -1
- package/dist/integrations/providers/subscription-login.js +117 -14
- package/dist/integrations/providers/subscription-login.js.map +1 -1
- package/dist/integrations/sessions/store.d.ts +111 -1
- package/dist/integrations/sessions/store.d.ts.map +1 -1
- package/dist/integrations/sessions/store.js +400 -7
- package/dist/integrations/sessions/store.js.map +1 -1
- package/dist/integrations/sessions/transcript-export.d.ts +25 -0
- package/dist/integrations/sessions/transcript-export.d.ts.map +1 -0
- package/dist/integrations/sessions/transcript-export.js +441 -0
- package/dist/integrations/sessions/transcript-export.js.map +1 -0
- package/dist/integrations/sessions/turn-evidence.d.ts +138 -0
- package/dist/integrations/sessions/turn-evidence.d.ts.map +1 -0
- package/dist/integrations/sessions/turn-evidence.js +506 -0
- package/dist/integrations/sessions/turn-evidence.js.map +1 -0
- package/dist/integrations/subagents/runtime.d.ts +7 -12
- package/dist/integrations/subagents/runtime.d.ts.map +1 -1
- package/dist/integrations/subagents/runtime.js +19 -10
- package/dist/integrations/subagents/runtime.js.map +1 -1
- package/dist/integrations/trust/store.d.ts.map +1 -1
- package/dist/integrations/trust/store.js +27 -13
- package/dist/integrations/trust/store.js.map +1 -1
- package/dist/permissions/canonical-project.d.ts +9 -0
- package/dist/permissions/canonical-project.d.ts.map +1 -0
- package/dist/permissions/canonical-project.js +13 -0
- package/dist/permissions/canonical-project.js.map +1 -0
- package/dist/permissions/checks.d.ts +65 -0
- package/dist/permissions/checks.d.ts.map +1 -0
- package/dist/permissions/checks.js +122 -0
- package/dist/permissions/checks.js.map +1 -0
- package/dist/permissions/headless-trust.d.ts +9 -5
- package/dist/permissions/headless-trust.d.ts.map +1 -1
- package/dist/permissions/headless-trust.js +18 -4
- package/dist/permissions/headless-trust.js.map +1 -1
- package/dist/permissions/rules.d.ts +16 -7
- package/dist/permissions/rules.d.ts.map +1 -1
- package/dist/permissions/rules.js +78 -13
- package/dist/permissions/rules.js.map +1 -1
- package/dist/tui/App.d.ts +5 -2
- package/dist/tui/App.d.ts.map +1 -1
- package/dist/tui/App.js +1621 -196
- package/dist/tui/App.js.map +1 -1
- package/dist/tui/Composer.d.ts +14 -3
- package/dist/tui/Composer.d.ts.map +1 -1
- package/dist/tui/Composer.js +53 -15
- package/dist/tui/Composer.js.map +1 -1
- package/dist/tui/EditPromptPicker.d.ts +8 -0
- package/dist/tui/EditPromptPicker.d.ts.map +1 -0
- package/dist/tui/EditPromptPicker.js +18 -0
- package/dist/tui/EditPromptPicker.js.map +1 -0
- package/dist/tui/LiveActivity.d.ts.map +1 -1
- package/dist/tui/LiveActivity.js +2 -1
- package/dist/tui/LiveActivity.js.map +1 -1
- package/dist/tui/Markdown.d.ts.map +1 -1
- package/dist/tui/Markdown.js +2 -1
- package/dist/tui/Markdown.js.map +1 -1
- package/dist/tui/PermissionOverlay.d.ts.map +1 -1
- package/dist/tui/PermissionOverlay.js +7 -1
- package/dist/tui/PermissionOverlay.js.map +1 -1
- package/dist/tui/Picker.d.ts +8 -6
- package/dist/tui/Picker.d.ts.map +1 -1
- package/dist/tui/Picker.js +145 -18
- package/dist/tui/Picker.js.map +1 -1
- package/dist/tui/ResumePicker.d.ts.map +1 -1
- package/dist/tui/ResumePicker.js +1 -1
- package/dist/tui/ResumePicker.js.map +1 -1
- package/dist/tui/Transcript.d.ts +4 -2
- package/dist/tui/Transcript.d.ts.map +1 -1
- package/dist/tui/Transcript.js +31 -5
- package/dist/tui/Transcript.js.map +1 -1
- package/dist/tui/agent.d.ts +123 -19
- package/dist/tui/agent.d.ts.map +1 -1
- package/dist/tui/agent.js +757 -144
- package/dist/tui/agent.js.map +1 -1
- package/dist/tui/compact-transcript.d.ts +24 -0
- package/dist/tui/compact-transcript.d.ts.map +1 -0
- package/dist/tui/compact-transcript.js +46 -0
- package/dist/tui/compact-transcript.js.map +1 -0
- package/dist/tui/conversation-history.d.ts +33 -0
- package/dist/tui/conversation-history.d.ts.map +1 -0
- package/dist/tui/conversation-history.js +42 -0
- package/dist/tui/conversation-history.js.map +1 -0
- package/dist/tui/edit-prompts.d.ts +23 -0
- package/dist/tui/edit-prompts.d.ts.map +1 -0
- package/dist/tui/edit-prompts.js +35 -0
- package/dist/tui/edit-prompts.js.map +1 -0
- package/dist/tui/live-window.d.ts +3 -1
- package/dist/tui/live-window.d.ts.map +1 -1
- package/dist/tui/live-window.js +20 -8
- package/dist/tui/live-window.js.map +1 -1
- package/dist/tui/login-prompt.d.ts +5 -0
- package/dist/tui/login-prompt.d.ts.map +1 -1
- package/dist/tui/login-prompt.js +14 -0
- package/dist/tui/login-prompt.js.map +1 -1
- package/dist/tui/slashCommands.d.ts +178 -9
- package/dist/tui/slashCommands.d.ts.map +1 -1
- package/dist/tui/slashCommands.js +340 -16
- package/dist/tui/slashCommands.js.map +1 -1
- package/dist/tui/terminal-display.d.ts +12 -0
- package/dist/tui/terminal-display.d.ts.map +1 -0
- package/dist/tui/terminal-display.js +65 -0
- package/dist/tui/terminal-display.js.map +1 -0
- package/dist/tui/types.d.ts +14 -2
- package/dist/tui/types.d.ts.map +1 -1
- package/dist/tui/workspace-diff.d.ts +40 -0
- package/dist/tui/workspace-diff.d.ts.map +1 -0
- package/dist/tui/workspace-diff.js +101 -0
- package/dist/tui/workspace-diff.js.map +1 -0
- package/package.json +8 -8
|
@@ -49,6 +49,12 @@ import { PROVIDER_REGISTRY } from './registry.js';
|
|
|
49
49
|
* unusable from the one place that most needs it: a machine that has none.
|
|
50
50
|
*/
|
|
51
51
|
export async function beginSubscriptionLogin(options = {}) {
|
|
52
|
+
options.signal?.throwIfAborted();
|
|
53
|
+
const cancelController = new AbortController();
|
|
54
|
+
const attemptSignal = options.signal
|
|
55
|
+
? AbortSignal.any([options.signal, cancelController.signal])
|
|
56
|
+
: cancelController.signal;
|
|
57
|
+
const exchangeOptions = { ...options, signal: attemptSignal };
|
|
52
58
|
const verifier = base64Url(randomBytes(32));
|
|
53
59
|
const challenge = base64Url(createHash('sha256').update(verifier).digest());
|
|
54
60
|
// An independent value, not the verifier reused.
|
|
@@ -59,7 +65,8 @@ export async function beginSubscriptionLogin(options = {}) {
|
|
|
59
65
|
// the way — and the secret PKCE exists to keep out of that URL is exactly
|
|
60
66
|
// the verifier.
|
|
61
67
|
const state = base64Url(randomBytes(16));
|
|
62
|
-
const listener = options.loopback === false ? null : await openLoopback(state);
|
|
68
|
+
const listener = options.loopback === false ? null : await openLoopback(state, attemptSignal);
|
|
69
|
+
attemptSignal.throwIfAborted();
|
|
63
70
|
let settled = false;
|
|
64
71
|
const exchangeOnce = async (code, seenState) => {
|
|
65
72
|
if (settled)
|
|
@@ -71,7 +78,7 @@ export async function beginSubscriptionLogin(options = {}) {
|
|
|
71
78
|
};
|
|
72
79
|
}
|
|
73
80
|
settled = true;
|
|
74
|
-
return exchange(code, state, verifier,
|
|
81
|
+
return exchange(code, state, verifier, exchangeOptions);
|
|
75
82
|
};
|
|
76
83
|
return {
|
|
77
84
|
url: authorizeUrl(challenge, state),
|
|
@@ -100,7 +107,10 @@ export async function beginSubscriptionLogin(options = {}) {
|
|
|
100
107
|
}
|
|
101
108
|
return exchangeOnce(parsed.code, parsed.state ?? state);
|
|
102
109
|
},
|
|
103
|
-
cancel: () =>
|
|
110
|
+
cancel: () => {
|
|
111
|
+
cancelController.abort(new Error('The sign-in attempt was cancelled.'));
|
|
112
|
+
listener?.close();
|
|
113
|
+
},
|
|
104
114
|
};
|
|
105
115
|
}
|
|
106
116
|
/**
|
|
@@ -139,6 +149,30 @@ function authorizeUrl(challenge, state) {
|
|
|
139
149
|
});
|
|
140
150
|
return `${AUTHORIZE_URL}?${params.toString()}`;
|
|
141
151
|
}
|
|
152
|
+
/**
|
|
153
|
+
* Bound a foreign promise even when its implementation ignores `signal`.
|
|
154
|
+
*
|
|
155
|
+
* Supplying an AbortSignal to fetch is only a cooperation request. A custom
|
|
156
|
+
* transport or response body can keep its promise pending after abort, so the
|
|
157
|
+
* caller also owns this independent settlement boundary.
|
|
158
|
+
*/
|
|
159
|
+
async function awaitWithSignal(operation, signal) {
|
|
160
|
+
signal.throwIfAborted();
|
|
161
|
+
let rejectAbort = () => { };
|
|
162
|
+
const aborted = new Promise((_resolve, reject) => {
|
|
163
|
+
rejectAbort = reject;
|
|
164
|
+
});
|
|
165
|
+
const onAbort = () => rejectAbort(signal.reason);
|
|
166
|
+
signal.addEventListener('abort', onAbort, { once: true });
|
|
167
|
+
if (signal.aborted)
|
|
168
|
+
onAbort();
|
|
169
|
+
try {
|
|
170
|
+
return await Promise.race([operation, aborted]);
|
|
171
|
+
}
|
|
172
|
+
finally {
|
|
173
|
+
signal.removeEventListener('abort', onAbort);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
142
176
|
/**
|
|
143
177
|
* Exchange the code, and store the result only once it is whole.
|
|
144
178
|
*
|
|
@@ -147,10 +181,22 @@ function authorizeUrl(challenge, state) {
|
|
|
147
181
|
* there is no path on which a failed login leaves a file behind.
|
|
148
182
|
*/
|
|
149
183
|
async function exchange(code, state, verifier, options) {
|
|
184
|
+
const cancelled = () => ({
|
|
185
|
+
ok: false,
|
|
186
|
+
reason: 'The sign-in was cancelled before it could be stored. Nothing was stored.',
|
|
187
|
+
});
|
|
188
|
+
if (options.signal?.aborted)
|
|
189
|
+
return cancelled();
|
|
150
190
|
const fetchFn = options.fetch ?? globalThis.fetch;
|
|
191
|
+
const deadline = AbortSignal.timeout(30_000);
|
|
192
|
+
const requestSignal = options.signal ? AbortSignal.any([options.signal, deadline]) : deadline;
|
|
193
|
+
const timedOut = () => ({
|
|
194
|
+
ok: false,
|
|
195
|
+
reason: 'The sign-in service did not answer within 30 seconds. Nothing was stored.',
|
|
196
|
+
});
|
|
151
197
|
let res;
|
|
152
198
|
try {
|
|
153
|
-
res = await fetchFn(OAUTH_TOKEN_URL, {
|
|
199
|
+
res = await awaitWithSignal(fetchFn(OAUTH_TOKEN_URL, {
|
|
154
200
|
method: 'POST',
|
|
155
201
|
headers: { 'content-type': 'application/json', accept: 'application/json' },
|
|
156
202
|
body: JSON.stringify({
|
|
@@ -161,10 +207,14 @@ async function exchange(code, state, verifier, options) {
|
|
|
161
207
|
redirect_uri: REDIRECT_URI,
|
|
162
208
|
code_verifier: verifier,
|
|
163
209
|
}),
|
|
164
|
-
signal:
|
|
165
|
-
});
|
|
210
|
+
signal: requestSignal,
|
|
211
|
+
}), requestSignal);
|
|
166
212
|
}
|
|
167
213
|
catch (err) {
|
|
214
|
+
if (options.signal?.aborted)
|
|
215
|
+
return cancelled();
|
|
216
|
+
if (deadline.aborted)
|
|
217
|
+
return timedOut();
|
|
168
218
|
// The MESSAGE of a transport error is safe (a hostname, a timeout); the
|
|
169
219
|
// body of a response is not, and there is none here.
|
|
170
220
|
return {
|
|
@@ -172,6 +222,8 @@ async function exchange(code, state, verifier, options) {
|
|
|
172
222
|
reason: `Could not reach the sign-in service (${err instanceof Error ? err.message : String(err)}). Nothing was stored.`,
|
|
173
223
|
};
|
|
174
224
|
}
|
|
225
|
+
if (options.signal?.aborted)
|
|
226
|
+
return cancelled();
|
|
175
227
|
if (!res.ok) {
|
|
176
228
|
// The status, never the body. A token endpoint answers failures with a
|
|
177
229
|
// document that can contain the very thing this module must not leak.
|
|
@@ -182,14 +234,20 @@ async function exchange(code, state, verifier, options) {
|
|
|
182
234
|
}
|
|
183
235
|
let data;
|
|
184
236
|
try {
|
|
185
|
-
data = (await res.json());
|
|
237
|
+
data = (await awaitWithSignal(res.json(), requestSignal));
|
|
186
238
|
}
|
|
187
239
|
catch {
|
|
240
|
+
if (options.signal?.aborted)
|
|
241
|
+
return cancelled();
|
|
242
|
+
if (deadline.aborted)
|
|
243
|
+
return timedOut();
|
|
188
244
|
return {
|
|
189
245
|
ok: false,
|
|
190
246
|
reason: 'The sign-in service answered with something that is not a token. Nothing was stored.',
|
|
191
247
|
};
|
|
192
248
|
}
|
|
249
|
+
if (options.signal?.aborted)
|
|
250
|
+
return cancelled();
|
|
193
251
|
if (typeof data.access_token !== 'string' || data.access_token.length === 0) {
|
|
194
252
|
return {
|
|
195
253
|
ok: false,
|
|
@@ -207,6 +265,11 @@ async function exchange(code, state, verifier, options) {
|
|
|
207
265
|
};
|
|
208
266
|
let storedAt;
|
|
209
267
|
try {
|
|
268
|
+
// The last foreign await was response-body parsing. Re-check ownership at
|
|
269
|
+
// the durable boundary so a surface that withdrew the attempt cannot get
|
|
270
|
+
// a credential file later. The synchronous write is the success terminal.
|
|
271
|
+
if (options.signal?.aborted)
|
|
272
|
+
return cancelled();
|
|
210
273
|
storedAt = writeStoredSubscriptionCredential(credential, options.home);
|
|
211
274
|
}
|
|
212
275
|
catch (err) {
|
|
@@ -227,7 +290,8 @@ async function exchange(code, state, verifier, options) {
|
|
|
227
290
|
* is no loopback interface. None of those is fatal, because the paste path
|
|
228
291
|
* does not need this.
|
|
229
292
|
*/
|
|
230
|
-
async function openLoopback(expectedState) {
|
|
293
|
+
async function openLoopback(expectedState, signal) {
|
|
294
|
+
signal?.throwIfAborted();
|
|
231
295
|
let settle = () => { };
|
|
232
296
|
const received = new Promise((r) => {
|
|
233
297
|
let done = false;
|
|
@@ -268,19 +332,58 @@ async function openLoopback(expectedState) {
|
|
|
268
332
|
finish(200, 'Signed in. You can close this tab and return to namzu.');
|
|
269
333
|
settle({ code, state });
|
|
270
334
|
});
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
335
|
+
let bindOwned = true;
|
|
336
|
+
let closeOwned = false;
|
|
337
|
+
let abortBind;
|
|
338
|
+
const close = () => {
|
|
339
|
+
if (closeOwned)
|
|
340
|
+
return;
|
|
341
|
+
closeOwned = true;
|
|
342
|
+
settle(null);
|
|
343
|
+
try {
|
|
344
|
+
server.close();
|
|
345
|
+
}
|
|
346
|
+
catch {
|
|
347
|
+
// A cancellation can win before `listen()` owns a handle. There is no
|
|
348
|
+
// resource to close in that branch, and the bind promise is rejected.
|
|
349
|
+
}
|
|
350
|
+
};
|
|
351
|
+
const bound = await new Promise((resolve, reject) => {
|
|
352
|
+
const finish = (value) => {
|
|
353
|
+
if (!bindOwned)
|
|
354
|
+
return;
|
|
355
|
+
bindOwned = false;
|
|
356
|
+
resolve(value);
|
|
357
|
+
};
|
|
358
|
+
abortBind = () => {
|
|
359
|
+
if (!bindOwned)
|
|
360
|
+
return;
|
|
361
|
+
bindOwned = false;
|
|
362
|
+
close();
|
|
363
|
+
reject(signal?.reason);
|
|
364
|
+
};
|
|
365
|
+
signal?.addEventListener('abort', abortBind, { once: true });
|
|
366
|
+
server.once('error', () => finish(false));
|
|
367
|
+
server.listen(SUBSCRIPTION_REDIRECT_PORT, '127.0.0.1', () => finish(true));
|
|
368
|
+
if (signal?.aborted)
|
|
369
|
+
abortBind();
|
|
274
370
|
});
|
|
371
|
+
if (abortBind)
|
|
372
|
+
signal?.removeEventListener('abort', abortBind);
|
|
275
373
|
if (!bound) {
|
|
276
|
-
|
|
374
|
+
close();
|
|
277
375
|
return null;
|
|
278
376
|
}
|
|
377
|
+
if (signal?.aborted) {
|
|
378
|
+
close();
|
|
379
|
+
throw signal.reason;
|
|
380
|
+
}
|
|
381
|
+
signal?.addEventListener('abort', close, { once: true });
|
|
279
382
|
return {
|
|
280
383
|
received,
|
|
281
384
|
close: () => {
|
|
282
|
-
|
|
283
|
-
|
|
385
|
+
signal?.removeEventListener('abort', close);
|
|
386
|
+
close();
|
|
284
387
|
},
|
|
285
388
|
};
|
|
286
389
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subscription-login.js","sourceRoot":"","sources":["../../../src/integrations/providers/subscription-login.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEH,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AACtE,OAAO,EAAe,YAAY,EAAE,MAAM,WAAW,CAAA;AAErD,OAAO,EAAE,iCAAiC,EAAE,MAAM,uBAAuB,CAAA;AAEzE,OAAO,EACN,aAAa,EACb,eAAe,EACf,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,0BAA0B,GAC1B,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAsDjD;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC3C,UAAoC,EAAE;IAEtC,MAAM,QAAQ,GAAG,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAA;IAC3C,MAAM,SAAS,GAAG,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC,CAAA;IAC3E,iDAAiD;IACjD,EAAE;IACF,wEAAwE;IACxE,yEAAyE;IACzE,2EAA2E;IAC3E,0EAA0E;IAC1E,gBAAgB;IAChB,MAAM,KAAK,GAAG,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAA;IAExC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,KAAK,CAAC,CAAA;IAE9E,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,MAAM,YAAY,GAAG,KAAK,EAAE,IAAY,EAAE,SAAiB,EAAyB,EAAE;QACrF,IAAI,OAAO;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,mCAAmC,EAAE,CAAA;QAC9E,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC;YAC3C,OAAO;gBACN,EAAE,EAAE,KAAK;gBACT,MAAM,EACL,8IAA8I;aAC/I,CAAA;QACF,CAAC;QACD,OAAO,GAAG,IAAI,CAAA;QACd,OAAO,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;IAChD,CAAC,CAAA;IAED,OAAO;QACN,GAAG,EAAE,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC;QACnC,WAAW,EAAE,YAAY;QACzB,QAAQ,EAAE,QAAQ,KAAK,IAAI;QAC3B,eAAe,EAAE,GAAG,EAAE,CACrB,QAAQ,KAAK,IAAI;YAChB,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAC/B,GAAG,KAAK,IAAI;gBACX,CAAC,CAAE;oBACD,EAAE,EAAE,KAAK;oBACT,MAAM,EAAE,yDAAyD;iBAChD;gBACnB,CAAC,CAAC,GAAG,CAAC,KAAK;oBACV,CAAC,CAAE;wBACD,EAAE,EAAE,KAAK;wBACT,MAAM,EAAE,iCAAiC,GAAG,CAAC,KAAK,wBAAwB;qBACzD;oBACnB,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CACrC;QACJ,sBAAsB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YACvC,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAA;YACtC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBAClB,OAAO;oBACN,EAAE,EAAE,KAAK;oBACT,MAAM,EACL,0HAA0H;iBAC3H,CAAA;YACF,CAAC;YACD,OAAO,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,CAAA;QACxD,CAAC;QACD,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE;KAC/B,CAAA;AACF,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,4BAA4B,CAC3C,UAAgC,EAChC,QAAgB;IAEhB,OAAO;QACN,KAAK,EAAE,iBAAiB,CAAC,SAAS;QAClC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC1C,MAAM,EAAE,UAAU,CAAC,WAAW;QAC9B,KAAK,EAAE;YACN,YAAY,EAAE,UAAU,CAAC,YAAY;YACrC,SAAS,EAAE,UAAU,CAAC,SAAS;YAC/B,MAAM,EAAE,QAAQ;SAChB;QACD,YAAY,EAAE,EAAE;KAChB,CAAA;AACF,CAAC;AAED,SAAS,YAAY,CAAC,SAAiB,EAAE,KAAa;IACrD,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;QAClC,IAAI,EAAE,MAAM;QACZ,SAAS,EAAE,eAAe;QAC1B,aAAa,EAAE,MAAM;QACrB,YAAY,EAAE,YAAY;QAC1B,KAAK,EAAE,YAAY;QACnB,cAAc,EAAE,SAAS;QACzB,qBAAqB,EAAE,MAAM;QAC7B,KAAK;KACL,CAAC,CAAA;IACF,OAAO,GAAG,aAAa,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAA;AAC/C,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,QAAQ,CACtB,IAAY,EACZ,KAAa,EACb,QAAgB,EAChB,OAAiC;IAEjC,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAA;IACjD,IAAI,GAAa,CAAA;IACjB,IAAI,CAAC;QACJ,GAAG,GAAG,MAAM,OAAO,CAAC,eAAe,EAAE;YACpC,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,EAAE,kBAAkB,EAAE;YAC3E,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACpB,UAAU,EAAE,oBAAoB;gBAChC,SAAS,EAAE,eAAe;gBAC1B,IAAI;gBACJ,KAAK;gBACL,YAAY,EAAE,YAAY;gBAC1B,aAAa,EAAE,QAAQ;aACvB,CAAC;YACF,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;SACnC,CAAC,CAAA;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,wEAAwE;QACxE,qDAAqD;QACrD,OAAO;YACN,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,wCAAwC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,wBAAwB;SACxH,CAAA;IACF,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACb,uEAAuE;QACvE,sEAAsE;QACtE,OAAO;YACN,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,kDAAkD,GAAG,CAAC,MAAM,yEAAyE;SAC7I,CAAA;IACF,CAAC;IACD,IAAI,IAA+E,CAAA;IACnF,IAAI,CAAC;QACJ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAgB,CAAA;IACzC,CAAC;IAAC,MAAM,CAAC;QACR,OAAO;YACN,EAAE,EAAE,KAAK;YACT,MAAM,EACL,sFAAsF;SACvF,CAAA;IACF,CAAC;IACD,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7E,OAAO;YACN,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,mEAAmE;SAC3E,CAAA;IACF,CAAC;IACD,MAAM,UAAU,GAAyB;QACxC,WAAW,EAAE,IAAI,CAAC,YAAY;QAC9B,GAAG,CAAC,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;YAC1E,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,aAAa,EAAE;YACtC,CAAC,CAAC,EAAE,CAAC;QACN,GAAG,CAAC,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ;YACtC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,GAAG,KAAK,EAAE;YACrD,CAAC,CAAC,EAAE,CAAC;KACN,CAAA;IACD,IAAI,QAAgB,CAAA;IACpB,IAAI,CAAC;QACJ,QAAQ,GAAG,iCAAiC,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;IACvE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,wEAAwE;QACxE,6DAA6D;QAC7D,OAAO;YACN,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,gEAAgE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;SAC1H,CAAA;IACF,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAA;AAC1C,CAAC;AAOD;;;;;;;GAOG;AACH,KAAK,UAAU,YAAY,CAAC,aAAqB;IAChD,IAAI,MAAM,GAAwE,GAAG,EAAE,GAAE,CAAC,CAAA;IAC1F,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAyD,CAAC,CAAC,EAAE,EAAE;QAC1F,IAAI,IAAI,GAAG,KAAK,CAAA;QAChB,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE;YACd,IAAI,IAAI;gBAAE,OAAM;YAChB,IAAI,GAAG,IAAI,CAAA;YACX,CAAC,CAAC,CAAC,CAAC,CAAA;QACL,CAAC,CAAA;IACF,CAAC,CAAC,CAAA;IAEF,MAAM,MAAM,GAAW,YAAY,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAChD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,oBAAoB,0BAA0B,EAAE,CAAC,CAAA;QACrF,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QAC3C,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACzC,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QAC3C,MAAM,MAAM,GAAG,CAAC,MAAc,EAAE,IAAY,EAAE,EAAE;YAC/C,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,cAAc,EAAE,2BAA2B,EAAE,CAAC,CAAA;YACtE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACd,CAAC,CAAA;QACD,IAAI,KAAK,EAAE,CAAC;YACX,MAAM,CAAC,GAAG,EAAE,4CAA4C,CAAC,CAAA;YACzD,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;YACtC,OAAM;QACP,CAAC;QACD,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACrB,oEAAoE;YACpE,wEAAwE;YACxE,MAAM,CAAC,GAAG,EAAE,2BAA2B,CAAC,CAAA;YACxC,OAAM;QACP,CAAC;QACD,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,aAAa,CAAC,EAAE,CAAC;YAC/C,iEAAiE;YACjE,oEAAoE;YACpE,sDAAsD;YACtD,MAAM,CAAC,GAAG,EAAE,4CAA4C,CAAC,CAAA;YACzD,OAAM;QACP,CAAC;QACD,MAAM,CAAC,GAAG,EAAE,wDAAwD,CAAC,CAAA;QACrE,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IACxB,CAAC,CAAC,CAAA;IAEF,MAAM,KAAK,GAAG,MAAM,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,EAAE;QACpD,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;QAC1C,MAAM,CAAC,MAAM,CAAC,0BAA0B,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAC5E,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,MAAM,CAAC,KAAK,EAAE,CAAA;QACd,OAAO,IAAI,CAAA;IACZ,CAAC;IACD,OAAO;QACN,QAAQ;QACR,KAAK,EAAE,GAAG,EAAE;YACX,MAAM,CAAC,IAAI,CAAC,CAAA;YACZ,MAAM,CAAC,KAAK,EAAE,CAAA;QACf,CAAC;KACD,CAAA;AACF,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC7C,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;IAC1B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAA;IAEjC,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACjC,IAAI,CAAC;YACJ,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAA;YAC1B,OAAO;gBACN,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,SAAS;gBAC/C,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS;aACjD,CAAA;QACF,CAAC;QAAC,MAAM,CAAC;YACR,OAAO,EAAE,CAAA;QACV,CAAC;IACF,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAA;QAC5D,OAAO;YACN,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,SAAS;YACrC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS;SACvC,CAAA;IACF,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QACzC,OAAO,EAAE,IAAI,EAAE,IAAI,IAAI,SAAS,EAAE,KAAK,EAAE,KAAK,IAAI,SAAS,EAAE,CAAA;IAC9D,CAAC;IACD,2EAA2E;IAC3E,yEAAyE;IACzE,uDAAuD;IACvD,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAA;IAC/B,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;AACvB,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,kBAAkB,CAAC,CAAS,EAAE,CAAS;IAC/C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;IACnC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;IACpC,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;QAAE,OAAO,KAAK,CAAA;IAC9C,OAAO,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;AACpC,CAAC;AAED,SAAS,SAAS,CAAC,KAAa;IAC/B,OAAO,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;AACnC,CAAC"}
|
|
1
|
+
{"version":3,"file":"subscription-login.js","sourceRoot":"","sources":["../../../src/integrations/providers/subscription-login.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEH,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AACtE,OAAO,EAAe,YAAY,EAAE,MAAM,WAAW,CAAA;AAErD,OAAO,EAAE,iCAAiC,EAAE,MAAM,uBAAuB,CAAA;AAEzE,OAAO,EACN,aAAa,EACb,eAAe,EACf,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,0BAA0B,GAC1B,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAwDjD;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC3C,UAAoC,EAAE;IAEtC,OAAO,CAAC,MAAM,EAAE,cAAc,EAAE,CAAA;IAChC,MAAM,gBAAgB,GAAG,IAAI,eAAe,EAAE,CAAA;IAC9C,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM;QACnC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAC5D,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAA;IAC1B,MAAM,eAAe,GAA6B,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,CAAA;IACvF,MAAM,QAAQ,GAAG,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAA;IAC3C,MAAM,SAAS,GAAG,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC,CAAA;IAC3E,iDAAiD;IACjD,EAAE;IACF,wEAAwE;IACxE,yEAAyE;IACzE,2EAA2E;IAC3E,0EAA0E;IAC1E,gBAAgB;IAChB,MAAM,KAAK,GAAG,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAA;IAExC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,KAAK,EAAE,aAAa,CAAC,CAAA;IAC7F,aAAa,CAAC,cAAc,EAAE,CAAA;IAE9B,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,MAAM,YAAY,GAAG,KAAK,EAAE,IAAY,EAAE,SAAiB,EAAyB,EAAE;QACrF,IAAI,OAAO;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,mCAAmC,EAAE,CAAA;QAC9E,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC;YAC3C,OAAO;gBACN,EAAE,EAAE,KAAK;gBACT,MAAM,EACL,8IAA8I;aAC/I,CAAA;QACF,CAAC;QACD,OAAO,GAAG,IAAI,CAAA;QACd,OAAO,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAA;IACxD,CAAC,CAAA;IAED,OAAO;QACN,GAAG,EAAE,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC;QACnC,WAAW,EAAE,YAAY;QACzB,QAAQ,EAAE,QAAQ,KAAK,IAAI;QAC3B,eAAe,EAAE,GAAG,EAAE,CACrB,QAAQ,KAAK,IAAI;YAChB,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAC/B,GAAG,KAAK,IAAI;gBACX,CAAC,CAAE;oBACD,EAAE,EAAE,KAAK;oBACT,MAAM,EAAE,yDAAyD;iBAChD;gBACnB,CAAC,CAAC,GAAG,CAAC,KAAK;oBACV,CAAC,CAAE;wBACD,EAAE,EAAE,KAAK;wBACT,MAAM,EAAE,iCAAiC,GAAG,CAAC,KAAK,wBAAwB;qBACzD;oBACnB,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CACrC;QACJ,sBAAsB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YACvC,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAA;YACtC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBAClB,OAAO;oBACN,EAAE,EAAE,KAAK;oBACT,MAAM,EACL,0HAA0H;iBAC3H,CAAA;YACF,CAAC;YACD,OAAO,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,CAAA;QACxD,CAAC;QACD,MAAM,EAAE,GAAG,EAAE;YACZ,gBAAgB,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC,CAAA;YACvE,QAAQ,EAAE,KAAK,EAAE,CAAA;QAClB,CAAC;KACD,CAAA;AACF,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,4BAA4B,CAC3C,UAAgC,EAChC,QAAgB;IAEhB,OAAO;QACN,KAAK,EAAE,iBAAiB,CAAC,SAAS;QAClC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC1C,MAAM,EAAE,UAAU,CAAC,WAAW;QAC9B,KAAK,EAAE;YACN,YAAY,EAAE,UAAU,CAAC,YAAY;YACrC,SAAS,EAAE,UAAU,CAAC,SAAS;YAC/B,MAAM,EAAE,QAAQ;SAChB;QACD,YAAY,EAAE,EAAE;KAChB,CAAA;AACF,CAAC;AAED,SAAS,YAAY,CAAC,SAAiB,EAAE,KAAa;IACrD,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;QAClC,IAAI,EAAE,MAAM;QACZ,SAAS,EAAE,eAAe;QAC1B,aAAa,EAAE,MAAM;QACrB,YAAY,EAAE,YAAY;QAC1B,KAAK,EAAE,YAAY;QACnB,cAAc,EAAE,SAAS;QACzB,qBAAqB,EAAE,MAAM;QAC7B,KAAK;KACL,CAAC,CAAA;IACF,OAAO,GAAG,aAAa,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAA;AAC/C,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,eAAe,CAAI,SAAyB,EAAE,MAAmB;IAC/E,MAAM,CAAC,cAAc,EAAE,CAAA;IACvB,IAAI,WAAW,GAA8B,GAAG,EAAE,GAAE,CAAC,CAAA;IACrD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE;QACvD,WAAW,GAAG,MAAM,CAAA;IACrB,CAAC,CAAC,CAAA;IACF,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAChD,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;IACzD,IAAI,MAAM,CAAC,OAAO;QAAE,OAAO,EAAE,CAAA;IAC7B,IAAI,CAAC;QACJ,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAA;IAChD,CAAC;YAAS,CAAC;QACV,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC7C,CAAC;AACF,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,QAAQ,CACtB,IAAY,EACZ,KAAa,EACb,QAAgB,EAChB,OAAiC;IAEjC,MAAM,SAAS,GAAG,GAAiB,EAAE,CAAC,CAAC;QACtC,EAAE,EAAE,KAAK;QACT,MAAM,EAAE,0EAA0E;KAClF,CAAC,CAAA;IACF,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO;QAAE,OAAO,SAAS,EAAE,CAAA;IAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAA;IACjD,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IAC5C,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;IAC7F,MAAM,QAAQ,GAAG,GAAiB,EAAE,CAAC,CAAC;QACrC,EAAE,EAAE,KAAK;QACT,MAAM,EAAE,2EAA2E;KACnF,CAAC,CAAA;IACF,IAAI,GAAa,CAAA;IACjB,IAAI,CAAC;QACJ,GAAG,GAAG,MAAM,eAAe,CAC1B,OAAO,CAAC,eAAe,EAAE;YACxB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,EAAE,kBAAkB,EAAE;YAC3E,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACpB,UAAU,EAAE,oBAAoB;gBAChC,SAAS,EAAE,eAAe;gBAC1B,IAAI;gBACJ,KAAK;gBACL,YAAY,EAAE,YAAY;gBAC1B,aAAa,EAAE,QAAQ;aACvB,CAAC;YACF,MAAM,EAAE,aAAa;SACrB,CAAC,EACF,aAAa,CACb,CAAA;IACF,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO;YAAE,OAAO,SAAS,EAAE,CAAA;QAC/C,IAAI,QAAQ,CAAC,OAAO;YAAE,OAAO,QAAQ,EAAE,CAAA;QACvC,wEAAwE;QACxE,qDAAqD;QACrD,OAAO;YACN,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,wCAAwC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,wBAAwB;SACxH,CAAA;IACF,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO;QAAE,OAAO,SAAS,EAAE,CAAA;IAC/C,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACb,uEAAuE;QACvE,sEAAsE;QACtE,OAAO;YACN,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,kDAAkD,GAAG,CAAC,MAAM,yEAAyE;SAC7I,CAAA;IACF,CAAC;IACD,IAAI,IAA+E,CAAA;IACnF,IAAI,CAAC;QACJ,IAAI,GAAG,CAAC,MAAM,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,aAAa,CAAC,CAAgB,CAAA;IACzE,CAAC;IAAC,MAAM,CAAC;QACR,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO;YAAE,OAAO,SAAS,EAAE,CAAA;QAC/C,IAAI,QAAQ,CAAC,OAAO;YAAE,OAAO,QAAQ,EAAE,CAAA;QACvC,OAAO;YACN,EAAE,EAAE,KAAK;YACT,MAAM,EACL,sFAAsF;SACvF,CAAA;IACF,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO;QAAE,OAAO,SAAS,EAAE,CAAA;IAC/C,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7E,OAAO;YACN,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,mEAAmE;SAC3E,CAAA;IACF,CAAC;IACD,MAAM,UAAU,GAAyB;QACxC,WAAW,EAAE,IAAI,CAAC,YAAY;QAC9B,GAAG,CAAC,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;YAC1E,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,aAAa,EAAE;YACtC,CAAC,CAAC,EAAE,CAAC;QACN,GAAG,CAAC,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ;YACtC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,GAAG,KAAK,EAAE;YACrD,CAAC,CAAC,EAAE,CAAC;KACN,CAAA;IACD,IAAI,QAAgB,CAAA;IACpB,IAAI,CAAC;QACJ,0EAA0E;QAC1E,yEAAyE;QACzE,0EAA0E;QAC1E,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO;YAAE,OAAO,SAAS,EAAE,CAAA;QAC/C,QAAQ,GAAG,iCAAiC,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;IACvE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,wEAAwE;QACxE,6DAA6D;QAC7D,OAAO;YACN,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,gEAAgE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;SAC1H,CAAA;IACF,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAA;AAC1C,CAAC;AAOD;;;;;;;GAOG;AACH,KAAK,UAAU,YAAY,CAAC,aAAqB,EAAE,MAAoB;IACtE,MAAM,EAAE,cAAc,EAAE,CAAA;IACxB,IAAI,MAAM,GAAwE,GAAG,EAAE,GAAE,CAAC,CAAA;IAC1F,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAyD,CAAC,CAAC,EAAE,EAAE;QAC1F,IAAI,IAAI,GAAG,KAAK,CAAA;QAChB,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE;YACd,IAAI,IAAI;gBAAE,OAAM;YAChB,IAAI,GAAG,IAAI,CAAA;YACX,CAAC,CAAC,CAAC,CAAC,CAAA;QACL,CAAC,CAAA;IACF,CAAC,CAAC,CAAA;IAEF,MAAM,MAAM,GAAW,YAAY,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAChD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,oBAAoB,0BAA0B,EAAE,CAAC,CAAA;QACrF,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QAC3C,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACzC,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QAC3C,MAAM,MAAM,GAAG,CAAC,MAAc,EAAE,IAAY,EAAE,EAAE;YAC/C,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,cAAc,EAAE,2BAA2B,EAAE,CAAC,CAAA;YACtE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACd,CAAC,CAAA;QACD,IAAI,KAAK,EAAE,CAAC;YACX,MAAM,CAAC,GAAG,EAAE,4CAA4C,CAAC,CAAA;YACzD,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;YACtC,OAAM;QACP,CAAC;QACD,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACrB,oEAAoE;YACpE,wEAAwE;YACxE,MAAM,CAAC,GAAG,EAAE,2BAA2B,CAAC,CAAA;YACxC,OAAM;QACP,CAAC;QACD,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,aAAa,CAAC,EAAE,CAAC;YAC/C,iEAAiE;YACjE,oEAAoE;YACpE,sDAAsD;YACtD,MAAM,CAAC,GAAG,EAAE,4CAA4C,CAAC,CAAA;YACzD,OAAM;QACP,CAAC;QACD,MAAM,CAAC,GAAG,EAAE,wDAAwD,CAAC,CAAA;QACrE,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IACxB,CAAC,CAAC,CAAA;IAEF,IAAI,SAAS,GAAG,IAAI,CAAA;IACpB,IAAI,UAAU,GAAG,KAAK,CAAA;IACtB,IAAI,SAAmC,CAAA;IACvC,MAAM,KAAK,GAAG,GAAG,EAAE;QAClB,IAAI,UAAU;YAAE,OAAM;QACtB,UAAU,GAAG,IAAI,CAAA;QACjB,MAAM,CAAC,IAAI,CAAC,CAAA;QACZ,IAAI,CAAC;YACJ,MAAM,CAAC,KAAK,EAAE,CAAA;QACf,CAAC;QAAC,MAAM,CAAC;YACR,sEAAsE;YACtE,sEAAsE;QACvE,CAAC;IACF,CAAC,CAAA;IACD,MAAM,KAAK,GAAG,MAAM,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC5D,MAAM,MAAM,GAAG,CAAC,KAAc,EAAE,EAAE;YACjC,IAAI,CAAC,SAAS;gBAAE,OAAM;YACtB,SAAS,GAAG,KAAK,CAAA;YACjB,OAAO,CAAC,KAAK,CAAC,CAAA;QACf,CAAC,CAAA;QACD,SAAS,GAAG,GAAG,EAAE;YAChB,IAAI,CAAC,SAAS;gBAAE,OAAM;YACtB,SAAS,GAAG,KAAK,CAAA;YACjB,KAAK,EAAE,CAAA;YACP,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACvB,CAAC,CAAA;QACD,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QAC5D,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;QACzC,MAAM,CAAC,MAAM,CAAC,0BAA0B,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;QAC1E,IAAI,MAAM,EAAE,OAAO;YAAE,SAAS,EAAE,CAAA;IACjC,CAAC,CAAC,CAAA;IACF,IAAI,SAAS;QAAE,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IAC9D,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,KAAK,EAAE,CAAA;QACP,OAAO,IAAI,CAAA;IACZ,CAAC;IACD,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;QACrB,KAAK,EAAE,CAAA;QACP,MAAM,MAAM,CAAC,MAAM,CAAA;IACpB,CAAC;IACD,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;IACxD,OAAO;QACN,QAAQ;QACR,KAAK,EAAE,GAAG,EAAE;YACX,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;YAC3C,KAAK,EAAE,CAAA;QACR,CAAC;KACD,CAAA;AACF,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC7C,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;IAC1B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAA;IAEjC,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACjC,IAAI,CAAC;YACJ,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAA;YAC1B,OAAO;gBACN,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,SAAS;gBAC/C,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS;aACjD,CAAA;QACF,CAAC;QAAC,MAAM,CAAC;YACR,OAAO,EAAE,CAAA;QACV,CAAC;IACF,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAA;QAC5D,OAAO;YACN,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,SAAS;YACrC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS;SACvC,CAAA;IACF,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QACzC,OAAO,EAAE,IAAI,EAAE,IAAI,IAAI,SAAS,EAAE,KAAK,EAAE,KAAK,IAAI,SAAS,EAAE,CAAA;IAC9D,CAAC;IACD,2EAA2E;IAC3E,yEAAyE;IACzE,uDAAuD;IACvD,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAA;IAC/B,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;AACvB,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,kBAAkB,CAAC,CAAS,EAAE,CAAS;IAC/C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;IACnC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;IACpC,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;QAAE,OAAO,KAAK,CAAA;IAC9C,OAAO,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;AACpC,CAAC;AAED,SAAS,SAAS,CAAC,KAAa;IAC/B,OAAO,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;AACnC,CAAC"}
|
|
@@ -10,18 +10,36 @@
|
|
|
10
10
|
* `<cwd>/.namzu`, the same root `query()` writes its runs under, so a
|
|
11
11
|
* session's `session.json` and its `runs/` live in one place.
|
|
12
12
|
*/
|
|
13
|
-
import { DiskSessionStore, type Message, type ProjectId, type SessionId, type TenantId, type TopicId } from '@namzu/sdk';
|
|
13
|
+
import { DiskSessionStore, type Message, type ProjectId, type SessionGoalStore, type SessionId, type TenantId, type TopicId, type UserMessage } from '@namzu/sdk';
|
|
14
|
+
import { DiskConversationEvidence } from './turn-evidence.js';
|
|
14
15
|
export interface CliSessions {
|
|
15
16
|
readonly store: DiskSessionStore;
|
|
17
|
+
/** Durable completion goal owned by each conversation Session. */
|
|
18
|
+
readonly goals: SessionGoalStore;
|
|
16
19
|
readonly projectId: ProjectId;
|
|
17
20
|
readonly topicId: TopicId;
|
|
18
21
|
readonly tenantId: TenantId;
|
|
19
22
|
/** Absolute path of the cwd's `.namzu` root (where pointers live). */
|
|
20
23
|
readonly root: string;
|
|
24
|
+
/**
|
|
25
|
+
* CLI-only turn/run correlation. Optional for embedded test doubles and
|
|
26
|
+
* pre-feature hosts; {@link openSessions} always supplies it.
|
|
27
|
+
*/
|
|
28
|
+
readonly turnEvidence?: DiskConversationEvidence;
|
|
21
29
|
}
|
|
22
30
|
export interface RecentConversation {
|
|
23
31
|
readonly id: SessionId;
|
|
24
32
|
readonly title: string;
|
|
33
|
+
/**
|
|
34
|
+
* Whether a person chose that title, or it was taken from the first thing
|
|
35
|
+
* they typed.
|
|
36
|
+
*
|
|
37
|
+
* Surfaced rather than inferred, because the two read identically in a
|
|
38
|
+
* list and mean different things: a derived title changes meaning as a
|
|
39
|
+
* conversation moves on from its opening question, and a named one does
|
|
40
|
+
* not. `/resume` is the place that difference matters.
|
|
41
|
+
*/
|
|
42
|
+
readonly named: boolean;
|
|
25
43
|
readonly updatedAt: string;
|
|
26
44
|
readonly count: number;
|
|
27
45
|
}
|
|
@@ -54,10 +72,102 @@ export declare function resolveConversation(s: CliSessions, key: string): Promis
|
|
|
54
72
|
* the first run could never have shown this.
|
|
55
73
|
*/
|
|
56
74
|
export declare function startConversation(s: CliSessions): Promise<SessionId>;
|
|
75
|
+
/**
|
|
76
|
+
* Sequential admission gate for a turn or conversation mutation.
|
|
77
|
+
*
|
|
78
|
+
* This establishes the state observed immediately before the operation. It is
|
|
79
|
+
* deliberately not described as a cross-process transaction: Project archive
|
|
80
|
+
* and Session mutation live in separate store records, so serializing an
|
|
81
|
+
* archive racing a live turn requires a durable lease shared by both paths.
|
|
82
|
+
* What this gate does guarantee is that a target already closed, archived or
|
|
83
|
+
* outside the current Project never silently reaches the requested operation.
|
|
84
|
+
*/
|
|
85
|
+
export declare function requireWritableConversation(s: CliSessions, sessionId: SessionId, op?: string): Promise<void>;
|
|
57
86
|
/** Append messages (in order) to a conversation. */
|
|
58
87
|
export declare function appendMessages(s: CliSessions, sessionId: SessionId, messages: readonly Message[]): Promise<void>;
|
|
88
|
+
/**
|
|
89
|
+
* Replace the durable conversation view with a compacted history.
|
|
90
|
+
*
|
|
91
|
+
* The store writes this as one replacement record inside its append-only log,
|
|
92
|
+
* so a crash cannot expose the first half of a compacted conversation. Before
|
|
93
|
+
* replacing, pin the derived title without calling it a chosen name: the
|
|
94
|
+
* opening user message may be among the turns compacted away, and `/resume`
|
|
95
|
+
* must neither rename nor quote the conversation as a side effect of making
|
|
96
|
+
* it smaller.
|
|
97
|
+
*/
|
|
98
|
+
export declare function replaceConversation(s: CliSessions, sessionId: SessionId, messages: readonly Message[]): Promise<void>;
|
|
59
99
|
/** Load a conversation's full message history. */
|
|
60
100
|
export declare function loadConversation(s: CliSessions, sessionId: SessionId): Promise<Message[]>;
|
|
101
|
+
/**
|
|
102
|
+
* Load one conversation for a new model turn.
|
|
103
|
+
*
|
|
104
|
+
* Reading an archived conversation remains legitimate — `history` and export
|
|
105
|
+
* are inspection surfaces — but resuming it would turn a tombstone back into a
|
|
106
|
+
* live writer without a restore operation. The Project gate is separate for
|
|
107
|
+
* the same reason: closing a workspace must not make its history disappear,
|
|
108
|
+
* while it must stop a later turn from starting there.
|
|
109
|
+
*/
|
|
110
|
+
export declare function loadResumableConversation(s: CliSessions, sessionId: string): Promise<Message[]>;
|
|
61
111
|
/** Recent non-empty conversations, newest first — for the `/resume` list. */
|
|
62
112
|
export declare function listRecent(s: CliSessions, limit?: number): Promise<RecentConversation[]>;
|
|
113
|
+
/** The name a person gave this conversation, or `undefined`. */
|
|
114
|
+
export declare function titleOf(s: CliSessions, sessionId: SessionId): string | undefined;
|
|
115
|
+
/**
|
|
116
|
+
* Name a conversation, or with an empty name, take the name away.
|
|
117
|
+
*
|
|
118
|
+
* Removing rather than storing `''` is what keeps "named" a real distinction:
|
|
119
|
+
* an empty string is not a name, and leaving one behind would make `/resume`
|
|
120
|
+
* show a blank row that reads as a conversation with nothing in it.
|
|
121
|
+
*/
|
|
122
|
+
export declare function setTitle(s: CliSessions, sessionId: SessionId, title: string): void;
|
|
123
|
+
/**
|
|
124
|
+
* Continue in a copy, leaving the original where it is.
|
|
125
|
+
*
|
|
126
|
+
* The copy is a real Session with the transcript written into it, not a
|
|
127
|
+
* pointer: the two diverge from here, and a pointer would make the original's
|
|
128
|
+
* later turns appear in the fork.
|
|
129
|
+
*
|
|
130
|
+
* **The fork is always named, and that is the load-bearing part.** Both
|
|
131
|
+
* conversations start with the same first message, so both DERIVE the same
|
|
132
|
+
* title — and `/resume` would show two rows a person cannot tell apart, which
|
|
133
|
+
* is a worse outcome than not being able to fork at all. The name is taken
|
|
134
|
+
* from the source's own, so a fork of a fork stays readable, and it is
|
|
135
|
+
* numbered against the names already in use so a second fork does not collide
|
|
136
|
+
* with the first.
|
|
137
|
+
*/
|
|
138
|
+
export declare function forkConversation(s: CliSessions, sourceId: SessionId): Promise<{
|
|
139
|
+
id: SessionId;
|
|
140
|
+
title: string;
|
|
141
|
+
copied: number;
|
|
142
|
+
}>;
|
|
143
|
+
export interface ForkBeforeUserResult {
|
|
144
|
+
readonly id: SessionId;
|
|
145
|
+
readonly title: string;
|
|
146
|
+
/** Exact durable prefix copied into the fork. */
|
|
147
|
+
readonly messages: readonly Message[];
|
|
148
|
+
/** Exact durable user message the caller selected and may reopen. */
|
|
149
|
+
readonly selected: UserMessage;
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Fork immediately before one durable user message.
|
|
153
|
+
*
|
|
154
|
+
* `userOrdinal` is zero-based among user messages, not among every message.
|
|
155
|
+
* The expected message is a compare-and-swap guard: a picker selects from an
|
|
156
|
+
* in-memory history, then this helper reloads disk. If another write changed
|
|
157
|
+
* that position, it refuses BEFORE creating a session instead of branching at
|
|
158
|
+
* a boundary the operator did not select.
|
|
159
|
+
*
|
|
160
|
+
* An empty prefix is valid. Editing the first prompt creates an empty branch
|
|
161
|
+
* and restores that prompt to the composer; refusing it would make the most
|
|
162
|
+
* common first-turn correction the one prompt this feature cannot edit.
|
|
163
|
+
*/
|
|
164
|
+
export declare function forkConversationBeforeUser(s: CliSessions, sourceId: SessionId, userOrdinal: number, expected: UserMessage): Promise<ForkBeforeUserResult>;
|
|
165
|
+
/**
|
|
166
|
+
* `X (fork)`, then `X (fork 2)`, `X (fork 3)`.
|
|
167
|
+
*
|
|
168
|
+
* Numbered against the names in use rather than against a count of forks,
|
|
169
|
+
* because a name that was removed frees its number and a fork that was renamed
|
|
170
|
+
* never held one.
|
|
171
|
+
*/
|
|
172
|
+
export declare function nextForkName(taken: Record<string, string>, source: string): string;
|
|
63
173
|
//# sourceMappingURL=store.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/integrations/sessions/store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/integrations/sessions/store.ts"],"names":[],"mappings":"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"}
|