@hyperdreamer/pi-webui 1.6.1 → 1.7.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.
Files changed (30) hide show
  1. package/dist/client/assets/{CodeViewer-aB4ZVzEu.js → CodeViewer-6qlmWYzB.js} +1 -1
  2. package/dist/client/assets/{UnifiedDiffViewer-f8X7aTkU.js → UnifiedDiffViewer-SCHm0P_t.js} +1 -1
  3. package/dist/client/assets/{index-Cffeusjy.js → index-C9z5sr6t.js} +448 -388
  4. package/dist/client/index.html +1 -1
  5. package/dist/server/app.js +15 -1
  6. package/dist/server/app.js.map +1 -1
  7. package/dist/server/browser/browserCapabilities.js +74 -0
  8. package/dist/server/browser/browserCapabilities.js.map +1 -0
  9. package/dist/server/browser/browserCapabilityRoutes.js +34 -0
  10. package/dist/server/browser/browserCapabilityRoutes.js.map +1 -0
  11. package/dist/server/browser/browserPolicy.js +382 -0
  12. package/dist/server/browser/browserPolicy.js.map +1 -0
  13. package/dist/server/browser/browserRuntime.js +16 -0
  14. package/dist/server/browser/browserRuntime.js.map +1 -0
  15. package/dist/server/sessions/piSessionService.js +95 -10
  16. package/dist/server/sessions/piSessionService.js.map +1 -1
  17. package/dist/server/sessions/sessionCleanup.js +26 -0
  18. package/dist/server/sessions/sessionCleanup.js.map +1 -1
  19. package/dist/server/sessions/sessionCommandService.js +1 -1
  20. package/dist/server/sessions/sessionCommandService.js.map +1 -1
  21. package/dist/server/sessions/sessionRoutes.js +26 -0
  22. package/dist/server/sessions/sessionRoutes.js.map +1 -1
  23. package/dist/shared/apiTypes.d.ts +8 -0
  24. package/dist/shared/apiTypes.js +1 -0
  25. package/dist/shared/apiTypes.js.map +1 -1
  26. package/dist/shared/capabilities.js +3 -0
  27. package/dist/shared/capabilities.js.map +1 -1
  28. package/dist/shared/federatedRoutes.js +2 -0
  29. package/dist/shared/federatedRoutes.js.map +1 -1
  30. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browserPolicy.js","sourceRoot":"","sources":["../../../src/server/browser/browserPolicy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ export function unavailableBrowserRuntimeReadiness() {
2
+ return {
3
+ controlChannel: "unavailable",
4
+ chromiumSandbox: "unavailable",
5
+ profileIsolation: "unavailable",
6
+ hostIsolation: "unavailable",
7
+ debuggingTransport: "unavailable",
8
+ egress: { state: "unavailable", mode: "domain-allowlist", privateNetworksBlocked: false },
9
+ protocolVersions: [],
10
+ limits: { maxTabsPerSession: 0, maxSessionsPerPrincipal: 0 },
11
+ };
12
+ }
13
+ export function unavailableBrowserRuntime() {
14
+ return { readiness: () => Promise.resolve(unavailableBrowserRuntimeReadiness()) };
15
+ }
16
+ //# sourceMappingURL=browserRuntime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browserRuntime.js","sourceRoot":"","sources":["../../../src/server/browser/browserRuntime.ts"],"names":[],"mappings":"AA0CA,MAAM,UAAU,kCAAkC;IAChD,OAAO;QACL,cAAc,EAAE,aAAa;QAC7B,eAAe,EAAE,aAAa;QAC9B,gBAAgB,EAAE,aAAa;QAC/B,aAAa,EAAE,aAAa;QAC5B,kBAAkB,EAAE,aAAa;QACjC,MAAM,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,KAAK,EAAE;QACzF,gBAAgB,EAAE,EAAE;QACpB,MAAM,EAAE,EAAE,iBAAiB,EAAE,CAAC,EAAE,uBAAuB,EAAE,CAAC,EAAE;KAC7D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB;IACvC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,kCAAkC,EAAE,CAAC,EAAE,CAAC;AACpF,CAAC"}
@@ -6,7 +6,7 @@ import { projectBrowserMessage } from "../browserMessageProjection.js";
6
6
  import { pageMessagesAtSafeBoundary } from "./messagePaging.js";
7
7
  import { exportSessionHistoryHtml } from "./sessionHistoryExport.js";
8
8
  import { BUILTIN_COMMANDS } from "./builtinCommands.js";
