@tickernelz/paperclip-pro-server 2026.1002.2 → 2026.1002.4
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/build-info.json +1 -1
- package/dist/routes/openapi.d.ts.map +1 -1
- package/dist/routes/openapi.js +18 -0
- package/dist/routes/openapi.js.map +1 -1
- package/dist/routes/pixels-office.d.ts.map +1 -1
- package/dist/routes/pixels-office.js +10 -1
- package/dist/routes/pixels-office.js.map +1 -1
- package/dist/services/pixels-office.d.ts +2 -1
- package/dist/services/pixels-office.d.ts.map +1 -1
- package/dist/services/pixels-office.js +291 -13
- package/dist/services/pixels-office.js.map +1 -1
- package/node_modules/@agentclientprotocol/sdk/dist/acp.d.ts +15 -1
- package/node_modules/@agentclientprotocol/sdk/dist/acp.js +15 -1
- package/node_modules/@agentclientprotocol/sdk/dist/acp.js.map +1 -1
- package/node_modules/@agentclientprotocol/sdk/dist/protocol-router.d.ts +9 -2
- package/node_modules/@agentclientprotocol/sdk/dist/protocol-router.js +6 -1
- package/node_modules/@agentclientprotocol/sdk/dist/protocol-router.js.map +1 -1
- package/node_modules/@agentclientprotocol/sdk/dist/protocol-router.test.js +58 -1
- package/node_modules/@agentclientprotocol/sdk/dist/protocol-router.test.js.map +1 -1
- package/node_modules/@agentclientprotocol/sdk/dist/v2/acp.d.ts +15 -1
- package/node_modules/@agentclientprotocol/sdk/dist/v2/acp.js +15 -1
- package/node_modules/@agentclientprotocol/sdk/dist/v2/acp.js.map +1 -1
- package/node_modules/@agentclientprotocol/sdk/package.json +1 -1
- package/package.json +21 -21
- package/ui-dist/assets/{AgentAvatar-DNN1aAlU.js → AgentAvatar-vHdJ_j8Q.js} +1 -1
- package/ui-dist/assets/{AgentIdentity-b3pzXoFU.js → AgentIdentity-DpavDfDR.js} +1 -1
- package/ui-dist/assets/{Agents.production-pRzt0Xrc.js → Agents.production-BvVBz6Bb.js} +2 -2
- package/ui-dist/assets/CompanyActivity.production-CkWIeGHA.js +1 -0
- package/ui-dist/assets/{CompanyExport-D2pxnEn7.js → CompanyExport-BlgUdPy3.js} +2 -2
- package/ui-dist/assets/{CompanySkills.production-oq53-C14.js → CompanySkills.production-Dw5EEbFS.js} +3 -3
- package/ui-dist/assets/{Costs.production-DEE29WUZ.js → Costs.production-B7xh4FKY.js} +1 -1
- package/ui-dist/assets/{EmptyState-DSAob43E.js → EmptyState-CkiAU2cy.js} +1 -1
- package/ui-dist/assets/{MarkdownBody-hSj7wMwK.js → MarkdownBody-Dc5pAWyT.js} +2 -2
- package/ui-dist/assets/{MarkdownEditor-DhOkCe8q.js → MarkdownEditor-CEjOwoOw.js} +1 -1
- package/ui-dist/assets/{OrgChart.production-D-Dqk_II.js → OrgChart.production-0bLYORRI.js} +1 -1
- package/ui-dist/assets/{PageSkeleton-Bb3gOnqb.js → PageSkeleton-C9GpVJ3b.js} +1 -1
- package/ui-dist/assets/{RoutineDetail.production-vAflKXPc.js → RoutineDetail.production-HhdCP-Xh.js} +1 -1
- package/ui-dist/assets/{RoutineRunVariablesDialog-B7IG454s.js → RoutineRunVariablesDialog-BxPUA-_s.js} +2 -2
- package/ui-dist/assets/{Routines.production-D1ezw3Gp.js → Routines.production-BXN9SzuM.js} +1 -1
- package/ui-dist/assets/{SidebarContext-CEonkVTc.js → SidebarContext-BzqYhcyf.js} +1 -1
- package/ui-dist/assets/{StatusIcon-Ce5Cymi0.js → StatusIcon-DZVfuu7f.js} +1 -1
- package/ui-dist/assets/{agents-EgopqlRF.js → agents-S2cJMIK7.js} +1 -1
- package/ui-dist/assets/{badge-BzDyxQA_.js → badge-CDo3gnAS.js} +1 -1
- package/ui-dist/assets/{bot-SnTe3UEj.js → bot-Ds68iyWW.js} +1 -1
- package/ui-dist/assets/{button-B88nBobN.js → button-L-o1dNjR.js} +1 -1
- package/ui-dist/assets/{card-C3xuBj9F.js → card-kuRnaECX.js} +1 -1
- package/ui-dist/assets/{check-DiTvqt9f.js → check-qnovnvSs.js} +1 -1
- package/ui-dist/assets/{checkbox-CLdcRGnx.js → checkbox-Be8I1-GR.js} +1 -1
- package/ui-dist/assets/{chevron-down-CSzK2utq.js → chevron-down-BT1C9igz.js} +1 -1
- package/ui-dist/assets/{chevron-right-CEAI_3f1.js → chevron-right-DI7co3UN.js} +1 -1
- package/ui-dist/assets/{clipboard-BNjohVM9.js → clipboard-Bo4IrVtO.js} +1 -1
- package/ui-dist/assets/{company-members-BLqmUhC_.js → company-members-Cs8yGeoI.js} +1 -1
- package/ui-dist/assets/{createLucideIcon-BY5zEeth.js → createLucideIcon-CLQ6uxcH.js} +30 -30
- package/ui-dist/assets/{definition-BvAFaoct.js → definition-BQZGnC0n.js} +1 -1
- package/ui-dist/assets/{dist-B6PG7LSl.js → dist-BbSVBEix.js} +1 -1
- package/ui-dist/assets/{dist-IkV7XjF6.js → dist-DrRrxz2U.js} +1 -1
- package/ui-dist/assets/{environments-Db-5PwTL.js → environments-XRhpXB-M.js} +1 -1
- package/ui-dist/assets/{external-link-C0fxPTmL.js → external-link-K3IGxvWK.js} +1 -1
- package/ui-dist/assets/{file-text-CFk8yuxg.js → file-text-KXVUI6i-.js} +1 -1
- package/ui-dist/assets/{health-uDuG_Kdk.js → health-Dnr6MCRc.js} +1 -1
- package/ui-dist/assets/{heartbeats-CY-OhSkI.js → heartbeats-CbpnptmQ.js} +1 -1
- package/ui-dist/assets/{index-DMwcu1Y-.js → index-BwUOm4Xq.js} +168 -167
- package/ui-dist/assets/index-D9x0wcjq.css +1 -0
- package/ui-dist/assets/{input-eETG1M5C.js → input-BoiP6orR.js} +1 -1
- package/ui-dist/assets/{label-CaB9H2SL.js → label-CELIzVlm.js} +1 -1
- package/ui-dist/assets/{loader-circle-GP19zXLR.js → loader-circle-SRrhJJNd.js} +1 -1
- package/ui-dist/assets/{mention-chips-DTyYiiiu.js → mention-chips-B3tFslbs.js} +9 -9
- package/ui-dist/assets/{octagon-alert-DX7KDHMN.js → octagon-alert-BK-ZgTBH.js} +1 -1
- package/ui-dist/assets/{rotate-ccw-AONvzlvS.js → rotate-ccw-C-migVv-.js} +1 -1
- package/ui-dist/assets/{router-D9K0z3tS.js → router-BF60R0zd.js} +2 -2
- package/ui-dist/assets/{save-DEgZPLfX.js → save-BiJVRX4n.js} +1 -1
- package/ui-dist/assets/{select-DK8w-ynH.js → select-C5wSYGXD.js} +1 -1
- package/ui-dist/assets/{sheet-gGD3j06A.js → sheet-DdVF0068.js} +1 -1
- package/ui-dist/assets/{skeleton-BLy6O28Y.js → skeleton-BqTPd9e1.js} +1 -1
- package/ui-dist/assets/{tabs-BfMGh_Jv.js → tabs-DA7s0b5p.js} +1 -1
- package/ui-dist/assets/{triangle-alert-xF2os76Q.js → triangle-alert-DLfImvPL.js} +1 -1
- package/ui-dist/assets/{use-adapter-capabilities-D5gIkuKA.js → use-adapter-capabilities-zxCr69V4.js} +1 -1
- package/ui-dist/assets/{useHiddenSettings-z0AwYeA9.js → useHiddenSettings-DmjgEkL4.js} +1 -1
- package/ui-dist/assets/{zap-C2Kg_IRl.js → zap-CeCCVOlg.js} +1 -1
- package/ui-dist/index.html +46 -46
- package/ui-dist/pixels/furniture/ALARM_LIGHT/ALARM_LIGHT.png +0 -0
- package/ui-dist/pixels/furniture/ALARM_LIGHT/ALARM_LIGHT_ON.png +0 -0
- package/ui-dist/pixels/furniture/ALARM_LIGHT/manifest.json +32 -0
- package/ui-dist/pixels/furniture/COIN_STACK/COIN_STACK.png +0 -0
- package/ui-dist/pixels/furniture/COIN_STACK/manifest.json +13 -0
- package/ui-dist/pixels/furniture/CONFETTI/CONFETTI.png +0 -0
- package/ui-dist/pixels/furniture/CONFETTI/manifest.json +13 -0
- package/ui-dist/pixels/furniture/DESK_LAMP/DESK_LAMP.png +0 -0
- package/ui-dist/pixels/furniture/DESK_LAMP/manifest.json +13 -0
- package/ui-dist/pixels/furniture/KANBAN_BOARD/KANBAN_BOARD.png +0 -0
- package/ui-dist/pixels/furniture/KANBAN_BOARD/manifest.json +13 -0
- package/ui-dist/pixels/furniture/MAILBOX/MAILBOX.png +0 -0
- package/ui-dist/pixels/furniture/MAILBOX/manifest.json +13 -0
- package/ui-dist/pixels/furniture/SMOKE/SMOKE_1.png +0 -0
- package/ui-dist/pixels/furniture/SMOKE/SMOKE_2.png +0 -0
- package/ui-dist/pixels/furniture/SMOKE/SMOKE_3.png +0 -0
- package/ui-dist/pixels/furniture/SMOKE/manifest.json +42 -0
- package/ui-dist/pixels/pixels-office-assets.json +1 -1
- package/ui-dist/sw.js +1 -1
- package/ui-dist/assets/CompanyActivity.production-gtrJLRmZ.js +0 -1
- package/ui-dist/assets/index-BTKFpILc.css +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pixels-office.d.ts","sourceRoot":"","sources":["../../src/routes/pixels-office.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"pixels-office.d.ts","sourceRoot":"","sources":["../../src/routes/pixels-office.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,8BAA8B,CAAC;AAevD,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,EAAE,8CAiExC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Router } from "express";
|
|
2
|
-
import { pixelsOfficeSeatAssignmentsSchema } from "@tickernelz/paperclip-pro-shared";
|
|
2
|
+
import { pixelsOfficeSeatAssignmentsSchema, pixelsOfficeTimelineQuerySchema, } from "@tickernelz/paperclip-pro-shared";
|
|
3
3
|
import { notFound } from "../errors.js";
|
|
4
4
|
import { validate } from "../middleware/validate.js";
|
|
5
5
|
import { accessService, instanceSettingsService, logActivity, pixelsOfficeService, } from "../services/index.js";
|
|
@@ -33,6 +33,15 @@ export function pixelsOfficeRoutes(db) {
|
|
|
33
33
|
await assertPixelsOfficeEnabled();
|
|
34
34
|
res.json(await service.snapshot(companyId));
|
|
35
35
|
});
|
|
36
|
+
router.get("/companies/:companyId/pixels-office/timeline", async (req, res) => {
|
|
37
|
+
const companyId = req.params.companyId;
|
|
38
|
+
assertCompanyAccess(req, companyId);
|
|
39
|
+
if (!(await assertCompanyScopeReadAllowed(req, res, companyId)))
|
|
40
|
+
return;
|
|
41
|
+
await assertPixelsOfficeEnabled();
|
|
42
|
+
const query = pixelsOfficeTimelineQuerySchema.parse(req.query);
|
|
43
|
+
res.json(await service.timeline(companyId, query));
|
|
44
|
+
});
|
|
36
45
|
router.put("/companies/:companyId/pixels-office/seats", validate(pixelsOfficeSeatAssignmentsSchema), async (req, res) => {
|
|
37
46
|
const companyId = req.params.companyId;
|
|
38
47
|
assertBoard(req);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pixels-office.js","sourceRoot":"","sources":["../../src/routes/pixels-office.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAA+B,MAAM,SAAS,CAAC;AAE9D,OAAO,
|
|
1
|
+
{"version":3,"file":"pixels-office.js","sourceRoot":"","sources":["../../src/routes/pixels-office.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import type { Db } from "@tickernelz/paperclip-pro-db";
|
|
2
|
-
import { type PixelsOfficeSeatAssignment, type PixelsOfficeSnapshot } from "@tickernelz/paperclip-pro-shared";
|
|
2
|
+
import { type PixelsOfficeSeatAssignment, type PixelsOfficeSnapshot, type PixelsOfficeTimeline, type PixelsOfficeTimelineQuery } from "@tickernelz/paperclip-pro-shared";
|
|
3
3
|
export declare function pixelsOfficeService(db: Db): {
|
|
4
4
|
snapshot: (companyId: string) => Promise<PixelsOfficeSnapshot>;
|
|
5
5
|
replaceSeatAssignments: (companyId: string, assignments: PixelsOfficeSeatAssignment[]) => Promise<PixelsOfficeSeatAssignment[]>;
|
|
6
6
|
listSeatAssignments: (companyId: string) => Promise<PixelsOfficeSeatAssignment[]>;
|
|
7
|
+
timeline: (companyId: string, query: PixelsOfficeTimelineQuery) => Promise<PixelsOfficeTimeline>;
|
|
7
8
|
};
|
|
8
9
|
//# sourceMappingURL=pixels-office.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pixels-office.d.ts","sourceRoot":"","sources":["../../src/services/pixels-office.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pixels-office.d.ts","sourceRoot":"","sources":["../../src/services/pixels-office.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,8BAA8B,CAAC;AASvD,OAAO,EAWL,KAAK,0BAA0B,EAC/B,KAAK,oBAAoB,EAEzB,KAAK,oBAAoB,EAEzB,KAAK,yBAAyB,EAC/B,MAAM,kCAAkC,CAAC;AAmI1C,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,EAAE;0BACL,MAAM,KAAG,OAAO,CAAC,oBAAoB,CAAC;wCA6O5D,MAAM,eACJ,0BAA0B,EAAE,KACxC,OAAO,CAAC,0BAA0B,EAAE,CAAC;qCAwCM,MAAM,KAAG,OAAO,CAAC,0BAA0B,EAAE,CAAC;0BAa/E,MAAM,SACV,yBAAyB,KAC/B,OAAO,CAAC,oBAAoB,CAAC;EA8GjC"}
|
|
@@ -1,10 +1,27 @@
|
|
|
1
|
-
import { and, desc, eq, inArray, ne, sql } from "drizzle-orm";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { and, asc, desc, eq, gte, inArray, isNotNull, like, lt, ne, or, sql } from "drizzle-orm";
|
|
2
|
+
import { alias } from "drizzle-orm/pg-core";
|
|
3
|
+
import { activityLog, agents, heartbeatRuns, issues, issueThreadInteractions, pixelsOfficeSeats, } from "@tickernelz/paperclip-pro-db";
|
|
4
|
+
import { AGENT_DEFAULT_MAX_CONCURRENT_RUNS, AGENT_MAX_MAX_CONCURRENT_RUNS, AGENT_MIN_MAX_CONCURRENT_RUNS, deriveAgentUrlKey, PIXELS_OFFICE_TIMELINE_PAGE_LIMIT, } from "@tickernelz/paperclip-pro-shared";
|
|
4
5
|
import { unprocessable } from "../errors.js";
|
|
6
|
+
import { evaluateAgentInvokability } from "./agent-invokability.js";
|
|
7
|
+
import { getHeartbeatRunRuntimeStatus } from "./heartbeat-run-runtime-status.js";
|
|
8
|
+
import { canonicalizeStoredResolverPolicy } from "./issue-thread-interaction-resolution.js";
|
|
5
9
|
import { visibleIssueCondition } from "./issue-visibility.js";
|
|
6
10
|
const OPEN_ISSUE_STATUSES = ["backlog", "todo", "in_progress", "in_review", "blocked"];
|
|
7
11
|
const LIVE_RUN_STATUSES = ["queued", "running"];
|
|
12
|
+
const COLLABORATION_EDGE_LIMIT = 100;
|
|
13
|
+
const DELEGATION_WINDOW_MS = 24 * 60 * 60 * 1000;
|
|
14
|
+
const TIMELINE_INTERACTION_ACTIONS = [
|
|
15
|
+
"issue.thread_interaction_created",
|
|
16
|
+
"issue.thread_interaction_answered",
|
|
17
|
+
"issue.thread_interaction_accepted",
|
|
18
|
+
];
|
|
19
|
+
const TIMELINE_ACTIONS = [
|
|
20
|
+
"issue.updated",
|
|
21
|
+
...TIMELINE_INTERACTION_ACTIONS,
|
|
22
|
+
"routine.run_triggered",
|
|
23
|
+
"budget.hard_threshold_crossed",
|
|
24
|
+
];
|
|
8
25
|
function readMaxConcurrentRuns(runtimeConfig) {
|
|
9
26
|
if (typeof runtimeConfig !== "object" || runtimeConfig === null) {
|
|
10
27
|
return AGENT_DEFAULT_MAX_CONCURRENT_RUNS;
|
|
@@ -19,25 +36,112 @@ function readMaxConcurrentRuns(runtimeConfig) {
|
|
|
19
36
|
return AGENT_DEFAULT_MAX_CONCURRENT_RUNS;
|
|
20
37
|
return Math.max(AGENT_MIN_MAX_CONCURRENT_RUNS, Math.min(AGENT_MAX_MAX_CONCURRENT_RUNS, parsed));
|
|
21
38
|
}
|
|
39
|
+
function awaitsHumanResolver(interaction, invokableAgentIds) {
|
|
40
|
+
const policy = canonicalizeStoredResolverPolicy(interaction.effectiveResolverPolicy, interaction.resolverPolicyProvenance);
|
|
41
|
+
if (policy === "human_only")
|
|
42
|
+
return true;
|
|
43
|
+
if (interaction.addresseeUserId !== null)
|
|
44
|
+
return true;
|
|
45
|
+
if (interaction.addresseeAgentId === null)
|
|
46
|
+
return true;
|
|
47
|
+
return !invokableAgentIds.has(interaction.addresseeAgentId);
|
|
48
|
+
}
|
|
49
|
+
function runtimeProgress(companyId, agentId, runId) {
|
|
50
|
+
if (!runId)
|
|
51
|
+
return null;
|
|
52
|
+
const status = getHeartbeatRunRuntimeStatus(runId, { companyId, agentId });
|
|
53
|
+
if (!status)
|
|
54
|
+
return null;
|
|
55
|
+
return {
|
|
56
|
+
runId: status.runId,
|
|
57
|
+
message: status.message.length > 0 ? status.message : null,
|
|
58
|
+
toolName: status.currentToolName,
|
|
59
|
+
updatedAt: status.updatedAt.toISOString(),
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
function decodeTimelineCursor(cursor) {
|
|
63
|
+
if (!cursor)
|
|
64
|
+
return null;
|
|
65
|
+
const key = Buffer.from(cursor, "base64url").toString("utf8");
|
|
66
|
+
const separator = key.indexOf("|");
|
|
67
|
+
const at = separator > 0 ? new Date(key.slice(0, separator)) : new Date(Number.NaN);
|
|
68
|
+
if (Number.isNaN(at.getTime()))
|
|
69
|
+
throw unprocessable("Timeline cursor is not readable");
|
|
70
|
+
return { at, key };
|
|
71
|
+
}
|
|
72
|
+
function readDetailString(details, key) {
|
|
73
|
+
const value = details?.[key];
|
|
74
|
+
return typeof value === "string" && value.length > 0 ? value : null;
|
|
75
|
+
}
|
|
76
|
+
function timelineEventFromActivity(row) {
|
|
77
|
+
const base = {
|
|
78
|
+
at: row.createdAt.toISOString(),
|
|
79
|
+
agentId: row.agentId,
|
|
80
|
+
...(row.runId ? { runId: row.runId } : {}),
|
|
81
|
+
};
|
|
82
|
+
if (row.action === "issue.updated") {
|
|
83
|
+
const status = readDetailString(row.details, "status");
|
|
84
|
+
if (!status)
|
|
85
|
+
return null;
|
|
86
|
+
return { ...base, kind: "issue_status", issueId: row.entityId, status };
|
|
87
|
+
}
|
|
88
|
+
if (row.action.startsWith("issue.thread_interaction_")) {
|
|
89
|
+
const addressee = readDetailString(row.details, "addresseeAgentId");
|
|
90
|
+
return {
|
|
91
|
+
...base,
|
|
92
|
+
kind: "interaction",
|
|
93
|
+
issueId: row.entityId,
|
|
94
|
+
...(addressee ? { otherAgentId: addressee } : {}),
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
if (row.action.startsWith("approval.")) {
|
|
98
|
+
const status = readDetailString(row.details, "status");
|
|
99
|
+
return { ...base, kind: "approval", ...(status ? { status } : {}) };
|
|
100
|
+
}
|
|
101
|
+
if (row.action === "routine.run_triggered") {
|
|
102
|
+
const status = readDetailString(row.details, "status");
|
|
103
|
+
return { ...base, kind: "routine", ...(status ? { status } : {}) };
|
|
104
|
+
}
|
|
105
|
+
if (row.action === "budget.hard_threshold_crossed")
|
|
106
|
+
return { ...base, kind: "budget" };
|
|
107
|
+
return null;
|
|
108
|
+
}
|
|
22
109
|
export function pixelsOfficeService(db) {
|
|
23
110
|
async function snapshot(companyId) {
|
|
24
111
|
const agentRows = await db
|
|
25
112
|
.select({
|
|
26
113
|
id: agents.id,
|
|
114
|
+
companyId: agents.companyId,
|
|
27
115
|
name: agents.name,
|
|
28
116
|
title: agents.title,
|
|
29
117
|
role: agents.role,
|
|
30
118
|
status: agents.status,
|
|
119
|
+
reportsTo: agents.reportsTo,
|
|
120
|
+
pauseReason: agents.pauseReason,
|
|
31
121
|
runtimeConfig: agents.runtimeConfig,
|
|
32
122
|
})
|
|
33
123
|
.from(agents)
|
|
34
|
-
.where(
|
|
124
|
+
.where(eq(agents.companyId, companyId))
|
|
35
125
|
.orderBy(agents.name);
|
|
36
|
-
|
|
37
|
-
|
|
126
|
+
const liveAgentRows = agentRows.filter((row) => row.status !== "terminated");
|
|
127
|
+
if (liveAgentRows.length === 0) {
|
|
128
|
+
return {
|
|
129
|
+
companyId,
|
|
130
|
+
agents: [],
|
|
131
|
+
assignments: [],
|
|
132
|
+
collaboration: [],
|
|
133
|
+
generatedAt: new Date().toISOString(),
|
|
134
|
+
};
|
|
38
135
|
}
|
|
39
|
-
const agentIds =
|
|
40
|
-
const
|
|
136
|
+
const agentIds = liveAgentRows.map((row) => row.id);
|
|
137
|
+
const agentIdSet = new Set(agentIds);
|
|
138
|
+
const orgRows = agentRows;
|
|
139
|
+
const invokableAgentIds = new Set(agentRows
|
|
140
|
+
.filter((row) => evaluateAgentInvokability(row, orgRows).invokable)
|
|
141
|
+
.map((row) => row.id));
|
|
142
|
+
const parentIssues = alias(issues, "pixels_office_parent_issues");
|
|
143
|
+
const delegationSince = new Date(Date.now() - DELEGATION_WINDOW_MS);
|
|
144
|
+
const [liveRunRows, openIssueRows, assignments, interactionRows, delegationRows] = await Promise.all([
|
|
41
145
|
db
|
|
42
146
|
.select({
|
|
43
147
|
id: heartbeatRuns.id,
|
|
@@ -60,6 +164,33 @@ export function pixelsOfficeService(db) {
|
|
|
60
164
|
.where(and(eq(issues.companyId, companyId), inArray(issues.assigneeAgentId, agentIds), inArray(issues.status, [...OPEN_ISSUE_STATUSES]), visibleIssueCondition()))
|
|
61
165
|
.orderBy(desc(issues.updatedAt)),
|
|
62
166
|
listSeatAssignments(companyId),
|
|
167
|
+
db
|
|
168
|
+
.select({
|
|
169
|
+
issueAssigneeAgentId: issues.assigneeAgentId,
|
|
170
|
+
issueId: issueThreadInteractions.issueId,
|
|
171
|
+
createdByAgentId: issueThreadInteractions.createdByAgentId,
|
|
172
|
+
addresseeAgentId: issueThreadInteractions.addresseeAgentId,
|
|
173
|
+
addresseeUserId: issueThreadInteractions.addresseeUserId,
|
|
174
|
+
effectiveResolverPolicy: issueThreadInteractions.effectiveResolverPolicy,
|
|
175
|
+
resolverPolicyProvenance: issueThreadInteractions.resolverPolicyProvenance,
|
|
176
|
+
createdAt: issueThreadInteractions.createdAt,
|
|
177
|
+
})
|
|
178
|
+
.from(issueThreadInteractions)
|
|
179
|
+
.innerJoin(issues, eq(issues.id, issueThreadInteractions.issueId))
|
|
180
|
+
.where(and(eq(issueThreadInteractions.companyId, companyId), eq(issueThreadInteractions.status, "pending"), visibleIssueCondition()))
|
|
181
|
+
.orderBy(desc(issueThreadInteractions.createdAt)),
|
|
182
|
+
db
|
|
183
|
+
.select({
|
|
184
|
+
issueId: issues.id,
|
|
185
|
+
toAgentId: issues.assigneeAgentId,
|
|
186
|
+
fromAgentId: parentIssues.assigneeAgentId,
|
|
187
|
+
createdAt: issues.createdAt,
|
|
188
|
+
})
|
|
189
|
+
.from(issues)
|
|
190
|
+
.innerJoin(parentIssues, eq(parentIssues.id, issues.parentId))
|
|
191
|
+
.where(and(eq(issues.companyId, companyId), eq(parentIssues.companyId, companyId), inArray(issues.status, [...OPEN_ISSUE_STATUSES]), gte(issues.createdAt, delegationSince), isNotNull(issues.assigneeAgentId), isNotNull(parentIssues.assigneeAgentId), ne(issues.assigneeAgentId, parentIssues.assigneeAgentId), visibleIssueCondition()))
|
|
192
|
+
.orderBy(desc(issues.createdAt))
|
|
193
|
+
.limit(COLLABORATION_EDGE_LIMIT),
|
|
63
194
|
]);
|
|
64
195
|
const runningRunByAgent = new Map();
|
|
65
196
|
const queuedRunByAgent = new Map();
|
|
@@ -91,8 +222,58 @@ export function pixelsOfficeService(db) {
|
|
|
91
222
|
});
|
|
92
223
|
tasksByAgent.set(agentId, list);
|
|
93
224
|
}
|
|
94
|
-
const
|
|
225
|
+
const pendingInteractionCounts = new Map();
|
|
226
|
+
const awaitingBoardCounts = new Map();
|
|
227
|
+
const collaboration = [];
|
|
228
|
+
const waitingAgentIds = new Set();
|
|
229
|
+
for (const interaction of interactionRows) {
|
|
230
|
+
waitingAgentIds.clear();
|
|
231
|
+
if (interaction.issueAssigneeAgentId && agentIdSet.has(interaction.issueAssigneeAgentId)) {
|
|
232
|
+
waitingAgentIds.add(interaction.issueAssigneeAgentId);
|
|
233
|
+
}
|
|
234
|
+
if (interaction.addresseeAgentId && agentIdSet.has(interaction.addresseeAgentId)) {
|
|
235
|
+
waitingAgentIds.add(interaction.addresseeAgentId);
|
|
236
|
+
}
|
|
237
|
+
for (const agentId of waitingAgentIds) {
|
|
238
|
+
pendingInteractionCounts.set(agentId, (pendingInteractionCounts.get(agentId) ?? 0) + 1);
|
|
239
|
+
}
|
|
240
|
+
const creatorId = interaction.createdByAgentId;
|
|
241
|
+
if (creatorId && agentIdSet.has(creatorId) && awaitsHumanResolver(interaction, invokableAgentIds)) {
|
|
242
|
+
awaitingBoardCounts.set(creatorId, (awaitingBoardCounts.get(creatorId) ?? 0) + 1);
|
|
243
|
+
}
|
|
244
|
+
if (creatorId
|
|
245
|
+
&& interaction.addresseeAgentId
|
|
246
|
+
&& creatorId !== interaction.addresseeAgentId
|
|
247
|
+
&& agentIdSet.has(creatorId)
|
|
248
|
+
&& agentIdSet.has(interaction.addresseeAgentId)) {
|
|
249
|
+
collaboration.push({
|
|
250
|
+
fromAgentId: creatorId,
|
|
251
|
+
toAgentId: interaction.addresseeAgentId,
|
|
252
|
+
kind: "interaction",
|
|
253
|
+
issueId: interaction.issueId,
|
|
254
|
+
since: interaction.createdAt.toISOString(),
|
|
255
|
+
});
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
for (const row of delegationRows) {
|
|
259
|
+
if (!row.fromAgentId || !row.toAgentId)
|
|
260
|
+
continue;
|
|
261
|
+
if (!agentIdSet.has(row.fromAgentId) || !agentIdSet.has(row.toAgentId))
|
|
262
|
+
continue;
|
|
263
|
+
collaboration.push({
|
|
264
|
+
fromAgentId: row.fromAgentId,
|
|
265
|
+
toAgentId: row.toAgentId,
|
|
266
|
+
kind: "delegation",
|
|
267
|
+
issueId: row.issueId,
|
|
268
|
+
since: row.createdAt.toISOString(),
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
collaboration.sort((left, right) => right.since.localeCompare(left.since));
|
|
272
|
+
collaboration.length = Math.min(collaboration.length, COLLABORATION_EDGE_LIMIT);
|
|
273
|
+
const result = liveAgentRows.map((row) => {
|
|
95
274
|
const tasks = tasksByAgent.get(row.id) ?? [];
|
|
275
|
+
const activeRunId = runningRunByAgent.get(row.id) ?? null;
|
|
276
|
+
const queuedRunId = queuedRunByAgent.get(row.id) ?? null;
|
|
96
277
|
return {
|
|
97
278
|
id: row.id,
|
|
98
279
|
name: row.name,
|
|
@@ -100,15 +281,25 @@ export function pixelsOfficeService(db) {
|
|
|
100
281
|
role: row.role,
|
|
101
282
|
status: row.status,
|
|
102
283
|
urlKey: deriveAgentUrlKey(row.name, row.id),
|
|
103
|
-
activeRunId
|
|
104
|
-
queuedRunId
|
|
284
|
+
activeRunId,
|
|
285
|
+
queuedRunId,
|
|
105
286
|
activeTaskCount: tasks.filter((task) => task.active).length,
|
|
106
287
|
queuedTaskCount: tasks.filter((task) => task.runStatus === "queued").length,
|
|
107
288
|
maxConcurrentRuns: readMaxConcurrentRuns(row.runtimeConfig),
|
|
289
|
+
pendingInteractionCount: pendingInteractionCounts.get(row.id) ?? 0,
|
|
290
|
+
awaitingBoardCount: awaitingBoardCounts.get(row.id) ?? 0,
|
|
291
|
+
budgetPaused: row.status === "paused" && row.pauseReason === "budget",
|
|
292
|
+
progress: runtimeProgress(companyId, row.id, activeRunId ?? queuedRunId),
|
|
108
293
|
tasks,
|
|
109
294
|
};
|
|
110
295
|
});
|
|
111
|
-
return {
|
|
296
|
+
return {
|
|
297
|
+
companyId,
|
|
298
|
+
agents: result,
|
|
299
|
+
assignments,
|
|
300
|
+
collaboration,
|
|
301
|
+
generatedAt: new Date().toISOString(),
|
|
302
|
+
};
|
|
112
303
|
}
|
|
113
304
|
async function replaceSeatAssignments(companyId, assignments) {
|
|
114
305
|
const knownAgentIds = new Set((await db
|
|
@@ -152,6 +343,93 @@ export function pixelsOfficeService(db) {
|
|
|
152
343
|
.where(eq(pixelsOfficeSeats.companyId, companyId));
|
|
153
344
|
return rows;
|
|
154
345
|
}
|
|
155
|
-
|
|
346
|
+
async function timeline(companyId, query) {
|
|
347
|
+
const from = new Date(query.from);
|
|
348
|
+
const to = new Date(query.to);
|
|
349
|
+
const cursor = decodeTimelineCursor(query.cursor);
|
|
350
|
+
const lowerBound = cursor && cursor.at > from ? cursor.at : from;
|
|
351
|
+
const fetchLimit = PIXELS_OFFICE_TIMELINE_PAGE_LIMIT + 1;
|
|
352
|
+
const runOrder = sql `coalesce(${heartbeatRuns.startedAt}, ${heartbeatRuns.finishedAt})`;
|
|
353
|
+
const [runRows, activityRows] = await Promise.all([
|
|
354
|
+
db
|
|
355
|
+
.select({
|
|
356
|
+
id: heartbeatRuns.id,
|
|
357
|
+
agentId: heartbeatRuns.agentId,
|
|
358
|
+
status: heartbeatRuns.status,
|
|
359
|
+
startedAt: heartbeatRuns.startedAt,
|
|
360
|
+
finishedAt: heartbeatRuns.finishedAt,
|
|
361
|
+
issueId: sql `${heartbeatRuns.contextSnapshot} ->> 'issueId'`.as("issueId"),
|
|
362
|
+
})
|
|
363
|
+
.from(heartbeatRuns)
|
|
364
|
+
.where(and(eq(heartbeatRuns.companyId, companyId), or(and(gte(heartbeatRuns.startedAt, lowerBound), lt(heartbeatRuns.startedAt, to)), and(gte(heartbeatRuns.finishedAt, lowerBound), lt(heartbeatRuns.finishedAt, to)))))
|
|
365
|
+
.orderBy(asc(runOrder), asc(heartbeatRuns.id))
|
|
366
|
+
.limit(fetchLimit),
|
|
367
|
+
db
|
|
368
|
+
.select({
|
|
369
|
+
id: activityLog.id,
|
|
370
|
+
action: activityLog.action,
|
|
371
|
+
entityId: activityLog.entityId,
|
|
372
|
+
agentId: activityLog.agentId,
|
|
373
|
+
runId: activityLog.runId,
|
|
374
|
+
details: activityLog.details,
|
|
375
|
+
createdAt: activityLog.createdAt,
|
|
376
|
+
})
|
|
377
|
+
.from(activityLog)
|
|
378
|
+
.where(and(eq(activityLog.companyId, companyId), gte(activityLog.createdAt, lowerBound), lt(activityLog.createdAt, to), or(inArray(activityLog.action, [...TIMELINE_ACTIONS]), like(activityLog.action, "approval.%"))))
|
|
379
|
+
.orderBy(asc(activityLog.createdAt), asc(activityLog.id))
|
|
380
|
+
.limit(fetchLimit),
|
|
381
|
+
]);
|
|
382
|
+
const ordered = [];
|
|
383
|
+
for (const run of runRows) {
|
|
384
|
+
if (run.startedAt && run.startedAt >= from && run.startedAt < to) {
|
|
385
|
+
const at = run.startedAt.toISOString();
|
|
386
|
+
ordered.push({
|
|
387
|
+
key: `${at}|r${run.id}s`,
|
|
388
|
+
event: {
|
|
389
|
+
at,
|
|
390
|
+
agentId: run.agentId,
|
|
391
|
+
kind: "run_started",
|
|
392
|
+
runId: run.id,
|
|
393
|
+
...(run.issueId ? { issueId: run.issueId } : {}),
|
|
394
|
+
},
|
|
395
|
+
});
|
|
396
|
+
}
|
|
397
|
+
if (run.finishedAt && run.finishedAt >= from && run.finishedAt < to) {
|
|
398
|
+
const at = run.finishedAt.toISOString();
|
|
399
|
+
ordered.push({
|
|
400
|
+
key: `${at}|r${run.id}f`,
|
|
401
|
+
event: {
|
|
402
|
+
at,
|
|
403
|
+
agentId: run.agentId,
|
|
404
|
+
kind: "run_finished",
|
|
405
|
+
runId: run.id,
|
|
406
|
+
status: run.status,
|
|
407
|
+
...(run.issueId ? { issueId: run.issueId } : {}),
|
|
408
|
+
},
|
|
409
|
+
});
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
for (const row of activityRows) {
|
|
413
|
+
const event = timelineEventFromActivity(row);
|
|
414
|
+
if (event)
|
|
415
|
+
ordered.push({ key: `${event.at}|a${row.id}`, event });
|
|
416
|
+
}
|
|
417
|
+
ordered.sort((left, right) => (left.key < right.key ? -1 : left.key > right.key ? 1 : 0));
|
|
418
|
+
const cursorKey = cursor?.key ?? null;
|
|
419
|
+
const remaining = cursorKey === null
|
|
420
|
+
? ordered
|
|
421
|
+
: ordered.filter((entry) => entry.key > cursorKey);
|
|
422
|
+
const page = remaining.slice(0, PIXELS_OFFICE_TIMELINE_PAGE_LIMIT);
|
|
423
|
+
const nextCursor = remaining.length > page.length && page.length > 0
|
|
424
|
+
? Buffer.from(page[page.length - 1].key, "utf8").toString("base64url")
|
|
425
|
+
: null;
|
|
426
|
+
return {
|
|
427
|
+
from: from.toISOString(),
|
|
428
|
+
to: to.toISOString(),
|
|
429
|
+
events: page.map((entry) => entry.event),
|
|
430
|
+
nextCursor,
|
|
431
|
+
};
|
|
432
|
+
}
|
|
433
|
+
return { snapshot, replaceSeatAssignments, listSeatAssignments, timeline };
|
|
156
434
|
}
|
|
157
435
|
//# sourceMappingURL=pixels-office.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pixels-office.js","sourceRoot":"","sources":["../../src/services/pixels-office.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pixels-office.js","sourceRoot":"","sources":["../../src/services/pixels-office.ts"],"names":[],"mappings":"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"}
|
|
@@ -649,7 +649,21 @@ export declare class AgentApp {
|
|
|
649
649
|
* Registers a handler that runs when this agent app opens a connection.
|
|
650
650
|
*
|
|
651
651
|
* Use this for connection-scoped work that needs to call client-side ACP
|
|
652
|
-
* methods outside an inbound request handler
|
|
652
|
+
* methods outside an inbound request handler, or to set up per-connection
|
|
653
|
+
* state that the request handlers use.
|
|
654
|
+
*
|
|
655
|
+
* Handlers are called synchronously in registration order and are not
|
|
656
|
+
* awaited. A handler that throws or rejects closes the connection. When they
|
|
657
|
+
* are called depends on who opens the connection:
|
|
658
|
+
*
|
|
659
|
+
* - `connect(...)` and `connectWith(...)` call them before the connection
|
|
660
|
+
* handles its first inbound message, and so does the experimental
|
|
661
|
+
* `AgentProtocolRouter`'s `connect(...)` when it routes to this app. Only
|
|
662
|
+
* the work a handler does before its first `await` is guaranteed to come
|
|
663
|
+
* first.
|
|
664
|
+
* - The experimental `AcpServer` calls them after the client has completed
|
|
665
|
+
* `initialize`, so messages they send cannot replace the initialize
|
|
666
|
+
* response. Request handlers, including `initialize`, can run before them.
|
|
653
667
|
*/
|
|
654
668
|
onConnect(handler: AgentConnectHandler): this;
|
|
655
669
|
/**
|
|
@@ -777,7 +777,21 @@ export class AgentApp {
|
|
|
777
777
|
* Registers a handler that runs when this agent app opens a connection.
|
|
778
778
|
*
|
|
779
779
|
* Use this for connection-scoped work that needs to call client-side ACP
|
|
780
|
-
* methods outside an inbound request handler
|
|
780
|
+
* methods outside an inbound request handler, or to set up per-connection
|
|
781
|
+
* state that the request handlers use.
|
|
782
|
+
*
|
|
783
|
+
* Handlers are called synchronously in registration order and are not
|
|
784
|
+
* awaited. A handler that throws or rejects closes the connection. When they
|
|
785
|
+
* are called depends on who opens the connection:
|
|
786
|
+
*
|
|
787
|
+
* - `connect(...)` and `connectWith(...)` call them before the connection
|
|
788
|
+
* handles its first inbound message, and so does the experimental
|
|
789
|
+
* `AgentProtocolRouter`'s `connect(...)` when it routes to this app. Only
|
|
790
|
+
* the work a handler does before its first `await` is guaranteed to come
|
|
791
|
+
* first.
|
|
792
|
+
* - The experimental `AcpServer` calls them after the client has completed
|
|
793
|
+
* `initialize`, so messages they send cannot replace the initialize
|
|
794
|
+
* response. Request handlers, including `initialize`, can run before them.
|
|
781
795
|
*/
|
|
782
796
|
onConnect(handler) {
|
|
783
797
|
this.connectHandlers.push(handler);
|