@somewhere-tech/cli 0.37.23 → 0.37.24

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.
@@ -59,14 +59,14 @@ export async function callAnonymousAdvisor(question, context) {
59
59
  export function registerAdvisor(program) {
60
60
  program
61
61
  .command('advisor [question]')
62
- .description('Ask the somewhere.tech platform advisor; login adds linked-project context')
62
+ .description('Ask the somewhere.tech platform advisor; local context is attached only with --file')
63
63
  .option('--async', 'Use the durable Advisor candidate when enabled by the server')
64
64
  .option('--resume <request-id>', 'Reconnect to the same saved Advisor request')
65
65
  .option('--status <request-id>', 'Read one saved Advisor request status')
66
66
  .option('--cancel <request-id>', 'Request cancellation of a saved Advisor run')
67
67
  .option('--json', 'Print the advisor response in a JSON envelope')
68
68
  .option('--file <path>', 'Attach a trimmed, redacted local file as context')
69
- .option('--no-context', 'Do not attach the linked project, previous run, or file')
69
+ .option('--no-context', 'Do not attach the explicitly selected file')
70
70
  .action(async (question, opts) => {
71
71
  try {
72
72
  if (opts.async || opts.resume || opts.status || opts.cancel) {
@@ -1 +1 @@
1
- {"version":3,"file":"advisor.js","sourceRoot":"","sources":["../../src/commands/advisor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"advisor.js","sourceRoot":"","sources":["../../src/commands/advisor.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,11 @@ const isRefusal = (r) => r.kind === 'refusal';
10
10
  const isPlatformDiagnostic = (r) => r.source === 'api'
11
11
  && r.method === 'POST' && r.endpoint === '/v1/db/query-observations'
12
12
  && (r.status_code ?? 0) >= 500;
13
+ // A caller leaving is ordinary traffic; ambiguous 499s and handler failures stay visible.
14
+ const isClientDisconnect = (r) => r.status_code === 499
15
+ && r.source === 'function' && r.kind === 'refusal'
16
+ && (r.error_code === 'CLIENT_DISCONNECTED'
17
+ || (r.error_code === 'HTTP_499' && r.error_message?.startsWith('CLIENT_DISCONNECTED:') === true));
13
18
  export function registerErrors(program) {
14
19
  program
15
20
  .command('errors [project]')
@@ -63,6 +68,13 @@ export function registerErrors(program) {
63
68
  ? { ...r, diagnostic_origin: 'platform' } : r), null, 2));
64
69
  return;
65
70
  }
71
+ const disconnected = rows.filter(isClientDisconnect).length;
72
+ rows = rows.filter(r => !isClientDisconnect(r));
73
+ const disconnectedNotice = `${disconnected} client disconnect${disconnected === 1 ? '' : 's'} collapsed — use --json to see every row.`;
74
+ if (!rows.length && disconnected) {
75
+ console.log(dim(` ${disconnectedNotice}`));
76
+ return;
77
+ }
66
78
  if (!rows.length) {
67
79
  // A window with nothing but refusals is a healthy window — say what is
68
80
  // actually there rather than reporting a bare zero.
@@ -92,10 +104,12 @@ export function registerErrors(program) {
92
104
  const exceptions = rows.length - rows.filter(isRefusal).length - platformDiagnostics;
93
105
  const counts = opts.exceptions
94
106
  ? `${exceptions} exception${exceptions === 1 ? '' : 's'}`
95
- : `${exceptions} exception${exceptions === 1 ? '' : 's'}, ${refusals} refused on purpose`;
107
+ : `${exceptions} exception${exceptions === 1 ? '' : 's'}, ${rows.filter(isRefusal).length} refused on purpose`;
96
108
  const diagnosticCount = platformDiagnostics
97
109
  ? `, ${platformDiagnostics} platform diagnostic${platformDiagnostics === 1 ? '' : 's'}` : '';
98
110
  console.log(dim(`\n ${counts}${diagnosticCount} — ${teal('somewhere logs --level error')} for full detail.`));
111
+ if (disconnected)
112
+ console.log(dim(` ${disconnectedNotice}`));
99
113
  });
100
114
  }
101
115
  function truncate(s, max = 80) {
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/commands/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/commands/errors.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import { readFileSync, statSync } from 'node:fs';
2
2
  import { basename } from 'node:path';
3
- import { cliConfigDir, loadProjectConfig } from './config.js';
4
3
  const TAIL_LIMIT = 4_000;
5
4
  const FILE_LIMIT = 8_000;
6
5
  function tail(value, limit) {
@@ -17,27 +16,12 @@ export function redactAdvisorText(value, redactDotenvValues = false) {
17
16
  }
18
17
  return redacted;
19
18
  }
20
- function readLastRun() {
21
- try {
22
- const parsed = JSON.parse(readFileSync(`${cliConfigDir()}/last-run.json`, 'utf8'));
23
- return typeof parsed?.command === 'string' && Array.isArray(parsed.args) ? normalizeLastRun(parsed) : undefined;
24
- }
25
- catch {
26
- return undefined;
27
- }
28
- }
29
19
  function isDotenvPath(path) {
30
20
  const name = basename(path);
31
21
  return name === '.env' || name.startsWith('.env.') || name.endsWith('.env');
32
22
  }
33
23
  export function buildAdvisorContext(filePath) {
34
- const project = loadProjectConfig();
35
24
  const context = {};
36
- if (project?.project_id)
37
- context.project_ref = project.project_id;
38
- const lastRun = readLastRun();
39
- if (lastRun)
40
- context.last_run = lastRun;
41
25
  if (filePath) {
42
26
  const stat = statSync(filePath);
43
27
  if (!stat.isFile())
@@ -51,14 +35,9 @@ export function buildAdvisorContext(filePath) {
51
35
  return Object.keys(context).length > 0 ? context : undefined;
52
36
  }
53
37
  export function contextNotice(context) {
54
- if (!context)
55
- return 'Advisor context not attached.';
56
- const attached = [
57
- context.project_ref ? 'linked project' : null,
58
- context.last_run ? 'last run' : null,
59
- context.file ? `file ${context.file.path}` : null,
60
- ].filter((value) => value !== null);
61
- return `Advisor context attached: ${attached.join(', ')}.`;
38
+ return context?.file
39
+ ? `Advisor context attached: explicitly selected file ${context.file.path}.`
40
+ : 'Advisor context not attached; use --file to attach a redacted excerpt.';
62
41
  }
63
42
  export function normalizeLastRun(record) {
64
43
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"advisor-context.js","sourceRoot":"","sources":["../../src/lib/advisor-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"advisor-context.js","sourceRoot":"","sources":["../../src/lib/advisor-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAErC,MAAM,UAAU,GAAG,KAAK,CAAC;AACzB,MAAM,UAAU,GAAG,KAAK,CAAC;AAiBzB,SAAS,IAAI,CAAC,KAAa,EAAE,KAAa;IACxC,OAAO,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;AACnE,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,kBAAkB,GAAG,KAAK;IACzE,IAAI,QAAQ,GAAG,KAAK;SACjB,OAAO,CAAC,wBAAwB,EAAE,mBAAmB,CAAC;SACtD,OAAO,CAAC,8CAA8C,EAAE,YAAY,CAAC;SACrE,OAAO,CACN,+GAA+G,EAC/G,CAAC,MAAM,EAAE,IAAY,EAAE,SAAiB,EAAE,EAAE,CAAC,GAAG,IAAI,GAAG,SAAS,aAAa,CAC9E,CAAC;IACJ,IAAI,kBAAkB,EAAE,CAAC;QACvB,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,qDAAqD,EAAE,cAAc,CAAC,CAAC;IACrG,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAChC,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC5B,OAAO,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,QAAiB;IACnD,MAAM,OAAO,GAAmB,EAAE,CAAC;IACnC,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACxE,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC/C,OAAO,CAAC,IAAI,GAAG;YACb,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC,EAAE,UAAU,CAAC;SAC9E,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,OAAmC;IAC/D,OAAO,OAAO,EAAE,IAAI;QAClB,CAAC,CAAC,sDAAsD,OAAO,CAAC,IAAI,CAAC,IAAI,GAAG;QAC5E,CAAC,CAAC,wEAAwE,CAAC;AAC/E,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAqB;IACpD,OAAO;QACL,GAAG,MAAM;QACT,OAAO,EAAE,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC;QAC1C,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QACtD,WAAW,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC;QACpE,WAAW,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC;KACrE,CAAC;AACJ,CAAC"}
@@ -8,25 +8,53 @@ const directory = () => join(cliConfigDir(), 'advisor-runs');
8
8
  function path(id) { if (!/^[a-f0-9-]{36}$/i.test(id))
9
9
  throw Error('Invalid Advisor request ID.'); return join(directory(), id + '.json'); }
10
10
  function save(record) { mkdirSync(directory(), { recursive: true, mode: 0o700 }); chmodSync(directory(), 0o700); const target = path(record.request_id), temporary = target + '.' + randomUUID() + '.tmp'; writeFileSync(temporary, JSON.stringify(record), { mode: 0o600, flag: 'wx' }); renameSync(temporary, target); chmodSync(target, 0o600); }
11
+ const PAYLOAD_RETENTION_MS = 24 * 60 * 60 * 1000;
12
+ function payloadDeadline(record) { return Math.min(record.request_created_at + PAYLOAD_RETENTION_MS, record.payload_expires_at ?? Infinity); }
13
+ function payloadExpired(record) { return payloadDeadline(record) <= Date.now(); }
14
+ /** Local cleanup runs when a saved request is opened; status reads never renew its deadline. */
15
+ function prune(record) {
16
+ if (record.run_id)
17
+ delete record.body;
18
+ if (!payloadExpired(record))
19
+ return;
20
+ delete record.body;
21
+ delete record.terminal;
22
+ if (!record.run_id || record.provider_settled)
23
+ delete record.capability;
24
+ }
25
+ function expiredResult(record) { return { run_id: record.run_id, request_id: record.request_id, status: record.provider_settled ? 'settled' : 'delivery_expired', payload_expired: true, payload_expires_at: payloadDeadline(record), error: 'ADVISOR_PAYLOAD_EXPIRED', incomplete: true, next_step: record.provider_settled ? 'none' : 'status' }; }
11
26
  function load(id) { if (!existsSync(path(id)))
12
- throw Error('Advisor request was not found in this CLI configuration.'); return JSON.parse(readFileSync(path(id), 'utf8')); }
27
+ throw Error('Advisor request was not found in this CLI configuration.'); const record = JSON.parse(readFileSync(path(id), 'utf8')); prune(record); save(record); return record; }
13
28
  function url(suffix) { const result = new URL(process.env.SOMEWHERE_MCP_URL || 'https://mcp.somewhere.tech/mcp'); result.pathname = '/advisor/runs' + suffix; result.search = ''; result.hash = ''; return result.toString(); }
14
29
  async function request(record, operation) {
15
30
  const config = loadConfig(), token = record.owner_mode === 'account' && config?.temporary !== true ? config?.token : undefined;
16
31
  if (record.owner_mode === 'account' && !token)
17
32
  throw Error('Sign in to the account that owns this saved request.');
33
+ if (record.owner_mode === 'anonymous' && !record.capability)
34
+ throw Error('This Advisor request has expired; no replacement request was sent.');
18
35
  const res = await fetchWithProxy(url(operation === 'start' ? '' : '/' + record.run_id + (operation === 'status' ? '' : '/' + operation)), { method: operation === 'status' ? 'GET' : 'POST', headers: { 'Content-Type': 'application/json', 'User-Agent': 'somewhere-cli', ...(token ? { Authorization: 'Bearer ' + token } : { 'X-Advisor-Capability': record.capability }) }, ...(operation === 'start' ? { body: JSON.stringify(record.body) } : {}) }, 30000);
19
36
  const payload = await res.json();
20
37
  if (!res.ok || !payload.ok || !payload.data)
21
38
  throw Error((payload.message || payload.error || 'Advisor transport failed.') + ' [HTTP ' + res.status + ']');
22
39
  if (payload.data.run_id)
23
40
  record.run_id = payload.data.run_id;
41
+ if (Number.isSafeInteger(payload.data.payload_expires_at))
42
+ record.payload_expires_at = Math.min(payloadDeadline(record), payload.data.payload_expires_at);
43
+ if (payload.data.payload_expired)
44
+ record.payload_expires_at = Math.min(payloadDeadline(record), Date.now());
45
+ if ((payload.data.status === 'settled' || (payload.data.payload_expired && payload.data.next_step === 'none')) && payload.data.provider_status && ['completed', 'failed', 'incomplete', 'cancelled'].includes(payload.data.provider_status))
46
+ record.provider_settled = true;
24
47
  if (payload.data.status === 'settled' || payload.data.answer) {
25
48
  delete record.body;
26
- if (!record.run_id)
49
+ if (!record.run_id) {
27
50
  record.terminal = payload.data;
51
+ record.provider_settled = true;
52
+ }
28
53
  }
54
+ prune(record);
29
55
  save(record);
56
+ if (payloadExpired(record) || payload.data.payload_expired)
57
+ return { ...expiredResult(record), provider_status: payload.data.provider_status };
30
58
  return { ...payload.data, request_id: record.request_id };
31
59
  }
32
60
  /** Local identity is written before POST. Transport failure never creates another request. */
@@ -45,23 +73,29 @@ export async function callAdvisorRun(args) {
45
73
  save(record);
46
74
  }
47
75
  try {
76
+ if (payloadExpired(record)) {
77
+ if (!record.run_id)
78
+ throw Error('The saved request payload expired and was removed. Its admission outcome remains unknown; no retry or replacement was sent.');
79
+ if (record.provider_settled)
80
+ return expiredResult(record);
81
+ }
48
82
  if (record.terminal)
49
83
  return { ...record.terminal, request_id: record.request_id };
50
84
  if (args.operation === 'cancel' && !record.run_id)
51
85
  throw Error('Start acknowledgment is unavailable; no cancellation or replacement dispatch was attempted. Recover only this original request.');
52
86
  let result = await request(record, record.run_id ? (args.operation ?? 'resume') : 'start');
53
- if (args.wait === false || args.operation === 'status' || args.operation === 'cancel')
87
+ if (result.payload_expired || args.wait === false || args.operation === 'status' || args.operation === 'cancel')
54
88
  return result;
55
89
  if (result.status !== 'settled' && !result.answer)
56
90
  args.progress?.('Advisor is working. To reconnect: somewhere advisor --resume ' + record.request_id);
57
- while (result.status !== 'settled' && !result.answer) {
91
+ while (result.status !== 'settled' && !result.answer && !result.payload_expired) {
58
92
  await new Promise(resolve => setTimeout(resolve, Math.min(10000, Math.max(1000, (result.retry_after_seconds ?? 2) * 1000))));
59
93
  result = await request(record, result.next_step === 'resume' ? 'resume' : 'status');
60
94
  }
61
95
  return result;
62
96
  }
63
97
  catch (error) {
64
- throw Error((error instanceof Error ? error.message : String(error)) + ' Resume only this request: somewhere advisor --resume ' + record.request_id);
98
+ throw Error((error instanceof Error ? error.message : String(error)) + (payloadExpired(record) && !record.run_id ? '' : ' Resume only this request: somewhere advisor --resume ' + record.request_id));
65
99
  }
66
100
  }
67
101
  /** Adopt an unpaid legacy/native prepared handle before its first billable resume. */
@@ -78,7 +112,7 @@ export async function consumeAdvisorRun(text, progress) {
78
112
  const config = loadConfig(), anonymous = typeof parsed.anonymous_capability === 'string', id = randomUUID();
79
113
  if (!anonymous && (!config?.token || config.temporary === true))
80
114
  throw Error('Sign in to the account that owns this Advisor run.');
81
- const record = { owner_mode: anonymous ? 'anonymous' : 'account', request_id: id, request_created_at: Date.now(), capability: anonymous ? String(parsed.anonymous_capability) : randomBytes(32).toString('hex'), run_id: parsed.run_id };
115
+ const record = { owner_mode: anonymous ? 'anonymous' : 'account', request_id: id, request_created_at: Date.now(), capability: anonymous ? String(parsed.anonymous_capability) : randomBytes(32).toString('hex'), run_id: parsed.run_id, ...(Number.isSafeInteger(parsed.payload_expires_at) ? { payload_expires_at: Number(parsed.payload_expires_at) } : {}) };
82
116
  save(record);
83
117
  return callAdvisorRun({ requestId: id, operation: 'resume', progress });
84
118
  }
@@ -1 +1 @@
1
- {"version":3,"file":"advisor-runs.js","sourceRoot":"","sources":["../../src/lib/advisor-runs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,UAAU,EAAC,MAAM,aAAa,CAAC;AACnD,OAAO,EAAC,SAAS,EAAC,UAAU,EAAC,SAAS,EAAC,YAAY,EAAC,UAAU,EAAC,aAAa,EAAC,MAAM,SAAS,CAAC;AAC7F,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAC,YAAY,EAAC,UAAU,EAAC,MAAM,aAAa,CAAC;AACpD,OAAO,EAAC,cAAc,EAAC,MAAM,WAAW,CAAC;AACzC,OAAO,EAAC,iBAAiB,EAAqB,MAAM,sBAAsB,CAAC;AAG3E,MAAM,SAAS,GAAC,GAAE,EAAE,CAAA,IAAI,CAAC,YAAY,EAAE,EAAC,cAAc,CAAC,CAAC;AACxD,SAAS,IAAI,CAAC,EAAS,IAAU,IAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;IAAC,MAAM,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAA,OAAO,IAAI,CAAC,SAAS,EAAE,EAAC,EAAE,GAAC,OAAO,CAAC,CAAC,CAAA,CAAC;AACjJ,SAAS,IAAI,CAAC,MAAe,IAAQ,SAAS,CAAC,SAAS,EAAE,EAAC,EAAC,SAAS,EAAC,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,CAAC,CAAC,CAAA,SAAS,CAAC,SAAS,EAAE,EAAC,KAAK,CAAC,CAAC,CAAA,MAAM,MAAM,GAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAC,SAAS,GAAC,MAAM,GAAC,GAAG,GAAC,UAAU,EAAE,GAAC,MAAM,CAAC,CAAA,aAAa,CAAC,SAAS,EAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAC,EAAC,IAAI,EAAC,KAAK,EAAC,IAAI,EAAC,IAAI,EAAC,CAAC,CAAC,CAAA,UAAU,CAAC,SAAS,EAAC,MAAM,CAAC,CAAC,CAAA,SAAS,CAAC,MAAM,EAAC,KAAK,CAAC,CAAC,CAAA,CAAC;AAChU,SAAS,IAAI,CAAC,EAAS,IAAY,IAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAAC,MAAM,KAAK,CAAC,0DAA0D,CAAC,CAAC,CAAA,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,EAAC,MAAM,CAAC,CAAa,CAAC,CAAA,CAAC;AAClM,SAAS,GAAG,CAAC,MAAa,IAAU,MAAM,MAAM,GAAC,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAE,gCAAgC,CAAC,CAAC,CAAA,MAAM,CAAC,QAAQ,GAAC,eAAe,GAAC,MAAM,CAAC,CAAA,MAAM,CAAC,MAAM,GAAC,EAAE,CAAC,CAAA,MAAM,CAAC,IAAI,GAAC,EAAE,CAAC,CAAA,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAA,CAAC;AAC3N,KAAK,UAAU,OAAO,CAAC,MAAe,EAAC,SAA4C;IACjF,MAAM,MAAM,GAAC,UAAU,EAAE,EAAC,KAAK,GAAC,MAAM,CAAC,UAAU,KAAG,SAAS,IAAE,MAAM,EAAE,SAAS,KAAG,IAAI,CAAA,CAAC,CAAA,MAAM,EAAE,KAAK,CAAA,CAAC,CAAA,SAAS,CAAC;IAChH,IAAG,MAAM,CAAC,UAAU,KAAG,SAAS,IAAE,CAAC,KAAK;QAAC,MAAM,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC7G,MAAM,GAAG,GAAC,MAAM,cAAc,CAAC,GAAG,CAAC,SAAS,KAAG,OAAO,CAAA,CAAC,CAAA,EAAE,CAAA,CAAC,CAAA,GAAG,GAAC,MAAM,CAAC,MAAM,GAAC,CAAC,SAAS,KAAG,QAAQ,CAAA,CAAC,CAAA,EAAE,CAAA,CAAC,CAAA,GAAG,GAAC,SAAS,CAAC,CAAC,EAAC,EAAC,MAAM,EAAC,SAAS,KAAG,QAAQ,CAAA,CAAC,CAAA,KAAK,CAAA,CAAC,CAAA,MAAM,EAAC,OAAO,EAAC,EAAC,cAAc,EAAC,kBAAkB,EAAC,YAAY,EAAC,eAAe,EAAC,GAAG,CAAC,KAAK,CAAA,CAAC,CAAA,EAAC,aAAa,EAAC,SAAS,GAAC,KAAK,EAAC,CAAA,CAAC,CAAA,EAAC,sBAAsB,EAAC,MAAM,CAAC,UAAU,EAAC,CAAC,EAAC,EAAC,GAAG,CAAC,SAAS,KAAG,OAAO,CAAA,CAAC,CAAA,EAAC,IAAI,EAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAC,CAAA,CAAC,CAAA,EAAE,CAAC,EAAC,EAAC,KAAK,CAAC,CAAC;IACrY,MAAM,OAAO,GAAC,MAAM,GAAG,CAAC,IAAI,EAAwE,CAAC;IACrG,IAAG,CAAC,GAAG,CAAC,EAAE,IAAE,CAAC,OAAO,CAAC,EAAE,IAAE,CAAC,OAAO,CAAC,IAAI;QAAC,MAAM,KAAK,CAAC,CAAC,OAAO,CAAC,OAAO,IAAE,OAAO,CAAC,KAAK,IAAE,2BAA2B,CAAC,GAAC,SAAS,GAAC,GAAG,CAAC,MAAM,GAAC,GAAG,CAAC,CAAC;IAC3I,IAAG,OAAO,CAAC,IAAI,CAAC,MAAM;QAAC,MAAM,CAAC,MAAM,GAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;IAAA,IAAG,OAAO,CAAC,IAAI,CAAC,MAAM,KAAG,SAAS,IAAE,OAAO,CAAC,IAAI,CAAC,MAAM,EAAC,CAAC;QAAA,OAAO,MAAM,CAAC,IAAI,CAAC;QAAA,IAAG,CAAC,MAAM,CAAC,MAAM;YAAC,MAAM,CAAC,QAAQ,GAAC,OAAO,CAAC,IAAI,CAAC;IAAA,CAAC;IAAA,IAAI,CAAC,MAAM,CAAC,CAAC;IAAA,OAAO,EAAC,GAAG,OAAO,CAAC,IAAI,EAAC,UAAU,EAAC,MAAM,CAAC,UAAU,EAAC,CAAC;AAC1P,CAAC;AACD,8FAA8F;AAC9F,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAsJ;IACzL,IAAI,MAAe,CAAC;IACpB,IAAG,IAAI,CAAC,SAAS;QAAC,MAAM,GAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAC1C,CAAC;QAAA,IAAG,CAAC,IAAI,CAAC,QAAQ;YAAC,MAAM,KAAK,CAAC,6CAA6C,CAAC,CAAC;QAAA,MAAM,EAAE,GAAC,UAAU,EAAE,EAAC,OAAO,GAAC,IAAI,CAAC,GAAG,EAAE,EAAC,OAAO,GAAC,IAAI,CAAC,OAAO,CAAA,CAAC,CAAA,EAAC,GAAG,IAAI,CAAC,OAAO,EAAC,CAAA,CAAC,CAAA,SAAS,CAAC;QAAA,IAAG,OAAO,EAAE,IAAI;YAAC,OAAO,OAAO,CAAC,IAAI,CAAC;QAAA,MAAM,MAAM,GAAC,UAAU,EAAE,CAAC;QAAA,MAAM,GAAC,EAAC,UAAU,EAAC,MAAM,EAAE,KAAK,IAAE,MAAM,CAAC,SAAS,KAAG,IAAI,CAAA,CAAC,CAAA,SAAS,CAAA,CAAC,CAAA,WAAW,EAAC,UAAU,EAAC,EAAE,EAAC,kBAAkB,EAAC,OAAO,EAAC,UAAU,EAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAC,IAAI,EAAC,EAAC,QAAQ,EAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,GAAG,CAAC,OAAO,CAAA,CAAC,CAAA,EAAC,OAAO,EAAC,CAAA,CAAC,CAAA,EAAE,CAAC,EAAC,UAAU,EAAC,EAAE,EAAC,kBAAkB,EAAC,OAAO,EAAC,EAAC,CAAC;QAAA,IAAI,CAAC,MAAM,CAAC,CAAC;IAAA,CAAC;IAClhB,IAAG,CAAC;QACF,IAAG,MAAM,CAAC,QAAQ;YAAC,OAAO,EAAC,GAAG,MAAM,CAAC,QAAQ,EAAC,UAAU,EAAC,MAAM,CAAC,UAAU,EAAC,CAAC;QAC5E,IAAG,IAAI,CAAC,SAAS,KAAG,QAAQ,IAAE,CAAC,MAAM,CAAC,MAAM;YAAC,MAAM,KAAK,CAAC,iIAAiI,CAAC,CAAC;QAC5L,IAAI,MAAM,GAAC,MAAM,OAAO,CAAC,MAAM,EAAC,MAAM,CAAC,MAAM,CAAA,CAAC,CAAA,CAAC,IAAI,CAAC,SAAS,IAAE,QAAQ,CAAC,CAAA,CAAC,CAAA,OAAO,CAAC,CAAC;QAClF,IAAG,IAAI,CAAC,IAAI,KAAG,KAAK,IAAE,IAAI,CAAC,SAAS,KAAG,QAAQ,IAAE,IAAI,CAAC,SAAS,KAAG,QAAQ;YAAC,OAAO,MAAM,CAAC;QACzF,IAAG,MAAM,CAAC,MAAM,KAAG,SAAS,IAAE,CAAC,MAAM,CAAC,MAAM;YAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,+DAA+D,GAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAChJ,OAAM,MAAM,CAAC,MAAM,KAAG,SAAS,IAAE,CAAC,MAAM,CAAC,MAAM,EAAC,CAAC;YAAA,MAAM,IAAI,OAAO,CAAC,OAAO,CAAA,EAAE,CAAA,UAAU,CAAC,OAAO,EAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAC,CAAC,MAAM,CAAC,mBAAmB,IAAE,CAAC,CAAC,GAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAAA,MAAM,GAAC,MAAM,OAAO,CAAC,MAAM,EAAC,MAAM,CAAC,SAAS,KAAG,QAAQ,CAAA,CAAC,CAAA,QAAQ,CAAA,CAAC,CAAA,QAAQ,CAAC,CAAC;QAAA,CAAC;QACjP,OAAO,MAAM,CAAC;IAChB,CAAC;IAAA,OAAM,KAAK,EAAC,CAAC;QAAA,MAAM,KAAK,CAAC,CAAC,KAAK,YAAY,KAAK,CAAA,CAAC,CAAA,KAAK,CAAC,OAAO,CAAA,CAAC,CAAA,MAAM,CAAC,KAAK,CAAC,CAAC,GAAC,wDAAwD,GAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAAA,CAAC;AAC9J,CAAC;AAED,sFAAsF;AACtF,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAW,EAAC,QAAgC;IAClF,IAAI,MAA6B,CAAC;IAAA,IAAG,CAAC;QAAA,MAAM,GAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAA2B,CAAC;IAAA,CAAC;IAAA,MAAK,CAAC;QAAA,OAAO,IAAI,CAAC;IAAA,CAAC;IAC5G,IAAG,OAAO,MAAM,CAAC,MAAM,KAAG,QAAQ,IAAE,OAAO,MAAM,CAAC,MAAM,KAAG,QAAQ;QAAC,OAAO,IAAI,CAAC;IAChF,MAAM,MAAM,GAAC,UAAU,EAAE,EAAC,SAAS,GAAC,OAAO,MAAM,CAAC,oBAAoB,KAAG,QAAQ,EAAC,EAAE,GAAC,UAAU,EAAE,CAAC;IAClG,IAAG,CAAC,SAAS,IAAE,CAAC,CAAC,MAAM,EAAE,KAAK,IAAE,MAAM,CAAC,SAAS,KAAG,IAAI,CAAC;QAAC,MAAM,KAAK,CAAC,oDAAoD,CAAC,CAAC;IAC3H,MAAM,MAAM,GAAU,EAAC,UAAU,EAAC,SAAS,CAAA,CAAC,CAAA,WAAW,CAAA,CAAC,CAAA,SAAS,EAAC,UAAU,EAAC,EAAE,EAAC,kBAAkB,EAAC,IAAI,CAAC,GAAG,EAAE,EAAC,UAAU,EAAC,SAAS,CAAA,CAAC,CAAA,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAA,CAAC,CAAA,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAC,MAAM,EAAC,MAAM,CAAC,MAAM,EAAC,CAAC;IAAA,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1O,OAAO,cAAc,CAAC,EAAC,SAAS,EAAC,EAAE,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,CAAC,CAAC;AACpE,CAAC"}
1
+ {"version":3,"file":"advisor-runs.js","sourceRoot":"","sources":["../../src/lib/advisor-runs.ts"],"names":[],"mappings":"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"}
@@ -2068,7 +2068,7 @@ button, input, textarea { font: inherit; color: inherit; }
2068
2068
  .muted { color: var(--color-muted); }
2069
2069
  .hint { margin: 0; color: var(--color-muted); font-size: var(--text-sm); font-weight: 400; }
2070
2070
  .error { margin: 0; color: var(--color-danger); font-size: var(--text-sm); }
2071
- .skip-link { position: absolute; left: var(--space-3); top: -60px; padding: var(--space-2) var(--space-3); background: var(--color-text); color: var(--color-bg); }
2071
+ .skip-link { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; position: absolute; left: var(--space-3); top: -60px; padding: var(--space-2) var(--space-3); background: var(--color-text); color: var(--color-bg); }
2072
2072
  .skip-link:focus { top: var(--space-3); }
2073
2073
 
2074
2074
  .panel {
@@ -2164,7 +2164,7 @@ button, input, textarea { font: inherit; color: inherit; }
2164
2164
  border-bottom: 1px solid var(--color-border);
2165
2165
  }
2166
2166
  .topbar__error { width: min(1040px, calc(100% - 2 * var(--space-6))); margin: var(--space-2) auto 0; }
2167
- .brand { font: 600 var(--text-lg)/1 var(--font-display); color: inherit; text-decoration: none; }
2167
+ .brand { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; font: 600 var(--text-lg)/1 var(--font-display); color: inherit; text-decoration: none; }
2168
2168
  .account { display: flex; align-items: center; gap: var(--space-3); min-width: 0; }
2169
2169
  .account__label { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--color-muted); font-size: var(--text-sm); }
2170
2170
  .content { width: min(1040px, calc(100% - 2 * var(--space-6))); margin: 0 auto; padding: var(--space-8) 0 var(--space-12); outline: none; }
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@somewhere-tech/cli",
3
- "version": "0.37.23",
3
+ "version": "0.37.24",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@somewhere-tech/cli",
9
- "version": "0.37.23",
9
+ "version": "0.37.24",
10
10
  "bundleDependencies": [
11
11
  "@modelcontextprotocol/sdk",
12
12
  "chokidar",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@somewhere-tech/cli",
3
- "version": "0.37.23",
3
+ "version": "0.37.24",
4
4
  "description": "CLI for somewhere.tech \u2014 auth, projects, deploy, pull, promote, db, logs, env, MCP bridge.",
5
5
  "keywords": [
6
6
  "somewhere",