9
- import { SessionCommandService } from "./sessionCommandService.js";
9
+ import { SessionCommandService, clientSessionFromRuntime } from "./sessionCommandService.js";
10
10
  import { projectSessionTree } from "./sessionTreeProjection.js";
11
11
  import { SessionArchiveStore } from "./sessionArchiveStore.js";
12
12
  import { SessionMetadataStore } from "./sessionMetadataStore.js";
@@ -20,7 +20,7 @@ import { canonicalizeStoredCwd, cwdPathsEqual } from "../workingDirectory.js";
20
20
  import { createSpawnSessionToolDefinition } from "./spawnSessionTool.js";
21
21
  import { createSubsessionToolDefinitions } from "./spawnSubsessionTool.js";
22
22
  import { buildTranscriptView } from "./subsessionTranscript.js";
23
- import { planSessionCleanup, summarizeSessionCleanupExecution } from "./sessionCleanup.js";
23
+ import { planForceCleanup, planSessionCleanup, summarizeForceCleanupExecution, summarizeSessionCleanupExecution } from "./sessionCleanup.js";
24
24
  import { SessionNotificationStore, } from "./sessionNotificationStore.js";
25
25
  import { plainTextTheme } from "./plainTextTheme.js";
26
26
  import { SessionUnreadStore } from "./sessionUnreadStore.js";
@@ -424,6 +424,35 @@ export class PiSessionService {
424
424
  skippedBusySessionIds: [...skippedBusySessionIds],
425
425
  });
426
426
  }
