@attestry/sdk 0.6.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/LICENSE +190 -0
- package/README.md +1269 -0
- package/dist/client.d.ts +58 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +74 -0
- package/dist/client.js.map +1 -0
- package/dist/constants.d.ts +7 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +43 -0
- package/dist/constants.js.map +1 -0
- package/dist/errors.d.ts +16 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +41 -0
- package/dist/errors.js.map +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +20 -0
- package/dist/index.js.map +1 -0
- package/dist/lines-parser.d.ts +50 -0
- package/dist/lines-parser.d.ts.map +1 -0
- package/dist/lines-parser.js +211 -0
- package/dist/lines-parser.js.map +1 -0
- package/dist/ndjson-parser.d.ts +57 -0
- package/dist/ndjson-parser.d.ts.map +1 -0
- package/dist/ndjson-parser.js +245 -0
- package/dist/ndjson-parser.js.map +1 -0
- package/dist/resources/abac-policies.d.ts +1034 -0
- package/dist/resources/abac-policies.d.ts.map +1 -0
- package/dist/resources/abac-policies.js +1519 -0
- package/dist/resources/abac-policies.js.map +1 -0
- package/dist/resources/audit-log.d.ts +588 -0
- package/dist/resources/audit-log.d.ts.map +1 -0
- package/dist/resources/audit-log.js +629 -0
- package/dist/resources/audit-log.js.map +1 -0
- package/dist/resources/batch.d.ts +845 -0
- package/dist/resources/batch.d.ts.map +1 -0
- package/dist/resources/batch.js +1074 -0
- package/dist/resources/batch.js.map +1 -0
- package/dist/resources/chat.d.ts +151 -0
- package/dist/resources/chat.d.ts.map +1 -0
- package/dist/resources/chat.js +124 -0
- package/dist/resources/chat.js.map +1 -0
- package/dist/resources/check.d.ts +348 -0
- package/dist/resources/check.d.ts.map +1 -0
- package/dist/resources/check.js +543 -0
- package/dist/resources/check.js.map +1 -0
- package/dist/resources/compliance-check.d.ts +330 -0
- package/dist/resources/compliance-check.d.ts.map +1 -0
- package/dist/resources/compliance-check.js +402 -0
- package/dist/resources/compliance-check.js.map +1 -0
- package/dist/resources/decisions.d.ts +1208 -0
- package/dist/resources/decisions.d.ts.map +1 -0
- package/dist/resources/decisions.js +1362 -0
- package/dist/resources/decisions.js.map +1 -0
- package/dist/resources/evidence-pack.d.ts +1080 -0
- package/dist/resources/evidence-pack.d.ts.map +1 -0
- package/dist/resources/evidence-pack.js +1789 -0
- package/dist/resources/evidence-pack.js.map +1 -0
- package/dist/resources/gate.d.ts +613 -0
- package/dist/resources/gate.d.ts.map +1 -0
- package/dist/resources/gate.js +737 -0
- package/dist/resources/gate.js.map +1 -0
- package/dist/resources/incidents.d.ts +136 -0
- package/dist/resources/incidents.d.ts.map +1 -0
- package/dist/resources/incidents.js +229 -0
- package/dist/resources/incidents.js.map +1 -0
- package/dist/resources/regulatory-changes.d.ts +307 -0
- package/dist/resources/regulatory-changes.d.ts.map +1 -0
- package/dist/resources/regulatory-changes.js +365 -0
- package/dist/resources/regulatory-changes.js.map +1 -0
- package/dist/resources/safe-input-read.d.ts +21 -0
- package/dist/resources/safe-input-read.d.ts.map +1 -0
- package/dist/resources/safe-input-read.js +57 -0
- package/dist/resources/safe-input-read.js.map +1 -0
- package/dist/resources/ship-gate.d.ts +475 -0
- package/dist/resources/ship-gate.d.ts.map +1 -0
- package/dist/resources/ship-gate.js +727 -0
- package/dist/resources/ship-gate.js.map +1 -0
- package/dist/resources/vision.d.ts +540 -0
- package/dist/resources/vision.d.ts.map +1 -0
- package/dist/resources/vision.js +1036 -0
- package/dist/resources/vision.js.map +1 -0
- package/dist/retry.d.ts +103 -0
- package/dist/retry.d.ts.map +1 -0
- package/dist/retry.js +224 -0
- package/dist/retry.js.map +1 -0
- package/dist/sse-parser.d.ts +64 -0
- package/dist/sse-parser.d.ts.map +1 -0
- package/dist/sse-parser.js +271 -0
- package/dist/sse-parser.js.map +1 -0
- package/dist/transport.d.ts +142 -0
- package/dist/transport.d.ts.map +1 -0
- package/dist/transport.js +455 -0
- package/dist/transport.js.map +1 -0
- package/dist/types.d.ts +61 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/package.json +44 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gate.js","sourceRoot":"","sources":["../../src/resources/gate.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import type { AttestryClient } from "../client.js";
|
|
2
|
+
import type { FrameworkCode, IncidentType, Severity } from "../constants.js";
|
|
3
|
+
import type { RequestOptions } from "../types.js";
|
|
4
|
+
export interface IncidentReportInput {
|
|
5
|
+
incidentType: IncidentType;
|
|
6
|
+
severity: Severity;
|
|
7
|
+
/** Defaults to `[]` when omitted. */
|
|
8
|
+
frameworksAffected?: FrameworkCode[];
|
|
9
|
+
/** 1-10_000 chars. RAW caller text — server runs anonymizer at write time. */
|
|
10
|
+
description: string;
|
|
11
|
+
context?: Record<string, unknown>;
|
|
12
|
+
/**
|
|
13
|
+
* System / agent / model names to be hashed (not redacted) so cross-row
|
|
14
|
+
* correlation is preserved. ≤50 entries, each ≤200 chars.
|
|
15
|
+
*/
|
|
16
|
+
systemNames?: string[];
|
|
17
|
+
/** Default false — explicit opt-in to share into the cross-tenant corpus. */
|
|
18
|
+
optInShare?: boolean;
|
|
19
|
+
/** Default false. */
|
|
20
|
+
resolved?: boolean;
|
|
21
|
+
}
|
|
22
|
+
export interface Incident {
|
|
23
|
+
id: string;
|
|
24
|
+
incidentType: IncidentType;
|
|
25
|
+
severity: Severity;
|
|
26
|
+
frameworksAffected: FrameworkCode[];
|
|
27
|
+
/**
|
|
28
|
+
* Anonymized description AFTER the server's PII scrub. SDK callers see
|
|
29
|
+
* this; raw input is never returned.
|
|
30
|
+
*/
|
|
31
|
+
anonymizedDescription: string;
|
|
32
|
+
patternHash: string;
|
|
33
|
+
resolved: boolean;
|
|
34
|
+
optInShare: boolean;
|
|
35
|
+
createdAt: string;
|
|
36
|
+
}
|
|
37
|
+
export interface IncidentListInput {
|
|
38
|
+
/**
|
|
39
|
+
* `mine` returns the auth org's incidents (any opt-in state). `shared`
|
|
40
|
+
* (default) returns the cross-tenant corpus filtered to opt-in rows.
|
|
41
|
+
*/
|
|
42
|
+
scope?: "mine" | "shared";
|
|
43
|
+
incidentType?: IncidentType;
|
|
44
|
+
severity?: Severity;
|
|
45
|
+
framework?: FrameworkCode;
|
|
46
|
+
resolved?: boolean;
|
|
47
|
+
/** ISO timestamp lower bound (inclusive). */
|
|
48
|
+
from?: string;
|
|
49
|
+
/** ISO timestamp upper bound (exclusive). */
|
|
50
|
+
to?: string;
|
|
51
|
+
cursor?: string;
|
|
52
|
+
/** 1-200, default 50. */
|
|
53
|
+
limit?: number;
|
|
54
|
+
}
|
|
55
|
+
export interface IncidentListResponse {
|
|
56
|
+
items: Incident[];
|
|
57
|
+
/**
|
|
58
|
+
* Cursor for the next page. `null` (NOT undefined) when no more pages
|
|
59
|
+
* — matches the kernel wire shape exactly. The kernel emits the field
|
|
60
|
+
* even on the last page (with value `null`), so the SDK type reflects
|
|
61
|
+
* that contract literally. Pass as `input.cursor` on the next call to
|
|
62
|
+
* fetch the following page.
|
|
63
|
+
*
|
|
64
|
+
* Note: this is `string | null` not `string | undefined`; consumers
|
|
65
|
+
* comparing should use `nextCursor !== null` rather than truthy
|
|
66
|
+
* coercion. (Truthy works too — null is falsy — but the explicit
|
|
67
|
+
* comparison documents intent better.)
|
|
68
|
+
*/
|
|
69
|
+
nextCursor: string | null;
|
|
70
|
+
}
|
|
71
|
+
export interface IncidentPatchInput {
|
|
72
|
+
optInShare?: boolean;
|
|
73
|
+
resolved?: boolean;
|
|
74
|
+
}
|
|
75
|
+
export interface IncidentSearchInput {
|
|
76
|
+
query?: string;
|
|
77
|
+
patternHashes?: string[];
|
|
78
|
+
incidentTypes?: IncidentType[];
|
|
79
|
+
frameworks?: FrameworkCode[];
|
|
80
|
+
/** 1-50, default 20. */
|
|
81
|
+
limit?: number;
|
|
82
|
+
}
|
|
83
|
+
export interface IncidentClusterSeverityCounts {
|
|
84
|
+
low: number;
|
|
85
|
+
medium: number;
|
|
86
|
+
high: number;
|
|
87
|
+
critical: number;
|
|
88
|
+
}
|
|
89
|
+
export interface IncidentCluster {
|
|
90
|
+
patternHash: string;
|
|
91
|
+
incidentType: IncidentType;
|
|
92
|
+
frameworksAffected: FrameworkCode[];
|
|
93
|
+
count: number;
|
|
94
|
+
resolvedCount: number;
|
|
95
|
+
unresolvedCount: number;
|
|
96
|
+
earliestAt: string;
|
|
97
|
+
latestAt: string;
|
|
98
|
+
representativeDescription: string;
|
|
99
|
+
severityCounts: IncidentClusterSeverityCounts;
|
|
100
|
+
}
|
|
101
|
+
export interface IncidentSearchResponse {
|
|
102
|
+
clusters: IncidentCluster[];
|
|
103
|
+
count: number;
|
|
104
|
+
/** True when the underlying corpus was bigger than the search cap pulled. */
|
|
105
|
+
truncated: boolean;
|
|
106
|
+
}
|
|
107
|
+
export declare class IncidentsResource {
|
|
108
|
+
private readonly client;
|
|
109
|
+
constructor(client: AttestryClient);
|
|
110
|
+
/** Submit a new incident. Server-side PII scrub runs before insert. */
|
|
111
|
+
create(input: IncidentReportInput, options?: RequestOptions): Promise<Incident>;
|
|
112
|
+
/**
|
|
113
|
+
* Cursor-paginated list of incidents the caller can see.
|
|
114
|
+
*
|
|
115
|
+
* Response-shape validation (P2 hardening):
|
|
116
|
+
* - Rejects with `AttestryError` if the kernel response isn't a
|
|
117
|
+
* non-null object, lacks an `items` array, or has a `nextCursor`
|
|
118
|
+
* that isn't a string-or-null. Per-row shape is faithful-courier
|
|
119
|
+
* (NOT validated — P4 candidate).
|
|
120
|
+
*
|
|
121
|
+
* Transport-shape validation (P3 hardening):
|
|
122
|
+
* - Rejects with `AttestryAPIError` if the kernel responds with a
|
|
123
|
+
* non-`application/json` Content-Type — protects against
|
|
124
|
+
* proxy-injected HTML 200 pages parsing into junk consumer state.
|
|
125
|
+
*/
|
|
126
|
+
list(input?: IncidentListInput, options?: RequestOptions): Promise<IncidentListResponse>;
|
|
127
|
+
/** Toggle the customer-controlled flags. Anonymized payload is immutable. */
|
|
128
|
+
update(id: string, input: IncidentPatchInput, options?: RequestOptions): Promise<Incident>;
|
|
129
|
+
/**
|
|
130
|
+
* Cross-tenant pattern search. Returns CLUSTERS — never raw rows. Wraps
|
|
131
|
+
* `POST /api/ai/incidents/search`. At least one of `query`,
|
|
132
|
+
* `patternHashes`, `incidentTypes`, `frameworks` must be present.
|
|
133
|
+
*/
|
|
134
|
+
search(input: IncidentSearchInput, options?: RequestOptions): Promise<IncidentSearchResponse>;
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=incidents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"incidents.d.ts","sourceRoot":"","sources":["../../src/resources/incidents.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
// ─── Incidents resource ─────────────────────────────────────────────────────
|
|
2
|
+
//
|
|
3
|
+
// Wraps the AI Incident Database surface (Prompt 16.5 + B.5):
|
|
4
|
+
//
|
|
5
|
+
// - POST /api/v1/incidents create
|
|
6
|
+
// - GET /api/v1/incidents list (cursor + filters)
|
|
7
|
+
// - PATCH /api/v1/incidents/:id update (optInShare / resolved)
|
|
8
|
+
// - POST /api/ai/incidents/search cluster search
|
|
9
|
+
//
|
|
10
|
+
// The SDK's public input/output types are decoupled from the kernel's
|
|
11
|
+
// internal Zod schemas. Drift detection lives in a follow-on pin (kernel
|
|
12
|
+
// reads packages/attestry-sdk/src/constants.ts and asserts the enum
|
|
13
|
+
// arrays match). Adding a new field to the kernel surface = explicit SDK
|
|
14
|
+
// release; we don't proxy unknown fields.
|
|
15
|
+
import { AttestryError } from "../errors.js";
|
|
16
|
+
import { readInputField } from "./safe-input-read.js";
|
|
17
|
+
export class IncidentsResource {
|
|
18
|
+
client;
|
|
19
|
+
constructor(client) {
|
|
20
|
+
this.client = client;
|
|
21
|
+
}
|
|
22
|
+
/** Submit a new incident. Server-side PII scrub runs before insert. */
|
|
23
|
+
create(input, options) {
|
|
24
|
+
return this.client._request({
|
|
25
|
+
method: "POST",
|
|
26
|
+
path: "/api/v1/incidents",
|
|
27
|
+
body: input,
|
|
28
|
+
options,
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Cursor-paginated list of incidents the caller can see.
|
|
33
|
+
*
|
|
34
|
+
* Response-shape validation (P2 hardening):
|
|
35
|
+
* - Rejects with `AttestryError` if the kernel response isn't a
|
|
36
|
+
* non-null object, lacks an `items` array, or has a `nextCursor`
|
|
37
|
+
* that isn't a string-or-null. Per-row shape is faithful-courier
|
|
38
|
+
* (NOT validated — P4 candidate).
|
|
39
|
+
*
|
|
40
|
+
* Transport-shape validation (P3 hardening):
|
|
41
|
+
* - Rejects with `AttestryAPIError` if the kernel responds with a
|
|
42
|
+
* non-`application/json` Content-Type — protects against
|
|
43
|
+
* proxy-injected HTML 200 pages parsing into junk consumer state.
|
|
44
|
+
*/
|
|
45
|
+
list(input = {}, options) {
|
|
46
|
+
// Snapshot each query field via `readInputField` — a throwing
|
|
47
|
+
// accessor surfaces as the documented synchronous `TypeError`
|
|
48
|
+
// rather than the getter's raw exception (session-22 hostile
|
|
49
|
+
// review #1 — the SDK-wide MEDIUM-1 getter-throws fix). The `as`
|
|
50
|
+
// cast restores each field's declared `IncidentListInput` type for
|
|
51
|
+
// the typed query construction below; it re-asserts only what the
|
|
52
|
+
// consumer's own TypeScript type already claims.
|
|
53
|
+
const scope = readInputField(input, "scope", "incidents.list");
|
|
54
|
+
const incidentType = readInputField(input, "incidentType", "incidents.list");
|
|
55
|
+
const severity = readInputField(input, "severity", "incidents.list");
|
|
56
|
+
const framework = readInputField(input, "framework", "incidents.list");
|
|
57
|
+
const resolved = readInputField(input, "resolved", "incidents.list");
|
|
58
|
+
const from = readInputField(input, "from", "incidents.list");
|
|
59
|
+
const to = readInputField(input, "to", "incidents.list");
|
|
60
|
+
const cursor = readInputField(input, "cursor", "incidents.list");
|
|
61
|
+
const limit = readInputField(input, "limit", "incidents.list");
|
|
62
|
+
// Synchronous lone-surrogate guard: the underlying transport runs
|
|
63
|
+
// encodeURIComponent over each query value, which throws raw
|
|
64
|
+
// URIError for malformed UTF-16. Without this check the URIError
|
|
65
|
+
// leaks into the consumer (inconsistent with `incidents.update`'s
|
|
66
|
+
// path-segment guard above and with the decisions.* resources
|
|
67
|
+
// hardened in commits 0428777 / 85064c0). Same defect-class
|
|
68
|
+
// sweep — close incidents.list now to keep the URIError surface
|
|
69
|
+
// uniform across the SDK.
|
|
70
|
+
if (scope !== undefined) {
|
|
71
|
+
assertEncodableIncidentQueryString(scope, "scope");
|
|
72
|
+
}
|
|
73
|
+
if (incidentType !== undefined) {
|
|
74
|
+
assertEncodableIncidentQueryString(incidentType, "incidentType");
|
|
75
|
+
}
|
|
76
|
+
if (severity !== undefined) {
|
|
77
|
+
assertEncodableIncidentQueryString(severity, "severity");
|
|
78
|
+
}
|
|
79
|
+
if (framework !== undefined) {
|
|
80
|
+
assertEncodableIncidentQueryString(framework, "framework");
|
|
81
|
+
}
|
|
82
|
+
if (from !== undefined) {
|
|
83
|
+
assertEncodableIncidentQueryString(from, "from");
|
|
84
|
+
}
|
|
85
|
+
if (to !== undefined) {
|
|
86
|
+
assertEncodableIncidentQueryString(to, "to");
|
|
87
|
+
}
|
|
88
|
+
if (cursor !== undefined) {
|
|
89
|
+
assertEncodableIncidentQueryString(cursor, "cursor");
|
|
90
|
+
}
|
|
91
|
+
return this.client
|
|
92
|
+
._request({
|
|
93
|
+
method: "GET",
|
|
94
|
+
path: "/api/v1/incidents",
|
|
95
|
+
query: {
|
|
96
|
+
scope,
|
|
97
|
+
incidentType,
|
|
98
|
+
severity,
|
|
99
|
+
framework,
|
|
100
|
+
resolved,
|
|
101
|
+
from,
|
|
102
|
+
to,
|
|
103
|
+
cursor,
|
|
104
|
+
limit,
|
|
105
|
+
},
|
|
106
|
+
options,
|
|
107
|
+
})
|
|
108
|
+
.then((result) => {
|
|
109
|
+
// P2 hardening: validate response shape (mirrors decisions.list
|
|
110
|
+
// and regulatoryChanges.list). The kernel emits
|
|
111
|
+
// `{success:true, data:{items: Incident[], nextCursor: string|null}}`
|
|
112
|
+
// and the transport unwraps `data`. A regression to scalar/null
|
|
113
|
+
// would let consumers crash; throw AttestryError at the SDK
|
|
114
|
+
// boundary instead.
|
|
115
|
+
assertIncidentsListResponse(result);
|
|
116
|
+
return result;
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
/** Toggle the customer-controlled flags. Anonymized payload is immutable. */
|
|
120
|
+
update(id, input, options) {
|
|
121
|
+
if (typeof id !== "string" || id.length === 0) {
|
|
122
|
+
throw new TypeError("incidents.update: `id` is required");
|
|
123
|
+
}
|
|
124
|
+
let encoded;
|
|
125
|
+
try {
|
|
126
|
+
encoded = encodeURIComponent(id);
|
|
127
|
+
}
|
|
128
|
+
catch (err) {
|
|
129
|
+
// encodeURIComponent throws URIError on lone surrogates (malformed
|
|
130
|
+
// UTF-16). Surface that as the same TypeError shape consumers
|
|
131
|
+
// already expect from id-validation, instead of leaking the raw
|
|
132
|
+
// platform error class. Hostile round L1 (decisions resource) —
|
|
133
|
+
// symmetric carry-forward.
|
|
134
|
+
throw new TypeError(`incidents.update: \`id\` contains invalid UTF-16 sequences (${
|
|
135
|
+
// `encodeURIComponent` always throws URIError (an Error
|
|
136
|
+
// subclass), so the String(err) branch is unreachable.
|
|
137
|
+
// Defense-in-depth marker for the v8 coverage tool.
|
|
138
|
+
/* v8 ignore next */
|
|
139
|
+
err instanceof Error ? err.message : String(err)})`, { cause: err });
|
|
140
|
+
}
|
|
141
|
+
return this.client._request({
|
|
142
|
+
method: "PATCH",
|
|
143
|
+
path: `/api/v1/incidents/${encoded}`,
|
|
144
|
+
body: input,
|
|
145
|
+
options,
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Cross-tenant pattern search. Returns CLUSTERS — never raw rows. Wraps
|
|
150
|
+
* `POST /api/ai/incidents/search`. At least one of `query`,
|
|
151
|
+
* `patternHashes`, `incidentTypes`, `frameworks` must be present.
|
|
152
|
+
*/
|
|
153
|
+
search(input, options) {
|
|
154
|
+
return this.client._request({
|
|
155
|
+
method: "POST",
|
|
156
|
+
path: "/api/ai/incidents/search",
|
|
157
|
+
body: input,
|
|
158
|
+
options,
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Synchronously verify a query-string value is encodable via
|
|
164
|
+
* `encodeURIComponent`. The platform throws `URIError` for malformed
|
|
165
|
+
* UTF-16 (lone surrogates such as `\uD800` / `\uDFFF`); the transport's
|
|
166
|
+
* `encodeQuery` does NOT catch it, so without this guard the failure
|
|
167
|
+
* leaks into `incidents.list` as a raw `URIError` — inconsistent with
|
|
168
|
+
* `incidents.update` (which already converts URIError → TypeError on
|
|
169
|
+
* the path-segment encoding) and with the decisions.* resources hardened
|
|
170
|
+
* in commits 0428777 / 85064c0.
|
|
171
|
+
*
|
|
172
|
+
* Cause-chained for debugging. Mirrors `assertEncodableQueryString` in
|
|
173
|
+
* resources/decisions.ts (deliberately duplicated rather than shared
|
|
174
|
+
* via a new helpers module — small function, two call sites today,
|
|
175
|
+
* extracting on a third).
|
|
176
|
+
*/
|
|
177
|
+
function assertEncodableIncidentQueryString(value, fieldName) {
|
|
178
|
+
try {
|
|
179
|
+
encodeURIComponent(value);
|
|
180
|
+
}
|
|
181
|
+
catch (err) {
|
|
182
|
+
throw new TypeError(`incidents.list: \`${fieldName}\` contains invalid UTF-16 sequences (${
|
|
183
|
+
// encodeURIComponent always throws URIError (an Error subclass),
|
|
184
|
+
// so the String(err) branch is unreachable. Defense-in-depth
|
|
185
|
+
// marker for the v8 coverage tool.
|
|
186
|
+
/* v8 ignore next */
|
|
187
|
+
err instanceof Error ? err.message : String(err)})`, { cause: err });
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Human-readable type description for response-shape error messages.
|
|
192
|
+
* Distinguishes `null` and `array` from generic `object`.
|
|
193
|
+
*
|
|
194
|
+
* Duplicated in `decisions.ts` and `regulatory-changes.ts` per
|
|
195
|
+
* project pattern (small helper, leaf-resource modules).
|
|
196
|
+
*/
|
|
197
|
+
function describeType(value) {
|
|
198
|
+
if (value === null)
|
|
199
|
+
return "null";
|
|
200
|
+
if (Array.isArray(value))
|
|
201
|
+
return "array";
|
|
202
|
+
return typeof value;
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* P2 hardening: validate the kernel's `incidents.list` response
|
|
206
|
+
* shape. Mirrors `assertDecisionsListResponse` in `decisions.ts`.
|
|
207
|
+
*
|
|
208
|
+
* The kernel emits `{success:true, data:{items: Incident[],
|
|
209
|
+
* nextCursor: string|null}}`. After transport envelope-unwrap, we
|
|
210
|
+
* receive `{items, nextCursor}`. Asserts:
|
|
211
|
+
* - non-null, non-array object
|
|
212
|
+
* - `items` is an array
|
|
213
|
+
* - `nextCursor` is string OR null
|
|
214
|
+
*
|
|
215
|
+
* Per-row item shape NOT validated (faithful-courier).
|
|
216
|
+
*/
|
|
217
|
+
function assertIncidentsListResponse(raw) {
|
|
218
|
+
if (raw === null || typeof raw !== "object" || Array.isArray(raw)) {
|
|
219
|
+
throw new AttestryError(`incidents.list: expected an object response from the kernel (got ${describeType(raw)})`);
|
|
220
|
+
}
|
|
221
|
+
const obj = raw;
|
|
222
|
+
if (!Array.isArray(obj.items)) {
|
|
223
|
+
throw new AttestryError(`incidents.list: kernel response missing or invalid \`items\` array (got ${describeType(obj.items)})`);
|
|
224
|
+
}
|
|
225
|
+
if (obj.nextCursor !== null && typeof obj.nextCursor !== "string") {
|
|
226
|
+
throw new AttestryError(`incidents.list: kernel response \`nextCursor\` must be string or null (got ${describeType(obj.nextCursor)})`);
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
//# sourceMappingURL=incidents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"incidents.js","sourceRoot":"","sources":["../../src/resources/incidents.ts"],"names":[],"mappings":"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"}
|