@stackfactor/client-api 1.2.2 → 1.2.4

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.
@@ -1 +1 @@
1
- {"version":3,"file":"axiosClient.d.ts","sourceRoot":"","sources":["../../../src/lib/axiosClient.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,UAAU,EAAiB,MAAM,OAAO,CAAC;AAmBzD,eAAO,MAAM,MAAM,+BAGjB,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,OAAO,UAAU,KAAG,MA+BjD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,UAAU,KAAG,MAIhD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAC9B,OAAO,UAAU,KAChB;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAKnC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,GAC5B,qBAAqB,OAAO,EAC5B,OAAO,UAAU,KAChB,OAMF,CAAC"}
1
+ {"version":3,"file":"axiosClient.d.ts","sourceRoot":"","sources":["../../../src/lib/axiosClient.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,UAAU,EAAiB,MAAM,OAAO,CAAC;AAsBzD,eAAO,MAAM,MAAM,+BAGjB,CAAC;AAoDH;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,OAAO,UAAU,KAAG,MA2BjD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,UAAU,KAAG,MAIhD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAC9B,OAAO,UAAU,KAChB;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAKnC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,GAC5B,qBAAqB,OAAO,EAC5B,OAAO,UAAU,KAChB,OAMF,CAAC"}
@@ -45,6 +45,54 @@ exports.client = axios_1.default.create({
45
45
  baseURL: baseUrl,
46
46
  withCredentials: true,
47
47
  });
48
+ //Fields whose value must never be echoed back to the screen. A validation error on
49
+ //one of these used to render the value the user typed — so a rejected password was
50
+ //printed in the error message under it.
51
+ const REDACTED_FIELDS = [
52
+ "password",
53
+ "newpassword",
54
+ "currentpassword",
55
+ "token",
56
+ "secret",
57
+ "authorization",
58
+ "apikey",
59
+ "accesstoken",
60
+ "refreshtoken",
61
+ ];
62
+ //Long values (a pasted document, a base64 blob) would bury the message they are meant
63
+ //to illustrate.
64
+ const MAX_VALUE_LENGTH = 60;
65
+ /**
66
+ * Renders one validation error as a sentence: the server's message, then the field it
67
+ * is about and the value that was rejected.
68
+ *
69
+ * The value matters — "must be at least 4 characters long" is a lot less useful when
70
+ * you cannot see what you typed — but only when it is safe and short enough to help.
71
+ */
72
+ const validationErrorToString = (item) => {
73
+ //express-validator 7 reports the field as `path`; 6 reported it as `param`. Reading
74
+ //only one of them is how this message came to read "param undefined".
75
+ const field = item.path ?? item.param;
76
+ const message = item.msg ?? "Invalid value";
77
+ if (!field) {
78
+ return message;
79
+ }
80
+ const redacted = REDACTED_FIELDS.indexOf(field.toLowerCase()) >= 0;
81
+ let value = null;
82
+ if (!redacted && item.value !== null && item.value !== undefined) {
83
+ value =
84
+ typeof item.value === "object"
85
+ ? JSON.stringify(item.value)
86
+ : String(item.value);
87
+ if (value.length === 0) {
88
+ value = null;
89
+ }
90
+ else if (value.length > MAX_VALUE_LENGTH) {
91
+ value = `${value.slice(0, MAX_VALUE_LENGTH)}…`;
92
+ }
93
+ }
94
+ return `${message} (${field}${value === null ? "" : `: "${value}"`})`;
95
+ };
48
96
  /**
49
97
  * Returns the error as a string
50
98
  * @param {AxiosError} error
@@ -54,13 +102,11 @@ const errorToString = (error) => {
54
102
  try {
55
103
  if (error != null) {
56
104
  if (error.response?.data) {
57
- let asString = "";
58
105
  const responseData = error.response.data;
59
106
  if (Array.isArray(responseData.errors)) {
60
- responseData.errors.forEach((item, index) => {
61
- asString += `${index > 0 ? ", " : ""} ${item.msg} param ${item.param} ${item.value ? `value ${item.value.toString()}` : ""}`;
62
- });
63
- return asString;
107
+ return responseData.errors
108
+ .map((item) => validationErrorToString(item))
109
+ .join("; ");
64
110
  }
65
111
  else if (responseData.error) {
66
112
  return responseData.error;
@@ -1 +1 @@
1
- {"version":3,"file":"axiosClient.js","sourceRoot":"","sources":["../../../src/lib/axiosClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"axiosClient.js","sourceRoot":"","sources":["../../../src/lib/axiosClient.ts"],"names":[],"mappings":"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"}
@@ -83,6 +83,10 @@ export declare const PERMISSIONS: {
83
83
  readonly ADMIN_KNOWLEDGE_BASE: "8ad63643098109cdc48f7dbe";
84
84
  readonly RELEASE_QUARANTINE: "7cf80c6b1ea8c0d7d6893afd";
85
85
  readonly MANAGE_COMPLIANCE: "f86e5d976f93ea849af69eea";
86
+ readonly INCIDENTS_READ: "1c99552174c5f22e6db345c6";
87
+ readonly INCIDENTS_MANAGE: "1f9247689c96be15a9d49781";
88
+ readonly INCIDENTS_INTAKE_ADMIN: "1e5316c54a779f85c4a1e29c";
89
+ readonly INCIDENTS_CLOSE: "1503b88282a7fa822a295b65";
86
90
  };
87
91
  /**
88
92
  * Quota units used by billing profile quota entries.
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB;;;CAGnB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmChB,CAAC;AAEX;;;;;;GAMG;AACH,eAAO,MAAM,IAAI;;;;;CAKP,CAAC;AAEX,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgCd,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,UAAU;;;CAGb,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8CtB,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAsC5D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc;IACzB,oBAAoB;;;;;;IAMpB,uBAAuB;;;;;;;IAOvB,8BAA8B;;;;;;IAM9B,yCAAyC;;;;;;;;;IASzC,kCAAkC;;;;;;IAMlC,6EAA6E;;;;;;;IAO7E,yCAAyC;;;;;;;CAOjC,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB;;;CAGnB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmChB,CAAC;AAEX;;;;;;GAMG;AACH,eAAO,MAAM,IAAI;;;;;CAKP,CAAC;AAEX,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuCd,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,UAAU;;;CAGb,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8CtB,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CA0C5D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc;IACzB,oBAAoB;;;;;;IAMpB,uBAAuB;;;;;;;IAOvB,8BAA8B;;;;;;IAM9B,yCAAyC;;;;;;;;;IASzC,kCAAkC;;;;;;IAMlC,6EAA6E;;;;;;;IAO7E,yCAAyC;;;;;;;CAOjC,CAAC"}
@@ -86,6 +86,13 @@ exports.PERMISSIONS = {
86
86
  ADMIN_KNOWLEDGE_BASE: "8ad63643098109cdc48f7dbe",
87
87
  RELEASE_QUARANTINE: "7cf80c6b1ea8c0d7d6893afd",
88
88
  MANAGE_COMPLIANCE: "f86e5d976f93ea849af69eea",
89
+ // Shield Incident Management. These are the FIRST SHIELD-exclusive permissions
90
+ // on the platform, and they mirror backend-core's groupsConstants.constants —
91
+ // the ObjectIds are the contract and must not drift.
92
+ INCIDENTS_READ: "1c99552174c5f22e6db345c6",
93
+ INCIDENTS_MANAGE: "1f9247689c96be15a9d49781",
94
+ INCIDENTS_INTAKE_ADMIN: "1e5316c54a779f85c4a1e29c",
95
+ INCIDENTS_CLOSE: "1503b88282a7fa822a295b65",
89
96
  };
90
97
  /**
91
98
  * Quota units used by billing profile quota entries.
@@ -176,6 +183,10 @@ exports.PERMISSION_DESCRIPTIONS = {
176
183
  [exports.PERMISSIONS.ADMIN_KNOWLEDGE_BASE]: "Knowledge Base - Admin",
177
184
  [exports.PERMISSIONS.RELEASE_QUARANTINE]: "Knowledge Base - Release Quarantine",
178
185
  [exports.PERMISSIONS.MANAGE_COMPLIANCE]: "Knowledge Base - Manage Compliance",
186
+ [exports.PERMISSIONS.INCIDENTS_READ]: "Incidents - View",
187
+ [exports.PERMISSIONS.INCIDENTS_MANAGE]: "Incidents - Manage",
188
+ [exports.PERMISSIONS.INCIDENTS_INTAKE_ADMIN]: "Incidents - Manage Intake",
189
+ [exports.PERMISSIONS.INCIDENTS_CLOSE]: "Incidents - Verify and Close",
179
190
  };
180
191
  /**
181
192
  * Knowledge Base enums (mirrors `@stackfactor/backend-core` const `KNOWLEDGE_BASE`).
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,210 @@
1
+ /** A queue filter set. Every field is optional; unknown values widen rather than error. */
2
+ export interface IncidentQueueFilters {
3
+ status?: string | string[];
4
+ severity?: string | string[];
5
+ /** Tenant-configured business-process key. Not a fixed enum, by design. */
6
+ process?: string;
7
+ frameworkTag?: string;
8
+ sourceKind?: string | string[];
9
+ senderId?: string;
10
+ ownerId?: string;
11
+ controlId?: string;
12
+ /** Incidents with no owner, which is a distinct filter rather than an empty ownerId. */
13
+ unassigned?: boolean;
14
+ slaBreached?: boolean;
15
+ /** ISO-8601. Filters on ingestion time, matching how the SLA clock is measured. */
16
+ from?: string;
17
+ to?: string;
18
+ /** Free text. A value like "INC-2043" or a bare number matches the human id exactly. */
19
+ q?: string;
20
+ page?: number;
21
+ limit?: number;
22
+ }
23
+ /**
24
+ * Incident queue, with filters, free-text search and pagination.
25
+ * @param {IncidentQueueFilters} filters
26
+ * @param {String} token Authorization token
27
+ * @returns {Promise<object>} `{ items, page, limit, total, totalPages }`
28
+ */
29
+ export declare const getIncidents: (filters: IncidentQueueFilters, token: string) => Promise<object>;
30
+ /**
31
+ * One incident, complete. Tasks, training, timeline, evidence and agent runs are
32
+ * embedded, so the detail view needs no follow-up calls.
33
+ * @param {String} id
34
+ * @param {String} token Authorization token
35
+ * @returns {Promise<object>}
36
+ */
37
+ export declare const getIncident: (id: string, token: string) => Promise<object>;
38
+ /**
39
+ * Dashboard tiles. Note that `medianTimeToRemediateMs` is null rather than 0 when
40
+ * nothing closed in the window, and that severity/process buckets can carry a
41
+ * null key for incidents not yet triaged.
42
+ * @param {Number} windowDays Trailing window for the trend and median tiles
43
+ * @param {String} token Authorization token
44
+ * @returns {Promise<object>}
45
+ */
46
+ export declare const getIncidentDashboard: (windowDays: number | undefined, token: string) => Promise<object>;
47
+ /**
48
+ * The signed-in user's own corrective actions and training assignments.
49
+ * Authenticated but not permission-gated: an assignee can see their work without
50
+ * holding read over the whole queue.
51
+ * @param {Boolean} includeCompleted
52
+ * @param {String} token Authorization token
53
+ * @returns {Promise<object>} `{ tasks, training }`
54
+ */
55
+ export declare const getMyIncidentWork: (includeCompleted: boolean | undefined, token: string) => Promise<object>;
56
+ /**
57
+ * Tenant incident settings: severity mapping, SLA hours, dedup window, the
58
+ * business-process list, the AI-triage toggle and the remediation-agent mode.
59
+ * Read-gated rather than admin-gated, because the queue's process filter needs
60
+ * the process list.
61
+ * @param {String} token Authorization token
62
+ * @returns {Promise<object>}
63
+ */
64
+ export declare const getIncidentSettings: (token: string) => Promise<object>;
65
+ /**
66
+ * Update tenant incident settings. Requires INCIDENTS_INTAKE_ADMIN.
67
+ * @param {Object} settings Partial settings; unknown keys are ignored
68
+ * @param {String} token Authorization token
69
+ * @returns {Promise<object>} The effective settings after the write
70
+ */
71
+ export declare const updateIncidentSettings: (settings: object, token: string) => Promise<object>;
72
+ /**
73
+ * File an incident by hand. Takes the same normalized event contract the public
74
+ * intake endpoint accepts, so a manual incident and an ingested one are
75
+ * indistinguishable afterwards apart from their source.
76
+ * @param {Object} event `{ source, title, occurred_at, ... }`
77
+ * @param {String} token Authorization token
78
+ * @returns {Promise<object>} `{ incidentId, humanId, deduplicated }`
79
+ */
80
+ export declare const createIncident: (event: object, token: string) => Promise<object>;
81
+ /**
82
+ * Edit whitelisted fields. Status and severity are deliberately not among them:
83
+ * they move through `transitionIncident` and `changeIncidentSeverity`, so neither
84
+ * the state machine nor the reason requirement can be bypassed by an edit.
85
+ * @param {Object} data Must carry `_id`
86
+ * @param {String} token Authorization token
87
+ * @returns {Promise<object>}
88
+ */
89
+ export declare const updateIncident: (data: object, token: string) => Promise<object>;
90
+ /**
91
+ * Move an incident through the lifecycle. Enforces the legal-transition table,
92
+ * requires a root cause before verification, a reason to dismiss, and refuses
93
+ * closure while corrective actions or training remain outstanding.
94
+ * @param {String} id
95
+ * @param {Object} data `{ to, note?, dismissReason? }`
96
+ * @param {String} token Authorization token
97
+ * @returns {Promise<object>}
98
+ */
99
+ export declare const transitionIncident: (id: string, data: object, token: string) => Promise<object>;
100
+ /**
101
+ * Change severity. The reason is mandatory and audit-logged, and the SLA
102
+ * deadline is recomputed to match.
103
+ * @param {String} id
104
+ * @param {Object} data `{ severity, reason }`
105
+ * @param {String} token Authorization token
106
+ * @returns {Promise<object>}
107
+ */
108
+ export declare const changeIncidentSeverity: (id: string, data: object, token: string) => Promise<object>;
109
+ /**
110
+ * Attach evidence.
111
+ * @param {String} id
112
+ * @param {Object} data `{ type: "url" | "fileRef" | "text", ref }`
113
+ * @param {String} token Authorization token
114
+ * @returns {Promise<object>}
115
+ */
116
+ export declare const addIncidentEvidence: (id: string, data: object, token: string) => Promise<object>;
117
+ /**
118
+ * Add a corrective-action task.
119
+ * @param {String} id
120
+ * @param {Object} data `{ title, description?, assigneeId?, dueAt? }`
121
+ * @param {String} token Authorization token
122
+ * @returns {Promise<object>}
123
+ */
124
+ export declare const addIncidentTask: (id: string, data: object, token: string) => Promise<object>;
125
+ /**
126
+ * Update a task, including completing or reopening it. Reopening clears the
127
+ * completion stamp.
128
+ * @param {String} id
129
+ * @param {Object} data `{ taskId, done?, title?, assigneeId?, dueAt? }`
130
+ * @param {String} token Authorization token
131
+ * @returns {Promise<object>}
132
+ */
133
+ export declare const updateIncidentTask: (id: string, data: object, token: string) => Promise<object>;
134
+ /**
135
+ * Assign training by hand. The Remediation Agent is the normal path once it
136
+ * exists; this produces the identical record, marked as user-created.
137
+ * @param {String} id
138
+ * @param {Object} data `{ assigneeId, learningPathId?, dueAt? }`
139
+ * @param {String} token Authorization token
140
+ * @returns {Promise<object>}
141
+ */
142
+ export declare const assignIncidentTraining: (id: string, data: object, token: string) => Promise<object>;
143
+ /**
144
+ * Retract a training assignment, including one the agent created. The assignment
145
+ * is removed so it stops blocking closure; the timeline keeps a record of it.
146
+ * @param {String} id
147
+ * @param {Object} data `{ assignmentId, reason? }`
148
+ * @param {String} token Authorization token
149
+ * @returns {Promise<object>}
150
+ */
151
+ export declare const retractIncidentTraining: (id: string, data: object, token: string) => Promise<object>;
152
+ /**
153
+ * Waive a training assignment. Requires INCIDENTS_CLOSE, not merely manage,
154
+ * because waiving is the only way an incident closes without the training
155
+ * actually being completed. The reason is mandatory.
156
+ * @param {String} id
157
+ * @param {Object} data `{ assignmentId, reason }`
158
+ * @param {String} token Authorization token
159
+ * @returns {Promise<object>}
160
+ */
161
+ export declare const waiveIncidentTraining: (id: string, data: object, token: string) => Promise<object>;
162
+ /**
163
+ * Accept, modify or reject an AI triage suggestion. Accepting applies it and
164
+ * stamps the applied value with its AI provenance; nothing the AI proposes takes
165
+ * effect until a human decides. A suggestion can only be decided once.
166
+ * @param {String} id
167
+ * @param {Object} data `{ suggestionId, disposition, edits? }`
168
+ * @param {String} token Authorization token
169
+ * @returns {Promise<object>}
170
+ */
171
+ export declare const decideIncidentSuggestion: (id: string, data: object, token: string) => Promise<object>;
172
+ /**
173
+ * Auditor export: whole incidents including timeline, agent runs and evidence,
174
+ * matching the same filters the queue uses. Capped server-side.
175
+ * @param {IncidentQueueFilters} filters
176
+ * @param {String} token Authorization token
177
+ * @returns {Promise<object>} `{ items, total, truncated }`
178
+ */
179
+ export declare const exportIncidents: (filters: IncidentQueueFilters, token: string) => Promise<object>;
180
+ /**
181
+ * Soft-delete an incident. Requires INCIDENTS_CLOSE. The record is retained and
182
+ * simply leaves the queue; there is no hard delete.
183
+ * @param {String} id
184
+ * @param {String} token Authorization token
185
+ * @returns {Promise<object>}
186
+ */
187
+ export declare const deleteIncident: (id: string, token: string) => Promise<object>;
188
+ /**
189
+ * List intake credentials. Never returns secret material.
190
+ * @param {String} token Authorization token
191
+ * @returns {Promise<object>}
192
+ */
193
+ export declare const getIntakeKeys: (token: string) => Promise<object>;
194
+ /**
195
+ * Create an intake credential. The plaintext key is in this response and nowhere
196
+ * else, ever; only its hash is stored. A caller that loses it must issue a new one.
197
+ * @param {Object} data `{ name }`
198
+ * @param {String} token Authorization token
199
+ * @returns {Promise<object>} `{ key, record }`
200
+ */
201
+ export declare const createIntakeKey: (data: object, token: string) => Promise<object>;
202
+ /**
203
+ * Revoke an intake credential. The record is kept so historical incidents can
204
+ * still resolve which credential delivered them.
205
+ * @param {String} id
206
+ * @param {String} token Authorization token
207
+ * @returns {Promise<object>}
208
+ */
209
+ export declare const revokeIntakeKey: (id: string, token: string) => Promise<object>;
210
+ //# sourceMappingURL=incident.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"incident.d.ts","sourceRoot":"","sources":["../../../src/lib/incident.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,270 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.revokeIntakeKey = exports.createIntakeKey = exports.getIntakeKeys = exports.deleteIncident = exports.exportIncidents = exports.decideIncidentSuggestion = exports.waiveIncidentTraining = exports.retractIncidentTraining = exports.assignIncidentTraining = exports.updateIncidentTask = exports.addIncidentTask = exports.addIncidentEvidence = exports.changeIncidentSeverity = exports.transitionIncident = exports.updateIncident = exports.createIncident = exports.updateIncidentSettings = exports.getIncidentSettings = exports.getMyIncidentWork = exports.getIncidentDashboard = exports.getIncident = exports.getIncidents = void 0;
4
+ const axiosClient_js_1 = require("./axiosClient.js");
5
+ const toQueryString = (params = {}) => {
6
+ const search = new URLSearchParams();
7
+ Object.entries(params).forEach(([key, value]) => {
8
+ if (value === undefined || value === null || value === "")
9
+ return;
10
+ if (Array.isArray(value)) {
11
+ value.forEach((entry) => search.append(key, String(entry)));
12
+ }
13
+ else {
14
+ search.append(key, String(value));
15
+ }
16
+ });
17
+ const query = search.toString();
18
+ return query ? `?${query}` : "";
19
+ };
20
+ const request = (promise) => new Promise((resolve, reject) => {
21
+ promise
22
+ .then((response) => resolve(response.data))
23
+ .catch((error) => reject(error));
24
+ });
25
+ /**
26
+ * Incident queue, with filters, free-text search and pagination.
27
+ * @param {IncidentQueueFilters} filters
28
+ * @param {String} token Authorization token
29
+ * @returns {Promise<object>} `{ items, page, limit, total, totalPages }`
30
+ */
31
+ const getIncidents = (filters, token) => request(axiosClient_js_1.client.get(`/api/v1/shield/incidents/${toQueryString(filters)}`, {
32
+ headers: { authorization: token },
33
+ }));
34
+ exports.getIncidents = getIncidents;
35
+ /**
36
+ * One incident, complete. Tasks, training, timeline, evidence and agent runs are
37
+ * embedded, so the detail view needs no follow-up calls.
38
+ * @param {String} id
39
+ * @param {String} token Authorization token
40
+ * @returns {Promise<object>}
41
+ */
42
+ const getIncident = (id, token) => request(axiosClient_js_1.client.get(`/api/v1/shield/incidents/${id}`, {
43
+ headers: { authorization: token },
44
+ }));
45
+ exports.getIncident = getIncident;
46
+ /**
47
+ * Dashboard tiles. Note that `medianTimeToRemediateMs` is null rather than 0 when
48
+ * nothing closed in the window, and that severity/process buckets can carry a
49
+ * null key for incidents not yet triaged.
50
+ * @param {Number} windowDays Trailing window for the trend and median tiles
51
+ * @param {String} token Authorization token
52
+ * @returns {Promise<object>}
53
+ */
54
+ const getIncidentDashboard = (windowDays, token) => request(axiosClient_js_1.client.get(`/api/v1/shield/incidents/dashboard${toQueryString({ windowDays })}`, { headers: { authorization: token } }));
55
+ exports.getIncidentDashboard = getIncidentDashboard;
56
+ /**
57
+ * The signed-in user's own corrective actions and training assignments.
58
+ * Authenticated but not permission-gated: an assignee can see their work without
59
+ * holding read over the whole queue.
60
+ * @param {Boolean} includeCompleted
61
+ * @param {String} token Authorization token
62
+ * @returns {Promise<object>} `{ tasks, training }`
63
+ */
64
+ const getMyIncidentWork = (includeCompleted, token) => request(axiosClient_js_1.client.get(`/api/v1/shield/incidents/mine${toQueryString({ includeCompleted })}`, { headers: { authorization: token } }));
65
+ exports.getMyIncidentWork = getMyIncidentWork;
66
+ /**
67
+ * Tenant incident settings: severity mapping, SLA hours, dedup window, the
68
+ * business-process list, the AI-triage toggle and the remediation-agent mode.
69
+ * Read-gated rather than admin-gated, because the queue's process filter needs
70
+ * the process list.
71
+ * @param {String} token Authorization token
72
+ * @returns {Promise<object>}
73
+ */
74
+ const getIncidentSettings = (token) => request(axiosClient_js_1.client.get("/api/v1/shield/incidents/settings", {
75
+ headers: { authorization: token },
76
+ }));
77
+ exports.getIncidentSettings = getIncidentSettings;
78
+ /**
79
+ * Update tenant incident settings. Requires INCIDENTS_INTAKE_ADMIN.
80
+ * @param {Object} settings Partial settings; unknown keys are ignored
81
+ * @param {String} token Authorization token
82
+ * @returns {Promise<object>} The effective settings after the write
83
+ */
84
+ const updateIncidentSettings = (settings, token) => request(axiosClient_js_1.client.post("/api/v1/shield/incidents/settings", settings, {
85
+ headers: { authorization: token },
86
+ }));
87
+ exports.updateIncidentSettings = updateIncidentSettings;
88
+ /**
89
+ * File an incident by hand. Takes the same normalized event contract the public
90
+ * intake endpoint accepts, so a manual incident and an ingested one are
91
+ * indistinguishable afterwards apart from their source.
92
+ * @param {Object} event `{ source, title, occurred_at, ... }`
93
+ * @param {String} token Authorization token
94
+ * @returns {Promise<object>} `{ incidentId, humanId, deduplicated }`
95
+ */
96
+ const createIncident = (event, token) => request(axiosClient_js_1.client.put("/api/v1/shield/incidents", event, {
97
+ headers: { authorization: token },
98
+ }));
99
+ exports.createIncident = createIncident;
100
+ /**
101
+ * Edit whitelisted fields. Status and severity are deliberately not among them:
102
+ * they move through `transitionIncident` and `changeIncidentSeverity`, so neither
103
+ * the state machine nor the reason requirement can be bypassed by an edit.
104
+ * @param {Object} data Must carry `_id`
105
+ * @param {String} token Authorization token
106
+ * @returns {Promise<object>}
107
+ */
108
+ const updateIncident = (data, token) => request(axiosClient_js_1.client.post("/api/v1/shield/incidents/update", data, {
109
+ headers: { authorization: token },
110
+ }));
111
+ exports.updateIncident = updateIncident;
112
+ /**
113
+ * Move an incident through the lifecycle. Enforces the legal-transition table,
114
+ * requires a root cause before verification, a reason to dismiss, and refuses
115
+ * closure while corrective actions or training remain outstanding.
116
+ * @param {String} id
117
+ * @param {Object} data `{ to, note?, dismissReason? }`
118
+ * @param {String} token Authorization token
119
+ * @returns {Promise<object>}
120
+ */
121
+ const transitionIncident = (id, data, token) => request(axiosClient_js_1.client.post(`/api/v1/shield/incidents/${id}/transition`, data, {
122
+ headers: { authorization: token },
123
+ }));
124
+ exports.transitionIncident = transitionIncident;
125
+ /**
126
+ * Change severity. The reason is mandatory and audit-logged, and the SLA
127
+ * deadline is recomputed to match.
128
+ * @param {String} id
129
+ * @param {Object} data `{ severity, reason }`
130
+ * @param {String} token Authorization token
131
+ * @returns {Promise<object>}
132
+ */
133
+ const changeIncidentSeverity = (id, data, token) => request(axiosClient_js_1.client.post(`/api/v1/shield/incidents/${id}/severity`, data, {
134
+ headers: { authorization: token },
135
+ }));
136
+ exports.changeIncidentSeverity = changeIncidentSeverity;
137
+ /**
138
+ * Attach evidence.
139
+ * @param {String} id
140
+ * @param {Object} data `{ type: "url" | "fileRef" | "text", ref }`
141
+ * @param {String} token Authorization token
142
+ * @returns {Promise<object>}
143
+ */
144
+ const addIncidentEvidence = (id, data, token) => request(axiosClient_js_1.client.post(`/api/v1/shield/incidents/${id}/evidence`, data, {
145
+ headers: { authorization: token },
146
+ }));
147
+ exports.addIncidentEvidence = addIncidentEvidence;
148
+ /**
149
+ * Add a corrective-action task.
150
+ * @param {String} id
151
+ * @param {Object} data `{ title, description?, assigneeId?, dueAt? }`
152
+ * @param {String} token Authorization token
153
+ * @returns {Promise<object>}
154
+ */
155
+ const addIncidentTask = (id, data, token) => request(axiosClient_js_1.client.post(`/api/v1/shield/incidents/${id}/tasks`, data, {
156
+ headers: { authorization: token },
157
+ }));
158
+ exports.addIncidentTask = addIncidentTask;
159
+ /**
160
+ * Update a task, including completing or reopening it. Reopening clears the
161
+ * completion stamp.
162
+ * @param {String} id
163
+ * @param {Object} data `{ taskId, done?, title?, assigneeId?, dueAt? }`
164
+ * @param {String} token Authorization token
165
+ * @returns {Promise<object>}
166
+ */
167
+ const updateIncidentTask = (id, data, token) => request(axiosClient_js_1.client.post(`/api/v1/shield/incidents/${id}/tasks/update`, data, {
168
+ headers: { authorization: token },
169
+ }));
170
+ exports.updateIncidentTask = updateIncidentTask;
171
+ /**
172
+ * Assign training by hand. The Remediation Agent is the normal path once it
173
+ * exists; this produces the identical record, marked as user-created.
174
+ * @param {String} id
175
+ * @param {Object} data `{ assigneeId, learningPathId?, dueAt? }`
176
+ * @param {String} token Authorization token
177
+ * @returns {Promise<object>}
178
+ */
179
+ const assignIncidentTraining = (id, data, token) => request(axiosClient_js_1.client.post(`/api/v1/shield/incidents/${id}/training`, data, {
180
+ headers: { authorization: token },
181
+ }));
182
+ exports.assignIncidentTraining = assignIncidentTraining;
183
+ /**
184
+ * Retract a training assignment, including one the agent created. The assignment
185
+ * is removed so it stops blocking closure; the timeline keeps a record of it.
186
+ * @param {String} id
187
+ * @param {Object} data `{ assignmentId, reason? }`
188
+ * @param {String} token Authorization token
189
+ * @returns {Promise<object>}
190
+ */
191
+ const retractIncidentTraining = (id, data, token) => request(axiosClient_js_1.client.post(`/api/v1/shield/incidents/${id}/training/retract`, data, {
192
+ headers: { authorization: token },
193
+ }));
194
+ exports.retractIncidentTraining = retractIncidentTraining;
195
+ /**
196
+ * Waive a training assignment. Requires INCIDENTS_CLOSE, not merely manage,
197
+ * because waiving is the only way an incident closes without the training
198
+ * actually being completed. The reason is mandatory.
199
+ * @param {String} id
200
+ * @param {Object} data `{ assignmentId, reason }`
201
+ * @param {String} token Authorization token
202
+ * @returns {Promise<object>}
203
+ */
204
+ const waiveIncidentTraining = (id, data, token) => request(axiosClient_js_1.client.post(`/api/v1/shield/incidents/${id}/training/waive`, data, {
205
+ headers: { authorization: token },
206
+ }));
207
+ exports.waiveIncidentTraining = waiveIncidentTraining;
208
+ /**
209
+ * Accept, modify or reject an AI triage suggestion. Accepting applies it and
210
+ * stamps the applied value with its AI provenance; nothing the AI proposes takes
211
+ * effect until a human decides. A suggestion can only be decided once.
212
+ * @param {String} id
213
+ * @param {Object} data `{ suggestionId, disposition, edits? }`
214
+ * @param {String} token Authorization token
215
+ * @returns {Promise<object>}
216
+ */
217
+ const decideIncidentSuggestion = (id, data, token) => request(axiosClient_js_1.client.post(`/api/v1/shield/incidents/${id}/suggestions/decide`, data, {
218
+ headers: { authorization: token },
219
+ }));
220
+ exports.decideIncidentSuggestion = decideIncidentSuggestion;
221
+ /**
222
+ * Auditor export: whole incidents including timeline, agent runs and evidence,
223
+ * matching the same filters the queue uses. Capped server-side.
224
+ * @param {IncidentQueueFilters} filters
225
+ * @param {String} token Authorization token
226
+ * @returns {Promise<object>} `{ items, total, truncated }`
227
+ */
228
+ const exportIncidents = (filters, token) => request(axiosClient_js_1.client.get(`/api/v1/shield/incidents/export${toQueryString(filters)}`, { headers: { authorization: token } }));
229
+ exports.exportIncidents = exportIncidents;
230
+ /**
231
+ * Soft-delete an incident. Requires INCIDENTS_CLOSE. The record is retained and
232
+ * simply leaves the queue; there is no hard delete.
233
+ * @param {String} id
234
+ * @param {String} token Authorization token
235
+ * @returns {Promise<object>}
236
+ */
237
+ const deleteIncident = (id, token) => request(axiosClient_js_1.client.delete(`/api/v1/shield/incidents/${id}`, {
238
+ headers: { authorization: token },
239
+ }));
240
+ exports.deleteIncident = deleteIncident;
241
+ /**
242
+ * List intake credentials. Never returns secret material.
243
+ * @param {String} token Authorization token
244
+ * @returns {Promise<object>}
245
+ */
246
+ const getIntakeKeys = (token) => request(axiosClient_js_1.client.get("/api/v1/shield/incidents/intakekeys", {
247
+ headers: { authorization: token },
248
+ }));
249
+ exports.getIntakeKeys = getIntakeKeys;
250
+ /**
251
+ * Create an intake credential. The plaintext key is in this response and nowhere
252
+ * else, ever; only its hash is stored. A caller that loses it must issue a new one.
253
+ * @param {Object} data `{ name }`
254
+ * @param {String} token Authorization token
255
+ * @returns {Promise<object>} `{ key, record }`
256
+ */
257
+ const createIntakeKey = (data, token) => request(axiosClient_js_1.client.post("/api/v1/shield/incidents/intakekeys", data, {
258
+ headers: { authorization: token },
259
+ }));
260
+ exports.createIntakeKey = createIntakeKey;
261
+ /**
262
+ * Revoke an intake credential. The record is kept so historical incidents can
263
+ * still resolve which credential delivered them.
264
+ * @param {String} id
265
+ * @param {String} token Authorization token
266
+ * @returns {Promise<object>}
267
+ */
268
+ const revokeIntakeKey = (id, token) => request(axiosClient_js_1.client.post(`/api/v1/shield/incidents/intakekeys/${id}/revoke`, {}, { headers: { authorization: token } }));
269
+ exports.revokeIntakeKey = revokeIntakeKey;
270
+ //# sourceMappingURL=incident.js.map