427
+ async forceCleanup() {
428
+ if (this.archiveStore.deleteArchived === undefined && this.archiveStore.deleteArchivedMany === undefined)
429
+ throw new Error("Archive store does not support deletion");
430
+ const archivedRecords = await this.archiveStore.list();
431
+ const plan = planForceCleanup({
432
+ archivedRecords,
433
+ activeSessions: this.cleanupActiveSessionStatuses(),
434
+ now: this.now(),
435
+ });
436
+ const readyDeleteRecords = [];
437
+ const skippedBusySessionIds = new Set(plan.skippedBusySessionIds);
438
+ for (const record of plan.deleteRecords) {
439
+ if (this.activeSessionHasWork(record.sessionId)) {
440
+ skippedBusySessionIds.add(record.sessionId);
441
+ continue;
442
+ }
443
+ await this.closeActive(record.sessionId, { kind: "clear", reason: "delete" });
444
+ readyDeleteRecords.push(record);
445
+ }
446
+ await this.ensureArchivedRecordsMoved(readyDeleteRecords);
447
+ const deletedSessionIds = new Set(await this.archiveStoreDeleteArchivedMany(readyDeleteRecords.map((record) => record.sessionId)));
448
+ const deleteRecords = readyDeleteRecords.filter((record) => deletedSessionIds.has(record.sessionId));
449
+ await this.forgetUnreadSessions(deleteRecords);
450
+ return summarizeForceCleanupExecution({
451
+ deleteRecords,
452
+ generatedAt: plan.generatedAt,
453
+ skippedBusySessionIds: [...skippedBusySessionIds],
454
+ });
455
+ }
427
456
  async dispose() {
428
457
  this.unreadPublicationStopped = true;
429
458
  this.clearUnreadPublicationRetry();
@@ -1111,11 +1140,34 @@ export class PiSessionService {
1111
1140
  async navigateTree(ref, request) {
1112
1141
  if (request.targetId.trim() === "")
1113
1142
  throw new Error("Session tree target is required");
1143
+ return this.navigateToTreeEntry(ref, request.targetId, sessionTreeNavigationOptions(request), request.expectedLeafId);
1144
+ }
1145
+ async editFromHere(ref, targetId) {
1146
+ return this.navigateToTreeEntry(ref, targetId, { summarize: false });
1147
+ }
1148
+ async forkFromHere(ref, entryId) {
1149
+ if (entryId.trim() === "")
1150
+ throw new Error("Session entry is required for forking");
1151
+ if (this.isTreeExclusiveSessionIdentityActive(sessionIdFromLookup(ref))) {
1152
+ throw new Error("Stop current session activity before replacing the session");
1153
+ }
1154
+ await this.assertWritable(ref);
1155
+ const active = await this.getActive(ref);
1156
+ const sourceSession = active.runtime.session;
1157
+ const result = await this.runTreeExclusiveOperation([{ sessionId: sourceSession.sessionId, session: sourceSession, runtime: active.runtime }], "Stop current session activity before replacing the session", () => active.runtime.fork(entryId));
1158
+ if (result.cancelled)
1159
+ return { cancelled: true };
1160
+ const session = clientSessionFromRuntime(active.runtime);
1161
+ this.events.publishGlobal({ type: "session.created", session });
1162
+ return { cancelled: false, session };
1163
+ }
1164
+ async navigateToTreeEntry(ref, targetId, options, expectedLeafId) {
1165
+ if (targetId.trim() === "")
1166
+ throw new Error("Session tree target is required");
1114
1167
  if (this.isTreeExclusiveSessionIdentityActive(sessionIdFromLookup(ref))) {
1115
1168
  throw new Error("Stop current session activity before navigating the session tree");
1116
1169
  }
1117
1170
  await this.assertWritable(ref);
1118
- const options = sessionTreeNavigationOptions(request);
1119
1171
  const session = await this.getOrOpen(ref);
1120
1172
  if (typeof session.navigateTree !== "function")
1121
1173
  throw new Error("Session tree navigation is not supported by this Pi runtime");
@@ -1125,12 +1177,12 @@ export class PiSessionService {
1125
1177
  // may enter this runtime until Pi's potentially asynchronous summary settles.
1126
1178
  this.treeNavigations.add(session);
1127
1179
  try {
1128
- if (session.sessionManager.getLeafId() !== request.expectedLeafId) {
1180
+ if (expectedLeafId !== undefined && session.sessionManager.getLeafId() !== expectedLeafId) {
1129
1181
  throw new Error("The session changed since /tree was opened. Reopen /tree and try again.");
1130
1182
  }
1131
1183
  this.publishActivity(session, options.summarize ? "summarizing branch" : "navigating session tree", "active");
1132
1184
  this.publishStatus(session);
1133
- const result = await session.navigateTree(request.targetId, options);
1185
+ const result = await session.navigateTree(targetId, options);
1134
1186
  if (result.cancelled) {
1135
1187
  if (this.isCurrentActiveSession(session)) {
1136
1188
  this.publishActivity(session, result.aborted === true ? "branch summary aborted" : "tree navigation cancelled", "idle");
@@ -3030,17 +3082,50 @@ function stringValue(value) {
3030
3082
  }
3031
3083
  function historyMessages(session) {
3032
3084
  const messages = [];
3085
+ let previousMessage;
3033
3086
  for (const entry of session.sessionManager.getBranch()) {
3034
3087
  if (!isRecord(entry))
3035
3088
  continue;
3036
- if (entry["type"] === "message")
3037
- messages.push(entry["message"]);
3038
- else if (entry["type"] === "custom_message" && entry["display"] === true)
3089
+ if (entry["type"] === "message") {
3090
+ const message = entry["message"];
3091
+ const entryId = getString(entry, "id");
3092
+ const role = getString(message, "role");
3093
+ if (role === "user" && isRecord(message) && entryId !== undefined) {
3094
+ // History action fields are service-owned annotations, never persisted
3095
+ // user-message payload fields supplied by an extension.
3096
+ const historyMessage = { ...message };
3097
+ delete historyMessage["entryId"];
3098
+ delete historyMessage["previousAssistantEntryId"];
3099
+ delete historyMessage["canFork"];
3100
+ messages.push({
3101
+ ...historyMessage,
3102
+ entryId,
3103
+ ...(previousMessage?.role === "assistant" && previousMessage.entryId !== undefined
3104
+ ? { previousAssistantEntryId: previousMessage.entryId }
3105
+ : {}),
3106
+ ...(messages.length > 0 ? { canFork: true } : {}),
3107
+ });
3108
+ }
3109
+ else {
3110
+ messages.push(message);
3111
+ }
3112
+ previousMessage = { role, entryId };
3113
+ continue;
3114
+ }
3115
+ if (entry["type"] === "custom_message" && entry["display"] === true) {
3039
3116
  messages.push({ role: "custom", content: entry["content"], customType: entry["customType"], details: entry["details"] });
3040
- else if (entry["type"] === "compaction")
3117
+ previousMessage = { role: "custom", entryId: undefined };
3118
+ continue;
3119
+ }
3120
+ if (entry["type"] === "compaction") {
3041
3121
  messages.push({ role: "system", source: "compaction", content: `Compacted history:\n\n${stringValue(entry["summary"])}` });
3042
- else if (entry["type"] === "branch_summary")
3122
+ previousMessage = { role: "system", entryId: undefined };
3123
+ continue;
3124
+ }
3125
+ if (entry["type"] === "branch_summary") {
3043
3126
  messages.push({ role: "system", source: "branch_summary", content: `Branch summary:\n\n${stringValue(entry["summary"])}` });
3127
+ previousMessage = { role: "system", entryId: undefined };
3128
+ }
3044
3129
  }
3045
3130
  return messages;
3046
3131
  }