@evandu/super-pi 0.1.160 → 0.1.161
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/agents/super-pi-task/core.ts +1 -1
- package/agents/super-pi-task/index.ts +2 -1
- package/dist/client/.super-pi-client-sources.json +5 -5
- package/dist/client/assets/{CodeMirrorEditor-DeH4azrn.js → CodeMirrorEditor-CDaL0eZg.js} +2 -2
- package/dist/client/assets/{dist-QI-T3k9i.js → dist-BA58NP6M.js} +1 -1
- package/dist/client/assets/{dist-DefZp4Fa.js → dist-BDNs_xhA.js} +1 -1
- package/dist/client/assets/{dist-CsDwtK1F.js → dist-BHWAql8E.js} +1 -1
- package/dist/client/assets/{dist-u0a7h80y.js → dist-BJG0l-sn.js} +1 -1
- package/dist/client/assets/{dist-C1iGzBNB.js → dist-BZgXABCU.js} +1 -1
- package/dist/client/assets/{dist-7jfYXjWH.js → dist-CSdmsB0d.js} +1 -1
- package/dist/client/assets/{dist-CA4ywFCU.js → dist-CTelFWCj.js} +1 -1
- package/dist/client/assets/{dist-ClXbSHKM.js → dist-CWgIVqDh.js} +1 -1
- package/dist/client/assets/{dist-BotfOUXo.js → dist-CZlI9li3.js} +1 -1
- package/dist/client/assets/{dist-CNdHgilU.js → dist-CiyMaqx4.js} +1 -1
- package/dist/client/assets/{dist-CdG0dOlF.js → dist-Cm3rvfSQ.js} +1 -1
- package/dist/client/assets/{dist-CrwnaHWk.js → dist-D1cVuzfF.js} +1 -1
- package/dist/client/assets/{dist-CBAhomD3.js → dist-DL66Z_jn.js} +1 -1
- package/dist/client/assets/{dist-DWHnCS4H.js → dist-DO3oDtGc.js} +1 -1
- package/dist/client/assets/{dist-Br9aGZZB.js → dist-DOdfw0L-.js} +1 -1
- package/dist/client/assets/{dist-BeLF-5JB.js → dist-DPwOtaMP.js} +1 -1
- package/dist/client/assets/{dist-C1FnggSV.js → dist-DVCVhi5y.js} +1 -1
- package/dist/client/assets/{dist-DjepRcJQ.js → dist-DhPkHpbv.js} +1 -1
- package/dist/client/assets/{dist-Fa50HH8A.js → dist-DnaLB6eU.js} +1 -1
- package/dist/client/assets/{dist-CrIX2hon.js → dist-S5Gkqadu.js} +1 -1
- package/dist/client/assets/{dist-Bl20l56d.js → dist-gCJkYldU.js} +1 -1
- package/dist/client/assets/{dist-CgShg9H1.js → dist-jwSzBAO8.js} +1 -1
- package/dist/client/assets/{index-D3XEFVty.js → index-B9tN8KD3.js} +10 -10
- package/dist/client/assets/{index-CYvr3uNw.css → index-BK3ZIqJj.css} +1 -1
- package/dist/client/index.html +2 -2
- package/dist/server/application/conversation-service.d.ts +6 -0
- package/dist/server/application/conversation-service.js +6 -1
- package/dist/server/application/project-service.d.ts +72 -1
- package/dist/server/application/project-service.js +256 -19
- package/dist/server/application/session-orchestrator-service.d.ts +9 -0
- package/dist/server/application/session-orchestrator-service.js +1 -0
- package/dist/server/http-server.js +8 -0
- package/dist/server/store.d.ts +1 -0
- package/dist/server/store.js +8 -1
- package/dist/server/types.d.ts +36 -0
- package/package.json +1 -1
package/dist/server/store.d.ts
CHANGED
|
@@ -281,6 +281,7 @@ export declare class Store {
|
|
|
281
281
|
cwd?: string;
|
|
282
282
|
parentConversationId?: string;
|
|
283
283
|
origin?: "user" | "orchestrator";
|
|
284
|
+
separateMemoryTree?: boolean;
|
|
284
285
|
}): Promise<Conversation>;
|
|
285
286
|
/**
|
|
286
287
|
* Records (or clears) one conversation as collapsed in the sidebar's session tree. The list is a
|
package/dist/server/store.js
CHANGED
|
@@ -1143,7 +1143,14 @@ export class Store {
|
|
|
1143
1143
|
conversation.origin = configuration.origin;
|
|
1144
1144
|
}
|
|
1145
1145
|
try {
|
|
1146
|
-
|
|
1146
|
+
// A PROJECT OPENS ITS OWN MEMORY TREE. Inheriting the parent's tree would put the project's
|
|
1147
|
+
// workers in the user's chat tree, where the tree-scoped memories of that conversation are
|
|
1148
|
+
// visible to them - a project is its own working context. The tree edge in the sidebar is a
|
|
1149
|
+
// different thing and stays exactly as it is.
|
|
1150
|
+
if (configuration?.separateMemoryTree)
|
|
1151
|
+
conversation.treeId = conversation.id;
|
|
1152
|
+
else
|
|
1153
|
+
conversation.treeId = memoryTreeId(conversation, this.state.conversations);
|
|
1147
1154
|
}
|
|
1148
1155
|
catch { /* Keep malformed legacy edges inspectable; memory authorization fails closed. */ }
|
|
1149
1156
|
this.state.conversations.unshift(conversation);
|
package/dist/server/types.d.ts
CHANGED
|
@@ -903,6 +903,16 @@ export type TerminalShell = {
|
|
|
903
903
|
export type ProjectStatus = "planning" | "active" | "blocked" | "awaiting_approval" | "awaiting_review" | "completed" | "failed" | "cancelled";
|
|
904
904
|
export type ProjectTaskStatus = "pending" | "ready" | "in_progress" | "blocked" | "awaiting_review" | "completed" | "failed" | "cancelled";
|
|
905
905
|
export type ProjectRisk = "low" | "medium" | "high";
|
|
906
|
+
/**
|
|
907
|
+
* HOW A PROJECT RUNS.
|
|
908
|
+
*
|
|
909
|
+
* "standard" is the shape the project flow has always had: the leader dispatches worker sessions
|
|
910
|
+
* and every delivery is checked by an independent reviewer session. "lightweight" is the small
|
|
911
|
+
* project's shape: the leader session does the work itself, and a delivery is accepted on the
|
|
912
|
+
* executor's own evidence. Every guardrail is the same in both - what a lightweight project gives
|
|
913
|
+
* up is the number of sessions, never the guardrails.
|
|
914
|
+
*/
|
|
915
|
+
export type ProjectMode = "standard" | "lightweight";
|
|
906
916
|
export type SessionProfile = {
|
|
907
917
|
/** Employee agent file id under agents directory (primary agent name). */
|
|
908
918
|
agentId?: string;
|
|
@@ -941,12 +951,15 @@ export type ProjectTask = {
|
|
|
941
951
|
blockedReason?: string;
|
|
942
952
|
output?: string;
|
|
943
953
|
evidenceRefs?: string[];
|
|
954
|
+
/** The acceptance of this task. `lightweight: true` means the executor accepted its own
|
|
955
|
+
* delivery: there was no independent reviewer session behind it. */
|
|
944
956
|
review?: {
|
|
945
957
|
verdict: "accepted" | "changes_requested";
|
|
946
958
|
summary: string;
|
|
947
959
|
evidenceRefs: string[];
|
|
948
960
|
reviewerConversationId?: string;
|
|
949
961
|
createdAt: string;
|
|
962
|
+
lightweight?: boolean;
|
|
950
963
|
};
|
|
951
964
|
createdAt: string;
|
|
952
965
|
updatedAt: string;
|
|
@@ -990,6 +1003,11 @@ export type Project = {
|
|
|
990
1003
|
workspaceId: string;
|
|
991
1004
|
title: string;
|
|
992
1005
|
objective: string;
|
|
1006
|
+
/** HOW THE PROJECT RUNS. Absent means "standard": the leader dispatches worker sessions and
|
|
1007
|
+
* every delivery is checked by an independent reviewer session. "lightweight" is the small
|
|
1008
|
+
* project's shape: the leader session does the work itself, and a delivery is accepted on the
|
|
1009
|
+
* executor's own evidence. Every guardrail is the same in both modes. */
|
|
1010
|
+
mode?: ProjectMode;
|
|
993
1011
|
deliverables: string[];
|
|
994
1012
|
acceptanceCriteria: string[];
|
|
995
1013
|
constraints: string[];
|
|
@@ -1007,6 +1025,14 @@ export type Project = {
|
|
|
1007
1025
|
defaultExecutorProfile?: SessionProfile;
|
|
1008
1026
|
defaultReviewerProfile?: SessionProfile;
|
|
1009
1027
|
events?: ProjectEvent[];
|
|
1028
|
+
/**
|
|
1029
|
+
* The project's live sessions, with the tree skeleton attached.
|
|
1030
|
+
*
|
|
1031
|
+
* `parentConversationId` is what lets the client draw a TREE rather than a flat list: a
|
|
1032
|
+
* session whose parent is not in this collection is a ROOT of the tree (the project leader,
|
|
1033
|
+
* and any orphan left behind by an older layout). Without it the panel can only show a row
|
|
1034
|
+
* per session, and the hierarchy - who reported to whom - stays invisible.
|
|
1035
|
+
*/
|
|
1010
1036
|
resources?: {
|
|
1011
1037
|
tokens: number;
|
|
1012
1038
|
usageKnown: boolean;
|
|
@@ -1018,8 +1044,18 @@ export type Project = {
|
|
|
1018
1044
|
status: RunStatus;
|
|
1019
1045
|
tokens: number;
|
|
1020
1046
|
contextPercent?: number | null;
|
|
1047
|
+
parentConversationId?: string;
|
|
1021
1048
|
}[];
|
|
1022
1049
|
};
|
|
1050
|
+
/**
|
|
1051
|
+
* THE CAP THE ONE-CLICK PATH OFFERS, COMPUTED BY THE SERVER.
|
|
1052
|
+
*
|
|
1053
|
+
* It is `max(current cap + 1, spent tokens * 2)`, and it is a READ-ONLY projection: it is
|
|
1054
|
+
* never stored, so it can never disagree with the budget the project actually runs on. The
|
|
1055
|
+
* panel shows this number on the button instead of computing one of its own - a suggestion the
|
|
1056
|
+
* client invents is a suggestion the Boss cannot check.
|
|
1057
|
+
*/
|
|
1058
|
+
suggestedMaxTokens?: number;
|
|
1023
1059
|
tasks: ProjectTask[];
|
|
1024
1060
|
reports: ProjectReport[];
|
|
1025
1061
|
escalations: ProjectEscalation[];
|