@tickernelz/paperclip-pro-server 2026.928.5 → 2026.928.6
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 +133 -53
- package/dist/routes/openapi.js.map +1 -1
- package/dist/routes/paperclip-mcp.d.ts.map +1 -1
- package/dist/routes/paperclip-mcp.js +15 -0
- package/dist/routes/paperclip-mcp.js.map +1 -1
- package/package.json +21 -21
- package/ui-dist/assets/{Agents.production-Ou10IBgG.js → Agents.production-C3HZ3WkH.js} +2 -2
- package/ui-dist/assets/{CompanyActivity.production-dbz2o26S.js → CompanyActivity.production-4aA8pwxB.js} +1 -1
- package/ui-dist/assets/{CompanyExport-VHEmaNC_.js → CompanyExport-CblRC_yJ.js} +1 -1
- package/ui-dist/assets/{CompanySkills.production-DuSUb8DQ.js → CompanySkills.production-AZTd440C.js} +1 -1
- package/ui-dist/assets/{Costs.production-BRz8Rn3s.js → Costs.production-QhFTCjhh.js} +1 -1
- package/ui-dist/assets/{OrgChart.production-Dgq5pMMa.js → OrgChart.production-BUtNNhCY.js} +1 -1
- package/ui-dist/assets/{RoutineDetail.production-B2lkeY8y.js → RoutineDetail.production-Bi5ZoMXD.js} +1 -1
- package/ui-dist/assets/{Routines.production-CGNSsZDr.js → Routines.production-Ck_OcEg_.js} +1 -1
- package/ui-dist/assets/{definition-D6jTm4Mv.js → definition-BsNVlrmu.js} +1 -1
- package/ui-dist/assets/{index-DGStZYMS.js → index-b6Jdkq01.js} +4 -4
- package/ui-dist/index.html +1 -1
- package/ui-dist/sw.js +1 -1
package/dist/build-info.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/routes/openapi.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/routes/openapi.ts"],"names":[],"mappings":"AA+2WA,wBAAgB,oBAAoB,IAAI,GAAG,CAY1C;AAED,eAAO,MAAM,gBAAgB,6BAAuB,CAAC;AAErD,wBAAgB,aAAa,+CAM5B"}
|
package/dist/routes/openapi.js
CHANGED
|
@@ -2,7 +2,7 @@ import { experimentalApiMetadata } from "./experimental-api-metadata.js";
|
|
|
2
2
|
import { experimentalApiPaths, experimentalApiQueries, } from "./experimental-api-paths.js";
|
|
3
3
|
import { Router } from "express";
|
|
4
4
|
import { z } from "zod";
|
|
5
|
-
import { createAiConnectionSchema, localAiConnectionSchema, localAiLoginStartSchema, emailEndpointSetupSchema, emailConnectionSchema, emailSendSchema, slackToolCallSchema, slackSearchConfigSchema,
|
|
5
|
+
import { createAiConnectionSchema, ENVIRONMENT_DRIVERS, ENVIRONMENT_LEASE_STATUSES, ENVIRONMENT_STATUSES, FEEDBACK_TARGET_TYPES, FEEDBACK_TRACE_STATUSES, FEEDBACK_VOTE_VALUES, PLUGIN_JOB_STATUSES, PLUGIN_STATUSES, TOOL_ACTION_REQUEST_STATUSES, catalogSkillListQuerySchema, catalogTeamListQuerySchema, localAiConnectionSchema, localAiLoginStartSchema, emailEndpointSetupSchema, emailConnectionSchema, emailSendSchema, slackToolCallSchema, slackSearchConfigSchema,
|
|
6
6
|
// Agent
|
|
7
7
|
AGENT_PALETTE_IDS, AGENT_AVATAR_SIZES, CHARACTER_STATES, agentAppearanceSchema, createAgentSchema, createAgentHireSchema, updateAgentSchema, updateAgentPermissionsSchema, agentAdapterConfigBatchPreviewSchema, agentAdapterConfigBatchUpdateSchema, updateAgentInstructionsPathSchema, updateAgentInstructionsBundleSchema, upsertAgentInstructionsFileSchema, createAgentKeySchema, builtInAgentEmptyMutationSchema, builtInAgentProvisionSchema, generateSummarySlotSchema, writeSummarySlotSchema, createStatusCardSchema, patchStatusCardSchema, refreshStatusCardSchema, writeStatusCardQuerySchema, writeStatusCardSummarySchema, wakeAgentSchema, resetAgentSessionSchema, agentSkillSyncSchema, testAdapterEnvironmentSchema, agentMineInboxQuerySchema,
|
|
8
8
|
// Issue
|
|
@@ -294,6 +294,22 @@ class OpenAPIRegistry {
|
|
|
294
294
|
registerPath(pathRegistration) {
|
|
295
295
|
this.paths.push(pathRegistration);
|
|
296
296
|
}
|
|
297
|
+
declareQuery(method, path, query) {
|
|
298
|
+
const matches = this.paths.filter((entry) => entry.method === method && entry.path === path);
|
|
299
|
+
if (matches.length !== 1) {
|
|
300
|
+
throw new Error(`declareQuery expected one ${method.toUpperCase()} ${path}, found ${matches.length}`);
|
|
301
|
+
}
|
|
302
|
+
const entry = matches[0];
|
|
303
|
+
const existing = entry.request?.query ? unwrapSchema(entry.request.query) : null;
|
|
304
|
+
const shape = existing && zodTypeName(existing) === "object"
|
|
305
|
+
? zodDef(existing).shape
|
|
306
|
+
: {};
|
|
307
|
+
const overlap = Object.keys(query.shape).filter((name) => name in shape);
|
|
308
|
+
if (overlap.length > 0) {
|
|
309
|
+
throw new Error(`declareQuery ${method.toUpperCase()} ${path} redeclares ${overlap.join(", ")}`);
|
|
310
|
+
}
|
|
311
|
+
entry.request = { ...entry.request, query: z.object({ ...shape, ...query.shape }) };
|
|
312
|
+
}
|
|
297
313
|
buildPaths() {
|
|
298
314
|
const paths = {};
|
|
299
315
|
for (const { method, path, request, responses, ...operation } of this
|
|
@@ -8833,58 +8849,6 @@ registerCurrentRoute({
|
|
|
8833
8849
|
summary: "Update a document annotation thread",
|
|
8834
8850
|
body: updateDocumentAnnotationThreadSchema,
|
|
8835
8851
|
});
|
|
8836
|
-
for (const route of [
|
|
8837
|
-
[
|
|
8838
|
-
"get",
|
|
8839
|
-
"/api/routines/{id}/description/annotations",
|
|
8840
|
-
"List routine description annotation threads",
|
|
8841
|
-
],
|
|
8842
|
-
[
|
|
8843
|
-
"get",
|
|
8844
|
-
"/api/routines/{id}/description/annotations/{threadId}",
|
|
8845
|
-
"Get a routine description annotation thread",
|
|
8846
|
-
],
|
|
8847
|
-
]) {
|
|
8848
|
-
registerCurrentRoute({
|
|
8849
|
-
method: route[0],
|
|
8850
|
-
path: route[1],
|
|
8851
|
-
tags: ["routines"],
|
|
8852
|
-
summary: route[2],
|
|
8853
|
-
});
|
|
8854
|
-
}
|
|
8855
|
-
registerCurrentRoute({
|
|
8856
|
-
method: "post",
|
|
8857
|
-
path: "/api/routines/{id}/description/annotations",
|
|
8858
|
-
tags: ["routines"],
|
|
8859
|
-
summary: "Create a routine description annotation thread",
|
|
8860
|
-
body: createDocumentAnnotationThreadSchema,
|
|
8861
|
-
responses: {
|
|
8862
|
-
201: r.ok(),
|
|
8863
|
-
400: r.badRequest,
|
|
8864
|
-
401: r.unauthorized,
|
|
8865
|
-
404: r.notFound,
|
|
8866
|
-
},
|
|
8867
|
-
});
|
|
8868
|
-
registerCurrentRoute({
|
|
8869
|
-
method: "post",
|
|
8870
|
-
path: "/api/routines/{id}/description/annotations/{threadId}/comments",
|
|
8871
|
-
tags: ["routines"],
|
|
8872
|
-
summary: "Add a routine description annotation comment",
|
|
8873
|
-
body: createDocumentAnnotationCommentSchema,
|
|
8874
|
-
responses: {
|
|
8875
|
-
201: r.ok(),
|
|
8876
|
-
400: r.badRequest,
|
|
8877
|
-
401: r.unauthorized,
|
|
8878
|
-
404: r.notFound,
|
|
8879
|
-
},
|
|
8880
|
-
});
|
|
8881
|
-
registerCurrentRoute({
|
|
8882
|
-
method: "patch",
|
|
8883
|
-
path: "/api/routines/{id}/description/annotations/{threadId}",
|
|
8884
|
-
tags: ["routines"],
|
|
8885
|
-
summary: "Update a routine description annotation thread",
|
|
8886
|
-
body: updateDocumentAnnotationThreadSchema,
|
|
8887
|
-
});
|
|
8888
8852
|
registerCurrentRoute({
|
|
8889
8853
|
method: "get",
|
|
8890
8854
|
path: "/api/issues/{id}/diagnostics/blockers",
|
|
@@ -10201,6 +10165,122 @@ for (const [method, path, body] of experimentalApiPaths) {
|
|
|
10201
10165
|
},
|
|
10202
10166
|
});
|
|
10203
10167
|
}
|
|
10168
|
+
const queryFlag = z.boolean();
|
|
10169
|
+
const annotationListQuery = z.object({
|
|
10170
|
+
status: z.enum(["open", "resolved", "all"]).optional(),
|
|
10171
|
+
includeComments: queryFlag.optional(),
|
|
10172
|
+
});
|
|
10173
|
+
const catalogRefQuery = z.object({
|
|
10174
|
+
ref: z.string().optional(),
|
|
10175
|
+
});
|
|
10176
|
+
const feedbackTraceQuery = {
|
|
10177
|
+
targetType: z.enum(FEEDBACK_TARGET_TYPES).optional(),
|
|
10178
|
+
vote: z.enum(FEEDBACK_VOTE_VALUES).optional(),
|
|
10179
|
+
status: z.enum(FEEDBACK_TRACE_STATUSES).optional(),
|
|
10180
|
+
from: z.string().optional(),
|
|
10181
|
+
to: z.string().optional(),
|
|
10182
|
+
sharedOnly: queryFlag.optional(),
|
|
10183
|
+
includePayload: queryFlag.optional(),
|
|
10184
|
+
};
|
|
10185
|
+
const runLogQuery = z.object({
|
|
10186
|
+
offset: z.coerce.number().int().min(0).optional(),
|
|
10187
|
+
limitBytes: z.coerce.number().int().min(1).max(1024 * 1024).optional(),
|
|
10188
|
+
});
|
|
10189
|
+
for (const [method, path, query] of [
|
|
10190
|
+
["get", "/api/companies/{companyId}/activity", z.object({
|
|
10191
|
+
agentId: z.string().optional(),
|
|
10192
|
+
entityType: z.string().optional(),
|
|
10193
|
+
entityId: z.string().optional(),
|
|
10194
|
+
limit: z.coerce.number().int().min(1).max(500).optional(),
|
|
10195
|
+
})],
|
|
10196
|
+
["get", "/api/companies/{companyId}/audit/agent-actions", z.object({
|
|
10197
|
+
actorScope: z.enum(["agents", "all"]).optional(),
|
|
10198
|
+
})],
|
|
10199
|
+
["get", "/api/agents/{id}/instructions-bundle/file", z.object({ path: z.string().min(1) })],
|
|
10200
|
+
["delete", "/api/agents/{id}/instructions-bundle/file", z.object({ path: z.string().min(1) })],
|
|
10201
|
+
["get", "/api/companies/{companyId}/heartbeat-runs", z.object({
|
|
10202
|
+
agentId: z.string().optional(),
|
|
10203
|
+
limit: z.coerce.number().int().min(1).max(1000).optional(),
|
|
10204
|
+
summary: queryFlag.optional(),
|
|
10205
|
+
})],
|
|
10206
|
+
["get", "/api/companies/{companyId}/provider-traces", z.object({
|
|
10207
|
+
runIds: z.string().optional(),
|
|
10208
|
+
})],
|
|
10209
|
+
["get", "/api/companies/{companyId}/live-runs", z.object({
|
|
10210
|
+
limit: z.coerce.number().int().min(1).max(50).optional(),
|
|
10211
|
+
minCount: z.coerce.number().int().min(0).max(50).optional(),
|
|
10212
|
+
})],
|
|
10213
|
+
["get", "/api/heartbeat-runs/{runId}/log", runLogQuery],
|
|
10214
|
+
["get", "/api/workspace-operations/{operationId}/log", runLogQuery],
|
|
10215
|
+
["get", "/api/cases/{id}/documents/{key}/annotations", annotationListQuery],
|
|
10216
|
+
["get", "/api/issues/{id}/documents/{key}/annotations", annotationListQuery],
|
|
10217
|
+
["get", "/api/routines/{id}/description/annotations", annotationListQuery],
|
|
10218
|
+
["get", "/api/companies/{companyId}/feedback-traces", z.object({
|
|
10219
|
+
...feedbackTraceQuery,
|
|
10220
|
+
issueId: z.string().optional(),
|
|
10221
|
+
projectId: z.string().optional(),
|
|
10222
|
+
})],
|
|
10223
|
+
["get", "/api/issues/{id}/feedback-traces", z.object(feedbackTraceQuery)],
|
|
10224
|
+
["get", "/api/feedback-traces/{traceId}", z.object({
|
|
10225
|
+
includePayload: queryFlag.optional(),
|
|
10226
|
+
})],
|
|
10227
|
+
["get", "/api/skills/catalog", catalogSkillListQuerySchema],
|
|
10228
|
+
["get", "/api/skills/catalog/{catalogId}", catalogRefQuery],
|
|
10229
|
+
["get", "/api/teams/catalog", catalogTeamListQuerySchema],
|
|
10230
|
+
["get", "/api/teams/catalog/{catalogId}", catalogRefQuery],
|
|
10231
|
+
["post", "/api/companies/{companyId}/teams/catalog/{catalogId}/preview", catalogRefQuery],
|
|
10232
|
+
["post", "/api/companies/{companyId}/teams/catalog/{catalogId}/install", catalogRefQuery],
|
|
10233
|
+
["get", "/api/issues/{id}/cost-summary", z.object({ excludeRoot: queryFlag.optional() })],
|
|
10234
|
+
["get", "/api/companies/{companyId}/environments", z.object({
|
|
10235
|
+
driver: z.enum(ENVIRONMENT_DRIVERS).optional(),
|
|
10236
|
+
status: z.enum(ENVIRONMENT_STATUSES).optional(),
|
|
10237
|
+
})],
|
|
10238
|
+
["get", "/api/environments/{id}/leases", z.object({ status: z.enum(ENVIRONMENT_LEASE_STATUSES).optional() })],
|
|
10239
|
+
["delete", "/api/environments/{id}", z.object({ destroyReusableSandboxLeases: queryFlag.optional() })],
|
|
10240
|
+
["get", "/api/companies/{companyId}/execution-workspaces", z.object({
|
|
10241
|
+
projectId: z.string().optional(),
|
|
10242
|
+
projectWorkspaceId: z.string().optional(),
|
|
10243
|
+
issueId: z.string().optional(),
|
|
10244
|
+
status: z.string().optional(),
|
|
10245
|
+
reuseEligible: queryFlag.optional(),
|
|
10246
|
+
summary: queryFlag.optional(),
|
|
10247
|
+
})],
|
|
10248
|
+
["get", "/api/issues/{id}/tree-holds", z.object({
|
|
10249
|
+
status: z.enum(["active", "released"]).optional(),
|
|
10250
|
+
mode: z.enum(["pause", "resume", "cancel", "restore"]).optional(),
|
|
10251
|
+
includeMembers: queryFlag.optional(),
|
|
10252
|
+
})],
|
|
10253
|
+
["delete", "/api/issues/{id}/comments/{commentId}", z.object({
|
|
10254
|
+
mode: z.enum(["delete", "cancel"]).optional(),
|
|
10255
|
+
})],
|
|
10256
|
+
["get", "/api/plugins", z.object({ status: z.enum(PLUGIN_STATUSES).optional() })],
|
|
10257
|
+
["get", "/api/plugins/tools", z.object({ pluginId: z.string().optional() })],
|
|
10258
|
+
["delete", "/api/plugins/{pluginId}", z.object({ purge: queryFlag.optional() })],
|
|
10259
|
+
["get", "/api/plugins/{pluginId}/logs", z.object({
|
|
10260
|
+
level: z.string().optional(),
|
|
10261
|
+
since: z.string().optional(),
|
|
10262
|
+
limit: z.coerce.number().int().min(1).max(500).optional(),
|
|
10263
|
+
})],
|
|
10264
|
+
["get", "/api/plugins/{pluginId}/jobs", z.object({ status: z.enum(PLUGIN_JOB_STATUSES).optional() })],
|
|
10265
|
+
["get", "/api/plugins/{pluginId}/jobs/{jobId}/runs", z.object({
|
|
10266
|
+
limit: z.coerce.number().int().min(1).max(500).optional(),
|
|
10267
|
+
})],
|
|
10268
|
+
["get", "/api/companies/{companyId}/routines", z.object({ projectId: z.string().optional() })],
|
|
10269
|
+
["get", "/api/routines/{id}/runs", z.object({
|
|
10270
|
+
limit: z.coerce.number().int().min(1).optional(),
|
|
10271
|
+
})],
|
|
10272
|
+
["get", "/api/companies/{companyId}/tools/apps/{galleryKey}/preflight", z.object({ methodKey: z.string().optional() })],
|
|
10273
|
+
["get", "/api/companies/{companyId}/tools/action-requests", z.object({
|
|
10274
|
+
status: z.enum(TOOL_ACTION_REQUEST_STATUSES).optional(),
|
|
10275
|
+
})],
|
|
10276
|
+
["get", "/api/tool-connections/{connectionId}/usage", z.object({ range: z.enum(["7d", "30d"]).optional() })],
|
|
10277
|
+
["get", "/api/tool-connections/{connectionId}/activity", z.object({
|
|
10278
|
+
limit: z.coerce.number().int().min(1).optional(),
|
|
10279
|
+
})],
|
|
10280
|
+
["get", "/api/tool-gateway/audit", z.object({ gateway: z.string().optional() })],
|
|
10281
|
+
]) {
|
|
10282
|
+
registry.declareQuery(method, path, query);
|
|
10283
|
+
}
|
|
10204
10284
|
// ─── Spec builder ─────────────────────────────────────────────────────────────
|
|
10205
10285
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
10206
10286
|
export function buildOpenApiDocument() {
|