@evermore.work/server 2026.514.0-canary.0 → 2026.515.0-canary.1
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/routes/issues.d.ts.map +1 -1
- package/dist/routes/issues.js +43 -0
- package/dist/routes/issues.js.map +1 -1
- package/dist/services/heartbeat.d.ts.map +1 -1
- package/dist/services/heartbeat.js +7 -2
- package/dist/services/heartbeat.js.map +1 -1
- package/dist/services/issue-thread-interactions.test.js +1 -1
- package/dist/services/issue-thread-interactions.test.js.map +1 -1
- package/dist/services/issues.d.ts +3 -0
- package/dist/services/issues.d.ts.map +1 -1
- package/dist/services/issues.js +845 -14
- package/dist/services/issues.js.map +1 -1
- package/dist/services/plugin-loader.d.ts +8 -0
- package/dist/services/plugin-loader.d.ts.map +1 -1
- package/dist/services/plugin-loader.js +26 -4
- package/dist/services/plugin-loader.js.map +1 -1
- package/dist/services/plugin-worker-manager.js +2 -2
- package/dist/services/plugin-worker-manager.js.map +1 -1
- package/dist/services/recovery/service.d.ts +6 -6
- package/dist/services/session-workspace-cwd.d.ts +2 -0
- package/dist/services/session-workspace-cwd.d.ts.map +1 -0
- package/dist/services/session-workspace-cwd.js +24 -0
- package/dist/services/session-workspace-cwd.js.map +1 -0
- package/dist/services/session-workspace-cwd.test.d.ts +2 -0
- package/dist/services/session-workspace-cwd.test.d.ts.map +1 -0
- package/dist/services/session-workspace-cwd.test.js +25 -0
- package/dist/services/session-workspace-cwd.test.js.map +1 -0
- package/package.json +14 -14
- package/ui-dist/assets/{_basePickBy-D-jhdvBK.js → _basePickBy-DO9Z4bOp.js} +1 -1
- package/ui-dist/assets/{_baseUniq-BgiGnhvw.js → _baseUniq-aP00T3oZ.js} +1 -1
- package/ui-dist/assets/{arc-2DaRAgY5.js → arc-HlYAKbZH.js} +1 -1
- package/ui-dist/assets/{architectureDiagram-VXUJARFQ-Ckg8I_Hb.js → architectureDiagram-VXUJARFQ-DdFturvY.js} +1 -1
- package/ui-dist/assets/{blockDiagram-VD42YOAC-iFdAlkhO.js → blockDiagram-VD42YOAC-ItWM97pf.js} +1 -1
- package/ui-dist/assets/{c4Diagram-YG6GDRKO-COM5HxQz.js → c4Diagram-YG6GDRKO-DlYlvsjK.js} +1 -1
- package/ui-dist/assets/channel-Dy06ZP82.js +1 -0
- package/ui-dist/assets/{chunk-4BX2VUAB-BjuJzOTM.js → chunk-4BX2VUAB-CdTXD9zN.js} +1 -1
- package/ui-dist/assets/{chunk-55IACEB6-Dj5ia904.js → chunk-55IACEB6-Cld3rd3i.js} +1 -1
- package/ui-dist/assets/{chunk-B4BG7PRW-C-eRLbni.js → chunk-B4BG7PRW-Q1gBniFR.js} +1 -1
- package/ui-dist/assets/{chunk-DI55MBZ5-BdeogsZM.js → chunk-DI55MBZ5-BDkw59ZI.js} +1 -1
- package/ui-dist/assets/{chunk-FMBD7UC4-zmEBXd9M.js → chunk-FMBD7UC4-BmlzEXGl.js} +1 -1
- package/ui-dist/assets/{chunk-QN33PNHL-0XA6BL6D.js → chunk-QN33PNHL-H9Kq-vRW.js} +1 -1
- package/ui-dist/assets/{chunk-QZHKN3VN-tvz9XrbZ.js → chunk-QZHKN3VN-zrJMHPuP.js} +1 -1
- package/ui-dist/assets/{chunk-TZMSLE5B-BQct44RY.js → chunk-TZMSLE5B-BE5zIgej.js} +1 -1
- package/ui-dist/assets/classDiagram-2ON5EDUG-DkMgOhs0.js +1 -0
- package/ui-dist/assets/classDiagram-v2-WZHVMYZB-DkMgOhs0.js +1 -0
- package/ui-dist/assets/clone-CEIy6mUF.js +1 -0
- package/ui-dist/assets/{cose-bilkent-S5V4N54A-Ci0DKSg9.js → cose-bilkent-S5V4N54A-BS2M0fmn.js} +1 -1
- package/ui-dist/assets/{dagre-6UL2VRFP-DrMucNG7.js → dagre-6UL2VRFP-Bqa7X1y0.js} +1 -1
- package/ui-dist/assets/{diagram-PSM6KHXK-A73_XOgv.js → diagram-PSM6KHXK-DacALBb7.js} +1 -1
- package/ui-dist/assets/{diagram-QEK2KX5R-ZK5UT-YN.js → diagram-QEK2KX5R-C9sDwsVJ.js} +1 -1
- package/ui-dist/assets/{diagram-S2PKOQOG-Cl718XM0.js → diagram-S2PKOQOG-BaqZ-WOT.js} +1 -1
- package/ui-dist/assets/{erDiagram-Q2GNP2WA-CBa47bgv.js → erDiagram-Q2GNP2WA-DqniVeHf.js} +1 -1
- package/ui-dist/assets/{flowDiagram-NV44I4VS-Dya9VRmO.js → flowDiagram-NV44I4VS-CJLqBBEi.js} +1 -1
- package/ui-dist/assets/{ganttDiagram-JELNMOA3-Cw07-mAT.js → ganttDiagram-JELNMOA3-X2whglKf.js} +1 -1
- package/ui-dist/assets/{gitGraphDiagram-V2S2FVAM-Dvl0g7Ws.js → gitGraphDiagram-V2S2FVAM-CBtbZ5jr.js} +1 -1
- package/ui-dist/assets/{graph-CRGs6Cm1.js → graph-DaHo0hL7.js} +1 -1
- package/ui-dist/assets/{index-HfQVj6CX.js → index-1WfmGaYd.js} +1 -1
- package/ui-dist/assets/{index-n2BkbZ3s.js → index-B9EgJSwA.js} +1 -1
- package/ui-dist/assets/{index-CTE8qpuM.js → index-BHK-2Saa.js} +1 -1
- package/ui-dist/assets/{index-DXZpqEnG.js → index-BIPAO4mn.js} +154 -154
- package/ui-dist/assets/{index-DUFmWbRj.js → index-BRo90BuE.js} +1 -1
- package/ui-dist/assets/index-C7XSlsof.css +1 -0
- package/ui-dist/assets/{index-BeBfrMz9.js → index-CGPSGFW2.js} +1 -1
- package/ui-dist/assets/{index-DlgAdwmq.js → index-CSm_hwMf.js} +1 -1
- package/ui-dist/assets/{index-By1WI9aj.js → index-CltxQz_J.js} +1 -1
- package/ui-dist/assets/{index-DBcppS3t.js → index-Cp2YJp5S.js} +1 -1
- package/ui-dist/assets/{index-CDFf5Yfs.js → index-Cy2EmJOb.js} +1 -1
- package/ui-dist/assets/{index-L3VQ_UyI.js → index-D3wDBQ_w.js} +1 -1
- package/ui-dist/assets/{index-kquw5zAL.js → index-DIf610dR.js} +1 -1
- package/ui-dist/assets/{index-BB2dtTsp.js → index-DLZtjrrB.js} +1 -1
- package/ui-dist/assets/{index-DVQ4mQvQ.js → index-DakY5q2t.js} +1 -1
- package/ui-dist/assets/{index-BYEeDBr6.js → index-DdyKvJKA.js} +1 -1
- package/ui-dist/assets/{index-C7b6qo2F.js → index-Dh_-gZjn.js} +1 -1
- package/ui-dist/assets/{index-CT6L8cyW.js → index-ETcA1tdF.js} +1 -1
- package/ui-dist/assets/{index-D-1326BZ.js → index-KupntUzs.js} +1 -1
- package/ui-dist/assets/{index-Qd8DnouI.js → index-__9_bdSA.js} +1 -1
- package/ui-dist/assets/{index-BRHbXXqy.js → index-hlLQdFla.js} +1 -1
- package/ui-dist/assets/{index-BITrH-Ix.js → index-ug2W4IYs.js} +1 -1
- package/ui-dist/assets/{index-DRcU0-A-.js → index-vGB4Wk4z.js} +1 -1
- package/ui-dist/assets/{index-DYqZ_CKy.js → index-vz1qcePO.js} +1 -1
- package/ui-dist/assets/{infoDiagram-HS3SLOUP-DoOZPIoa.js → infoDiagram-HS3SLOUP-BLQ-lc_4.js} +1 -1
- package/ui-dist/assets/{journeyDiagram-XKPGCS4Q-_Kj32CBd.js → journeyDiagram-XKPGCS4Q-BP1mfAZg.js} +1 -1
- package/ui-dist/assets/{kanban-definition-3W4ZIXB7-DSlC3gd0.js → kanban-definition-3W4ZIXB7-Ci3mkLxf.js} +1 -1
- package/ui-dist/assets/{layout-BK9N89ic.js → layout-BNaQBqtl.js} +1 -1
- package/ui-dist/assets/{linear-DU8l53YE.js → linear-BhVafP3H.js} +1 -1
- package/ui-dist/assets/{mermaid.core-CU5MSNXU.js → mermaid.core-DhsBF08N.js} +4 -4
- package/ui-dist/assets/{mindmap-definition-VGOIOE7T-CJkeo4Ia.js → mindmap-definition-VGOIOE7T-Dpvm46UT.js} +1 -1
- package/ui-dist/assets/{pieDiagram-ADFJNKIX-BqBNYE4B.js → pieDiagram-ADFJNKIX-Dd01Yj9z.js} +1 -1
- package/ui-dist/assets/{quadrantDiagram-AYHSOK5B-C6MVlh1C.js → quadrantDiagram-AYHSOK5B-DKe05qKf.js} +1 -1
- package/ui-dist/assets/{requirementDiagram-UZGBJVZJ-C0uzXIGF.js → requirementDiagram-UZGBJVZJ-B2MGfTuF.js} +1 -1
- package/ui-dist/assets/{sankeyDiagram-TZEHDZUN-CbmrEzLu.js → sankeyDiagram-TZEHDZUN-85mIqLY0.js} +1 -1
- package/ui-dist/assets/{sequenceDiagram-WL72ISMW-lJlrCDfT.js → sequenceDiagram-WL72ISMW-DoxTv16E.js} +1 -1
- package/ui-dist/assets/{stateDiagram-FKZM4ZOC-DoMKgHqh.js → stateDiagram-FKZM4ZOC-BI3kBGXf.js} +1 -1
- package/ui-dist/assets/stateDiagram-v2-4FDKWEC3-BVAtCHqG.js +1 -0
- package/ui-dist/assets/{timeline-definition-IT6M3QCI-BWcC0khN.js → timeline-definition-IT6M3QCI-Daqhi7l9.js} +1 -1
- package/ui-dist/assets/{treemap-GDKQZRPO-CtB-bLrU.js → treemap-GDKQZRPO-CB_PUpOx.js} +1 -1
- package/ui-dist/assets/{xychartDiagram-PRI3JC2R-BPTfNtGA.js → xychartDiagram-PRI3JC2R-BnArsW92.js} +1 -1
- package/ui-dist/index.html +2 -2
- package/ui-dist/assets/channel-lI4wkM_Z.js +0 -1
- package/ui-dist/assets/classDiagram-2ON5EDUG-BMQEu2Zi.js +0 -1
- package/ui-dist/assets/classDiagram-v2-WZHVMYZB-BMQEu2Zi.js +0 -1
- package/ui-dist/assets/clone-BqfkzWV0.js +0 -1
- package/ui-dist/assets/index-BOZP7h9L.css +0 -1
- package/ui-dist/assets/stateDiagram-v2-4FDKWEC3-DeW0SZN7.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issues.d.ts","sourceRoot":"","sources":["../../src/routes/issues.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AAS5C,OAAO,EA8BL,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAI3B,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AA8C1D,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,0CAA0C,CAAC;AASlD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAShF,KAAK,oBAAoB,GAAG;IAC1B,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACtF,CAAC;AA2qBF,wBAAgB,WAAW,CACzB,EAAE,EAAE,EAAE,EACN,OAAO,EAAE,cAAc,EACvB,IAAI,GAAE;IACJ,qBAAqB,CAAC,EAAE;QACtB,0BAA0B,CAAC,KAAK,CAAC,EAAE;YACjC,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,GAAG,CAAC,EAAE,IAAI,CAAC;SACZ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;KACtB,CAAC;IACF,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,iBAAiB,CAAC,EAAE,wBAAwB,CAAC;IAC7C,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CACtC,
|
|
1
|
+
{"version":3,"file":"issues.d.ts","sourceRoot":"","sources":["../../src/routes/issues.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AAS5C,OAAO,EA8BL,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAI3B,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AA8C1D,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,0CAA0C,CAAC;AASlD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAShF,KAAK,oBAAoB,GAAG;IAC1B,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACtF,CAAC;AA2qBF,wBAAgB,WAAW,CACzB,EAAE,EAAE,EAAE,EACN,OAAO,EAAE,cAAc,EACvB,IAAI,GAAE;IACJ,qBAAqB,CAAC,EAAE;QACtB,0BAA0B,CAAC,KAAK,CAAC,EAAE;YACjC,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,GAAG,CAAC,EAAE,IAAI,CAAC;SACZ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;KACtB,CAAC;IACF,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,iBAAiB,CAAC,EAAE,wBAAwB,CAAC;IAC7C,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CACtC,8CAggIP"}
|
package/dist/routes/issues.js
CHANGED
|
@@ -1061,6 +1061,7 @@ export function issueRoutes(db, storage, opts = {}) {
|
|
|
1061
1061
|
const parsedOffset = rawOffset !== undefined && /^\d+$/.test(rawOffset)
|
|
1062
1062
|
? Number.parseInt(rawOffset, 10)
|
|
1063
1063
|
: null;
|
|
1064
|
+
const attention = req.query.attention;
|
|
1064
1065
|
if (assigneeUserFilterRaw === "me" && (!assigneeUserId || req.actor.type !== "board")) {
|
|
1065
1066
|
res.status(403).json({ error: "assigneeUserId=me requires board authentication" });
|
|
1066
1067
|
return;
|
|
@@ -1077,6 +1078,10 @@ export function issueRoutes(db, storage, opts = {}) {
|
|
|
1077
1078
|
res.status(403).json({ error: "unreadForUserId=me requires board authentication" });
|
|
1078
1079
|
return;
|
|
1079
1080
|
}
|
|
1081
|
+
if (attention !== undefined && attention !== "blocked") {
|
|
1082
|
+
res.status(400).json({ error: "attention must be 'blocked' when provided" });
|
|
1083
|
+
return;
|
|
1084
|
+
}
|
|
1080
1085
|
if (rawLimit !== undefined && (parsedLimit === null || !Number.isInteger(parsedLimit) || parsedLimit <= 0)) {
|
|
1081
1086
|
res.status(400).json({ error: `limit must be a positive integer up to ${ISSUE_LIST_MAX_LIMIT}` });
|
|
1082
1087
|
return;
|
|
@@ -1087,6 +1092,7 @@ export function issueRoutes(db, storage, opts = {}) {
|
|
|
1087
1092
|
}
|
|
1088
1093
|
const offset = parsedOffset ?? 0;
|
|
1089
1094
|
const result = await svc.list(companyId, {
|
|
1095
|
+
attention: attention === "blocked" ? "blocked" : undefined,
|
|
1090
1096
|
status: req.query.status,
|
|
1091
1097
|
assigneeAgentId: req.query.assigneeAgentId,
|
|
1092
1098
|
participantAgentId: req.query.participantAgentId,
|
|
@@ -1107,6 +1113,7 @@ export function issueRoutes(db, storage, opts = {}) {
|
|
|
1107
1113
|
excludeRoutineExecutions: req.query.excludeRoutineExecutions === "true" || req.query.excludeRoutineExecutions === "1",
|
|
1108
1114
|
includePluginOperations: req.query.includePluginOperations === "true" || req.query.includePluginOperations === "1",
|
|
1109
1115
|
includeBlockedBy: req.query.includeBlockedBy === "true" || req.query.includeBlockedBy === "1",
|
|
1116
|
+
includeBlockedInboxAttention: req.query.includeBlockedInboxAttention === "true" || req.query.includeBlockedInboxAttention === "1",
|
|
1110
1117
|
q: req.query.q,
|
|
1111
1118
|
limit,
|
|
1112
1119
|
offset,
|
|
@@ -1122,6 +1129,42 @@ export function issueRoutes(db, storage, opts = {}) {
|
|
|
1122
1129
|
activeRecoveryAction: recoveryActionByIssue.get(issue.id) ?? null,
|
|
1123
1130
|
})));
|
|
1124
1131
|
});
|
|
1132
|
+
router.get("/companies/:companyId/issues/count", async (req, res) => {
|
|
1133
|
+
const companyId = req.params.companyId;
|
|
1134
|
+
assertCompanyAccess(req, companyId);
|
|
1135
|
+
const attention = req.query.attention;
|
|
1136
|
+
if (attention !== "blocked") {
|
|
1137
|
+
res.status(400).json({ error: "issues/count currently requires attention=blocked" });
|
|
1138
|
+
return;
|
|
1139
|
+
}
|
|
1140
|
+
if (req.query.limit !== undefined || req.query.offset !== undefined) {
|
|
1141
|
+
res.status(400).json({ error: "issues/count does not accept limit or offset" });
|
|
1142
|
+
return;
|
|
1143
|
+
}
|
|
1144
|
+
const count = await svc.count(companyId, {
|
|
1145
|
+
attention: "blocked",
|
|
1146
|
+
status: req.query.status,
|
|
1147
|
+
assigneeAgentId: req.query.assigneeAgentId,
|
|
1148
|
+
participantAgentId: req.query.participantAgentId,
|
|
1149
|
+
assigneeUserId: req.query.assigneeUserId,
|
|
1150
|
+
projectId: req.query.projectId,
|
|
1151
|
+
workspaceId: req.query.workspaceId,
|
|
1152
|
+
executionWorkspaceId: req.query.executionWorkspaceId,
|
|
1153
|
+
parentId: req.query.parentId,
|
|
1154
|
+
descendantOf: req.query.descendantOf,
|
|
1155
|
+
labelId: req.query.labelId,
|
|
1156
|
+
originKind: req.query.originKind,
|
|
1157
|
+
originKindPrefix: req.query.originKindPrefix,
|
|
1158
|
+
originId: req.query.originId,
|
|
1159
|
+
includeRoutineExecutions: req.query.includeRoutineExecutions === "true" || req.query.includeRoutineExecutions === "1",
|
|
1160
|
+
excludeRoutineExecutions: req.query.excludeRoutineExecutions === "true" || req.query.excludeRoutineExecutions === "1",
|
|
1161
|
+
includePluginOperations: req.query.includePluginOperations === "true" || req.query.includePluginOperations === "1",
|
|
1162
|
+
includeBlockedBy: true,
|
|
1163
|
+
includeBlockedInboxAttention: true,
|
|
1164
|
+
q: req.query.q,
|
|
1165
|
+
});
|
|
1166
|
+
res.json({ count });
|
|
1167
|
+
});
|
|
1125
1168
|
router.get("/companies/:companyId/labels", async (req, res) => {
|
|
1126
1169
|
const companyId = req.params.companyId;
|
|
1127
1170
|
assertCompanyAccess(req, companyId);
|