@cookielab.io/klovi 3.0.0-beta.21 → 3.0.0-beta.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cli.js CHANGED
@@ -62,6 +62,16 @@ var init_plugin_errors = __esm(() => {
62
62
  function encodeSessionId(pluginId, rawSessionId) {
63
63
  return `${pluginId}${SESSION_ID_SEPARATOR}${rawSessionId}`;
64
64
  }
65
+ function parseSessionId(sessionId) {
66
+ const separatorIdx = sessionId.indexOf(SESSION_ID_SEPARATOR);
67
+ if (separatorIdx === -1) {
68
+ return { pluginId: null, rawSessionId: sessionId };
69
+ }
70
+ return {
71
+ pluginId: sessionId.slice(0, separatorIdx),
72
+ rawSessionId: sessionId.slice(separatorIdx + SESSION_ID_SEPARATOR.length)
73
+ };
74
+ }
65
75
  var SESSION_ID_SEPARATOR = "::";
66
76
 
67
77
  // ../../packages/plugin-core/src/plugin-registry.ts
@@ -774,6 +784,7 @@ class ServerConfig extends Context3.Tag("@klovi/ServerConfig")() {
774
784
  import { Context as Context4, Effect as Effect18, Layer as Layer6 } from "effect";
775
785
 
776
786
  // ../../packages/server/src/services/app-services.ts
787
+ init_src();
777
788
  import { access, rm } from "node:fs/promises";
778
789
 
779
790
  // ../../packages/plugin-claude-code/src/index.ts
@@ -2215,27 +2226,6 @@ var BUILTIN_PLUGIN_DESCRIPTORS = [
2215
2226
  ];
2216
2227
  var BUILTIN_PLUGIN_ID_SET = new Set(BUILTIN_PLUGIN_DESCRIPTORS.map((descriptor) => descriptor.plugin.id));
2217
2228
 
2218
- // ../../packages/server/src/services/iso-time.ts
2219
- function sortByIsoDesc2(items, select) {
2220
- items.sort((a, b) => select(b).localeCompare(select(a)));
2221
- }
2222
-
2223
- // ../../packages/server/src/services/session-id.ts
2224
- var SESSION_ID_SEPARATOR2 = "::";
2225
- function encodeSessionId3(pluginId, rawSessionId) {
2226
- return `${pluginId}${SESSION_ID_SEPARATOR2}${rawSessionId}`;
2227
- }
2228
- function parseSessionId2(sessionId) {
2229
- const separatorIdx = sessionId.indexOf(SESSION_ID_SEPARATOR2);
2230
- if (separatorIdx === -1) {
2231
- return { pluginId: null, rawSessionId: sessionId };
2232
- }
2233
- return {
2234
- pluginId: sessionId.slice(0, separatorIdx),
2235
- rawSessionId: sessionId.slice(separatorIdx + SESSION_ID_SEPARATOR2.length)
2236
- };
2237
- }
2238
-
2239
2229
  // ../../packages/server/src/services/settings.ts
2240
2230
  init_src();
2241
2231
  import { mkdir, readFile, rename, writeFile } from "node:fs/promises";
@@ -2278,6 +2268,7 @@ async function saveSettings(path, settings) {
2278
2268
  }
2279
2269
 
2280
2270
  // ../../packages/server/src/services/stats.ts
2271
+ init_src();
2281
2272
  function emptyStats(projects = 0) {
2282
2273
  return {
2283
2274
  projects,
@@ -2357,7 +2348,7 @@ async function loadSessionForStats(registry, project, session) {
2357
2348
  return null;
2358
2349
  const plugin = registry.getPlugin(session.pluginId);
2359
2350
  const pluginConfig = registry.getPluginConfig(session.pluginId);
2360
- const { rawSessionId } = parseSessionId2(session.sessionId);
2351
+ const { rawSessionId } = parseSessionId(session.sessionId);
2361
2352
  const loaded = await runPluginEffect(plugin.loadSession(source.nativeId, rawSessionId), pluginConfig).catch(() => null);
2362
2353
  return loaded?.turns ?? null;
2363
2354
  }
@@ -2417,7 +2408,7 @@ async function getSessions(registry, params) {
2417
2408
  return { sessions };
2418
2409
  }
2419
2410
  async function getSession(registry, params) {
2420
- const parsed = parseSessionId2(params.sessionId);
2411
+ const parsed = parseSessionId(params.sessionId);
2421
2412
  if (!parsed.pluginId || !parsed.rawSessionId) {
2422
2413
  throw new Error("Invalid sessionId format");
2423
2414
  }
@@ -2434,14 +2425,14 @@ async function getSession(registry, params) {
2434
2425
  const pluginConfig = registry.getPluginConfig(pluginId);
2435
2426
  const sessionDetail = plugin.loadSessionDetail ? await runPluginEffect(plugin.loadSessionDetail(source.nativeId, rawSessionId), pluginConfig) : undefined;
2436
2427
  const session = sessionDetail?.session ?? await runPluginEffect(plugin.loadSession(source.nativeId, rawSessionId), pluginConfig);
2437
- session.sessionId = encodeSessionId3(pluginId, rawSessionId);
2428
+ session.sessionId = encodeSessionId(pluginId, rawSessionId);
2438
2429
  session.pluginId = pluginId;
2439
- session.planSessionId = sessionDetail?.planSessionId ? encodeSessionId3(pluginId, sessionDetail.planSessionId) : undefined;
2440
- session.implSessionId = sessionDetail?.implSessionId ? encodeSessionId3(pluginId, sessionDetail.implSessionId) : undefined;
2430
+ session.planSessionId = sessionDetail?.planSessionId ? encodeSessionId(pluginId, sessionDetail.planSessionId) : undefined;
2431
+ session.implSessionId = sessionDetail?.implSessionId ? encodeSessionId(pluginId, sessionDetail.implSessionId) : undefined;
2441
2432
  return { session };
2442
2433
  }
2443
2434
  async function getSubAgent(registry, params) {
2444
- const parsed = parseSessionId2(params.sessionId);
2435
+ const parsed = parseSessionId(params.sessionId);
2445
2436
  if (!parsed.pluginId || !parsed.rawSessionId) {
2446
2437
  throw new Error("Invalid sessionId format");
2447
2438
  }
@@ -2475,7 +2466,7 @@ async function searchSessions(registry) {
2475
2466
  });
2476
2467
  }
2477
2468
  }
2478
- sortByIsoDesc2(allSessions, (session) => session.timestamp);
2469
+ sortByIsoDesc(allSessions, (session) => session.timestamp);
2479
2470
  return { sessions: allSessions };
2480
2471
  }
2481
2472
  async function buildPluginSettingsResponse(settingsPath) {
package/dist/server.js CHANGED
@@ -61,6 +61,16 @@ var init_plugin_errors = __esm(() => {
61
61
  function encodeSessionId(pluginId, rawSessionId) {
62
62
  return `${pluginId}${SESSION_ID_SEPARATOR}${rawSessionId}`;
63
63
  }
64
+ function parseSessionId(sessionId) {
65
+ const separatorIdx = sessionId.indexOf(SESSION_ID_SEPARATOR);
66
+ if (separatorIdx === -1) {
67
+ return { pluginId: null, rawSessionId: sessionId };
68
+ }
69
+ return {
70
+ pluginId: sessionId.slice(0, separatorIdx),
71
+ rawSessionId: sessionId.slice(separatorIdx + SESSION_ID_SEPARATOR.length)
72
+ };
73
+ }
64
74
  var SESSION_ID_SEPARATOR = "::";
65
75
 
66
76
  // ../../packages/plugin-core/src/plugin-registry.ts
@@ -773,6 +783,7 @@ class ServerConfig extends Context3.Tag("@klovi/ServerConfig")() {
773
783
  import { Context as Context4, Effect as Effect18, Layer as Layer6 } from "effect";
774
784
 
775
785
  // ../../packages/server/src/services/app-services.ts
786
+ init_src();
776
787
  import { access, rm } from "node:fs/promises";
777
788
 
778
789
  // ../../packages/plugin-claude-code/src/index.ts
@@ -2214,27 +2225,6 @@ var BUILTIN_PLUGIN_DESCRIPTORS = [
2214
2225
  ];
2215
2226
  var BUILTIN_PLUGIN_ID_SET = new Set(BUILTIN_PLUGIN_DESCRIPTORS.map((descriptor) => descriptor.plugin.id));
2216
2227
 
2217
- // ../../packages/server/src/services/iso-time.ts
2218
- function sortByIsoDesc2(items, select) {
2219
- items.sort((a, b) => select(b).localeCompare(select(a)));
2220
- }
2221
-
2222
- // ../../packages/server/src/services/session-id.ts
2223
- var SESSION_ID_SEPARATOR2 = "::";
2224
- function encodeSessionId3(pluginId, rawSessionId) {
2225
- return `${pluginId}${SESSION_ID_SEPARATOR2}${rawSessionId}`;
2226
- }
2227
- function parseSessionId2(sessionId) {
2228
- const separatorIdx = sessionId.indexOf(SESSION_ID_SEPARATOR2);
2229
- if (separatorIdx === -1) {
2230
- return { pluginId: null, rawSessionId: sessionId };
2231
- }
2232
- return {
2233
- pluginId: sessionId.slice(0, separatorIdx),
2234
- rawSessionId: sessionId.slice(separatorIdx + SESSION_ID_SEPARATOR2.length)
2235
- };
2236
- }
2237
-
2238
2228
  // ../../packages/server/src/services/settings.ts
2239
2229
  init_src();
2240
2230
  import { mkdir, readFile, rename, writeFile } from "node:fs/promises";
@@ -2277,6 +2267,7 @@ async function saveSettings(path, settings) {
2277
2267
  }
2278
2268
 
2279
2269
  // ../../packages/server/src/services/stats.ts
2270
+ init_src();
2280
2271
  function emptyStats(projects = 0) {
2281
2272
  return {
2282
2273
  projects,
@@ -2356,7 +2347,7 @@ async function loadSessionForStats(registry, project, session) {
2356
2347
  return null;
2357
2348
  const plugin = registry.getPlugin(session.pluginId);
2358
2349
  const pluginConfig = registry.getPluginConfig(session.pluginId);
2359
- const { rawSessionId } = parseSessionId2(session.sessionId);
2350
+ const { rawSessionId } = parseSessionId(session.sessionId);
2360
2351
  const loaded = await runPluginEffect(plugin.loadSession(source.nativeId, rawSessionId), pluginConfig).catch(() => null);
2361
2352
  return loaded?.turns ?? null;
2362
2353
  }
@@ -2416,7 +2407,7 @@ async function getSessions(registry, params) {
2416
2407
  return { sessions };
2417
2408
  }
2418
2409
  async function getSession(registry, params) {
2419
- const parsed = parseSessionId2(params.sessionId);
2410
+ const parsed = parseSessionId(params.sessionId);
2420
2411
  if (!parsed.pluginId || !parsed.rawSessionId) {
2421
2412
  throw new Error("Invalid sessionId format");
2422
2413
  }
@@ -2433,14 +2424,14 @@ async function getSession(registry, params) {
2433
2424
  const pluginConfig = registry.getPluginConfig(pluginId);
2434
2425
  const sessionDetail = plugin.loadSessionDetail ? await runPluginEffect(plugin.loadSessionDetail(source.nativeId, rawSessionId), pluginConfig) : undefined;
2435
2426
  const session = sessionDetail?.session ?? await runPluginEffect(plugin.loadSession(source.nativeId, rawSessionId), pluginConfig);
2436
- session.sessionId = encodeSessionId3(pluginId, rawSessionId);
2427
+ session.sessionId = encodeSessionId(pluginId, rawSessionId);
2437
2428
  session.pluginId = pluginId;
2438
- session.planSessionId = sessionDetail?.planSessionId ? encodeSessionId3(pluginId, sessionDetail.planSessionId) : undefined;
2439
- session.implSessionId = sessionDetail?.implSessionId ? encodeSessionId3(pluginId, sessionDetail.implSessionId) : undefined;
2429
+ session.planSessionId = sessionDetail?.planSessionId ? encodeSessionId(pluginId, sessionDetail.planSessionId) : undefined;
2430
+ session.implSessionId = sessionDetail?.implSessionId ? encodeSessionId(pluginId, sessionDetail.implSessionId) : undefined;
2440
2431
  return { session };
2441
2432
  }
2442
2433
  async function getSubAgent(registry, params) {
2443
- const parsed = parseSessionId2(params.sessionId);
2434
+ const parsed = parseSessionId(params.sessionId);
2444
2435
  if (!parsed.pluginId || !parsed.rawSessionId) {
2445
2436
  throw new Error("Invalid sessionId format");
2446
2437
  }
@@ -2474,7 +2465,7 @@ async function searchSessions(registry) {
2474
2465
  });
2475
2466
  }
2476
2467
  }
2477
- sortByIsoDesc2(allSessions, (session) => session.timestamp);
2468
+ sortByIsoDesc(allSessions, (session) => session.timestamp);
2478
2469
  return { sessions: allSessions };
2479
2470
  }
2480
2471
  async function buildPluginSettingsResponse(settingsPath) {