@vincenthanxiaodu/pi-web 1.202608.74 → 1.202608.76
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/client/assets/{CodeViewer-uN2lxRC5.js → CodeViewer-DyfKGKrr.js} +1 -1
- package/dist/client/assets/{TerminalPanel-0M9uTUST.js → TerminalPanel-BBN-7SPs.js} +1 -1
- package/dist/client/assets/{index-CeU8-JId.js → index-lagKqPPU.js} +341 -367
- package/dist/client/index.html +1 -1
- package/dist/server/goals/goalStore.js +15 -2
- package/dist/server/goals/goalStore.js.map +1 -1
- package/dist/server/sessions/piSessionService.js +9 -13
- package/dist/server/sessions/piSessionService.js.map +1 -1
- package/dist/server/sessions/sessionActivityLabel.js +16 -0
- package/dist/server/sessions/sessionActivityLabel.js.map +1 -0
- package/dist/server/sessions/subagentRuns.js +5 -1
- package/dist/server/sessions/subagentRuns.js.map +1 -1
- package/package.json +1 -1
package/dist/client/index.html
CHANGED
|
@@ -144,7 +144,7 @@
|
|
|
144
144
|
that is not there. Scale belongs to the app's own control. */
|
|
145
145
|
html { touch-action: pan-x pan-y; }
|
|
146
146
|
</style>
|
|
147
|
-
<script type="module" crossorigin src="./assets/index-
|
|
147
|
+
<script type="module" crossorigin src="./assets/index-lagKqPPU.js"></script>
|
|
148
148
|
</head>
|
|
149
149
|
<body>
|
|
150
150
|
<pi-web-app></pi-web-app>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { readFile, readdir } from "node:fs/promises";
|
|
2
|
-
import { join } from "node:path";
|
|
2
|
+
import { isAbsolute, join, relative } from "node:path";
|
|
3
3
|
import { parseGoalFile, sortGoalSummaries } from "./goalFile.js";
|
|
4
4
|
/**
|
|
5
5
|
* Directory, relative to a workspace, where `pi-goal-x` keeps its records.
|
|
@@ -37,7 +37,15 @@ export async function readWorkspaceGoals(workspacePath, options = {}, now = () =
|
|
|
37
37
|
generatedAt: now().toISOString(),
|
|
38
38
|
});
|
|
39
39
|
const sessionCwd = options.sessionCwd;
|
|
40
|
-
const
|
|
40
|
+
const candidate = sessionCwd !== undefined && sessionCwd !== "" && sessionCwd !== workspacePath ? sessionCwd : undefined;
|
|
41
|
+
// A session cwd contributes goals only when it answers for this workspace:
|
|
42
|
+
// a cwd inside the root (a session working in a subdirectory). The selected
|
|
43
|
+
// session is global state that can lag the workspace selection, so an
|
|
44
|
+
// outside cwd here means another project's session — unioning its goal
|
|
45
|
+
// directory presented another project's goal on this panel with live
|
|
46
|
+
// controls.
|
|
47
|
+
const contained = candidate !== undefined && isInsideRoot(workspacePath, candidate);
|
|
48
|
+
const sessionRoot = contained ? candidate : undefined;
|
|
41
49
|
const workspaceGoals = await readGoalsFromRoot(workspacePath);
|
|
42
50
|
if (sessionRoot === undefined)
|
|
43
51
|
return response(workspaceGoals);
|
|
@@ -94,4 +102,9 @@ async function readGoalsFromRoot(root) {
|
|
|
94
102
|
}
|
|
95
103
|
return [...byId.values()];
|
|
96
104
|
}
|
|
105
|
+
/** True when candidate is workspacePath itself or a path beneath it. */
|
|
106
|
+
function isInsideRoot(workspacePath, candidate) {
|
|
107
|
+
const rel = relative(workspacePath, candidate);
|
|
108
|
+
return rel !== "" && !rel.startsWith("..") && !isAbsolute(rel);
|
|
109
|
+
}
|
|
97
110
|
//# sourceMappingURL=goalStore.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"goalStore.js","sourceRoot":"","sources":["../../../src/server/goals/goalStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"goalStore.js","sourceRoot":"","sources":["../../../src/server/goals/goalStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAEvD,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEjE;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAEpD;;;GAGG;AACH,MAAM,cAAc,GAAG,GAAG,CAAC;AAE3B;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,aAAqB,EAAE,UAAmC,EAAE,EAAE,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE;IAC3H,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,CAAC,KAA0B,EAA0B,EAAE,CAAC,CAAC;QACxE,KAAK;QACL,SAAS;QACT,WAAW,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE;KACjC,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IACtC,MAAM,SAAS,GAAG,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,EAAE,IAAI,UAAU,KAAK,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;IACzH,2EAA2E;IAC3E,4EAA4E;IAC5E,sEAAsE;IACtE,uEAAuE;IACvE,qEAAqE;IACrE,YAAY;IACZ,MAAM,SAAS,GAAG,SAAS,KAAK,SAAS,IAAI,YAAY,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IACpF,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IACtD,MAAM,cAAc,GAAG,MAAM,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAC9D,IAAI,WAAW,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC,cAAc,CAAC,CAAC;IAE/D,MAAM,YAAY,GAAG,MAAM,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC1D,MAAM,IAAI,GAAG,IAAI,GAAG,EAA6B,CAAC;IAClD,8EAA8E;IAC9E,iDAAiD;IACjD,KAAK,MAAM,IAAI,IAAI,YAAY;QAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC;IACzF,KAAK,MAAM,IAAI,IAAI,cAAc;QAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;IAC7F,OAAO,QAAQ,CAAC,iBAAiB,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;AACzD,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,IAAY;IAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IAC9C,IAAI,OAAO,CAAC;IACZ,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,OAAO,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,yEAAyE;QACzE,2EAA2E;QAC3E,oEAAoE;QACpE,oEAAoE;QACpE,MAAM,IAAI,GAAY,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3G,IAAI,IAAI,KAAK,QAAQ;YAAE,OAAO,EAAE,CAAC;QACjC,MAAM,KAAK,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAG,OAAO;SAClB,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SAC/D,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;IAE5B,MAAM,KAAK,GAAwB,EAAE,CAAC;IACtC,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,OAAe,CAAC;QACpB,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACzC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC1C,IAAI,IAAI,KAAK,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC,CAAC;IAEJ,yEAAyE;IACzE,qEAAqE;IACrE,MAAM,IAAI,GAAG,IAAI,GAAG,EAA6B,CAAC;IAClD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnC,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,IAAI,EAAE,CAAC;YAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC7G,CAAC;IACD,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;AAC5B,CAAC;AAED,wEAAwE;AACxE,SAAS,YAAY,CAAC,aAAqB,EAAE,SAAiB;IAC5D,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IAC/C,OAAO,GAAG,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AACjE,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { statSync } from "node:fs";
|
|
2
|
+
import { sessionActivityLabel } from "./sessionActivityLabel.js";
|
|
2
3
|
import { announceUnsupportedSurface, withUnsupportedSurfaceAnnouncement } from "./unsupportedSurface.js";
|
|
3
4
|
import { EMPTY_HOST_CONTRIBUTIONS } from "./hostContributions.js";
|
|
4
5
|
import { takeUnfiledWarnings } from "./warningFiling.js";
|
|
@@ -3490,19 +3491,14 @@ export class PiSessionService {
|
|
|
3490
3491
|
}
|
|
3491
3492
|
}
|
|
3492
3493
|
activityLabelFromStatus(session) {
|
|
3493
|
-
|
|
3494
|
-
|
|
3495
|
-
|
|
3496
|
-
|
|
3497
|
-
|
|
3498
|
-
|
|
3499
|
-
|
|
3500
|
-
|
|
3501
|
-
if (session.isStreaming)
|
|
3502
|
-
return "agent running";
|
|
3503
|
-
if (this.pendingMessageCount(session) > 0)
|
|
3504
|
-
return "queued";
|
|
3505
|
-
return "active";
|
|
3494
|
+
return sessionActivityLabel({
|
|
3495
|
+
treeNavigationActive: this.treeNavigations.has(session),
|
|
3496
|
+
entryMutationActive: this.isSessionEntryMutationActive(session),
|
|
3497
|
+
isCompacting: session.isCompacting,
|
|
3498
|
+
isBashRunning: session.isBashRunning,
|
|
3499
|
+
isStreaming: session.isStreaming,
|
|
3500
|
+
pendingMessageCount: this.pendingMessageCount(session),
|
|
3501
|
+
});
|
|
3506
3502
|
}
|
|
3507
3503
|
hasActiveWork(session) {
|
|
3508
3504
|
return this.treeNavigations.has(session)
|