@stackfactor/client-api 1.19.3 → 1.20.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.
Files changed (87) hide show
  1. package/dist/cjs/lib/constants.d.ts +2 -1
  2. package/dist/cjs/lib/constants.d.ts.map +1 -1
  3. package/dist/cjs/lib/constants.js +3 -1
  4. package/dist/cjs/lib/constants.js.map +1 -1
  5. package/dist/cjs/lib/knowledgeAssessmentAttempts.d.ts +22 -0
  6. package/dist/cjs/lib/knowledgeAssessmentAttempts.d.ts.map +1 -1
  7. package/dist/cjs/lib/knowledgeAssessmentAttempts.js +44 -1
  8. package/dist/cjs/lib/knowledgeAssessmentAttempts.js.map +1 -1
  9. package/dist/cjs/lib/knowledgeBase/documents.d.ts +127 -0
  10. package/dist/cjs/lib/knowledgeBase/documents.d.ts.map +1 -0
  11. package/dist/cjs/lib/knowledgeBase/documents.js +114 -0
  12. package/dist/cjs/lib/knowledgeBase/documents.js.map +1 -0
  13. package/dist/cjs/lib/knowledgeBase/knowledgeBases.d.ts +118 -0
  14. package/dist/cjs/lib/knowledgeBase/knowledgeBases.d.ts.map +1 -0
  15. package/dist/cjs/lib/knowledgeBase/knowledgeBases.js +256 -0
  16. package/dist/cjs/lib/knowledgeBase/knowledgeBases.js.map +1 -0
  17. package/dist/cjs/lib/knowledgeBase/review.d.ts +184 -0
  18. package/dist/cjs/lib/knowledgeBase/review.d.ts.map +1 -0
  19. package/dist/cjs/lib/knowledgeBase/review.js +413 -0
  20. package/dist/cjs/lib/knowledgeBase/review.js.map +1 -0
  21. package/dist/cjs/lib/knowledgeBase/skills.d.ts +247 -0
  22. package/dist/cjs/lib/knowledgeBase/skills.d.ts.map +1 -0
  23. package/dist/cjs/lib/knowledgeBase/skills.js +199 -0
  24. package/dist/cjs/lib/knowledgeBase/skills.js.map +1 -0
  25. package/dist/cjs/lib/knowledgeBase/sources.d.ts +136 -0
  26. package/dist/cjs/lib/knowledgeBase/sources.d.ts.map +1 -0
  27. package/dist/cjs/lib/knowledgeBase/sources.js +234 -0
  28. package/dist/cjs/lib/knowledgeBase/sources.js.map +1 -0
  29. package/dist/cjs/lib/knowledgeBase.d.ts +5 -785
  30. package/dist/cjs/lib/knowledgeBase.d.ts.map +1 -1
  31. package/dist/cjs/lib/knowledgeBase.js +32 -1229
  32. package/dist/cjs/lib/knowledgeBase.js.map +1 -1
  33. package/dist/cjs/lib/knowledgeBaseAgent.d.ts +33 -1
  34. package/dist/cjs/lib/knowledgeBaseAgent.d.ts.map +1 -1
  35. package/dist/cjs/lib/knowledgeBaseAgent.js +18 -3
  36. package/dist/cjs/lib/knowledgeBaseAgent.js.map +1 -1
  37. package/dist/cjs/lib/learningContent.d.ts.map +1 -1
  38. package/dist/cjs/lib/learningContent.js +12 -2
  39. package/dist/cjs/lib/learningContent.js.map +1 -1
  40. package/dist/cjs/lib/learningContentCohorts.d.ts +80 -0
  41. package/dist/cjs/lib/learningContentCohorts.d.ts.map +1 -1
  42. package/dist/cjs/lib/learningContentCohorts.js +80 -1
  43. package/dist/cjs/lib/learningContentCohorts.js.map +1 -1
  44. package/dist/esm/lib/constants.d.ts +2 -1
  45. package/dist/esm/lib/constants.d.ts.map +1 -1
  46. package/dist/esm/lib/constants.js +3 -1
  47. package/dist/esm/lib/constants.js.map +1 -1
  48. package/dist/esm/lib/knowledgeAssessmentAttempts.d.ts +22 -0
  49. package/dist/esm/lib/knowledgeAssessmentAttempts.d.ts.map +1 -1
  50. package/dist/esm/lib/knowledgeAssessmentAttempts.js +40 -0
  51. package/dist/esm/lib/knowledgeAssessmentAttempts.js.map +1 -1
  52. package/dist/esm/lib/knowledgeBase/documents.d.ts +127 -0
  53. package/dist/esm/lib/knowledgeBase/documents.d.ts.map +1 -0
  54. package/dist/esm/lib/knowledgeBase/documents.js +107 -0
  55. package/dist/esm/lib/knowledgeBase/documents.js.map +1 -0
  56. package/dist/esm/lib/knowledgeBase/knowledgeBases.d.ts +118 -0
  57. package/dist/esm/lib/knowledgeBase/knowledgeBases.d.ts.map +1 -0
  58. package/dist/esm/lib/knowledgeBase/knowledgeBases.js +242 -0
  59. package/dist/esm/lib/knowledgeBase/knowledgeBases.js.map +1 -0
  60. package/dist/esm/lib/knowledgeBase/review.d.ts +184 -0
  61. package/dist/esm/lib/knowledgeBase/review.d.ts.map +1 -0
  62. package/dist/esm/lib/knowledgeBase/review.js +392 -0
  63. package/dist/esm/lib/knowledgeBase/review.js.map +1 -0
  64. package/dist/esm/lib/knowledgeBase/skills.d.ts +247 -0
  65. package/dist/esm/lib/knowledgeBase/skills.d.ts.map +1 -0
  66. package/dist/esm/lib/knowledgeBase/skills.js +189 -0
  67. package/dist/esm/lib/knowledgeBase/skills.js.map +1 -0
  68. package/dist/esm/lib/knowledgeBase/sources.d.ts +136 -0
  69. package/dist/esm/lib/knowledgeBase/sources.d.ts.map +1 -0
  70. package/dist/esm/lib/knowledgeBase/sources.js +221 -0
  71. package/dist/esm/lib/knowledgeBase/sources.js.map +1 -0
  72. package/dist/esm/lib/knowledgeBase.d.ts +5 -785
  73. package/dist/esm/lib/knowledgeBase.d.ts.map +1 -1
  74. package/dist/esm/lib/knowledgeBase.js +18 -1175
  75. package/dist/esm/lib/knowledgeBase.js.map +1 -1
  76. package/dist/esm/lib/knowledgeBaseAgent.d.ts +33 -1
  77. package/dist/esm/lib/knowledgeBaseAgent.d.ts.map +1 -1
  78. package/dist/esm/lib/knowledgeBaseAgent.js +16 -2
  79. package/dist/esm/lib/knowledgeBaseAgent.js.map +1 -1
  80. package/dist/esm/lib/learningContent.d.ts.map +1 -1
  81. package/dist/esm/lib/learningContent.js +12 -2
  82. package/dist/esm/lib/learningContent.js.map +1 -1
  83. package/dist/esm/lib/learningContentCohorts.d.ts +80 -0
  84. package/dist/esm/lib/learningContentCohorts.d.ts.map +1 -1
  85. package/dist/esm/lib/learningContentCohorts.js +66 -0
  86. package/dist/esm/lib/learningContentCohorts.js.map +1 -1
  87. package/package.json +1 -3
