@withpica/mcp-server 2.11.0 → 2.23.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/CHANGELOG.md +639 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +3 -2
- package/dist/config.js.map +1 -1
- package/dist/prompts/index.d.ts +48 -16
- package/dist/prompts/index.d.ts.map +1 -1
- package/dist/prompts/index.js +320 -607
- package/dist/prompts/index.js.map +1 -1
- package/dist/tools/agreement-types.d.ts.map +1 -1
- package/dist/tools/agreement-types.js +14 -129
- package/dist/tools/agreement-types.js.map +1 -1
- package/dist/tools/agreements.d.ts.map +1 -1
- package/dist/tools/agreements.js +11 -109
- package/dist/tools/agreements.js.map +1 -1
- package/dist/tools/assets.d.ts.map +1 -1
- package/dist/tools/assets.js +17 -257
- package/dist/tools/assets.js.map +1 -1
- package/dist/tools/audit.d.ts +19 -0
- package/dist/tools/audit.d.ts.map +1 -0
- package/dist/tools/audit.js +57 -0
- package/dist/tools/audit.js.map +1 -0
- package/dist/tools/bulk.d.ts +7 -1
- package/dist/tools/bulk.d.ts.map +1 -1
- package/dist/tools/bulk.js +24 -2
- package/dist/tools/bulk.js.map +1 -1
- package/dist/tools/credits.d.ts.map +1 -1
- package/dist/tools/credits.js +27 -13
- package/dist/tools/credits.js.map +1 -1
- package/dist/tools/discovery.d.ts.map +1 -1
- package/dist/tools/discovery.js +25 -0
- package/dist/tools/discovery.js.map +1 -1
- package/dist/tools/enrichment.d.ts +47 -0
- package/dist/tools/enrichment.d.ts.map +1 -1
- package/dist/tools/enrichment.js +416 -19
- package/dist/tools/enrichment.js.map +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +17 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/labels.d.ts +20 -0
- package/dist/tools/labels.d.ts.map +1 -0
- package/dist/tools/labels.js +47 -0
- package/dist/tools/labels.js.map +1 -0
- package/dist/tools/metadata.d.ts.map +1 -1
- package/dist/tools/metadata.js +93 -0
- package/dist/tools/metadata.js.map +1 -1
- package/dist/tools/multimedia.d.ts.map +1 -1
- package/dist/tools/multimedia.js +86 -11
- package/dist/tools/multimedia.js.map +1 -1
- package/dist/tools/notes.d.ts.map +1 -1
- package/dist/tools/notes.js +4 -1
- package/dist/tools/notes.js.map +1 -1
- package/dist/tools/people.d.ts +228 -4
- package/dist/tools/people.d.ts.map +1 -1
- package/dist/tools/people.js +238 -262
- package/dist/tools/people.js.map +1 -1
- package/dist/tools/projects.d.ts +1 -0
- package/dist/tools/projects.d.ts.map +1 -1
- package/dist/tools/projects.js +188 -17
- package/dist/tools/projects.js.map +1 -1
- package/dist/tools/publishers.d.ts +15 -1
- package/dist/tools/publishers.d.ts.map +1 -1
- package/dist/tools/publishers.js +43 -9
- package/dist/tools/publishers.js.map +1 -1
- package/dist/tools/recordings.d.ts +53 -2
- package/dist/tools/recordings.d.ts.map +1 -1
- package/dist/tools/recordings.js +185 -122
- package/dist/tools/recordings.js.map +1 -1
- package/dist/tools/recovery-hints.d.ts.map +1 -1
- package/dist/tools/recovery-hints.js +49 -0
- package/dist/tools/recovery-hints.js.map +1 -1
- package/dist/tools/releases.d.ts +19 -1
- package/dist/tools/releases.d.ts.map +1 -1
- package/dist/tools/releases.js +538 -32
- package/dist/tools/releases.js.map +1 -1
- package/dist/tools/sessions.d.ts.map +1 -1
- package/dist/tools/sessions.js +42 -8
- package/dist/tools/sessions.js.map +1 -1
- package/dist/tools/settings.d.ts +4 -0
- package/dist/tools/settings.d.ts.map +1 -1
- package/dist/tools/settings.js +155 -1
- package/dist/tools/settings.js.map +1 -1
- package/dist/tools/share-links.d.ts.map +1 -1
- package/dist/tools/share-links.js +19 -53
- package/dist/tools/share-links.js.map +1 -1
- package/dist/tools/split-sheets.d.ts.map +1 -1
- package/dist/tools/split-sheets.js +3 -42
- package/dist/tools/split-sheets.js.map +1 -1
- package/dist/tools/team.d.ts.map +1 -1
- package/dist/tools/team.js +9 -4
- package/dist/tools/team.js.map +1 -1
- package/dist/tools/works.d.ts +27 -1
- package/dist/tools/works.d.ts.map +1 -1
- package/dist/tools/works.js +119 -219
- package/dist/tools/works.js.map +1 -1
- package/package.json +3 -2
- package/server.json +2 -2
package/dist/tools/assets.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// Copyright (c) 2024-2026 Withpica Ltd. All rights reserved.
|
|
2
|
-
import { formatAsText, formatSuccess, formatStructuredList, } from "@withpica/mcp-utils";
|
|
2
|
+
import { formatAsText, formatSuccess, formatStructuredList, PHYSICAL_ASSETS_WRITE_PROPERTIES, PHYSICAL_ASSETS_CREATE_REQUIRED, PHYSICAL_ASSETS_UPDATE_REQUIRED, } from "@withpica/mcp-utils";
|
|
3
3
|
export class AssetsTools {
|
|
4
4
|
pica;
|
|
5
5
|
constructor(pica) {
|
|
@@ -56,156 +56,17 @@ export class AssetsTools {
|
|
|
56
56
|
{
|
|
57
57
|
definition: {
|
|
58
58
|
name: "pica_physical_assets_create",
|
|
59
|
-
description: "Register a new physical asset — instrument,
|
|
60
|
-
"
|
|
61
|
-
"
|
|
62
|
-
"
|
|
59
|
+
description: "Register a new physical asset — instrument, equipment, software, " +
|
|
60
|
+
"studio space, or other (matches the physical_assets_asset_type_check " +
|
|
61
|
+
"DB constraint). Tracks identity, condition, acquisition, photos, and " +
|
|
62
|
+
"status as real columns. Valuation and insurance details belong inside " +
|
|
63
|
+
"`external_references` jsonb (see key enumeration on that field). " +
|
|
64
|
+
"Pair with pica_upload (accept: 'image') to capture photo evidence via " +
|
|
65
|
+
"a drop zone.",
|
|
63
66
|
inputSchema: {
|
|
64
67
|
type: "object",
|
|
65
|
-
properties:
|
|
66
|
-
|
|
67
|
-
name: {
|
|
68
|
-
type: "string",
|
|
69
|
-
description: "Asset name (e.g. 'Fender Stratocaster 1962')",
|
|
70
|
-
},
|
|
71
|
-
asset_type: {
|
|
72
|
-
type: "string",
|
|
73
|
-
description: "Asset type (required). Valid values: instrument, amplifier, studio_equipment, software_license, other",
|
|
74
|
-
},
|
|
75
|
-
category: {
|
|
76
|
-
type: "string",
|
|
77
|
-
description: "Free-text subcategory (e.g. 'guitar', 'keyboard', 'microphone', 'daw', 'plugin')",
|
|
78
|
-
},
|
|
79
|
-
make: {
|
|
80
|
-
type: "string",
|
|
81
|
-
description: "Manufacturer (e.g. 'Fender', 'Neumann')",
|
|
82
|
-
},
|
|
83
|
-
model: {
|
|
84
|
-
type: "string",
|
|
85
|
-
description: "Model name (e.g. 'Stratocaster', 'U87')",
|
|
86
|
-
},
|
|
87
|
-
year: {
|
|
88
|
-
type: "number",
|
|
89
|
-
description: "Year of manufacture",
|
|
90
|
-
},
|
|
91
|
-
serial_number: {
|
|
92
|
-
type: "string",
|
|
93
|
-
description: "Serial number if available",
|
|
94
|
-
},
|
|
95
|
-
color: {
|
|
96
|
-
type: "string",
|
|
97
|
-
description: "Colour/finish",
|
|
98
|
-
},
|
|
99
|
-
description: {
|
|
100
|
-
type: "string",
|
|
101
|
-
description: "Freeform description",
|
|
102
|
-
},
|
|
103
|
-
// ── Condition ──
|
|
104
|
-
condition: {
|
|
105
|
-
type: "string",
|
|
106
|
-
description: "Condition. Valid values: mint, excellent, very_good, good, fair, poor",
|
|
107
|
-
},
|
|
108
|
-
condition_notes: {
|
|
109
|
-
type: "string",
|
|
110
|
-
description: "Notes about the condition",
|
|
111
|
-
},
|
|
112
|
-
// ── Acquisition ──
|
|
113
|
-
acquired_at: {
|
|
114
|
-
type: "string",
|
|
115
|
-
description: "Acquisition date (YYYY-MM-DD)",
|
|
116
|
-
},
|
|
117
|
-
acquisition_method: {
|
|
118
|
-
type: "string",
|
|
119
|
-
description: "How acquired. Valid values: purchased, gift, inherited, trade, rental, unknown",
|
|
120
|
-
},
|
|
121
|
-
acquisition_vendor: {
|
|
122
|
-
type: "string",
|
|
123
|
-
description: "Where it was bought (e.g. 'Denmark Street Music')",
|
|
124
|
-
},
|
|
125
|
-
acquisition_price: {
|
|
126
|
-
type: "number",
|
|
127
|
-
description: "Original purchase/acquisition price",
|
|
128
|
-
},
|
|
129
|
-
acquisition_currency: {
|
|
130
|
-
type: "string",
|
|
131
|
-
description: "Currency code for acquisition price (default: GBP)",
|
|
132
|
-
},
|
|
133
|
-
// ── Valuation ──
|
|
134
|
-
current_valuation: {
|
|
135
|
-
type: "number",
|
|
136
|
-
description: "Estimated current value",
|
|
137
|
-
},
|
|
138
|
-
valuation_currency: {
|
|
139
|
-
type: "string",
|
|
140
|
-
description: "Currency code for current valuation (default: GBP)",
|
|
141
|
-
},
|
|
142
|
-
valuation_source: {
|
|
143
|
-
type: "string",
|
|
144
|
-
description: "Source of valuation. Valid values: reverb_price_guide, blue_book, ebay_sold, manual, appraiser",
|
|
145
|
-
},
|
|
146
|
-
valuation_date: {
|
|
147
|
-
type: "string",
|
|
148
|
-
description: "Date of valuation (YYYY-MM-DD)",
|
|
149
|
-
},
|
|
150
|
-
valuation_notes: {
|
|
151
|
-
type: "string",
|
|
152
|
-
description: "Notes about the valuation",
|
|
153
|
-
},
|
|
154
|
-
reverb_listing_url: {
|
|
155
|
-
type: "string",
|
|
156
|
-
description: "Reverb listing URL for price reference",
|
|
157
|
-
},
|
|
158
|
-
ebay_item_url: {
|
|
159
|
-
type: "string",
|
|
160
|
-
description: "eBay item URL for price reference",
|
|
161
|
-
},
|
|
162
|
-
// ── Photos ──
|
|
163
|
-
photos: {
|
|
164
|
-
type: "array",
|
|
165
|
-
description: "Array of photo objects. Each: { url, uploaded_at, mime_type, size }",
|
|
166
|
-
items: {
|
|
167
|
-
type: "object",
|
|
168
|
-
additionalProperties: true,
|
|
169
|
-
},
|
|
170
|
-
},
|
|
171
|
-
primary_photo_url: {
|
|
172
|
-
type: "string",
|
|
173
|
-
description: "URL of the primary photo to display",
|
|
174
|
-
},
|
|
175
|
-
// ── Status + Insurance ──
|
|
176
|
-
status: {
|
|
177
|
-
type: "string",
|
|
178
|
-
description: "Asset status. Valid values: active, sold, lost, stolen, disposed (default: active)",
|
|
179
|
-
},
|
|
180
|
-
insured: {
|
|
181
|
-
type: "boolean",
|
|
182
|
-
description: "Whether the asset is insured",
|
|
183
|
-
},
|
|
184
|
-
insurance_provider: {
|
|
185
|
-
type: "string",
|
|
186
|
-
description: "Insurance company name",
|
|
187
|
-
},
|
|
188
|
-
insurance_policy_number: {
|
|
189
|
-
type: "string",
|
|
190
|
-
description: "Insurance policy number",
|
|
191
|
-
},
|
|
192
|
-
insurance_coverage: {
|
|
193
|
-
type: "number",
|
|
194
|
-
description: "Insured coverage amount",
|
|
195
|
-
},
|
|
196
|
-
// ── Meta ──
|
|
197
|
-
notes: {
|
|
198
|
-
type: "string",
|
|
199
|
-
description: "General notes about the asset",
|
|
200
|
-
},
|
|
201
|
-
tags: {
|
|
202
|
-
type: "array",
|
|
203
|
-
description: "Freeform tags for organising assets",
|
|
204
|
-
items: { type: "string" },
|
|
205
|
-
},
|
|
206
|
-
},
|
|
207
|
-
required: ["name", "asset_type"],
|
|
208
|
-
additionalProperties: true,
|
|
68
|
+
properties: PHYSICAL_ASSETS_WRITE_PROPERTIES,
|
|
69
|
+
required: [...PHYSICAL_ASSETS_CREATE_REQUIRED],
|
|
209
70
|
},
|
|
210
71
|
},
|
|
211
72
|
executor: this.createAsset.bind(this),
|
|
@@ -213,120 +74,19 @@ export class AssetsTools {
|
|
|
213
74
|
{
|
|
214
75
|
definition: {
|
|
215
76
|
name: "pica_physical_assets_update",
|
|
216
|
-
description: "Update a physical asset
|
|
217
|
-
"
|
|
77
|
+
description: "Update a physical asset. All create fields are optional on update; " +
|
|
78
|
+
"`id` is required. Valuation and insurance changes go through " +
|
|
79
|
+
"`external_references` (current_valuation, valuation_source, " +
|
|
80
|
+
"reverb_listing_url, insurer, insured_value, etc.) — there is no " +
|
|
81
|
+
"top-level valuation column on physical_assets. Pair with pica_upload " +
|
|
218
82
|
"(accept: 'image') to add more photo evidence.",
|
|
219
83
|
inputSchema: {
|
|
220
84
|
type: "object",
|
|
221
85
|
properties: {
|
|
222
86
|
id: { type: "string", description: "Asset ID" },
|
|
223
|
-
|
|
224
|
-
name: { type: "string", description: "Asset name" },
|
|
225
|
-
asset_type: {
|
|
226
|
-
type: "string",
|
|
227
|
-
description: "Asset type. Valid values: instrument, amplifier, studio_equipment, software_license, other",
|
|
228
|
-
},
|
|
229
|
-
category: {
|
|
230
|
-
type: "string",
|
|
231
|
-
description: "Free-text subcategory",
|
|
232
|
-
},
|
|
233
|
-
make: { type: "string", description: "Manufacturer" },
|
|
234
|
-
model: { type: "string", description: "Model name" },
|
|
235
|
-
year: { type: "number", description: "Year of manufacture" },
|
|
236
|
-
serial_number: { type: "string", description: "Serial number" },
|
|
237
|
-
color: { type: "string", description: "Colour/finish" },
|
|
238
|
-
description: {
|
|
239
|
-
type: "string",
|
|
240
|
-
description: "Freeform description",
|
|
241
|
-
},
|
|
242
|
-
condition: {
|
|
243
|
-
type: "string",
|
|
244
|
-
description: "Condition. Valid values: mint, excellent, very_good, good, fair, poor",
|
|
245
|
-
},
|
|
246
|
-
condition_notes: {
|
|
247
|
-
type: "string",
|
|
248
|
-
description: "Notes about condition",
|
|
249
|
-
},
|
|
250
|
-
acquired_at: {
|
|
251
|
-
type: "string",
|
|
252
|
-
description: "Acquisition date (YYYY-MM-DD)",
|
|
253
|
-
},
|
|
254
|
-
acquisition_method: {
|
|
255
|
-
type: "string",
|
|
256
|
-
description: "How acquired. Valid values: purchased, gift, inherited, trade, rental, unknown",
|
|
257
|
-
},
|
|
258
|
-
acquisition_vendor: {
|
|
259
|
-
type: "string",
|
|
260
|
-
description: "Where bought",
|
|
261
|
-
},
|
|
262
|
-
acquisition_price: {
|
|
263
|
-
type: "number",
|
|
264
|
-
description: "Acquisition price",
|
|
265
|
-
},
|
|
266
|
-
acquisition_currency: {
|
|
267
|
-
type: "string",
|
|
268
|
-
description: "Currency code (default: GBP)",
|
|
269
|
-
},
|
|
270
|
-
current_valuation: {
|
|
271
|
-
type: "number",
|
|
272
|
-
description: "Current value",
|
|
273
|
-
},
|
|
274
|
-
valuation_currency: {
|
|
275
|
-
type: "string",
|
|
276
|
-
description: "Currency code (default: GBP)",
|
|
277
|
-
},
|
|
278
|
-
valuation_source: {
|
|
279
|
-
type: "string",
|
|
280
|
-
description: "Source of valuation. Valid values: reverb_price_guide, blue_book, ebay_sold, manual, appraiser",
|
|
281
|
-
},
|
|
282
|
-
valuation_date: {
|
|
283
|
-
type: "string",
|
|
284
|
-
description: "Date of valuation (YYYY-MM-DD)",
|
|
285
|
-
},
|
|
286
|
-
valuation_notes: {
|
|
287
|
-
type: "string",
|
|
288
|
-
description: "Notes about valuation",
|
|
289
|
-
},
|
|
290
|
-
reverb_listing_url: {
|
|
291
|
-
type: "string",
|
|
292
|
-
description: "Reverb listing URL",
|
|
293
|
-
},
|
|
294
|
-
ebay_item_url: { type: "string", description: "eBay item URL" },
|
|
295
|
-
photos: {
|
|
296
|
-
type: "array",
|
|
297
|
-
description: "Array of photo objects. Each: { url, uploaded_at, mime_type, size }",
|
|
298
|
-
items: { type: "object", additionalProperties: true },
|
|
299
|
-
},
|
|
300
|
-
primary_photo_url: {
|
|
301
|
-
type: "string",
|
|
302
|
-
description: "Primary photo URL",
|
|
303
|
-
},
|
|
304
|
-
status: {
|
|
305
|
-
type: "string",
|
|
306
|
-
description: "Asset status. Valid values: active, sold, lost, stolen, disposed",
|
|
307
|
-
},
|
|
308
|
-
insured: { type: "boolean", description: "Whether insured" },
|
|
309
|
-
insurance_provider: {
|
|
310
|
-
type: "string",
|
|
311
|
-
description: "Insurance company",
|
|
312
|
-
},
|
|
313
|
-
insurance_policy_number: {
|
|
314
|
-
type: "string",
|
|
315
|
-
description: "Insurance policy number",
|
|
316
|
-
},
|
|
317
|
-
insurance_coverage: {
|
|
318
|
-
type: "number",
|
|
319
|
-
description: "Coverage amount",
|
|
320
|
-
},
|
|
321
|
-
notes: { type: "string", description: "General notes" },
|
|
322
|
-
tags: {
|
|
323
|
-
type: "array",
|
|
324
|
-
description: "Freeform tags",
|
|
325
|
-
items: { type: "string" },
|
|
326
|
-
},
|
|
87
|
+
...PHYSICAL_ASSETS_WRITE_PROPERTIES,
|
|
327
88
|
},
|
|
328
|
-
required: [
|
|
329
|
-
additionalProperties: true,
|
|
89
|
+
required: [...PHYSICAL_ASSETS_UPDATE_REQUIRED],
|
|
330
90
|
},
|
|
331
91
|
},
|
|
332
92
|
executor: this.updateAsset.bind(this),
|
package/dist/tools/assets.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assets.js","sourceRoot":"","sources":["../../src/tools/assets.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"assets.js","sourceRoot":"","sources":["../../src/tools/assets.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Audit Tools — ADR-154 F6
|
|
3
|
+
*
|
|
4
|
+
* Lets agents read their own recent MCP tool executions from mcp_audit_log.
|
|
5
|
+
* Scoped to the caller's organisation; only mutating + destructive calls
|
|
6
|
+
* are recorded (read tools are not logged by default).
|
|
7
|
+
*/
|
|
8
|
+
import { PicaClient } from "@withpica/mcp-sdk";
|
|
9
|
+
import { ToolDefinition, ToolExecutor } from "@withpica/mcp-utils";
|
|
10
|
+
export declare class AuditTools {
|
|
11
|
+
private pica;
|
|
12
|
+
constructor(pica: PicaClient);
|
|
13
|
+
getTools(): Array<{
|
|
14
|
+
definition: ToolDefinition;
|
|
15
|
+
executor: ToolExecutor;
|
|
16
|
+
}>;
|
|
17
|
+
private listAudit;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=audit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../src/tools/audit.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EACL,cAAc,EACd,YAAY,EAGb,MAAM,qBAAqB,CAAC;AAE7B,qBAAa,UAAU;IACrB,OAAO,CAAC,IAAI,CAAa;gBAEb,IAAI,EAAE,UAAU;IAI5B,QAAQ,IAAI,KAAK,CAAC;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;YA2C3D,SAAS;CAaxB"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
// Copyright (c) 2024-2026 Withpica Ltd. All rights reserved.
|
|
2
|
+
import { formatStructuredList, } from "@withpica/mcp-utils";
|
|
3
|
+
export class AuditTools {
|
|
4
|
+
pica;
|
|
5
|
+
constructor(pica) {
|
|
6
|
+
this.pica = pica;
|
|
7
|
+
}
|
|
8
|
+
getTools() {
|
|
9
|
+
return [
|
|
10
|
+
{
|
|
11
|
+
definition: {
|
|
12
|
+
name: "pica_audit_list",
|
|
13
|
+
description: "List recent MCP tool executions for this workspace. Use to recall what AI actions have been taken — what was created, updated, deleted, or attempted. Only mutating and destructive calls are recorded; read-only queries are not. Scoped to the current organisation.",
|
|
14
|
+
inputSchema: {
|
|
15
|
+
type: "object",
|
|
16
|
+
properties: {
|
|
17
|
+
limit: {
|
|
18
|
+
type: "number",
|
|
19
|
+
description: "Max number of entries to return (default 25, max 100).",
|
|
20
|
+
},
|
|
21
|
+
since: {
|
|
22
|
+
type: "string",
|
|
23
|
+
description: "ISO 8601 timestamp — only return entries created at or after this time (e.g. '2026-04-01T00:00:00Z').",
|
|
24
|
+
},
|
|
25
|
+
tool_name: {
|
|
26
|
+
type: "string",
|
|
27
|
+
description: "Filter to a single tool by exact name (e.g. 'pica_works_create').",
|
|
28
|
+
},
|
|
29
|
+
risk_level: {
|
|
30
|
+
type: "string",
|
|
31
|
+
enum: ["safe", "mutating", "destructive"],
|
|
32
|
+
description: "Filter by risk classification.",
|
|
33
|
+
},
|
|
34
|
+
result_status: {
|
|
35
|
+
type: "string",
|
|
36
|
+
enum: ["success", "error", "confirmation_required"],
|
|
37
|
+
description: "Filter by execution outcome.",
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
executor: this.listAudit.bind(this),
|
|
43
|
+
},
|
|
44
|
+
];
|
|
45
|
+
}
|
|
46
|
+
async listAudit(args) {
|
|
47
|
+
const entries = await this.pica.audit.list({
|
|
48
|
+
limit: typeof args.limit === "number" ? args.limit : undefined,
|
|
49
|
+
since: typeof args.since === "string" ? args.since : undefined,
|
|
50
|
+
tool_name: typeof args.tool_name === "string" ? args.tool_name : undefined,
|
|
51
|
+
risk_level: typeof args.risk_level === "string" ? args.risk_level : undefined,
|
|
52
|
+
result_status: typeof args.result_status === "string" ? args.result_status : undefined,
|
|
53
|
+
});
|
|
54
|
+
return formatStructuredList(entries, "audit_entry");
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=audit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audit.js","sourceRoot":"","sources":["../../src/tools/audit.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAW7D,OAAO,EAIL,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,OAAO,UAAU;IACb,IAAI,CAAa;IAEzB,YAAY,IAAgB;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,QAAQ;QACN,OAAO;YACL;gBACE,UAAU,EAAE;oBACV,IAAI,EAAE,iBAAiB;oBACvB,WAAW,EACT,wQAAwQ;oBAC1Q,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,KAAK,EAAE;gCACL,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,wDAAwD;6BAC3D;4BACD,KAAK,EAAE;gCACL,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,uGAAuG;6BAC1G;4BACD,SAAS,EAAE;gCACT,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,mEAAmE;6BACtE;4BACD,UAAU,EAAE;gCACV,IAAI,EAAE,QAAQ;gCACd,IAAI,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,aAAa,CAAC;gCACzC,WAAW,EAAE,gCAAgC;6BAC9C;4BACD,aAAa,EAAE;gCACb,IAAI,EAAE,QAAQ;gCACd,IAAI,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,uBAAuB,CAAC;gCACnD,WAAW,EAAE,8BAA8B;6BAC5C;yBACF;qBACF;iBACF;gBACD,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;aACpC;SACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,SAAS,CAAC,IAAyB;QAC/C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;YACzC,KAAK,EAAE,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YAC9D,KAAK,EAAE,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YAC9D,SAAS,EACP,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;YACjE,UAAU,EACR,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;YACnE,aAAa,EACX,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;SAC1E,CAAC,CAAC;QACH,OAAO,oBAAoB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IACtD,CAAC;CACF"}
|
package/dist/tools/bulk.d.ts
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Bulk Operations Tools
|
|
2
|
+
* Bulk Operations Tools — MCP tools for batch updates.
|
|
3
|
+
*
|
|
4
|
+
* ADR-174 Phase 2 item 2 follow-up: `pica_works_bulk_update.updates`
|
|
5
|
+
* validates against `WORK_WRITE_PROPERTIES` — the same canonical source
|
|
6
|
+
* of truth that gates `pica_works_update`. Without this, bulk update is
|
|
7
|
+
* the last surface that still accepts any key (the silent-data-loss
|
|
8
|
+
* vector the audit flagged at row 25).
|
|
3
9
|
*/
|
|
4
10
|
import { PicaClient } from "@withpica/mcp-sdk";
|
|
5
11
|
import { ToolDefinition, ToolExecutor } from "./index.js";
|
package/dist/tools/bulk.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bulk.d.ts","sourceRoot":"","sources":["../../src/tools/bulk.ts"],"names":[],"mappings":"AAEA
|
|
1
|
+
{"version":3,"file":"bulk.d.ts","sourceRoot":"","sources":["../../src/tools/bulk.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAc,MAAM,YAAY,CAAC;AAWtE,qBAAa,SAAS;IACpB,OAAO,CAAC,IAAI,CAAa;gBAEb,IAAI,EAAE,UAAU;IAI5B,QAAQ,IAAI,KAAK,CAAC;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;YA+D3D,eAAe;YA8Bf,qBAAqB;CAmBpC"}
|
package/dist/tools/bulk.js
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
// Copyright (c) 2024-2026 Withpica Ltd. All rights reserved.
|
|
2
2
|
import { formatSuccess, formatValidationError } from "@withpica/mcp-utils";
|
|
3
|
+
import { WORK_WRITE_PROPERTIES } from "./works.js";
|
|
4
|
+
/**
|
|
5
|
+
* Set of legal keys for the bulk `updates` object. Mirrors the
|
|
6
|
+
* `pica_works_update` schema exactly — if it's not writable singly,
|
|
7
|
+
* it's not writable in bulk either.
|
|
8
|
+
*/
|
|
9
|
+
const BULK_UPDATE_ALLOWED_KEYS = new Set(Object.keys(WORK_WRITE_PROPERTIES));
|
|
3
10
|
export class BulkTools {
|
|
4
11
|
pica;
|
|
5
12
|
constructor(pica) {
|
|
@@ -10,7 +17,10 @@ export class BulkTools {
|
|
|
10
17
|
{
|
|
11
18
|
definition: {
|
|
12
19
|
name: "pica_works_bulk_update",
|
|
13
|
-
description: "Batch update multiple works at once
|
|
20
|
+
description: "Batch update multiple works at once. The `updates` object validates against the same " +
|
|
21
|
+
"schema as `pica_works_update` — only real `works` columns are accepted. " +
|
|
22
|
+
"Phantom keys (label, upc, album_name, album_art_url, album_release_date, track_number, " +
|
|
23
|
+
"spotify_url) are rejected with the same redirect hints as the single-update tool.",
|
|
14
24
|
inputSchema: {
|
|
15
25
|
type: "object",
|
|
16
26
|
properties: {
|
|
@@ -21,7 +31,9 @@ export class BulkTools {
|
|
|
21
31
|
},
|
|
22
32
|
updates: {
|
|
23
33
|
type: "object",
|
|
24
|
-
description: "Fields to
|
|
34
|
+
description: "Fields to apply to every work in `work_ids`. Same schema as `pica_works_update` " +
|
|
35
|
+
"minus the `id` field. Every key must be a real `works` column.",
|
|
36
|
+
properties: WORK_WRITE_PROPERTIES,
|
|
25
37
|
},
|
|
26
38
|
},
|
|
27
39
|
required: ["work_ids", "updates"],
|
|
@@ -68,6 +80,16 @@ export class BulkTools {
|
|
|
68
80
|
updates: "must contain at least one field",
|
|
69
81
|
});
|
|
70
82
|
}
|
|
83
|
+
// ADR-174 Phase 2 — every key must be a real `works` column. Without
|
|
84
|
+
// this runtime check, an agent could still call the tool with a
|
|
85
|
+
// phantom key (e.g. upc) and the HTTP backstop would 400 per row —
|
|
86
|
+
// wasteful and opaque. Fail fast at the tool boundary instead.
|
|
87
|
+
const invalidKeys = Object.keys(args.updates).filter((k) => !BULK_UPDATE_ALLOWED_KEYS.has(k));
|
|
88
|
+
if (invalidKeys.length > 0) {
|
|
89
|
+
return formatValidationError({
|
|
90
|
+
updates: `unknown field(s): ${invalidKeys.join(", ")}. Allowed fields match pica_works_update: ${[...BULK_UPDATE_ALLOWED_KEYS].sort().join(", ")}`,
|
|
91
|
+
});
|
|
92
|
+
}
|
|
71
93
|
const result = await this.pica.bulk.updateWorks(args.work_ids, args.updates);
|
|
72
94
|
return formatSuccess(`Bulk updated ${args.work_ids.length} works`, result);
|
|
73
95
|
}
|
package/dist/tools/bulk.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bulk.js","sourceRoot":"","sources":["../../src/tools/bulk.ts"],"names":[],"mappings":"AAAA,6DAA6D;
|
|
1
|
+
{"version":3,"file":"bulk.js","sourceRoot":"","sources":["../../src/tools/bulk.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAc7D,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAEnD;;;;GAIG;AACH,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;AAE7E,MAAM,OAAO,SAAS;IACZ,IAAI,CAAa;IAEzB,YAAY,IAAgB;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,QAAQ;QACN,OAAO;YACL;gBACE,UAAU,EAAE;oBACV,IAAI,EAAE,wBAAwB;oBAC9B,WAAW,EACT,uFAAuF;wBACvF,0EAA0E;wBAC1E,yFAAyF;wBACzF,mFAAmF;oBACrF,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,QAAQ,EAAE;gCACR,IAAI,EAAE,OAAO;gCACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gCACzB,WAAW,EAAE,6BAA6B;6BAC3C;4BACD,OAAO,EAAE;gCACP,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,kFAAkF;oCAClF,gEAAgE;gCAClE,UAAU,EAAE,qBAAqB;6BAClC;yBACF;wBACD,QAAQ,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;qBAClC;iBACF;gBACD,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;aAC1C;YACD;gBACE,UAAU,EAAE;oBACV,IAAI,EAAE,+BAA+B;oBACrC,WAAW,EAAE,gDAAgD;oBAC7D,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,UAAU,EAAE;gCACV,IAAI,EAAE,OAAO;gCACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gCACzB,WAAW,EAAE,+BAA+B;6BAC7C;4BACD,MAAM,EAAE;gCACN,IAAI,EAAE,QAAQ;gCACd,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC;gCACvB,WAAW,EAAE,8CAA8C;6BAC5D;4BACD,KAAK,EAAE;gCACL,IAAI,EAAE,OAAO;gCACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gCACzB,WAAW,EACT,gEAAgE;6BACnE;yBACF;wBACD,QAAQ,EAAE,CAAC,YAAY,EAAE,QAAQ,EAAE,OAAO,CAAC;qBAC5C;iBACF;gBACD,QAAQ,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC;aAChD;SACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,IAAyB;QAEzB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;YAC3B,OAAO,qBAAqB,CAAC,EAAE,QAAQ,EAAE,2BAA2B,EAAE,CAAC,CAAC;QAC1E,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5D,OAAO,qBAAqB,CAAC;gBAC3B,OAAO,EAAE,iCAAiC;aAC3C,CAAC,CAAC;QACL,CAAC;QACD,qEAAqE;QACrE,gEAAgE;QAChE,mEAAmE;QACnE,+DAA+D;QAC/D,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAClD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC,CACxC,CAAC;QACF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,OAAO,qBAAqB,CAAC;gBAC3B,OAAO,EAAE,qBAAqB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,6CAA6C,CAAC,GAAG,wBAAwB,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;aACnJ,CAAC,CAAC;QACL,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAC7C,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,OAAO,CACb,CAAC;QACF,OAAO,aAAa,CAAC,gBAAgB,IAAI,CAAC,QAAQ,CAAC,MAAM,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC7E,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,IAAyB;QAEzB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;YAC7B,OAAO,qBAAqB,CAAC,EAAE,UAAU,EAAE,2BAA2B,EAAE,CAAC,CAAC;QAC5E,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;YACxB,OAAO,qBAAqB,CAAC,EAAE,KAAK,EAAE,2BAA2B,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CACnD,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,MAAM,IAAI,KAAK,CACrB,CAAC;QACF,OAAO,aAAa,CAClB,0BAA0B,IAAI,CAAC,UAAU,CAAC,MAAM,SAAS,EACzD,MAAM,CACP,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credits.d.ts","sourceRoot":"","sources":["../../src/tools/credits.ts"],"names":[],"mappings":"AAEA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAc,MAAM,YAAY,CAAC;AActE,qBAAa,YAAY;IACvB,OAAO,CAAC,IAAI,CAAa;gBAEb,IAAI,EAAE,UAAU;IAI5B,QAAQ,IAAI,KAAK,CAAC;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"credits.d.ts","sourceRoot":"","sources":["../../src/tools/credits.ts"],"names":[],"mappings":"AAEA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAc,MAAM,YAAY,CAAC;AActE,qBAAa,YAAY;IACvB,OAAO,CAAC,IAAI,CAAa;gBAEb,IAAI,EAAE,UAAU;IAI5B,QAAQ,IAAI,KAAK,CAAC;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;YAyJ3D,UAAU;YAeV,WAAW;YA2BX,aAAa;CAoM5B"}
|
package/dist/tools/credits.js
CHANGED
|
@@ -43,7 +43,8 @@ export class CreditsTools {
|
|
|
43
43
|
name: "pica_credits_update",
|
|
44
44
|
description: "Set credits on a work. Replaces all existing credits. Splits must total 100%. " +
|
|
45
45
|
"15 roles: writer, composer, arranger, lyricist, producer, performer, engineer, mixer, mastering, owner, vocalist, instrumentalist, conductor, programmer, remixer. " +
|
|
46
|
-
"
|
|
46
|
+
"For publishing credits, pass publisher_id (resolve a publisher name/IPI to an id via pica_publishers_query, or create one via pica_publishers_create). " +
|
|
47
|
+
"Supports territory/rights metadata plus is_primary / notes / attestation_status. " +
|
|
47
48
|
"IMPORTANT: After updating, call pica_credits_list to verify the credits actually persisted — silent failures are possible if roles are invalid. " +
|
|
48
49
|
"→ then: pica_credits_list (verify saved), pica_works_inspect (check progress)",
|
|
49
50
|
inputSchema: {
|
|
@@ -65,7 +66,7 @@ export class CreditsTools {
|
|
|
65
66
|
},
|
|
66
67
|
role: {
|
|
67
68
|
type: "string",
|
|
68
|
-
description: "Role: writer, composer, arranger, lyricist, producer, performer, engineer, mixer, mastering, owner, vocalist, instrumentalist, conductor, programmer, remixer",
|
|
69
|
+
description: "Role (stored as credit_type on work_credits). One of: writer, composer, arranger, lyricist, producer, performer, engineer, mixer, mastering, owner, vocalist, instrumentalist, conductor, programmer, remixer.",
|
|
69
70
|
enum: [
|
|
70
71
|
"writer",
|
|
71
72
|
"composer",
|
|
@@ -86,15 +87,11 @@ export class CreditsTools {
|
|
|
86
87
|
},
|
|
87
88
|
splits: {
|
|
88
89
|
type: "number",
|
|
89
|
-
description: "Percentage split (0-100). All splits must total 100%.",
|
|
90
|
+
description: "Percentage split (0-100), stored as writer_split_percentage on work_credits. All splits across the credits array must total 100%.",
|
|
90
91
|
},
|
|
91
|
-
|
|
92
|
+
publisher_id: {
|
|
92
93
|
type: "string",
|
|
93
|
-
description: "Publisher name
|
|
94
|
-
},
|
|
95
|
-
publisher_ipi: {
|
|
96
|
-
type: "string",
|
|
97
|
-
description: "Publisher's IPI number (9-11 digits)",
|
|
94
|
+
description: "Publisher UUID on global_publishers. Resolve a publisher name or IPI to an id via pica_publishers_query, or create one via pica_publishers_create. Required when publisher_split_percentage is set.",
|
|
98
95
|
},
|
|
99
96
|
publisher_split_percentage: {
|
|
100
97
|
type: "number",
|
|
@@ -123,6 +120,19 @@ export class CreditsTools {
|
|
|
123
120
|
type: "string",
|
|
124
121
|
description: "When rights end (ISO date). Null = perpetual.",
|
|
125
122
|
},
|
|
123
|
+
is_primary: {
|
|
124
|
+
type: "boolean",
|
|
125
|
+
description: "Mark this credit as the primary attribution for the person on this work.",
|
|
126
|
+
},
|
|
127
|
+
notes: {
|
|
128
|
+
type: "string",
|
|
129
|
+
description: "Free-text notes about this credit (e.g., recording-session context, contribution specifics).",
|
|
130
|
+
},
|
|
131
|
+
attestation_status: {
|
|
132
|
+
type: "string",
|
|
133
|
+
enum: ["pending", "attested", "disputed", "declined"],
|
|
134
|
+
description: "Attestation status. Default: pending. Service-managed fields attested_at / attested_by are set by the attestation workflow, not this tool.",
|
|
135
|
+
},
|
|
126
136
|
},
|
|
127
137
|
required: ["person_id", "role", "splits"],
|
|
128
138
|
},
|
|
@@ -193,10 +203,8 @@ export class CreditsTools {
|
|
|
193
203
|
role: c.role,
|
|
194
204
|
splits: c.splits || 0,
|
|
195
205
|
};
|
|
196
|
-
if (c.
|
|
197
|
-
credit.
|
|
198
|
-
if (c.publisher_ipi)
|
|
199
|
-
credit.publisher_ipi = c.publisher_ipi;
|
|
206
|
+
if (c.publisher_id)
|
|
207
|
+
credit.publisher_id = c.publisher_id;
|
|
200
208
|
if (c.publisher_split_percentage !== undefined)
|
|
201
209
|
credit.publisher_split_percentage = c.publisher_split_percentage;
|
|
202
210
|
if (c.territory)
|
|
@@ -207,6 +215,12 @@ export class CreditsTools {
|
|
|
207
215
|
credit.start_date = c.start_date;
|
|
208
216
|
if (c.end_date)
|
|
209
217
|
credit.end_date = c.end_date;
|
|
218
|
+
if (c.is_primary !== undefined)
|
|
219
|
+
credit.is_primary = c.is_primary;
|
|
220
|
+
if (c.notes !== undefined)
|
|
221
|
+
credit.notes = c.notes;
|
|
222
|
+
if (c.attestation_status)
|
|
223
|
+
credit.attestation_status = c.attestation_status;
|
|
210
224
|
return credit;
|
|
211
225
|
});
|
|
212
226
|
const publishingCredits = allCredits.filter((c) => PUBLISHING_ROLES.has(String(c.role || "writer")
|