@paperclipai/server 0.3.0 → 0.3.1-canary.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.
- package/dist/adapters/registry.d.ts.map +1 -1
- package/dist/adapters/registry.js +12 -0
- package/dist/adapters/registry.js.map +1 -1
- package/dist/app.d.ts +1 -0
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +9 -2
- package/dist/app.js.map +1 -1
- package/dist/attachment-types.d.ts +33 -0
- package/dist/attachment-types.d.ts.map +1 -0
- package/dist/attachment-types.js +61 -0
- package/dist/attachment-types.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -2
- package/dist/index.js.map +1 -1
- package/dist/log-redaction.d.ts +10 -0
- package/dist/log-redaction.d.ts.map +1 -0
- package/dist/log-redaction.js +110 -0
- package/dist/log-redaction.js.map +1 -0
- package/dist/middleware/logger.d.ts.map +1 -1
- package/dist/middleware/logger.js +1 -0
- package/dist/middleware/logger.js.map +1 -1
- package/dist/routes/activity.d.ts.map +1 -1
- package/dist/routes/activity.js +12 -21
- package/dist/routes/activity.js.map +1 -1
- package/dist/routes/agents.d.ts.map +1 -1
- package/dist/routes/agents.js +102 -3
- package/dist/routes/agents.js.map +1 -1
- package/dist/routes/approvals.d.ts.map +1 -1
- package/dist/routes/approvals.js +87 -83
- package/dist/routes/approvals.js.map +1 -1
- package/dist/routes/assets.d.ts.map +1 -1
- package/dist/routes/assets.js +5 -12
- package/dist/routes/assets.js.map +1 -1
- package/dist/routes/issues.d.ts.map +1 -1
- package/dist/routes/issues.js +16 -11
- package/dist/routes/issues.js.map +1 -1
- package/dist/routes/sidebar-badges.d.ts.map +1 -1
- package/dist/routes/sidebar-badges.js +1 -4
- package/dist/routes/sidebar-badges.js.map +1 -1
- package/dist/services/activity-log.d.ts.map +1 -1
- package/dist/services/activity-log.js +4 -2
- package/dist/services/activity-log.js.map +1 -1
- package/dist/services/approvals.d.ts +30 -24
- package/dist/services/approvals.d.ts.map +1 -1
- package/dist/services/approvals.js +51 -42
- package/dist/services/approvals.js.map +1 -1
- package/dist/services/company-portability.d.ts.map +1 -1
- package/dist/services/company-portability.js +5 -1
- package/dist/services/company-portability.js.map +1 -1
- package/dist/services/dashboard.d.ts +0 -1
- package/dist/services/dashboard.d.ts.map +1 -1
- package/dist/services/dashboard.js +0 -7
- package/dist/services/dashboard.js.map +1 -1
- package/dist/services/execution-workspace-policy.d.ts +19 -0
- package/dist/services/execution-workspace-policy.d.ts.map +1 -0
- package/dist/services/execution-workspace-policy.js +117 -0
- package/dist/services/execution-workspace-policy.js.map +1 -0
- package/dist/services/goals.d.ts +26 -0
- package/dist/services/goals.d.ts.map +1 -1
- package/dist/services/goals.js +26 -1
- package/dist/services/goals.js.map +1 -1
- package/dist/services/heartbeat-run-summary.d.ts +2 -0
- package/dist/services/heartbeat-run-summary.d.ts.map +1 -0
- package/dist/services/heartbeat-run-summary.js +30 -0
- package/dist/services/heartbeat-run-summary.js.map +1 -0
- package/dist/services/heartbeat.d.ts +30 -996
- package/dist/services/heartbeat.d.ts.map +1 -1
- package/dist/services/heartbeat.js +236 -47
- package/dist/services/heartbeat.js.map +1 -1
- package/dist/services/index.d.ts +1 -0
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +1 -0
- package/dist/services/index.js.map +1 -1
- package/dist/services/issue-goal-fallback.d.ts +15 -0
- package/dist/services/issue-goal-fallback.d.ts.map +1 -0
- package/dist/services/issue-goal-fallback.js +15 -0
- package/dist/services/issue-goal-fallback.js.map +1 -0
- package/dist/services/issues.d.ts +5 -278
- package/dist/services/issues.d.ts.map +1 -1
- package/dist/services/issues.js +52 -14
- package/dist/services/issues.js.map +1 -1
- package/dist/services/projects.d.ts +4 -2
- package/dist/services/projects.d.ts.map +1 -1
- package/dist/services/projects.js +49 -6
- package/dist/services/projects.js.map +1 -1
- package/dist/services/workspace-runtime.d.ts +126 -0
- package/dist/services/workspace-runtime.d.ts.map +1 -0
- package/dist/services/workspace-runtime.js +852 -0
- package/dist/services/workspace-runtime.js.map +1 -0
- package/dist/ui-branding.d.ts +4 -0
- package/dist/ui-branding.d.ts.map +1 -0
- package/dist/ui-branding.js +37 -0
- package/dist/ui-branding.js.map +1 -0
- package/package.json +11 -10
- package/skills/paperclip/SKILL.md +23 -19
- package/ui-dist/assets/{_basePickBy-BYrQlacK.js → _basePickBy-B0xbZITw.js} +1 -1
- package/ui-dist/assets/{_baseUniq-DOSawgF3.js → _baseUniq-Cfd5u3qc.js} +1 -1
- package/ui-dist/assets/{arc-CG7T0hfG.js → arc-7Xbu8tBF.js} +1 -1
- package/ui-dist/assets/{architectureDiagram-VXUJARFQ-Bcn7ytDO.js → architectureDiagram-VXUJARFQ-C8F7ZRYc.js} +1 -1
- package/ui-dist/assets/{blockDiagram-VD42YOAC-BQGrx2lv.js → blockDiagram-VD42YOAC-Dp08a65A.js} +1 -1
- package/ui-dist/assets/{c4Diagram-YG6GDRKO-owH9Kb3t.js → c4Diagram-YG6GDRKO-BJfslTgZ.js} +1 -1
- package/ui-dist/assets/channel-BViQDbSq.js +1 -0
- package/ui-dist/assets/{chunk-4BX2VUAB-DY1UIe4g.js → chunk-4BX2VUAB-BhaYWH7e.js} +1 -1
- package/ui-dist/assets/{chunk-55IACEB6-CnWFPfPQ.js → chunk-55IACEB6-BOzJUsYW.js} +1 -1
- package/ui-dist/assets/{chunk-B4BG7PRW-DhlLW80l.js → chunk-B4BG7PRW-CbVcziyE.js} +1 -1
- package/ui-dist/assets/{chunk-DI55MBZ5-DPt7dj6c.js → chunk-DI55MBZ5-DghPtP3y.js} +1 -1
- package/ui-dist/assets/{chunk-FMBD7UC4-GQwzgYa4.js → chunk-FMBD7UC4-CB095Kfn.js} +1 -1
- package/ui-dist/assets/{chunk-QN33PNHL-BFHLVk5s.js → chunk-QN33PNHL-DfpzfDqJ.js} +1 -1
- package/ui-dist/assets/{chunk-QZHKN3VN-CLe3KEAf.js → chunk-QZHKN3VN-Df3d5z1y.js} +1 -1
- package/ui-dist/assets/{chunk-TZMSLE5B-BhccYB4e.js → chunk-TZMSLE5B-B6tX6bZI.js} +1 -1
- package/ui-dist/assets/classDiagram-2ON5EDUG-CjMCmxMT.js +1 -0
- package/ui-dist/assets/classDiagram-v2-WZHVMYZB-CjMCmxMT.js +1 -0
- package/ui-dist/assets/clone-Dbn9wtE1.js +1 -0
- package/ui-dist/assets/{cose-bilkent-S5V4N54A-DqECYL1w.js → cose-bilkent-S5V4N54A-38wg_s9V.js} +1 -1
- package/ui-dist/assets/{dagre-6UL2VRFP-DXeQqIJ2.js → dagre-6UL2VRFP-DPVj3XLS.js} +1 -1
- package/ui-dist/assets/{diagram-PSM6KHXK-DNu3Ctuy.js → diagram-PSM6KHXK-BJh89zUA.js} +1 -1
- package/ui-dist/assets/{diagram-QEK2KX5R-1wUR_z9S.js → diagram-QEK2KX5R-Bw0m_j10.js} +1 -1
- package/ui-dist/assets/{diagram-S2PKOQOG-D3IK8rZb.js → diagram-S2PKOQOG-D7_M2F3u.js} +1 -1
- package/ui-dist/assets/{erDiagram-Q2GNP2WA-DU3L0RbU.js → erDiagram-Q2GNP2WA-CLsjqTWP.js} +1 -1
- package/ui-dist/assets/{flowDiagram-NV44I4VS-CN46A5Ez.js → flowDiagram-NV44I4VS-BZZ7ezVB.js} +1 -1
- package/ui-dist/assets/{ganttDiagram-JELNMOA3-DGbOi1Wz.js → ganttDiagram-JELNMOA3-KzsFuwBt.js} +1 -1
- package/ui-dist/assets/{gitGraphDiagram-V2S2FVAM-D98N7SOj.js → gitGraphDiagram-V2S2FVAM-DSHtY7Vu.js} +1 -1
- package/ui-dist/assets/{graph-Cf7LCNJy.js → graph-luIG1UAS.js} +1 -1
- package/ui-dist/assets/{index-CP1BgxcV.js → index-00kuG4sI.js} +1 -1
- package/ui-dist/assets/{index-DiXE2gv-.js → index-1gX09-Fl.js} +1 -1
- package/ui-dist/assets/{index-CqG5WZHq.js → index-B1ZMzzs0.js} +1 -1
- package/ui-dist/assets/index-BHP9dico.js +1006 -0
- package/ui-dist/assets/{index-cx0y6-1h.js → index-B_3g3Rie.js} +1 -1
- package/ui-dist/assets/{index-CI56poQD.js → index-BeeKMqNU.js} +1 -1
- package/ui-dist/assets/{index-BfG2u5u0.js → index-BfB4lKJN.js} +1 -1
- package/ui-dist/assets/index-BfNaDZnn.css +1 -0
- package/ui-dist/assets/{index-DZdNKByU.js → index-Bv4xCjxl.js} +1 -1
- package/ui-dist/assets/{index--K1VLoF-.js → index-C2SZYIDA.js} +1 -1
- package/ui-dist/assets/{index-DB5nKqAA.js → index-C8XyGAr9.js} +1 -1
- package/ui-dist/assets/{index-C2-SE7P0.js → index-CaR9XM4h.js} +1 -1
- package/ui-dist/assets/{index-DujThSls.js → index-CbGtsjW7.js} +1 -1
- package/ui-dist/assets/{index-D0EsfNYg.js → index-CeDCs_2i.js} +1 -1
- package/ui-dist/assets/{index-OkxoZoQy.js → index-DBy0vJy3.js} +1 -1
- package/ui-dist/assets/{index-BoAYxRAO.js → index-DJf8diAA.js} +1 -1
- package/ui-dist/assets/{index-N1SX_i0z.js → index-DcfLFstG.js} +1 -1
- package/ui-dist/assets/{index-DXgtGequ.js → index-DnIPDZLp.js} +1 -1
- package/ui-dist/assets/{index-Cick_QSL.js → index-DoTq-BeR.js} +1 -1
- package/ui-dist/assets/{index-0BSerEC2.js → index-Ds7vLTSK.js} +1 -1
- package/ui-dist/assets/{index-Beb2ZlSv.js → index-RUBFVv6t.js} +1 -1
- package/ui-dist/assets/{index-TFF7cXd7.js → index-itc7BfMy.js} +1 -1
- package/ui-dist/assets/{index-BD6My-aI.js → index-nFjLambq.js} +1 -1
- package/ui-dist/assets/{index-B-xuGUs-.js → index-uR3zjYaD.js} +1 -1
- package/ui-dist/assets/{infoDiagram-HS3SLOUP-D_b1CK0Y.js → infoDiagram-HS3SLOUP-CDEfWpme.js} +1 -1
- package/ui-dist/assets/{journeyDiagram-XKPGCS4Q-4oCVXUve.js → journeyDiagram-XKPGCS4Q-i7nsbg_Y.js} +1 -1
- package/ui-dist/assets/{kanban-definition-3W4ZIXB7-0VcjP_qf.js → kanban-definition-3W4ZIXB7-DDlx1qVE.js} +1 -1
- package/ui-dist/assets/{layout-BQcYXlNv.js → layout-C7AtmJzX.js} +1 -1
- package/ui-dist/assets/{linear-nz0Lfiys.js → linear-C5jHT-WP.js} +1 -1
- package/ui-dist/assets/{mermaid.core-BaxvgwjG.js → mermaid.core-C8YQ4fcY.js} +4 -4
- package/ui-dist/assets/{mindmap-definition-VGOIOE7T-BnW6nEhl.js → mindmap-definition-VGOIOE7T-B9m9PuUg.js} +1 -1
- package/ui-dist/assets/{pieDiagram-ADFJNKIX-O1tvU_18.js → pieDiagram-ADFJNKIX-SvKywCSE.js} +1 -1
- package/ui-dist/assets/{quadrantDiagram-AYHSOK5B-BfM2aQbf.js → quadrantDiagram-AYHSOK5B-QfBPm7Y1.js} +1 -1
- package/ui-dist/assets/{requirementDiagram-UZGBJVZJ-rXVZupag.js → requirementDiagram-UZGBJVZJ-DnfQQuwi.js} +1 -1
- package/ui-dist/assets/{sankeyDiagram-TZEHDZUN-BNgaPVo6.js → sankeyDiagram-TZEHDZUN-DvLkjzIW.js} +1 -1
- package/ui-dist/assets/{sequenceDiagram-WL72ISMW--KnZ0qRV.js → sequenceDiagram-WL72ISMW-5Lq2rWBc.js} +1 -1
- package/ui-dist/assets/{stateDiagram-FKZM4ZOC-DlGdC88b.js → stateDiagram-FKZM4ZOC-DcYPHDyi.js} +1 -1
- package/ui-dist/assets/stateDiagram-v2-4FDKWEC3-nv50YYrl.js +1 -0
- package/ui-dist/assets/{timeline-definition-IT6M3QCI-CCwriy0-.js → timeline-definition-IT6M3QCI-lrN4JmWa.js} +1 -1
- package/ui-dist/assets/{treemap-GDKQZRPO-C-79yojr.js → treemap-GDKQZRPO-DFJKIBTQ.js} +1 -1
- package/ui-dist/assets/{xychartDiagram-PRI3JC2R-Dj0jcMBZ.js → xychartDiagram-PRI3JC2R-CT47vtdm.js} +1 -1
- package/ui-dist/index.html +4 -2
- package/ui-dist/worktree-favicon-16x16.png +0 -0
- package/ui-dist/worktree-favicon-32x32.png +0 -0
- package/ui-dist/worktree-favicon.ico +0 -0
- package/ui-dist/worktree-favicon.svg +9 -0
- package/skills/release/SKILL.md +0 -261
- package/skills/release-changelog/SKILL.md +0 -178
- package/ui-dist/assets/channel-DdXqC9Qy.js +0 -1
- package/ui-dist/assets/classDiagram-2ON5EDUG-ZV36NLFv.js +0 -1
- package/ui-dist/assets/classDiagram-v2-WZHVMYZB-ZV36NLFv.js +0 -1
- package/ui-dist/assets/clone-CvxIjPQa.js +0 -1
- package/ui-dist/assets/index-BYw6Loly.js +0 -900
- package/ui-dist/assets/index-nfAtmpEH.css +0 -1
- package/ui-dist/assets/stateDiagram-v2-4FDKWEC3-CuVnpOfP.js +0 -1
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import { asString, parseObject } from "../adapters/utils.js";
|
|
2
|
+
function cloneRecord(value) {
|
|
3
|
+
if (!value)
|
|
4
|
+
return null;
|
|
5
|
+
return { ...value };
|
|
6
|
+
}
|
|
7
|
+
function parseExecutionWorkspaceStrategy(raw) {
|
|
8
|
+
const parsed = parseObject(raw);
|
|
9
|
+
const type = asString(parsed.type, "");
|
|
10
|
+
if (type !== "project_primary" && type !== "git_worktree") {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
return {
|
|
14
|
+
type,
|
|
15
|
+
...(typeof parsed.baseRef === "string" ? { baseRef: parsed.baseRef } : {}),
|
|
16
|
+
...(typeof parsed.branchTemplate === "string" ? { branchTemplate: parsed.branchTemplate } : {}),
|
|
17
|
+
...(typeof parsed.worktreeParentDir === "string" ? { worktreeParentDir: parsed.worktreeParentDir } : {}),
|
|
18
|
+
...(typeof parsed.provisionCommand === "string" ? { provisionCommand: parsed.provisionCommand } : {}),
|
|
19
|
+
...(typeof parsed.teardownCommand === "string" ? { teardownCommand: parsed.teardownCommand } : {}),
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
export function parseProjectExecutionWorkspacePolicy(raw) {
|
|
23
|
+
const parsed = parseObject(raw);
|
|
24
|
+
if (Object.keys(parsed).length === 0)
|
|
25
|
+
return null;
|
|
26
|
+
const enabled = typeof parsed.enabled === "boolean" ? parsed.enabled : false;
|
|
27
|
+
const defaultMode = asString(parsed.defaultMode, "");
|
|
28
|
+
const allowIssueOverride = typeof parsed.allowIssueOverride === "boolean" ? parsed.allowIssueOverride : undefined;
|
|
29
|
+
return {
|
|
30
|
+
enabled,
|
|
31
|
+
...(defaultMode === "project_primary" || defaultMode === "isolated" ? { defaultMode } : {}),
|
|
32
|
+
...(allowIssueOverride !== undefined ? { allowIssueOverride } : {}),
|
|
33
|
+
...(parseExecutionWorkspaceStrategy(parsed.workspaceStrategy)
|
|
34
|
+
? { workspaceStrategy: parseExecutionWorkspaceStrategy(parsed.workspaceStrategy) }
|
|
35
|
+
: {}),
|
|
36
|
+
...(parsed.workspaceRuntime && typeof parsed.workspaceRuntime === "object" && !Array.isArray(parsed.workspaceRuntime)
|
|
37
|
+
? { workspaceRuntime: { ...parsed.workspaceRuntime } }
|
|
38
|
+
: {}),
|
|
39
|
+
...(parsed.branchPolicy && typeof parsed.branchPolicy === "object" && !Array.isArray(parsed.branchPolicy)
|
|
40
|
+
? { branchPolicy: { ...parsed.branchPolicy } }
|
|
41
|
+
: {}),
|
|
42
|
+
...(parsed.pullRequestPolicy && typeof parsed.pullRequestPolicy === "object" && !Array.isArray(parsed.pullRequestPolicy)
|
|
43
|
+
? { pullRequestPolicy: { ...parsed.pullRequestPolicy } }
|
|
44
|
+
: {}),
|
|
45
|
+
...(parsed.cleanupPolicy && typeof parsed.cleanupPolicy === "object" && !Array.isArray(parsed.cleanupPolicy)
|
|
46
|
+
? { cleanupPolicy: { ...parsed.cleanupPolicy } }
|
|
47
|
+
: {}),
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
export function parseIssueExecutionWorkspaceSettings(raw) {
|
|
51
|
+
const parsed = parseObject(raw);
|
|
52
|
+
if (Object.keys(parsed).length === 0)
|
|
53
|
+
return null;
|
|
54
|
+
const mode = asString(parsed.mode, "");
|
|
55
|
+
return {
|
|
56
|
+
...(mode === "inherit" || mode === "project_primary" || mode === "isolated" || mode === "agent_default"
|
|
57
|
+
? { mode }
|
|
58
|
+
: {}),
|
|
59
|
+
...(parseExecutionWorkspaceStrategy(parsed.workspaceStrategy)
|
|
60
|
+
? { workspaceStrategy: parseExecutionWorkspaceStrategy(parsed.workspaceStrategy) }
|
|
61
|
+
: {}),
|
|
62
|
+
...(parsed.workspaceRuntime && typeof parsed.workspaceRuntime === "object" && !Array.isArray(parsed.workspaceRuntime)
|
|
63
|
+
? { workspaceRuntime: { ...parsed.workspaceRuntime } }
|
|
64
|
+
: {}),
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
export function defaultIssueExecutionWorkspaceSettingsForProject(projectPolicy) {
|
|
68
|
+
if (!projectPolicy?.enabled)
|
|
69
|
+
return null;
|
|
70
|
+
return {
|
|
71
|
+
mode: projectPolicy.defaultMode === "isolated" ? "isolated" : "project_primary",
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
export function resolveExecutionWorkspaceMode(input) {
|
|
75
|
+
const issueMode = input.issueSettings?.mode;
|
|
76
|
+
if (issueMode && issueMode !== "inherit") {
|
|
77
|
+
return issueMode;
|
|
78
|
+
}
|
|
79
|
+
if (input.projectPolicy?.enabled) {
|
|
80
|
+
return input.projectPolicy.defaultMode === "isolated" ? "isolated" : "project_primary";
|
|
81
|
+
}
|
|
82
|
+
if (input.legacyUseProjectWorkspace === false) {
|
|
83
|
+
return "agent_default";
|
|
84
|
+
}
|
|
85
|
+
return "project_primary";
|
|
86
|
+
}
|
|
87
|
+
export function buildExecutionWorkspaceAdapterConfig(input) {
|
|
88
|
+
const nextConfig = { ...input.agentConfig };
|
|
89
|
+
const projectHasPolicy = Boolean(input.projectPolicy?.enabled);
|
|
90
|
+
const issueHasWorkspaceOverrides = Boolean(input.issueSettings?.mode ||
|
|
91
|
+
input.issueSettings?.workspaceStrategy ||
|
|
92
|
+
input.issueSettings?.workspaceRuntime);
|
|
93
|
+
const hasWorkspaceControl = projectHasPolicy || issueHasWorkspaceOverrides || input.legacyUseProjectWorkspace === false;
|
|
94
|
+
if (hasWorkspaceControl) {
|
|
95
|
+
if (input.mode === "isolated") {
|
|
96
|
+
const strategy = input.issueSettings?.workspaceStrategy ??
|
|
97
|
+
input.projectPolicy?.workspaceStrategy ??
|
|
98
|
+
parseExecutionWorkspaceStrategy(nextConfig.workspaceStrategy) ??
|
|
99
|
+
{ type: "git_worktree" };
|
|
100
|
+
nextConfig.workspaceStrategy = strategy;
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
delete nextConfig.workspaceStrategy;
|
|
104
|
+
}
|
|
105
|
+
if (input.mode === "agent_default") {
|
|
106
|
+
delete nextConfig.workspaceRuntime;
|
|
107
|
+
}
|
|
108
|
+
else if (input.issueSettings?.workspaceRuntime) {
|
|
109
|
+
nextConfig.workspaceRuntime = cloneRecord(input.issueSettings.workspaceRuntime) ?? undefined;
|
|
110
|
+
}
|
|
111
|
+
else if (input.projectPolicy?.workspaceRuntime) {
|
|
112
|
+
nextConfig.workspaceRuntime = cloneRecord(input.projectPolicy.workspaceRuntime) ?? undefined;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
return nextConfig;
|
|
116
|
+
}
|
|
117
|
+
//# sourceMappingURL=execution-workspace-policy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execution-workspace-policy.js","sourceRoot":"","sources":["../../src/services/execution-workspace-policy.ts"],"names":[],"mappings":"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"}
|
package/dist/services/goals.d.ts
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
import type { Db } from "@paperclipai/db";
|
|
2
2
|
import { goals } from "@paperclipai/db";
|
|
3
|
+
type GoalReader = Pick<Db, "select">;
|
|
4
|
+
export declare function getDefaultCompanyGoal(db: GoalReader, companyId: string): Promise<{
|
|
5
|
+
id: string;
|
|
6
|
+
description: string | null;
|
|
7
|
+
status: string;
|
|
8
|
+
createdAt: Date;
|
|
9
|
+
updatedAt: Date;
|
|
10
|
+
companyId: string;
|
|
11
|
+
title: string;
|
|
12
|
+
level: string;
|
|
13
|
+
parentId: string | null;
|
|
14
|
+
ownerAgentId: string | null;
|
|
15
|
+
}>;
|
|
3
16
|
export declare function goalService(db: Db): {
|
|
4
17
|
list: (companyId: string) => Omit<import("drizzle-orm/pg-core").PgSelectBase<"goals", {
|
|
5
18
|
id: import("drizzle-orm/pg-core").PgColumn<{
|
|
@@ -367,6 +380,18 @@ export declare function goalService(db: Db): {
|
|
|
367
380
|
parentId: string | null;
|
|
368
381
|
ownerAgentId: string | null;
|
|
369
382
|
}>;
|
|
383
|
+
getDefaultCompanyGoal: (companyId: string) => Promise<{
|
|
384
|
+
id: string;
|
|
385
|
+
description: string | null;
|
|
386
|
+
status: string;
|
|
387
|
+
createdAt: Date;
|
|
388
|
+
updatedAt: Date;
|
|
389
|
+
companyId: string;
|
|
390
|
+
title: string;
|
|
391
|
+
level: string;
|
|
392
|
+
parentId: string | null;
|
|
393
|
+
ownerAgentId: string | null;
|
|
394
|
+
}>;
|
|
370
395
|
create: (companyId: string, data: Omit<typeof goals.$inferInsert, "companyId">) => Promise<{
|
|
371
396
|
id: string;
|
|
372
397
|
description: string | null;
|
|
@@ -404,4 +429,5 @@ export declare function goalService(db: Db): {
|
|
|
404
429
|
ownerAgentId: string | null;
|
|
405
430
|
}>;
|
|
406
431
|
};
|
|
432
|
+
export {};
|
|
407
433
|
//# sourceMappingURL=goals.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"goals.d.ts","sourceRoot":"","sources":["../../src/services/goals.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,wBAAgB,WAAW,CAAC,EAAE,EAAE,EAAE;sBAEZ,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAEV,MAAM;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"goals.d.ts","sourceRoot":"","sources":["../../src/services/goals.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,KAAK,UAAU,GAAG,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;AAErC,wBAAsB,qBAAqB,CAAC,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM;;;;;;;;;;;GAoC5E;AAED,wBAAgB,WAAW,CAAC,EAAE,EAAE,EAAE;sBAEZ,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAEV,MAAM;;;;;;;;;;;;uCAOe,MAAM;;;;;;;;;;;;wBAErB,MAAM,QAAQ,IAAI,CAAC,OAAO,KAAK,CAAC,YAAY,EAAE,WAAW,CAAC;;;;;;;;;;;;iBAOjE,MAAM,QAAQ,OAAO,CAAC,OAAO,KAAK,CAAC,YAAY,CAAC;;;;;;;;;;;;iBAQhD,MAAM;;;;;;;;;;;;EAOtB"}
|
package/dist/services/goals.js
CHANGED
|
@@ -1,5 +1,29 @@
|
|
|
1
|
-
import { eq } from "drizzle-orm";
|
|
1
|
+
import { and, asc, eq, isNull } from "drizzle-orm";
|
|
2
2
|
import { goals } from "@paperclipai/db";
|
|
3
|
+
export async function getDefaultCompanyGoal(db, companyId) {
|
|
4
|
+
const activeRootGoal = await db
|
|
5
|
+
.select()
|
|
6
|
+
.from(goals)
|
|
7
|
+
.where(and(eq(goals.companyId, companyId), eq(goals.level, "company"), eq(goals.status, "active"), isNull(goals.parentId)))
|
|
8
|
+
.orderBy(asc(goals.createdAt))
|
|
9
|
+
.then((rows) => rows[0] ?? null);
|
|
10
|
+
if (activeRootGoal)
|
|
11
|
+
return activeRootGoal;
|
|
12
|
+
const anyRootGoal = await db
|
|
13
|
+
.select()
|
|
14
|
+
.from(goals)
|
|
15
|
+
.where(and(eq(goals.companyId, companyId), eq(goals.level, "company"), isNull(goals.parentId)))
|
|
16
|
+
.orderBy(asc(goals.createdAt))
|
|
17
|
+
.then((rows) => rows[0] ?? null);
|
|
18
|
+
if (anyRootGoal)
|
|
19
|
+
return anyRootGoal;
|
|
20
|
+
return db
|
|
21
|
+
.select()
|
|
22
|
+
.from(goals)
|
|
23
|
+
.where(and(eq(goals.companyId, companyId), eq(goals.level, "company")))
|
|
24
|
+
.orderBy(asc(goals.createdAt))
|
|
25
|
+
.then((rows) => rows[0] ?? null);
|
|
26
|
+
}
|
|
3
27
|
export function goalService(db) {
|
|
4
28
|
return {
|
|
5
29
|
list: (companyId) => db.select().from(goals).where(eq(goals.companyId, companyId)),
|
|
@@ -8,6 +32,7 @@ export function goalService(db) {
|
|
|
8
32
|
.from(goals)
|
|
9
33
|
.where(eq(goals.id, id))
|
|
10
34
|
.then((rows) => rows[0] ?? null),
|
|
35
|
+
getDefaultCompanyGoal: (companyId) => getDefaultCompanyGoal(db, companyId),
|
|
11
36
|
create: (companyId, data) => db
|
|
12
37
|
.insert(goals)
|
|
13
38
|
.values({ ...data, companyId })
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"goals.js","sourceRoot":"","sources":["../../src/services/goals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"goals.js","sourceRoot":"","sources":["../../src/services/goals.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"heartbeat-run-summary.d.ts","sourceRoot":"","sources":["../../src/services/heartbeat-run-summary.ts"],"names":[],"mappings":"AASA,wBAAgB,+BAA+B,CAC7C,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,GACrD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAuBhC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
function truncateSummaryText(value, maxLength = 500) {
|
|
2
|
+
if (typeof value !== "string")
|
|
3
|
+
return null;
|
|
4
|
+
return value.length > maxLength ? value.slice(0, maxLength) : value;
|
|
5
|
+
}
|
|
6
|
+
function readNumericField(record, key) {
|
|
7
|
+
return key in record ? record[key] ?? null : undefined;
|
|
8
|
+
}
|
|
9
|
+
export function summarizeHeartbeatRunResultJson(resultJson) {
|
|
10
|
+
if (!resultJson || typeof resultJson !== "object" || Array.isArray(resultJson)) {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
const summary = {};
|
|
14
|
+
const textFields = ["summary", "result", "message", "error"];
|
|
15
|
+
for (const key of textFields) {
|
|
16
|
+
const value = truncateSummaryText(resultJson[key]);
|
|
17
|
+
if (value !== null) {
|
|
18
|
+
summary[key] = value;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
const numericFieldAliases = ["total_cost_usd", "cost_usd", "costUsd"];
|
|
22
|
+
for (const key of numericFieldAliases) {
|
|
23
|
+
const value = readNumericField(resultJson, key);
|
|
24
|
+
if (value !== undefined && value !== null) {
|
|
25
|
+
summary[key] = value;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
return Object.keys(summary).length > 0 ? summary : null;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=heartbeat-run-summary.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"heartbeat-run-summary.js","sourceRoot":"","sources":["../../src/services/heartbeat-run-summary.ts"],"names":[],"mappings":"AAAA,SAAS,mBAAmB,CAAC,KAAc,EAAE,SAAS,GAAG,GAAG;IAC1D,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3C,OAAO,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACtE,CAAC;AAED,SAAS,gBAAgB,CAAC,MAA+B,EAAE,GAAW;IACpE,OAAO,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,UAAsD;IAEtD,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAA4B,EAAE,CAAC;IAC5C,MAAM,UAAU,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAU,CAAC;IACtE,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,mBAAmB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;QACnD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACvB,CAAC;IACH,CAAC;IAED,MAAM,mBAAmB,GAAG,CAAC,gBAAgB,EAAE,UAAU,EAAE,SAAS,CAAU,CAAC;IAC/E,KAAK,MAAM,GAAG,IAAI,mBAAmB,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QAChD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACvB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1D,CAAC"}
|