@@ -0,0 +1,413 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.dismissAllArtifacts = exports.dismissArtifact = exports.retireArtifact = exports.regenerateArtifact = exports.decideContradiction = exports.listContradictions = exports.regenerateGenerated = exports.rejectGenerated = exports.editApproveGenerated = exports.approveGenerated = exports.listGeneratedReview = exports.deleteQuarantine = exports.reingestQuarantine = exports.decideQuarantine = exports.releaseQuarantine = exports.listReleased = exports.listQuarantine = exports.getReviewOverview = void 0;
4
+ const axiosClient_js_1 = require("../axiosClient.js");
5
+ //
6
+ // Knowledge Base management operations — Review Center (quarantine, generated content, contradictions) and out-of-sync notification actions.
7
+ // Re-exported by `../knowledgeBase.ts`, which keeps the public entry.
8
+ //
9
+ // ── Review Center — overview ──────────────────────────────────────────────────
10
+ /**
11
+ * Overview of all Review Center streams + counts for a knowledge base.
12
+ * GET /api/v1/knowledge-base/:id/review
13
+ * @param {String} id The knowledge base id
14
+ * @param {String} authToken Authentication token
15
+ * @returns {Promise<object>}
16
+ */
17
+ const getReviewOverview = (id, authToken) => {
18
+ return new Promise((resolve, reject) => {
19
+ const request = axiosClient_js_1.client.get(`/api/v1/knowledge-base/${id}/review`, {
20
+ headers: { authorization: authToken },
21
+ });
22
+ request
23
+ .then((response) => {
24
+ resolve(response.data);
25
+ })
26
+ .catch((error) => {
27
+ reject(error);
28
+ });
29
+ });
30
+ };
31
+ exports.getReviewOverview = getReviewOverview;
32
+ // ── Review Center — Stream 1: Quarantine release ──────────────────────────────
33
+ /**
34
+ * List QUARANTINED documents (Review Center stream 1).
35
+ * GET /api/v1/knowledge-base/:id/review/quarantine
36
+ * @param {String} id The knowledge base id
37
+ * @param {String} authToken Authentication token
38
+ * @returns {Promise<object>}
39
+ */
40
+ const listQuarantine = (id, authToken) => {
41
+ return new Promise((resolve, reject) => {
42
+ const request = axiosClient_js_1.client.get(`/api/v1/knowledge-base/${id}/review/quarantine`, { headers: { authorization: authToken } });
43
+ request
44
+ .then((response) => {
45
+ resolve(response.data);
46
+ })
47
+ .catch((error) => {
48
+ reject(error);
49
+ });
50
+ });
51
+ };
52
+ exports.listQuarantine = listQuarantine;
53
+ /**
54
+ * List the documents released from review (Review Center stream 1): every one
55
+ * released and not held again since, the newest release first, each with
56
+ * `quarantineReleasedAt` and `quarantineReleasedByName` (who released it, or
57
+ * null). Requires RELEASE_QUARANTINE + owner|editor, as the held list does.
58
+ * GET /api/v1/knowledge-base/:id/review/quarantine?state=released
59
+ * @param {String} id The knowledge base id
60
+ * @param {String} authToken Authentication token
61
+ * @returns {Promise<object>}
62
+ */
63
+ const listReleased = (id, authToken) => {
64
+ return new Promise((resolve, reject) => {
65
+ const request = axiosClient_js_1.client.get(`/api/v1/knowledge-base/${id}/review/quarantine`, { headers: { authorization: authToken }, params: { state: "released" } });
66
+ request
67
+ .then((response) => {
68
+ resolve(response.data);
69
+ })
70
+ .catch((error) => {
71
+ reject(error);
72
+ });
73
+ });
74
+ };
75
+ exports.listReleased = listReleased;
76
+ /**
77
+ * Release a quarantined document. Requires RELEASE_QUARANTINE + owner|editor.
78
+ * POST /api/v1/knowledge-base/:id/review/quarantine/:docId/release
79
+ * @param {String} id The knowledge base id
80
+ * @param {String} docId The document id
81
+ * @param {String} authToken Authentication token
82
+ * @returns {Promise<object>}
83
+ */
84
+ const releaseQuarantine = (id, docId, authToken) => {
85
+ return new Promise((resolve, reject) => {
86
+ const request = axiosClient_js_1.client.post(`/api/v1/knowledge-base/${id}/review/quarantine/${docId}/release`, {}, { headers: { authorization: authToken } });
87
+ request
88
+ .then((response) => {
89
+ resolve(response.data);
90
+ })
91
+ .catch((error) => {
92
+ reject(error);
93
+ });
94
+ });
95
+ };
96
+ exports.releaseQuarantine = releaseQuarantine;
97
+ /**
98
+ * Apply a reviewer's decisions to many held documents at once: release each
99
+ * named document back through ingestion, keep it in quarantine as reviewed, or
100
+ * block it from the knowledge base. One run per source released into is asked
101
+ * for, never one per document. Requires RELEASE_QUARANTINE + owner|editor.
102
+ * POST /api/v1/knowledge-base/:id/review/quarantine/decisions
103
+ * @param {String} id The knowledge base id
104
+ * @param {Array<{documentId: string, decision: "release"|"quarantine"|"block", reason?: string}>} decisions One decision per document, at most 500
105
+ * @param {String} authToken Authentication token
106
+ * @returns {Promise<object>} `{ results: [{ documentId, decision, outcome }], runs: [{ sourceId, correlationId, started }] }`
107
+ */
108
+ const decideQuarantine = (id, decisions, authToken) => {
109
+ return new Promise((resolve, reject) => {
110
+ const request = axiosClient_js_1.client.post(`/api/v1/knowledge-base/${id}/review/quarantine/decisions`, { decisions }, { headers: { authorization: authToken } });
111
+ request
112
+ .then((response) => {
113
+ resolve(response.data);
114
+ })
115
+ .catch((error) => {
116
+ reject(error);
117
+ });
118
+ });
119
+ };
120
+ exports.decideQuarantine = decideQuarantine;
121
+ /**
122
+ * Re-ingest a quarantined document (optionally with an updated redaction policy).
123
+ * Publishes a kb-source-event (trigger="quarantine_re_ingest"). Requires
124
+ * RELEASE_QUARANTINE + owner.
125
+ * POST /api/v1/knowledge-base/:id/review/quarantine/:docId/re-ingest
126
+ * @param {String} id The knowledge base id
127
+ * @param {String} docId The document id
128
+ * @param {object} data Optional body, e.g. `{ updatedRedactionPolicy }`
129
+ * @param {String} authToken Authentication token
130
+ * @returns {Promise<object>}
131
+ */
132
+ const reingestQuarantine = (id, docId, data, authToken) => {
133
+ return new Promise((resolve, reject) => {
134
+ const request = axiosClient_js_1.client.post(`/api/v1/knowledge-base/${id}/review/quarantine/${docId}/re-ingest`, data, { headers: { authorization: authToken } });
135
+ request
136
+ .then((response) => {
137
+ resolve(response.data);
138
+ })
139
+ .catch((error) => {
140
+ reject(error);
141
+ });
142
+ });
143
+ };
144
+ exports.reingestQuarantine = reingestQuarantine;
145
+ /**
146
+ * Delete a quarantined document. Requires RELEASE_QUARANTINE + owner.
147
+ * POST /api/v1/knowledge-base/:id/review/quarantine/:docId/delete
148
+ * @param {String} id The knowledge base id
149
+ * @param {String} docId The document id
150
+ * @param {String} authToken Authentication token
151
+ * @returns {Promise<object>}
152
+ */
153
+ const deleteQuarantine = (id, docId, authToken) => {
154
+ return new Promise((resolve, reject) => {
155
+ const request = axiosClient_js_1.client.post(`/api/v1/knowledge-base/${id}/review/quarantine/${docId}/delete`, {}, { headers: { authorization: authToken } });
156
+ request
157
+ .then((response) => {
158
+ resolve(response.data);
159
+ })
160
+ .catch((error) => {
161
+ reject(error);
162
+ });
163
+ });
164
+ };
165
+ exports.deleteQuarantine = deleteQuarantine;
166
+ // ── Review Center — Stream 2: Generated content review ────────────────────────
167
+ /**
168
+ * List generated artifacts awaiting review (needsReview=true).
169
+ * Requires GENERATE_FROM_KB + owner|editor.
170
+ * GET /api/v1/knowledge-base/:id/review/generated
171
+ * @param {String} id The knowledge base id
172
+ * @param {String} authToken Authentication token
173
+ * @returns {Promise<object>}
174
+ */
175
+ const listGeneratedReview = (id, authToken) => {
176
+ return new Promise((resolve, reject) => {
177
+ const request = axiosClient_js_1.client.get(`/api/v1/knowledge-base/${id}/review/generated`, { headers: { authorization: authToken } });
178
+ request
179
+ .then((response) => {
180
+ resolve(response.data);
181
+ })
182
+ .catch((error) => {
183
+ reject(error);
184
+ });
185
+ });
186
+ };
187
+ exports.listGeneratedReview = listGeneratedReview;
188
+ /**
189
+ * Approve a generated artifact. Requires GENERATE_FROM_KB + owner|editor.
190
+ * POST /api/v1/knowledge-base/:id/review/generated/:entityId/approve
191
+ * @param {String} id The knowledge base id
192
+ * @param {String} entityId The artifact/entity id
193
+ * @param {object} data Body `{ entityType, notes? }`
194
+ * @param {String} authToken Authentication token
195
+ * @returns {Promise<object>}
196
+ */
197
+ const approveGenerated = (id, entityId, data, authToken) => {
198
+ return new Promise((resolve, reject) => {
199
+ const request = axiosClient_js_1.client.post(`/api/v1/knowledge-base/${id}/review/generated/${entityId}/approve`, data, { headers: { authorization: authToken } });
200
+ request
201
+ .then((response) => {
202
+ resolve(response.data);
203
+ })
204
+ .catch((error) => {
205
+ reject(error);
206
+ });
207
+ });
208
+ };
209
+ exports.approveGenerated = approveGenerated;
210
+ /**
211
+ * Approve a generated artifact with edits.
212
+ * Requires GENERATE_FROM_KB + owner|editor.
213
+ * POST /api/v1/knowledge-base/:id/review/generated/:entityId/edit-approve
214
+ * @param {String} id The knowledge base id
215
+ * @param {String} entityId The artifact/entity id
216
+ * @param {object} data Body `{ entityType, edits, notes? }`
217
+ * @param {String} authToken Authentication token
218
+ * @returns {Promise<object>}
219
+ */
220
+ const editApproveGenerated = (id, entityId, data, authToken) => {
221
+ return new Promise((resolve, reject) => {
222
+ const request = axiosClient_js_1.client.post(`/api/v1/knowledge-base/${id}/review/generated/${entityId}/edit-approve`, data, { headers: { authorization: authToken } });
223
+ request
224
+ .then((response) => {
225
+ resolve(response.data);
226
+ })
227
+ .catch((error) => {
228
+ reject(error);
229
+ });
230
+ });
231
+ };
232
+ exports.editApproveGenerated = editApproveGenerated;
233
+ /**
234
+ * Reject a generated artifact. Requires GENERATE_FROM_KB + owner|editor.
235
+ * POST /api/v1/knowledge-base/:id/review/generated/:entityId/reject
236
+ * @param {String} id The knowledge base id
237
+ * @param {String} entityId The artifact/entity id
238
+ * @param {object} data Body `{ entityType, reason }`
239
+ * @param {String} authToken Authentication token
240
+ * @returns {Promise<object>}
241
+ */
242
+ const rejectGenerated = (id, entityId, data, authToken) => {
243
+ return new Promise((resolve, reject) => {
244
+ const request = axiosClient_js_1.client.post(`/api/v1/knowledge-base/${id}/review/generated/${entityId}/reject`, data, { headers: { authorization: authToken } });
245
+ request
246
+ .then((response) => {
247
+ resolve(response.data);
248
+ })
249
+ .catch((error) => {
250
+ reject(error);
251
+ });
252
+ });
253
+ };
254
+ exports.rejectGenerated = rejectGenerated;
255
+ /**
256
+ * Regenerate a generated artifact using current chunks.
257
+ * Requires GENERATE_FROM_KB + owner|editor.
258
+ * POST /api/v1/knowledge-base/:id/review/generated/:entityId/regenerate
259
+ * @param {String} id The knowledge base id
260
+ * @param {String} entityId The artifact/entity id
261
+ * @param {object} data Body `{ entityType, regenerationHints? }`
262
+ * @param {String} authToken Authentication token
263
+ * @returns {Promise<object>}
264
+ */
265
+ const regenerateGenerated = (id, entityId, data, authToken) => {
266
+ return new Promise((resolve, reject) => {
267
+ const request = axiosClient_js_1.client.post(`/api/v1/knowledge-base/${id}/review/generated/${entityId}/regenerate`, data, { headers: { authorization: authToken } });
268
+ request
269
+ .then((response) => {
270
+ resolve(response.data);
271
+ })
272
+ .catch((error) => {
273
+ reject(error);
274
+ });
275
+ });
276
+ };
277
+ exports.regenerateGenerated = regenerateGenerated;
278
+ // ── Review Center — Stream 3: Contradiction flags ─────────────────────────────
279
+ /**
280
+ * List chunks with non-empty contradictionFlags[].
281
+ * Requires GENERATE_FROM_KB + owner|editor.
282
+ * GET /api/v1/knowledge-base/:id/review/contradictions
283
+ * @param {String} id The knowledge base id
284
+ * @param {String} authToken Authentication token
285
+ * @returns {Promise<object>}
286
+ */
287
+ const listContradictions = (id, authToken) => {
288
+ return new Promise((resolve, reject) => {
289
+ const request = axiosClient_js_1.client.get(`/api/v1/knowledge-base/${id}/review/contradictions`, { headers: { authorization: authToken } });
290
+ request
291
+ .then((response) => {
292
+ resolve(response.data);
293
+ })
294
+ .catch((error) => {
295
+ reject(error);
296
+ });
297
+ });
298
+ };
299
+ exports.listContradictions = listContradictions;
300
+ /**
301
+ * Decide a contradiction between two chunks.
302
+ * Requires GENERATE_FROM_KB + owner|editor.
303
+ * POST /api/v1/knowledge-base/:id/review/contradictions/:chunkId/decide
304
+ * @param {String} id The knowledge base id
305
+ * @param {String} chunkId The chunk id carrying the contradiction flag
306
+ * @param {object} data Body `{ decision, otherChunkId, notes }` — `decision` is one
307
+ * of `KNOWLEDGE_BASE.CONTRADICTION_DECISION`
308
+ * @param {String} authToken Authentication token
309
+ * @returns {Promise<object>}
310
+ */
311
+ const decideContradiction = (id, chunkId, data, authToken) => {
312
+ return new Promise((resolve, reject) => {
313
+ const request = axiosClient_js_1.client.post(`/api/v1/knowledge-base/${id}/review/contradictions/${chunkId}/decide`, data, { headers: { authorization: authToken } });
314
+ request
315
+ .then((response) => {
316
+ resolve(response.data);
317
+ })
318
+ .catch((error) => {
319
+ reject(error);
320
+ });
321
+ });
322
+ };
323
+ exports.decideContradiction = decideContradiction;
324
+ // ── Out-of-Sync Notification Actions ──────────────────────────────────────────
325
+ // (design §14 / §14A — surfaced as notifications, acted on per-artifact.
326
+ // Requires GENERATE_FROM_KB + owner|editor on the KB.)
327
+ /**
328
+ * Regenerate a stale artifact from a notification using current chunks.
329
+ * POST /api/v1/notifications/:notificationId/artifacts/:artifactId/regenerate
330
+ * @param {String} notificationId The notification id
331
+ * @param {String} artifactId The artifact id
332
+ * @param {object} data Body `{ entityType }`
333
+ * @param {String} authToken Authentication token
334
+ * @returns {Promise<object>}
335
+ */
336
+ const regenerateArtifact = (notificationId, artifactId, data, authToken) => {
337
+ return new Promise((resolve, reject) => {
338
+ const request = axiosClient_js_1.client.post(`/api/v1/notifications/${notificationId}/artifacts/${artifactId}/regenerate`, data, { headers: { authorization: authToken } });
339
+ request
340
+ .then((response) => {
341
+ resolve(response.data);
342
+ })
343
+ .catch((error) => {
344
+ reject(error);
345
+ });
346
+ });
347
+ };
348
+ exports.regenerateArtifact = regenerateArtifact;
349
+ /**
350
+ * Retire (soft-delete) a stale artifact from a notification.
351
+ * POST /api/v1/notifications/:notificationId/artifacts/:artifactId/retire
352
+ * @param {String} notificationId The notification id
353
+ * @param {String} artifactId The artifact id
354
+ * @param {object} data Body `{ entityType }`
355
+ * @param {String} authToken Authentication token
356
+ * @returns {Promise<object>}
357
+ */
358
+ const retireArtifact = (notificationId, artifactId, data, authToken) => {
359
+ return new Promise((resolve, reject) => {
360
+ const request = axiosClient_js_1.client.post(`/api/v1/notifications/${notificationId}/artifacts/${artifactId}/retire`, data, { headers: { authorization: authToken } });
361
+ request
362
+ .then((response) => {
363
+ resolve(response.data);
364
+ })
365
+ .catch((error) => {
366
+ reject(error);
367
+ });
368
+ });
369
+ };
370
+ exports.retireArtifact = retireArtifact;
371
+ /**
372
+ * Dismiss a stale-artifact flag (mark the staleness acceptable).
373
+ * POST /api/v1/notifications/:notificationId/artifacts/:artifactId/dismiss
374
+ * @param {String} notificationId The notification id
375
+ * @param {String} artifactId The artifact id
376
+ * @param {object} data Body `{ entityType, reason? }`
377
+ * @param {String} authToken Authentication token
378
+ * @returns {Promise<object>}
379
+ */
380
+ const dismissArtifact = (notificationId, artifactId, data, authToken) => {
381
+ return new Promise((resolve, reject) => {
382
+ const request = axiosClient_js_1.client.post(`/api/v1/notifications/${notificationId}/artifacts/${artifactId}/dismiss`, data, { headers: { authorization: authToken } });
383
+ request
384
+ .then((response) => {
385
+ resolve(response.data);
386
+ })
387
+ .catch((error) => {
388
+ reject(error);
389
+ });
390
+ });
391
+ };
392
+ exports.dismissArtifact = dismissArtifact;
393
+ /**
394
+ * Dismiss an entire out-of-sync notification (all artifacts).
395
+ * POST /api/v1/notifications/:notificationId/dismiss-all
396
+ * @param {String} notificationId The notification id
397
+ * @param {String} authToken Authentication token
398
+ * @returns {Promise<object>}
399
+ */
400
+ const dismissAllArtifacts = (notificationId, authToken) => {
401
+ return new Promise((resolve, reject) => {
402
+ const request = axiosClient_js_1.client.post(`/api/v1/notifications/${notificationId}/dismiss-all`, {}, { headers: { authorization: authToken } });
403
+ request
404
+ .then((response) => {
405
+ resolve(response.data);
406
+ })
407
+ .catch((error) => {
408
+ reject(error);
409
+ });
410
+ });
411
+ };
412
+ exports.dismissAllArtifacts = dismissAllArtifacts;
413
+ //# sourceMappingURL=review.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"review.js","sourceRoot":"","sources":["../../../../src/lib/knowledgeBase/review.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,247 @@
1
+ /**
2
+ * A skill a knowledge base's people listed for labelling to look for. Picked
3
+ * from the catalog, it names the catalog skill: the tenant's skills
4
+ * (`"skill"`) or the platform's skill templates (`"skillTemplate"`). The
5
+ * platform reads that skill's own microskills; any sent are ignored.
6
+ */
7
+ export interface ListedSkill {
8
+ name: string;
9
+ catalogId?: string | null;
10
+ catalogType?: "skill" | "skillTemplate" | null;
11
+ /** Read-only: the catalog skill's own microskills, as stored. */
12
+ microSkills?: string[];
13
+ }
14
+ /**
15
+ * What labelling looks for in content: every skill it teaches (`"discover"`,
16
+ * the default), the listed skills first, under their names, and any others
17
+ * (`"guided"`), or only the listed ones (`"focused"`). Guided and focused need
18
+ * at least one skill, at most 50; discover lists none. Each connection holds
19
+ * its own (`SourceInput.skillSettings`).
20
+ */
21
+ export interface SkillSettings {
22
+ mode: "discover" | "guided" | "focused";
23
+ skills: ListedSkill[];
24
+ }
25
+ /** Optional options for the list of a knowledge base's skills. */
26
+ export interface SkillListParams {
27
+ /** How many skills, most named first: 1 to 200 (default 50). */
28
+ limit?: number;
29
+ }
30
+ /**
31
+ * One way a knowledge base's people name a skill its content was labelled
32
+ * with: `from`, a skill's name (any spelling of it), becomes `to` — a new name,
33
+ * or the name of a skill it merges into — or null, which removes the skill.
34
+ */
35
+ export interface SkillMapping {
36
+ from: string;
37
+ to: string | null;
38
+ }
39
+ /** A knowledge base that holds documents about a skill (`getSkillCoverage`). */
40
+ export interface SkillCoverageKnowledgeBase {
41
+ _id: string;
42
+ name: string;
43
+ /** How many of its documents the caller may read name the skill. */
44
+ documentCount: number;
45
+ /** The kinds of resource those documents came from. */
46
+ sourceTypes: string[];
47
+ }
48
+ /** What the knowledge bases the caller can open hold about one skill. */
49
+ export interface SkillCoverage {
50
+ /** The skill's name as it was matched: spaces collapsed, trimmed. */
51
+ skill: string;
52
+ documentCount: number;
53
+ /** Most documents first. */
54
+ knowledgeBases: SkillCoverageKnowledgeBase[];
55
+ /** The microskills their passages cover most, at most 12. */
56
+ microSkills: string[];
57
+ /** Every microskill they cover. */
58
+ microSkillCount: number;
59
+ }
60
+ /** Options for the skill names the caller's knowledge bases suggest (`getSkillSuggestions`). */
61
+ export interface SkillSuggestionParams {
62
+ /** How many suggestions: 1 to 25 (default 10). */
63
+ limit?: number;
64
+ /**
65
+ * Where a name that already exists is looked for: the tenant's skills
66
+ * (`"skill"`, the default) or, for the skill template form, the platform's
67
+ * skill templates (`"skillTemplate"`, a StackFactor admin tenant only).
68
+ */
69
+ catalog?: "skill" | "skillTemplate";
70
+ /** The skill or skill template being edited: its own name is no clash. */
71
+ excludeId?: string | null;
72
+ }
73
+ /** A skill name the caller's knowledge bases suggest (`getSkillSuggestions`). */
74
+ export interface SkillSuggestion {
75
+ /** The spelling most of its documents use. */
76
+ name: string;
77
+ /** How many documents the caller may read name it. */
78
+ documentCount: number;
79
+ /** How many knowledge bases those documents are in. */
80
+ knowledgeBaseCount: number;
81
+ /**
82
+ * A skill (with `catalog` "skillTemplate", a skill template) already has
83
+ * this name, in some spelling: a new one may not take it.
84
+ */
85
+ existingSkill: boolean;
86
+ /**
87
+ * How the skill (skill template) that already has the name spells it, which
88
+ * may differ from `name` ("react" for "React"); null when none has it.
89
+ */
90
+ existingSkillName: string | null;
91
+ }
92
+ /** One of a knowledge base skill's microskills, and how many passages teach it. */
93
+ export interface KnowledgeBaseMicroSkill {
94
+ name: string;
95
+ passages: number;
96
+ }
97
+ /**
98
+ * Where a knowledge base's microskill grouping stands, read from what the
99
+ * platform stores: asked for and not started (`queued`, since `requestedAt`),
100
+ * under way (`running`, since `startedAt`) or neither (`idle`); and when the
101
+ * last grouping ended, null before the first.
102
+ */
103
+ export interface KnowledgeBaseMicroSkillGrouping {
104
+ state: "idle" | "queued" | "running";
105
+ requestedAt: string | null;
106
+ startedAt: string | null;
107
+ finishedAt: string | null;
108
+ }
109
+ /** A knowledge base skill's microskills (`listMicroSkills`). */
110
+ export interface KnowledgeBaseMicroSkills {
111
+ /** The skill as it was asked for: spaces collapsed, trimmed. */
112
+ skill: string;
113
+ /**
114
+ * True when the passages' tags were grouped into microskills; false before,
115
+ * when `microSkills` are the tags as labelling gave them.
116
+ */
117
+ consolidated: boolean;
118
+ consolidatedAt: string | null;
119
+ /** Most passages first. Every one, however many. */
120
+ microSkills: KnowledgeBaseMicroSkill[];
121
+ microSkillCount: number;
122
+ /** How many distinct passage tags they were grouped from. */
123
+ passageTags: number;
124
+ /**
125
+ * How many passages carry the skill's tags, each once. Absent, like the two
126
+ * fields below, from a platform older than Group now.
127
+ */
128
+ passages?: number;
129
+ /**
130
+ * True when those passages are fewer than a microskill needs: grouping never
131
+ * groups the skill, so its tags stay as they are and Group now would change
132
+ * nothing for it.
133
+ */
134
+ belowGroupingThreshold?: boolean;
135
+ /** Where the knowledge base's grouping stands. */
136
+ grouping?: KnowledgeBaseMicroSkillGrouping;
137
+ /**
138
+ * When the last grouping of a skill not grouped failed; null when it did not,
139
+ * or the skill is grouped.
140
+ */
141
+ groupingFailedAt?: string | null;
142
+ /**
143
+ * Why, when the platform's RAG processor was refused for good (none enabled
144
+ * or allowed by the compliance profile, or the one named switched off);
145
+ * null otherwise.
146
+ */
147
+ groupingFailure?: string | null;
148
+ }
149
+ /**
150
+ * List the skills a knowledge base's content was labelled with, across its
151
+ * processed documents, most named first: `{ items, total, limit }`, each item
152
+ * `{ name, nameNormalized, scope, proficiencyLevels, documentCount }`, where
153
+ * `scope` is "organization", "general" or null (labelled before skills had one).
154
+ * GET /api/v1/knowledge-base/:id/skills
155
+ * @param {String} id The knowledge base id
156
+ * @param {SkillListParams} params Optional limit
157
+ * @param {String} authToken Authentication token
158
+ * @returns {Promise<object>}
159
+ */
160
+ export declare const listSkills: (id: string, params: SkillListParams, authToken: string) => Promise<object>;
161
+ /**
162
+ * Set how a knowledge base's skills are named, and rename them on every
163
+ * document and chunk already labelled; every document labelled later takes
164
+ * them too. The mappings replace the ones before; an empty list gives back
165
+ * every skill as labelling named it. Owner or editor only; refused while a sync
166
+ * of one of its sources is under way (409) and for mappings that do not hold —
167
+ * a skill mapped twice, or mappings that lead a skill back to itself (400).
168
+ * PUT /api/v1/knowledge-base/:id/skill-mappings
169
+ * @param {String} id The knowledge base id
170
+ * @param {SkillMapping[]} skillMappings The mappings, `[{ from, to }]`
171
+ * @param {String} authToken Authentication token
172
+ * @returns {Promise<object>} { knowledgeBase, documents, chunks }: the knowledge
173
+ * base with the mappings as stored, and how many documents and chunks were
174
+ * rewritten
175
+ */
176
+ export declare const setSkillMappings: (id: string, skillMappings: SkillMapping[], authToken: string) => Promise<object>;
177
+ /**
178
+ * What the knowledge bases the caller can open hold about one skill: how many
179
+ * of their documents name it (any spelling, under the names set with Edit
180
+ * skill names), in which knowledge bases, and the microskills their passages
181
+ * cover. The skill and skill template Additional Information dialogs ask it
182
+ * before they offer StackFactor as a data source. Only what the caller may
183
+ * open counts: their role on each knowledge base and each document's source
184
+ * permissions decide. Requires VIEW_KNOWLEDGE_BASE; the name must be 1 to 200
185
+ * characters (400 otherwise).
186
+ * GET /api/v1/knowledge-base/skill-coverage
187
+ * @param {String} skill The skill's or skill template's name
188
+ * @param {String} authToken Authentication token
189
+ * @returns {Promise<SkillCoverage>}
190
+ */
191
+ export declare const getSkillCoverage: (skill: string, authToken: string) => Promise<SkillCoverage>;
192
+ /**
193
+ * The skill names the knowledge bases the caller can open suggest while a
194
+ * skill's or skill template's name is typed: the skills their documents were
195
+ * classified with whose name has a word starting with what was typed, in any
196
+ * spelling ("gov" suggests "AI Governance"), one per skill, most documents
197
+ * first. Only what the caller may open counts, as for `getSkillCoverage`.
198
+ * Fewer than 2 characters to match answer no suggestions. Requires
199
+ * VIEW_KNOWLEDGE_BASE; `q` is at most 200 characters (400 otherwise).
200
+ * GET /api/v1/knowledge-base/skill-suggestions
201
+ * @param {String} q What was typed
202
+ * @param {SkillSuggestionParams} params Optional limit, catalog and the id of
203
+ * the skill or skill template being edited
204
+ * @param {String} authToken Authentication token
205
+ * @returns {Promise<SkillSuggestion[]>}
206
+ */
207
+ export declare const getSkillSuggestions: (q: string, params: SkillSuggestionParams | undefined, authToken: string) => Promise<SkillSuggestion[]>;
208
+ /**
209
+ * One of a knowledge base's skills, opened on its page: its microskills, as
210
+ * grouped, each with how many passages teach it, most first, and where the
211
+ * knowledge base's grouping stands (`grouping`). Any spelling of the skill
212
+ * matches. Requires VIEW_KNOWLEDGE_BASE and a role on the knowledge base; the
213
+ * name must be 1 to 200 characters (400 otherwise).
214
+ * GET /api/v1/knowledge-base/:id/skills/micro-skills
215
+ * @param {String} id The knowledge base id
216
+ * @param {String} skill The skill's name
217
+ * @param {String} authToken Authentication token
218
+ * @returns {Promise<KnowledgeBaseMicroSkills>}
219
+ */
220
+ export declare const listMicroSkills: (id: string, skill: string, authToken: string) => Promise<KnowledgeBaseMicroSkills>;
221
+ /**
222
+ * Where a knowledge base's microskill grouping stands: queued, running or
223
+ * idle, and when the last one ended. What a page polls while a grouping is
224
+ * under way, rather than `listMicroSkills`: the platform reads the knowledge
225
+ * base and nothing else. Requires VIEW_KNOWLEDGE_BASE and a role on the
226
+ * knowledge base.
227
+ * GET /api/v1/knowledge-base/:id/skills/micro-skills/grouping
228
+ * @param {String} id The knowledge base id
229
+ * @param {String} authToken Authentication token
230
+ * @returns {Promise<KnowledgeBaseMicroSkillGrouping>}
231
+ */
232
+ export declare const getMicroSkillGrouping: (id: string, authToken: string) => Promise<KnowledgeBaseMicroSkillGrouping>;
233
+ /**
234
+ * Group now: groups the knowledge base's skills' passage tags into their
235
+ * microskills, in the background. Owner or editor only, as setting how its
236
+ * skills are named (403 otherwise; 404 for no such knowledge base). Asked
237
+ * while a grouping runs, nothing more is asked: the answer is that it is
238
+ * running. `getMicroSkillGrouping` says when it is done (no longer queued or
239
+ * running). The skills whose grouping failed are sent again now.
240
+ * POST /api/v1/knowledge-base/:id/skills/micro-skills/group
241
+ * @param {String} id The knowledge base id
242
+ * @param {String} authToken Authentication token
243
+ * @returns {Promise<KnowledgeBaseMicroSkillGrouping>} Where the grouping
244
+ * stands: queued or running, and when the last one ended
245
+ */
246
+ export declare const groupMicroSkills: (id: string, authToken: string) => Promise<KnowledgeBaseMicroSkillGrouping>;
247
+ //# sourceMappingURL=skills.d.ts.map