@justfortytwo/installer 1.0.0-0 → 1.0.0-10
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 +163 -11
- package/dist/commands/doctor.d.ts +2 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +11 -8
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/forget.d.ts.map +1 -1
- package/dist/commands/forget.js +6 -4
- package/dist/commands/forget.js.map +1 -1
- package/dist/commands/init.d.ts +86 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +254 -56
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/pair.d.ts +8 -0
- package/dist/commands/pair.d.ts.map +1 -1
- package/dist/commands/pair.js +37 -3
- package/dist/commands/pair.js.map +1 -1
- package/dist/commands/start.d.ts +2 -0
- package/dist/commands/start.d.ts.map +1 -0
- package/dist/commands/start.js +35 -0
- package/dist/commands/start.js.map +1 -0
- package/dist/commands/status.d.ts +14 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +54 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/stop.d.ts +4 -0
- package/dist/commands/stop.d.ts.map +1 -0
- package/dist/commands/stop.js +34 -0
- package/dist/commands/stop.js.map +1 -0
- package/dist/commands/update.d.ts +6 -2
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +50 -11
- package/dist/commands/update.js.map +1 -1
- package/dist/engine.d.ts +32 -8
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +121 -29
- package/dist/engine.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +23 -6
- package/dist/index.js.map +1 -1
- package/dist/oneiros.d.ts +2 -0
- package/dist/oneiros.d.ts.map +1 -0
- package/dist/oneiros.js +28 -0
- package/dist/oneiros.js.map +1 -0
- package/dist/render.d.ts +4 -3
- package/dist/render.d.ts.map +1 -1
- package/dist/render.js +13 -10
- package/dist/render.js.map +1 -1
- package/dist/runtime.d.ts +75 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +219 -0
- package/dist/runtime.js.map +1 -0
- package/dist/shim.d.ts +52 -0
- package/dist/shim.d.ts.map +1 -0
- package/dist/shim.js +163 -0
- package/dist/shim.js.map +1 -0
- package/package.json +7 -31
package/dist/commands/init.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
// - .env written with secrets + runtime config (gitignored)
|
|
6
6
|
// - CLAUDE.md + context/* rendered from @justfortytwo/persona templates
|
|
7
7
|
// - .mcp.json wired to the memory MCP server
|
|
8
|
-
// - Ollama EMBED_MODEL pulled (warn-only); the memory DB migrated
|
|
8
|
+
// - Ollama EMBED_MODEL checked/pulled at the chosen OLLAMA_BASE_URL (warn-only); the memory DB migrated
|
|
9
9
|
// - .fortytwo/state.json records the resolved sibling version set (rollback baseline)
|
|
10
10
|
// - next-step guidance: set ALLOWED_CHAT_IDS / attach the channel
|
|
11
11
|
//
|
|
@@ -19,7 +19,10 @@ import { spawnSync } from 'node:child_process';
|
|
|
19
19
|
import { createInterface } from 'node:readline/promises';
|
|
20
20
|
import { writeIdentity, recordVersionSet } from '../state.js';
|
|
21
21
|
import { renderPersona, loadPersonaManifest } from '../render.js';
|
|
22
|
-
import { loadMemory, readInstalledVersion, readSelfCompatRanges } from '../engine.js';
|
|
22
|
+
import { loadMemory, readInstalledVersion, readSelfCompatRanges, readSelfVersion, fetchOllamaModels, pullOllamaModel } from '../engine.js';
|
|
23
|
+
import { homedir } from 'node:os';
|
|
24
|
+
import { reconcileOneiros } from '../oneiros.js';
|
|
25
|
+
import { installShim, npmGlobalBin } from '../shim.js';
|
|
23
26
|
// The embedder model the engine standardizes on (privacy: local-only embeddings).
|
|
24
27
|
export const EMBED_MODEL = 'qwen3-embedding:0.6b';
|
|
25
28
|
export const DEFAULT_OLLAMA_BASE_URL = 'http://localhost:11434';
|
|
@@ -137,50 +140,95 @@ export function engineInstallSpecs(compatRanges, isPresent) {
|
|
|
137
140
|
.map(([name, range]) => `${name}@${range}`);
|
|
138
141
|
}
|
|
139
142
|
/**
|
|
140
|
-
* Make sure the
|
|
141
|
-
*
|
|
142
|
-
*
|
|
143
|
-
*
|
|
144
|
-
*
|
|
145
|
-
*
|
|
146
|
-
* `--no-install` opts out (managed/offline installs).
|
|
143
|
+
* Make sure the project has what it runs on: the engine packages from
|
|
144
|
+
* fortytwo.compat (only the missing ones) and this CLI itself, pinned exactly,
|
|
145
|
+
* so `fortytwo` keeps working after `npx` exits. Presence is checked with the
|
|
146
|
+
* SAME project-rooted resolver the renderer/doctor use, so an already-linked dev
|
|
147
|
+
* tree or a prior install is a no-op. `--no-install` opts out (managed/offline
|
|
148
|
+
* installs).
|
|
147
149
|
*/
|
|
148
150
|
async function ensureEngine(root, opts) {
|
|
149
151
|
const specs = engineInstallSpecs(readSelfCompatRanges(), (s) => readInstalledVersion(s) !== null);
|
|
150
|
-
|
|
152
|
+
const cliSpec = cliInstallSpec(readSelfVersion(), readInstalledVersion(CLI_PACKAGE), process.env.FORTYTWO_INSTALLER_SPEC);
|
|
153
|
+
if (specs.length === 0 && !cliSpec)
|
|
151
154
|
return;
|
|
152
155
|
if (opts.noInstall) {
|
|
156
|
+
if (specs.length === 0)
|
|
157
|
+
return; // the project CLI is optional under --no-install
|
|
153
158
|
throw new Error(`init: engine packages are not installed: ${specs.join(', ')}\n` +
|
|
154
159
|
`Install them (npm install ${specs.join(' ')}) or omit --no-install.`);
|
|
155
160
|
}
|
|
156
|
-
process.stdout.write(`Installing engine packages: ${specs.join(', ')}\n`);
|
|
157
161
|
if (!existsSync(join(root, 'package.json'))) {
|
|
158
162
|
spawnSync('npm', ['init', '-y'], { cwd: root, stdio: 'ignore' });
|
|
159
163
|
}
|
|
160
|
-
|
|
164
|
+
if (specs.length > 0) {
|
|
165
|
+
process.stdout.write(`Installing engine packages: ${specs.join(', ')}\n`);
|
|
166
|
+
npmInstallOrThrow(root, specs, [], 'engine packages');
|
|
167
|
+
}
|
|
168
|
+
if (cliSpec) {
|
|
169
|
+
// Exact pin: the project's CLI moves only when you re-run init with a newer
|
|
170
|
+
// installer, never as a side effect of `npm install` or `fortytwo update`.
|
|
171
|
+
process.stdout.write(`Adding the fortytwo CLI to this project: ${cliSpec}\n`);
|
|
172
|
+
npmInstallOrThrow(root, [cliSpec], ['--save-exact'], 'the fortytwo CLI');
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
function npmInstallOrThrow(root, specs, flags, what) {
|
|
176
|
+
const res = spawnSync('npm', ['install', '--no-audit', '--no-fund', ...flags, ...specs], { cwd: root, stdio: 'inherit' });
|
|
161
177
|
if (res.status !== 0) {
|
|
162
178
|
const why = res.error ? res.error.message : `npm exited ${res.status}`;
|
|
163
|
-
throw new Error(`init: failed to install
|
|
179
|
+
throw new Error(`init: failed to install ${what} (${why}). Install manually: npm install ${flags.join(' ')} ${specs.join(' ')}`.replace(/ +/g, ' '));
|
|
164
180
|
}
|
|
165
181
|
}
|
|
182
|
+
export const CLI_PACKAGE = '@justfortytwo/installer';
|
|
183
|
+
/**
|
|
184
|
+
* The install spec that pins this CLI into the project (so node_modules/.bin/
|
|
185
|
+
* fortytwo exists and package-lock.json records it), or null when the project
|
|
186
|
+
* already has exactly this version. `override` (FORTYTWO_INSTALLER_SPEC) lets a
|
|
187
|
+
* dev/CI run install a local tarball instead of the registry copy.
|
|
188
|
+
*/
|
|
189
|
+
export function cliInstallSpec(selfVersion, installedVersion, override) {
|
|
190
|
+
if (!selfVersion || installedVersion === selfVersion)
|
|
191
|
+
return null;
|
|
192
|
+
return override || `${CLI_PACKAGE}@${selfVersion}`;
|
|
193
|
+
}
|
|
166
194
|
function recordInstalledSet(root) {
|
|
167
195
|
const pins = buildVersionPins(readSelfCompatRanges(), readInstalledVersion);
|
|
168
196
|
recordVersionSet(pins, root);
|
|
169
197
|
return pins;
|
|
170
198
|
}
|
|
199
|
+
const defaultEmbedModelDeps = {
|
|
200
|
+
listModels: fetchOllamaModels,
|
|
201
|
+
pullModel: pullOllamaModel,
|
|
202
|
+
log: (line) => { process.stdout.write(line + '\n'); },
|
|
203
|
+
};
|
|
204
|
+
/**
|
|
205
|
+
* Make sure `model` is available on the Ollama server at `baseUrl` — the SAME
|
|
206
|
+
* endpoint written to .env and .mcp.json. Checks /api/tags first and pulls (over
|
|
207
|
+
* HTTP, on that server) only when missing. Warn-only: returns a status note.
|
|
208
|
+
*/
|
|
209
|
+
export async function ensureEmbedModel(baseUrl, model, deps = defaultEmbedModelDeps) {
|
|
210
|
+
const models = await deps.listModels(baseUrl);
|
|
211
|
+
if (models === null) {
|
|
212
|
+
return `! Ollama unreachable at ${baseUrl} — could not check or pull ${model} (semantic recall will degrade until it is available)`;
|
|
213
|
+
}
|
|
214
|
+
if (models.includes(model))
|
|
215
|
+
return `✓ embedder ${model} available at ${baseUrl}`;
|
|
216
|
+
deps.log(`Pulling ${model} on ${baseUrl} (this can take a few minutes)…`);
|
|
217
|
+
const err = await deps.pullModel(baseUrl, model);
|
|
218
|
+
if (err)
|
|
219
|
+
return `! could not pull ${model} via ${baseUrl}: ${err} (semantic recall will degrade until it is present)`;
|
|
220
|
+
return `✓ pulled ${model} on ${baseUrl}`;
|
|
221
|
+
}
|
|
171
222
|
/**
|
|
172
|
-
* Provision local infra:
|
|
223
|
+
* Provision local infra: make the embedder model available (warn-only, like wakeup.sh —
|
|
173
224
|
* the engine degrades to a fake embedder rather than hard-failing) and run the
|
|
174
225
|
* memory DB migrations via the memory package (the engine owns the schema; the
|
|
175
226
|
* CLI must not duplicate it).
|
|
176
227
|
*/
|
|
177
228
|
async function provision(opts) {
|
|
178
229
|
const notes = [];
|
|
179
|
-
// 1. embedder model (best-effort)
|
|
180
|
-
|
|
181
|
-
if (pulled.status !== 0) {
|
|
182
|
-
notes.push(`! could not pull ${opts.embedModel} via ollama (semantic recall will degrade until it is present)`);
|
|
183
|
-
}
|
|
230
|
+
// 1. embedder model (best-effort), on the configured endpoint
|
|
231
|
+
notes.push(await ensureEmbedModel(opts.ollamaBaseUrl, opts.embedModel));
|
|
184
232
|
// 2. db migrations via the memory engine
|
|
185
233
|
const mem = await loadMemory();
|
|
186
234
|
if (mem && typeof mem.openDb === 'function' && typeof mem.runMigrations === 'function') {
|
|
@@ -213,8 +261,9 @@ function parseInitArgs(argv) {
|
|
|
213
261
|
let yes = false;
|
|
214
262
|
let noInstall = false;
|
|
215
263
|
let answersFile;
|
|
216
|
-
let ollamaBaseUrl
|
|
217
|
-
|
|
264
|
+
let ollamaBaseUrl;
|
|
265
|
+
// Shell env, else the DB_PATH a previous init saved in .env (a re-run keeps a custom path).
|
|
266
|
+
let dbPath = readProjectSetting('DB_PATH') ?? DEFAULT_DB_PATH;
|
|
218
267
|
const SECRET_FLAGS = {
|
|
219
268
|
'telegram-bot-token': 'TELEGRAM_BOT_TOKEN',
|
|
220
269
|
'allowed-chat-ids': 'ALLOWED_CHAT_IDS',
|
|
@@ -238,7 +287,7 @@ function parseInitArgs(argv) {
|
|
|
238
287
|
if (name === 'answers')
|
|
239
288
|
answersFile = val;
|
|
240
289
|
else if (name === 'ollama-base-url')
|
|
241
|
-
ollamaBaseUrl = val;
|
|
290
|
+
ollamaBaseUrl = val.trim() || undefined;
|
|
242
291
|
else if (name === 'db-path')
|
|
243
292
|
dbPath = val;
|
|
244
293
|
else if (SECRET_FLAGS[name])
|
|
@@ -252,15 +301,50 @@ function parseInitArgs(argv) {
|
|
|
252
301
|
secrets.ALLOWED_CHAT_IDS ??= process.env.ALLOWED_CHAT_IDS;
|
|
253
302
|
return { yes, noInstall, answersFile, flags, secrets, ollamaBaseUrl, dbPath };
|
|
254
303
|
}
|
|
304
|
+
/**
|
|
305
|
+
* A list field's manifest prompt without its "one per line" hint. readline is
|
|
306
|
+
* single-line (Enter — or Shift+Enter in many terminals — submits), so that hint
|
|
307
|
+
* promised input the UI can't take; askList gives the real instructions instead.
|
|
308
|
+
*/
|
|
309
|
+
export function listPromptLabel(prompt) {
|
|
310
|
+
return prompt.replace(/,?\s*one (?:item |step )?per line\.?\s*$/i, '').trim();
|
|
311
|
+
}
|
|
312
|
+
/**
|
|
313
|
+
* Collect a list one item per prompt; a blank entry ends it. Each answer is ONE
|
|
314
|
+
* item, verbatim (trimmed) — commas inside it are kept. A required list re-asks
|
|
315
|
+
* on an immediate blank instead of returning []. Pure: `ask` is injected.
|
|
316
|
+
*/
|
|
317
|
+
export async function askList(label, ask, opts = {}) {
|
|
318
|
+
const items = [];
|
|
319
|
+
let prompt = `${label} — enter one at a time.\nPress Enter on an empty line when done.\n> `;
|
|
320
|
+
while (true) {
|
|
321
|
+
const item = (await ask(prompt)).trim();
|
|
322
|
+
if (item) {
|
|
323
|
+
items.push(item);
|
|
324
|
+
prompt = '> ';
|
|
325
|
+
}
|
|
326
|
+
else if (items.length === 0 && opts.required) {
|
|
327
|
+
prompt = ' (at least one is required)\n> ';
|
|
328
|
+
}
|
|
329
|
+
else {
|
|
330
|
+
return items;
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
/** Ask for the required fields still missing, in order; lists item by item. Pure: `ask` is injected. */
|
|
335
|
+
export async function askMissingAnswers(fields, missing, answers, ask) {
|
|
336
|
+
for (const key of missing) {
|
|
337
|
+
const field = fields.find((f) => f.key === key);
|
|
338
|
+
answers[key] = field.type === 'list'
|
|
339
|
+
? await askList(listPromptLabel(field.prompt), ask, { required: field.required })
|
|
340
|
+
: (await ask(`${field.prompt}\n> `)).trim();
|
|
341
|
+
}
|
|
342
|
+
}
|
|
255
343
|
/** Prompt (readline) for the required fields still missing. TTY only. */
|
|
256
344
|
async function promptMissing(fields, missing, answers) {
|
|
257
345
|
const rl = createInterface({ input: process.stdin, output: process.stdout });
|
|
258
346
|
try {
|
|
259
|
-
|
|
260
|
-
const field = fields.find((f) => f.key === key);
|
|
261
|
-
const ans = (await rl.question(`${field.prompt}\n> `)).trim();
|
|
262
|
-
answers[key] = field.type === 'list' ? coerceList(ans) : ans;
|
|
263
|
-
}
|
|
347
|
+
await askMissingAnswers(fields, missing, answers, (q) => rl.question(q));
|
|
264
348
|
}
|
|
265
349
|
finally {
|
|
266
350
|
rl.close();
|
|
@@ -287,6 +371,116 @@ export async function collectChannelSecrets(existing, ask) {
|
|
|
287
371
|
}
|
|
288
372
|
return added;
|
|
289
373
|
}
|
|
374
|
+
const isHttpUrl = (v) => {
|
|
375
|
+
try {
|
|
376
|
+
const u = new URL(v);
|
|
377
|
+
return (u.protocol === 'http:' || u.protocol === 'https:') && u.hostname !== '';
|
|
378
|
+
}
|
|
379
|
+
catch {
|
|
380
|
+
return false;
|
|
381
|
+
}
|
|
382
|
+
};
|
|
383
|
+
/** The value of `key` in .env content (last assignment wins; surrounding quotes stripped), or undefined. */
|
|
384
|
+
export function readEnvValue(content, key) {
|
|
385
|
+
return parseEnvContent(content)[key] || undefined;
|
|
386
|
+
}
|
|
387
|
+
/** All `KEY=value` assignments in .env content (last wins; surrounding quotes stripped; other lines ignored). */
|
|
388
|
+
export function parseEnvContent(content) {
|
|
389
|
+
const vars = {};
|
|
390
|
+
for (const line of content.split(/\r?\n/)) {
|
|
391
|
+
const m = line.match(/^([A-Z0-9_]+)=(.*)$/);
|
|
392
|
+
if (m)
|
|
393
|
+
vars[m[1]] = m[2].trim().replace(/^(['"])(.*)\1$/, '$2');
|
|
394
|
+
}
|
|
395
|
+
return vars;
|
|
396
|
+
}
|
|
397
|
+
/**
|
|
398
|
+
* A runtime setting for a command run inside the project: the shell env wins,
|
|
399
|
+
* else the value `init` saved in `<root>/.env`. The CLI never loads .env into
|
|
400
|
+
* process.env, so without this fallback doctor/forget silently used defaults
|
|
401
|
+
* (e.g. localhost Ollama) whenever the variable was not exported.
|
|
402
|
+
*/
|
|
403
|
+
export function readProjectSetting(key, root = process.cwd()) {
|
|
404
|
+
const fromShell = process.env[key]?.trim();
|
|
405
|
+
if (fromShell)
|
|
406
|
+
return fromShell;
|
|
407
|
+
const envPath = join(root, '.env');
|
|
408
|
+
return existsSync(envPath) ? readEnvValue(readFileSync(envPath, 'utf8'), key) : undefined;
|
|
409
|
+
}
|
|
410
|
+
/**
|
|
411
|
+
* Choose the Ollama endpoint for this init. Precedence:
|
|
412
|
+
* 1. an explicit `--ollama-base-url` — used as-is, never re-asked;
|
|
413
|
+
* 2. interactive: ask, with a default of the inherited OLLAMA_BASE_URL env,
|
|
414
|
+
* else the value already saved in the project's .env (so re-running init
|
|
415
|
+
* and pressing Enter keeps a custom endpoint), else http://localhost:11434;
|
|
416
|
+
* a typed URL is used exactly as entered (an invalid one is re-asked, up to
|
|
417
|
+
* 3 tries);
|
|
418
|
+
* 3. non-interactive (`ask` absent): that same default.
|
|
419
|
+
* Pure: `ask` is injected, so it unit-tests without a TTY.
|
|
420
|
+
*/
|
|
421
|
+
export async function resolveOllamaBaseUrl(opts) {
|
|
422
|
+
if (opts.flag)
|
|
423
|
+
return opts.flag;
|
|
424
|
+
const fallback = opts.env?.trim() || opts.saved?.trim() || DEFAULT_OLLAMA_BASE_URL;
|
|
425
|
+
if (!opts.ask)
|
|
426
|
+
return fallback;
|
|
427
|
+
let prompt = `Ollama base URL — where the embedder runs (Enter for ${fallback}): `;
|
|
428
|
+
for (let attempt = 0; attempt < 3; attempt++) {
|
|
429
|
+
const answer = (await opts.ask(prompt)).trim();
|
|
430
|
+
if (!answer)
|
|
431
|
+
return fallback;
|
|
432
|
+
if (isHttpUrl(answer))
|
|
433
|
+
return answer;
|
|
434
|
+
prompt = ` "${answer}" is not an http(s) URL (e.g. http://ollama:11434). Ollama base URL (Enter for ${fallback}): `;
|
|
435
|
+
}
|
|
436
|
+
throw new Error('init: no valid Ollama base URL given (expected http(s)://host:port)');
|
|
437
|
+
}
|
|
438
|
+
/**
|
|
439
|
+
* The closing "what now" lines. Points at the user-facing lifecycle
|
|
440
|
+
* (`fortytwo start`, `fortytwo pair`), never at the internal service bins.
|
|
441
|
+
* Telegram is optional: its bridge only starts with TELEGRAM_BOT_TOKEN, so say
|
|
442
|
+
* so here rather than let `start` skip it silently.
|
|
443
|
+
*/
|
|
444
|
+
export function nextSteps(o) {
|
|
445
|
+
const cmd = o.cmd ?? 'fortytwo';
|
|
446
|
+
const lines = ['', 'Fortytwo is ready.', '', 'Start it with:', ` ${cmd} start`, ''];
|
|
447
|
+
if (!o.hasBotToken) {
|
|
448
|
+
lines.push('To use Telegram, first set TELEGRAM_BOT_TOKEN in .env (create a bot with @BotFather).');
|
|
449
|
+
}
|
|
450
|
+
if (o.allowedChatIds) {
|
|
451
|
+
lines.push(`Telegram chat(s) ${o.allowedChatIds} are already authorized. To connect another, with fortytwo running:`);
|
|
452
|
+
}
|
|
453
|
+
else {
|
|
454
|
+
lines.push('Then connect Telegram with:');
|
|
455
|
+
}
|
|
456
|
+
lines.push(` ${cmd} pair`);
|
|
457
|
+
return lines;
|
|
458
|
+
}
|
|
459
|
+
/**
|
|
460
|
+
* The init report line for the user-level launcher, and the command to tell the
|
|
461
|
+
* user to type: `fortytwo` when our launcher is on PATH, else `npx fortytwo`
|
|
462
|
+
* (which runs the project-local CLI with no download).
|
|
463
|
+
*/
|
|
464
|
+
export function shimReport(r) {
|
|
465
|
+
switch (r.status) {
|
|
466
|
+
case 'installed':
|
|
467
|
+
case 'updated':
|
|
468
|
+
case 'unchanged':
|
|
469
|
+
return { line: `✓ fortytwo command: ${r.path} (runs the CLI of the project you are in)`, cmd: 'fortytwo' };
|
|
470
|
+
case 'foreign':
|
|
471
|
+
return {
|
|
472
|
+
line: `! left ${r.path} alone (not installed by Fortytwo); this project's CLI runs with \`npx fortytwo\``,
|
|
473
|
+
cmd: 'npx fortytwo',
|
|
474
|
+
};
|
|
475
|
+
case 'no-dir':
|
|
476
|
+
return {
|
|
477
|
+
line: '! no writable directory on your PATH for the fortytwo command; run it from this project with `npx fortytwo` (or set FORTYTWO_BIN_DIR and re-run init)',
|
|
478
|
+
cmd: 'npx fortytwo',
|
|
479
|
+
};
|
|
480
|
+
case 'unsupported':
|
|
481
|
+
return { line: `! no fortytwo launcher on ${r.platform}; run it from this project with \`npx fortytwo\``, cmd: 'npx fortytwo' };
|
|
482
|
+
}
|
|
483
|
+
}
|
|
290
484
|
export async function runInit(argv) {
|
|
291
485
|
const root = process.cwd();
|
|
292
486
|
const opts = parseInitArgs(argv);
|
|
@@ -321,29 +515,49 @@ export async function runInit(argv) {
|
|
|
321
515
|
updatedAt: new Date().toISOString(),
|
|
322
516
|
};
|
|
323
517
|
writeIdentity(identity, root);
|
|
324
|
-
// Interactively
|
|
325
|
-
// the
|
|
326
|
-
// runs are unaffected (
|
|
518
|
+
// Interactively ask for the Ollama endpoint (Enter keeps the default) and offer
|
|
519
|
+
// the optional Telegram secrets not already provided, so neither needs a second
|
|
520
|
+
// manual .env edit. Non-TTY/--yes runs are unaffected (flags/env/defaults).
|
|
521
|
+
const envPath = join(root, '.env');
|
|
522
|
+
const urlSources = {
|
|
523
|
+
flag: opts.ollamaBaseUrl,
|
|
524
|
+
env: process.env.OLLAMA_BASE_URL,
|
|
525
|
+
saved: existsSync(envPath) ? readEnvValue(readFileSync(envPath, 'utf8'), 'OLLAMA_BASE_URL') : undefined,
|
|
526
|
+
};
|
|
527
|
+
let ollamaBaseUrl;
|
|
327
528
|
if (interactive) {
|
|
328
529
|
const rl = createInterface({ input: process.stdin, output: process.stdout });
|
|
329
530
|
try {
|
|
330
|
-
|
|
531
|
+
const ask = (q) => rl.question(q);
|
|
532
|
+
ollamaBaseUrl = await resolveOllamaBaseUrl({ ...urlSources, ask });
|
|
533
|
+
Object.assign(opts.secrets, await collectChannelSecrets(opts.secrets, ask));
|
|
331
534
|
}
|
|
332
535
|
finally {
|
|
333
536
|
rl.close();
|
|
334
537
|
}
|
|
335
538
|
}
|
|
539
|
+
else {
|
|
540
|
+
ollamaBaseUrl = await resolveOllamaBaseUrl(urlSources);
|
|
541
|
+
}
|
|
336
542
|
// Seed runtime config alongside any provided secrets.
|
|
337
543
|
writeEnv({
|
|
338
|
-
OLLAMA_BASE_URL:
|
|
544
|
+
OLLAMA_BASE_URL: ollamaBaseUrl, // same value as .mcp.json + the provision check/pull
|
|
339
545
|
EMBED_MODEL,
|
|
340
546
|
DB_PATH: opts.dbPath,
|
|
341
547
|
...opts.secrets,
|
|
342
548
|
}, root);
|
|
343
549
|
const render = renderPersona(identity, { root });
|
|
344
|
-
writeMcpJson(root, opts.dbPath,
|
|
345
|
-
const provisionNotes = await provision({ ollamaBaseUrl
|
|
550
|
+
writeMcpJson(root, opts.dbPath, ollamaBaseUrl);
|
|
551
|
+
const provisionNotes = await provision({ ollamaBaseUrl, embedModel: EMBED_MODEL, dbPath: opts.dbPath });
|
|
552
|
+
await reconcileOneiros(root, opts.dbPath);
|
|
346
553
|
const pins = recordInstalledSet(root);
|
|
554
|
+
const shim = shimReport(installShim({
|
|
555
|
+
home: homedir(),
|
|
556
|
+
pathEnv: process.env.PATH ?? '',
|
|
557
|
+
platform: process.platform,
|
|
558
|
+
override: process.env.FORTYTWO_BIN_DIR || undefined,
|
|
559
|
+
npmGlobalBin,
|
|
560
|
+
}));
|
|
347
561
|
// Report.
|
|
348
562
|
const out = process.stdout;
|
|
349
563
|
out.write(`✓ wrote .fortytwo/identity.json (${Object.keys(answers).length} answers)\n`);
|
|
@@ -352,28 +566,12 @@ export async function runInit(argv) {
|
|
|
352
566
|
for (const n of provisionNotes)
|
|
353
567
|
out.write(` ${n}\n`);
|
|
354
568
|
out.write(`✓ recorded ${pins.length} installed engine package(s)\n`);
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
next.push(" • set TELEGRAM_BOT_TOKEN in .env — create a bot with @BotFather (the bridge won't start without it)");
|
|
362
|
-
}
|
|
363
|
-
next.push(' • start the channel bridge');
|
|
364
|
-
if (opts.secrets.ALLOWED_CHAT_IDS) {
|
|
365
|
-
next.push(` • ${opts.secrets.ALLOWED_CHAT_IDS} is already authorized — add more chats with \`fortytwo pair\` → \`/login <code>\``);
|
|
366
|
-
}
|
|
367
|
-
else {
|
|
368
|
-
next.push(' • authorize a chat: run `fortytwo pair` and send `/login <code>`, or set ALLOWED_CHAT_IDS in .env');
|
|
369
|
-
}
|
|
370
|
-
// The scheduler is now part of the engine (installed above), but — like the
|
|
371
|
-
// bridge — it's a long-running process the operator starts, not a supervised
|
|
372
|
-
// service. Surface how to run it; doctor reports its liveness via the heartbeat.
|
|
373
|
-
next.push('\nNext — to run scheduled / proactive jobs (briefings, sweeps, reminders):');
|
|
374
|
-
next.push(' • start the scheduler daemon: `fortytwo-scheduler` under a restart loop (see @justfortytwo/scheduler)');
|
|
375
|
-
next.push(' • it seeds the recurring jobs on first boot; `fortytwo doctor` reports whether it is running');
|
|
376
|
-
out.write(next.join('\n') + '\n');
|
|
569
|
+
out.write(`${shim.line}\n`);
|
|
570
|
+
out.write(nextSteps({
|
|
571
|
+
cmd: shim.cmd,
|
|
572
|
+
hasBotToken: !!opts.secrets.TELEGRAM_BOT_TOKEN,
|
|
573
|
+
allowedChatIds: opts.secrets.ALLOWED_CHAT_IDS,
|
|
574
|
+
}).join('\n') + '\n');
|
|
377
575
|
return 0;
|
|
378
576
|
}
|
|
379
577
|
//# sourceMappingURL=init.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,EAAE;AACF,qCAAqC;AACrC,0EAA0E;AAC1E,kFAAkF;AAClF,6EAA6E;AAC7E,8DAA8D;AAC9D,0GAA0G;AAC1G,4FAA4F;AAC5F,oEAAoE;AACpE,EAAE;AACF,iFAAiF;AACjF,8EAA8E;AAC9E,iFAAiF;AACjF,iBAAiB;AAEjB,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,eAAe,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC3I,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAmB,MAAM,YAAY,CAAC;AAExE,kFAAkF;AAClF,MAAM,CAAC,MAAM,WAAW,GAAG,sBAAsB,CAAC;AAClD,MAAM,CAAC,MAAM,uBAAuB,GAAG,wBAAwB,CAAC;AAChE,MAAM,CAAC,MAAM,eAAe,GAAG,gBAAgB,CAAC;AAmBhD,SAAS,MAAM,CAAC,GAAW;IACzB,OAAO,YAAY,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC;AACzC,CAAC;AACD,SAAS,OAAO,CAAC,CAAU;IACzB,IAAI,CAAC,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAC3B,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;IAClD,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAAE,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;IAC5C,OAAO,KAAK,CAAC;AACf,CAAC;AACD,SAAS,UAAU,CAAC,CAAU;IAC5B,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAAE,OAAO,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3C,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC1F,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAC5B,MAAuB,EACvB,OAAsB;IAEtB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,EAAE,CAAC;IAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;IAClC,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;IACvC,MAAM,OAAO,GAAY,EAAE,CAAC;IAC5B,MAAM,eAAe,GAAa,EAAE,CAAC;IACrC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC;QACnF,MAAM,KAAK,GAAsB,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACtG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,CAAC,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC;YAAE,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;AACtC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,QAAgB,EAAE,IAA4B;IAC5E,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACxD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAI,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;YAC3D,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE;QAAE,GAAG,CAAC,GAAG,EAAE,CAAC;IAC3D,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACtF,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAC/B,CAAC;AAOD,kFAAkF;AAClF,MAAM,UAAU,cAAc,CAC5B,QAA0B,EAC1B,IAAqE;IAErE,MAAM,GAAG,GAAc,QAAQ,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;IACtD,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC;IACtC,GAAG,CAAC,UAAU,CAAC,iBAAiB,CAAC,GAAG;QAClC,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,CAAC,IAAI,EAAE,sBAAsB,CAAC;QACpC,iFAAiF;QACjF,uFAAuF;QACvF,GAAG,EAAE;YACH,OAAO,EAAE,IAAI,CAAC,MAAM;YACpB,WAAW,EAAE,IAAI,CAAC,UAAU,IAAI,WAAW;YAC3C,eAAe,EAAE,IAAI,CAAC,aAAa,IAAI,uBAAuB;SAC/D;KACF,CAAC;IACF,OAAO,GAAG,CAAC;AACb,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,gBAAgB,CAC9B,YAAoC,EACpC,WAA4C;IAE5C,MAAM,IAAI,GAAiB,EAAE,CAAC;IAC9B,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QACzD,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,QAAQ;YAAE,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,kFAAkF;AAElF,SAAS,QAAQ,CAAC,OAA+B,EAAE,IAAY;IAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAChC,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACpE,aAAa,CAAC,IAAI,EAAE,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,YAAY,CAAC,IAAY,EAAE,MAAc,EAAE,aAAqB;IACvE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACrC,MAAM,QAAQ,GAAqB,UAAU,CAAC,IAAI,CAAC;QACjD,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAe;QACvD,CAAC,CAAC,IAAI,CAAC;IACT,aAAa,CACX,IAAI,EACJ,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EACnF,MAAM,CACP,CAAC;AACJ,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,kBAAkB,CAChC,YAAoC,EACpC,SAAoC;IAEpC,OAAO,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;SAChC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;SACpC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,YAAY,CAAC,IAAY,EAAE,IAA6B;IACrE,MAAM,KAAK,GAAG,kBAAkB,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IAClG,MAAM,OAAO,GAAG,cAAc,CAC5B,eAAe,EAAE,EACjB,oBAAoB,CAAC,WAAW,CAAC,EACjC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CACpC,CAAC;IACF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO;QAAE,OAAO;IAC3C,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,iDAAiD;QACjF,MAAM,IAAI,KAAK,CACb,4CAA4C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;YAChE,6BAA6B,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,yBAAyB,CACtE,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC;QAC5C,SAAS,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1E,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,iBAAiB,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,OAAO,EAAE,CAAC;QACZ,4EAA4E;QAC5E,2EAA2E;QAC3E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,4CAA4C,OAAO,IAAI,CAAC,CAAC;QAC9E,iBAAiB,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE,kBAAkB,CAAC,CAAC;IAC3E,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY,EAAE,KAAe,EAAE,KAAe,EAAE,IAAY;IACrF,MAAM,GAAG,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAC1H,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrB,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,GAAG,CAAC,MAAM,EAAE,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,2BAA2B,IAAI,KAAK,GAAG,oCAAoC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IACxJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,yBAAyB,CAAC;AAErD;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAC5B,WAA0B,EAC1B,gBAA+B,EAC/B,QAAiB;IAEjB,IAAI,CAAC,WAAW,IAAI,gBAAgB,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IAClE,OAAO,QAAQ,IAAI,GAAG,WAAW,IAAI,WAAW,EAAE,CAAC;AACrD,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY;IACtC,MAAM,IAAI,GAAG,gBAAgB,CAAC,oBAAoB,EAAE,EAAE,oBAAoB,CAAC,CAAC;IAC5E,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC7B,OAAO,IAAI,CAAC;AACd,CAAC;AASD,MAAM,qBAAqB,GAAmB;IAC5C,UAAU,EAAE,iBAAiB;IAC7B,SAAS,EAAE,eAAe;IAC1B,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;CACtD,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAAe,EACf,KAAa,EACb,OAAuB,qBAAqB;IAE5C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC9C,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,2BAA2B,OAAO,8BAA8B,KAAK,uDAAuD,CAAC;IACtI,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,cAAc,KAAK,iBAAiB,OAAO,EAAE,CAAC;IACjF,IAAI,CAAC,GAAG,CAAC,WAAW,KAAK,OAAO,OAAO,iCAAiC,CAAC,CAAC;IAC1E,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACjD,IAAI,GAAG;QAAE,OAAO,oBAAoB,KAAK,QAAQ,OAAO,KAAK,GAAG,qDAAqD,CAAC;IACtH,OAAO,YAAY,KAAK,OAAO,OAAO,EAAE,CAAC;AAC3C,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,SAAS,CAAC,IAAmE;IAC1F,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,8DAA8D;IAC9D,KAAK,CAAC,IAAI,CAAC,MAAM,gBAAgB,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IACxE,yCAAyC;IACzC,MAAM,GAAG,GAAG,MAAM,UAAU,EAAE,CAAC;IAC/B,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,UAAU,IAAI,OAAQ,GAAmC,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;QACxH,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAuC,CAAC;QAC7E,IAAI,CAAC;YACH,MAAO,GAAmE,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACnG,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACrC,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC;gBAAC,MAAO,MAAM,CAAC,CAAuC,EAAE,OAAO,EAAE,EAAE,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YACvG,IAAI,CAAC;gBAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,qHAAqH,CAAC,CAAC;IACpI,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAaD,mFAAmF;AACnF,SAAS,aAAa,CAAC,IAAc;IACnC,MAAM,KAAK,GAA2B,EAAE,CAAC;IACzC,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,WAA+B,CAAC;IACpC,IAAI,aAAiC,CAAC;IACtC,4FAA4F;IAC5F,IAAI,MAAM,GAAG,kBAAkB,CAAC,SAAS,CAAC,IAAI,eAAe,CAAC;IAC9D,MAAM,YAAY,GAA2B;QAC3C,oBAAoB,EAAE,oBAAoB;QAC1C,kBAAkB,EAAE,kBAAkB;KACvC,CAAC;IACF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,IAAI,CAAC,KAAK,SAAS;YAAE,SAAS;QAC9B,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;YAAC,GAAG,GAAG,IAAI,CAAC;YAAC,SAAS;QAAC,CAAC;QAC1D,IAAI,CAAC,KAAK,cAAc,EAAE,CAAC;YAAC,SAAS,GAAG,IAAI,CAAC;YAAC,SAAS;QAAC,CAAC;QACzD,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,SAAS;QAClC,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACxB,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,IAAI,KAAK,SAAS;YAAE,WAAW,GAAG,GAAG,CAAC;aACrC,IAAI,IAAI,KAAK,iBAAiB;YAAE,aAAa,GAAG,GAAG,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;aACxE,IAAI,IAAI,KAAK,SAAS;YAAE,MAAM,GAAG,GAAG,CAAC;aACrC,IAAI,YAAY,CAAC,IAAI,CAAC;YAAE,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;;YAC1D,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,6BAA6B;IAC1E,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB;QAAE,OAAO,CAAC,kBAAkB,KAAK,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAClG,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB;QAAE,OAAO,CAAC,gBAAgB,KAAK,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAC5F,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC;AAChF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,MAAc;IAC5C,OAAO,MAAM,CAAC,OAAO,CAAC,2CAA2C,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AAChF,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,KAAa,EACb,GAAwC,EACxC,OAA+B,EAAE;IAEjC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,MAAM,GAAG,GAAG,KAAK,sEAAsE,CAAC;IAC5F,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACxC,IAAI,IAAI,EAAE,CAAC;YACT,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjB,MAAM,GAAG,IAAI,CAAC;QAChB,CAAC;aAAM,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC/C,MAAM,GAAG,kCAAkC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;AACH,CAAC;AAED,wGAAwG;AACxG,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAuB,EACvB,OAAiB,EACjB,OAAgB,EAChB,GAAwC;IAExC,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAE,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,MAAM;YAClC,CAAC,CAAC,MAAM,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;YACjF,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAChD,CAAC;AACH,CAAC;AAED,yEAAyE;AACzE,KAAK,UAAU,aAAa,CAAC,MAAuB,EAAE,OAAiB,EAAE,OAAgB;IACvF,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7E,IAAI,CAAC;QACH,MAAM,iBAAiB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3E,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,QAAgC,EAChC,GAAwC;IAExC,MAAM,KAAK,GAA2B,EAAE,CAAC;IACzC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,6EAA6E,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAChH,IAAI,KAAK;YAAE,KAAK,CAAC,kBAAkB,GAAG,KAAK,CAAC;IAC9C,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,gGAAgG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACjI,IAAI,GAAG;YAAE,KAAK,CAAC,gBAAgB,GAAG,GAAG,CAAC;IACxC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,SAAS,GAAG,CAAC,CAAS,EAAW,EAAE;IACvC,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;QACrB,OAAO,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,KAAK,EAAE,CAAC;IAClF,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEF,4GAA4G;AAC5G,MAAM,UAAU,YAAY,CAAC,OAAe,EAAE,GAAW;IACvD,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC;AACpD,CAAC;AAED,iHAAiH;AACjH,MAAM,UAAU,eAAe,CAAC,OAAe;IAC7C,MAAM,IAAI,GAA2B,EAAE,CAAC;IACxC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAC5C,IAAI,CAAC;YAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAW,EAAE,OAAe,OAAO,CAAC,GAAG,EAAE;IAC1E,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC;IAC3C,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAChC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACnC,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5F,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,IAM1C;IACC,IAAI,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC;IAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,uBAAuB,CAAC;IACnF,IAAI,CAAC,IAAI,CAAC,GAAG;QAAE,OAAO,QAAQ,CAAC;IAC/B,IAAI,MAAM,GAAG,wDAAwD,QAAQ,KAAK,CAAC;IACnF,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC;QAC7C,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC/C,IAAI,CAAC,MAAM;YAAE,OAAO,QAAQ,CAAC;QAC7B,IAAI,SAAS,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC;QACrC,MAAM,GAAG,MAAM,MAAM,kFAAkF,QAAQ,KAAK,CAAC;IACvH,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;AACzF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,CAAkE;IAC1F,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,IAAI,UAAU,CAAC;IAChC,MAAM,KAAK,GAAG,CAAC,EAAE,EAAE,oBAAoB,EAAE,EAAE,EAAE,gBAAgB,EAAE,KAAK,GAAG,QAAQ,EAAE,EAAE,CAAC,CAAC;IACrF,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACnB,KAAK,CAAC,IAAI,CAAC,uFAAuF,CAAC,CAAC;IACtG,CAAC;IACD,IAAI,CAAC,CAAC,cAAc,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,cAAc,qEAAqE,CAAC,CAAC;IACxH,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAC5C,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,CAAC;IAC5B,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,CAAa;IACtC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;QACjB,KAAK,WAAW,CAAC;QACjB,KAAK,SAAS,CAAC;QACf,KAAK,WAAW;YACd,OAAO,EAAE,IAAI,EAAE,uBAAuB,CAAC,CAAC,IAAI,2CAA2C,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC;QAC7G,KAAK,SAAS;YACZ,OAAO;gBACL,IAAI,EAAE,UAAU,CAAC,CAAC,IAAI,mFAAmF;gBACzG,GAAG,EAAE,cAAc;aACpB,CAAC;QACJ,KAAK,QAAQ;YACX,OAAO;gBACL,IAAI,EAAE,uJAAuJ;gBAC7J,GAAG,EAAE,cAAc;aACpB,CAAC;QACJ,KAAK,aAAa;YAChB,OAAO,EAAE,IAAI,EAAE,6BAA6B,CAAC,CAAC,QAAQ,kDAAkD,EAAE,GAAG,EAAE,cAAc,EAAE,CAAC;IACpI,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAAc;IAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC3B,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IAE9D,sEAAsE;IACtE,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IAExD,MAAM,QAAQ,GAAG,mBAAmB,EAAE,CAAC;IACvC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;QAClE,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAA6B;QACjF,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IACvG,IAAI,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;IAC3B,MAAM,EAAE,eAAe,EAAE,GAAG,QAAQ,CAAC;IAErC,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,mCAAmC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;gBACjE,qFAAqF,CACtF,CAAC;YACF,OAAO,CAAC,CAAC;QACX,CAAC;QACD,MAAM,aAAa,CAAC,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;QAC/D,MAAM,OAAO,GAAG,cAAc,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QAC9F,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC1B,IAAI,OAAO,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yCAAyC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtG,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAa;QACzB,eAAe,EAAE,CAAC;QAClB,OAAO;QACP,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;IACF,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAE9B,gFAAgF;IAChF,gFAAgF;IAChF,4EAA4E;IAC5E,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACnC,MAAM,UAAU,GAAG;QACjB,IAAI,EAAE,IAAI,CAAC,aAAa;QACxB,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe;QAChC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS;KACxG,CAAC;IACF,IAAI,aAAqB,CAAC;IAC1B,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7E,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC1C,aAAa,GAAG,MAAM,oBAAoB,CAAC,EAAE,GAAG,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;YACnE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,qBAAqB,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QAC9E,CAAC;gBAAS,CAAC;YACT,EAAE,CAAC,KAAK,EAAE,CAAC;QACb,CAAC;IACH,CAAC;SAAM,CAAC;QACN,aAAa,GAAG,MAAM,oBAAoB,CAAC,UAAU,CAAC,CAAC;IACzD,CAAC;IAED,sDAAsD;IACtD,QAAQ,CACN;QACE,eAAe,EAAE,aAAa,EAAE,qDAAqD;QACrF,WAAW;QACX,OAAO,EAAE,IAAI,CAAC,MAAM;QACpB,GAAG,IAAI,CAAC,OAAO;KAChB,EACD,IAAI,CACL,CAAC;IAEF,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC/C,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACxG,MAAM,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,UAAU,CAAC,WAAW,CAAC;QAClC,IAAI,EAAE,OAAO,EAAE;QACf,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE;QAC/B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,SAAS;QACnD,YAAY;KACb,CAAC,CAAC,CAAC;IAEJ,UAAU;IACV,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;IAC3B,GAAG,CAAC,KAAK,CAAC,oCAAoC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,aAAa,CAAC,CAAC;IACxF,GAAG,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;IAC3D,GAAG,CAAC,KAAK,CAAC,uBAAuB,MAAM,CAAC,OAAO,CAAC,MAAM,aAAa,MAAM,CAAC,OAAO,CAAC,MAAM,cAAc,CAAC,CAAC;IACxG,KAAK,MAAM,CAAC,IAAI,cAAc;QAAE,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACtD,GAAG,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,MAAM,gCAAgC,CAAC,CAAC;IACrE,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;IAC5B,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC;QAClB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB;QAC9C,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB;KAC9C,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IACtB,OAAO,CAAC,CAAC;AACX,CAAC"}
|
package/dist/commands/pair.d.ts
CHANGED
|
@@ -3,6 +3,8 @@ export interface PairFlags {
|
|
|
3
3
|
channel: string;
|
|
4
4
|
/** Optional TTL override (seconds) for the code. */
|
|
5
5
|
ttlSeconds?: number;
|
|
6
|
+
/** Issue a code even though `fortytwo start` is not running Telegram (e.g. a hand-run bridge). */
|
|
7
|
+
force?: boolean;
|
|
6
8
|
}
|
|
7
9
|
export declare function parsePairArgs(argv: string[]): PairFlags;
|
|
8
10
|
/**
|
|
@@ -11,5 +13,11 @@ export declare function parsePairArgs(argv: string[]): PairFlags;
|
|
|
11
13
|
* or a code minted here would land in a db the bridge never reads.
|
|
12
14
|
*/
|
|
13
15
|
export declare function resolveBindingsDbPath(root: string): string;
|
|
16
|
+
/**
|
|
17
|
+
* Why a code minted now could not be redeemed, or null if Telegram is running
|
|
18
|
+
* under `fortytwo start`. A code is only useful while the bridge is up to read
|
|
19
|
+
* `/login <code>`, so pair refuses to print one otherwise.
|
|
20
|
+
*/
|
|
21
|
+
export declare function telegramUnavailableMessage(root: string, nowMs?: number): string | null;
|
|
14
22
|
export declare function runPair(argv: string[]): Promise<number>;
|
|
15
23
|
//# sourceMappingURL=pair.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pair.d.ts","sourceRoot":"","sources":["../../src/commands/pair.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pair.d.ts","sourceRoot":"","sources":["../../src/commands/pair.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,SAAS;IACxB,4EAA4E;IAC5E,OAAO,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kGAAkG;IAClG,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,SAAS,CAWvD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAI1D;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,MAAmB,GAAG,MAAM,GAAG,IAAI,CAclG;AASD,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CA4B7D"}
|
package/dist/commands/pair.js
CHANGED
|
@@ -9,12 +9,18 @@
|
|
|
9
9
|
import { resolve, dirname } from 'node:path';
|
|
10
10
|
import { mkdirSync } from 'node:fs';
|
|
11
11
|
import { loadTelegram } from '../engine.js';
|
|
12
|
+
import { liveRuntime, serviceRunning } from '../runtime.js';
|
|
13
|
+
import { readProjectSetting } from './init.js';
|
|
12
14
|
export function parsePairArgs(argv) {
|
|
13
15
|
const f = { channel: 'telegram' };
|
|
14
16
|
for (let i = 0; i < argv.length; i++) {
|
|
15
17
|
const a = argv[i];
|
|
16
18
|
if (a === undefined || !a.startsWith('--'))
|
|
17
19
|
continue;
|
|
20
|
+
if (a === '--force') {
|
|
21
|
+
f.force = true;
|
|
22
|
+
continue;
|
|
23
|
+
}
|
|
18
24
|
const v = argv[++i] ?? '';
|
|
19
25
|
if (a === '--channel')
|
|
20
26
|
f.channel = v || 'telegram';
|
|
@@ -29,9 +35,30 @@ export function parsePairArgs(argv) {
|
|
|
29
35
|
* or a code minted here would land in a db the bridge never reads.
|
|
30
36
|
*/
|
|
31
37
|
export function resolveBindingsDbPath(root) {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
38
|
+
// Shell env, else the project's .env — the same value `fortytwo start` passes the bridge.
|
|
39
|
+
const custom = readProjectSetting('TELEGRAM_BINDINGS_DB', root);
|
|
40
|
+
return custom ? resolve(root, custom) : resolve(root, 'state', 'telegram-bindings.db');
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Why a code minted now could not be redeemed, or null if Telegram is running
|
|
44
|
+
* under `fortytwo start`. A code is only useful while the bridge is up to read
|
|
45
|
+
* `/login <code>`, so pair refuses to print one otherwise.
|
|
46
|
+
*/
|
|
47
|
+
export function telegramUnavailableMessage(root, nowMs = Date.now()) {
|
|
48
|
+
const runtime = liveRuntime(root, nowMs);
|
|
49
|
+
if (serviceRunning(runtime, 'telegram'))
|
|
50
|
+
return null;
|
|
51
|
+
const skipped = runtime?.skipped.find((s) => s.name === 'telegram');
|
|
52
|
+
return [
|
|
53
|
+
skipped ? `Telegram is not running (${skipped.reason}).` : 'Telegram is not running.',
|
|
54
|
+
...(skipped ? ['Fix that in .env, then restart Fortytwo:'] : ['Start Fortytwo with:']),
|
|
55
|
+
' fortytwo start',
|
|
56
|
+
'',
|
|
57
|
+
'Then run:',
|
|
58
|
+
' fortytwo pair',
|
|
59
|
+
'',
|
|
60
|
+
'(Running the bridge yourself? `fortytwo pair --force` issues a code anyway.)',
|
|
61
|
+
].join('\n');
|
|
35
62
|
}
|
|
36
63
|
export async function runPair(argv) {
|
|
37
64
|
const flags = parsePairArgs(argv);
|
|
@@ -39,6 +66,13 @@ export async function runPair(argv) {
|
|
|
39
66
|
process.stderr.write(`pair: unsupported channel "${flags.channel}" (only telegram at v0).\n`);
|
|
40
67
|
return 2;
|
|
41
68
|
}
|
|
69
|
+
if (!flags.force) {
|
|
70
|
+
const why = telegramUnavailableMessage(process.cwd());
|
|
71
|
+
if (why) {
|
|
72
|
+
process.stderr.write(why + '\n');
|
|
73
|
+
return 1;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
42
76
|
const tg = (await loadTelegram());
|
|
43
77
|
if (!tg || typeof tg.SqliteBindingStore !== 'function' || typeof tg.TelegramAdapter !== 'function') {
|
|
44
78
|
process.stderr.write('pair: @justfortytwo/telegram (>=0.1.1, with persisted challenges) is not installed.\n');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pair.js","sourceRoot":"","sources":["../../src/commands/pair.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,EAAE;AACF,yEAAyE;AACzE,6EAA6E;AAC7E,gFAAgF;AAChF,iFAAiF;AACjF,wEAAwE;AACxE,qCAAqC;AAErC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"pair.js","sourceRoot":"","sources":["../../src/commands/pair.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"AAeA,wBAAsB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAqB/D"}
|