@x12i/map-store-client 0.1.4 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -0
- package/dist/estate/analytics.d.ts +10 -1
- package/dist/estate/analytics.d.ts.map +1 -1
- package/dist/estate/analytics.js +28 -15
- package/dist/estate/analytics.js.map +1 -1
- package/dist/estate/census.d.ts +9 -1
- package/dist/estate/census.d.ts.map +1 -1
- package/dist/estate/census.js +28 -19
- package/dist/estate/census.js.map +1 -1
- package/dist/estate/content.d.ts +17 -3
- package/dist/estate/content.d.ts.map +1 -1
- package/dist/estate/content.js +52 -27
- package/dist/estate/content.js.map +1 -1
- package/dist/estate/contract.d.ts +12 -0
- package/dist/estate/contract.d.ts.map +1 -1
- package/dist/estate/contract.js +33 -0
- package/dist/estate/contract.js.map +1 -1
- package/dist/estate/index.d.ts +10 -6
- package/dist/estate/index.d.ts.map +1 -1
- package/dist/estate/index.js +7 -5
- package/dist/estate/index.js.map +1 -1
- package/dist/estate/readState.d.ts +35 -0
- package/dist/estate/readState.d.ts.map +1 -0
- package/dist/estate/readState.js +65 -0
- package/dist/estate/readState.js.map +1 -0
- package/dist/estate/stories.d.ts +9 -1
- package/dist/estate/stories.d.ts.map +1 -1
- package/dist/estate/stories.js +27 -18
- package/dist/estate/stories.js.map +1 -1
- package/dist/estate/verdictReason.d.ts +17 -0
- package/dist/estate/verdictReason.d.ts.map +1 -0
- package/dist/estate/verdictReason.js +49 -0
- package/dist/estate/verdictReason.js.map +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -183,3 +183,13 @@ The estate census board, where a page shows one, is `loadTier0Census(data, 'esta
|
|
|
183
183
|
4. When the run stops, `loadRecordContents(catalog, objectType, recordId)` then `buildLocalStory(template, objectType, contents)`. One `listRecords` call with `representation: 'both'`.
|
|
184
184
|
|
|
185
185
|
`declaringObjectTypes(contentType)` and `skillsContentTypes(objectType)` are the contract behind the lists: which object types declare which content types, and which discriminator values a row may carry. `requiredDiscriminator` reads the installed pack and names the instance a single-record read must send, so the API does not reject it with `READ_DISCRIMINATOR_REQUIRED`.
|
|
186
|
+
|
|
187
|
+
### Read states
|
|
188
|
+
|
|
189
|
+
`classifyReadError` and `isPlaceholderRecord` sort a Memorix answer into `declared-empty` (404), `undeclared` (`400 ROUTE_UNKNOWN_CONTENT_TYPE`), `placeholder` (a body whose `disposition` is `empty-from-frozen-bag` or `unavailable`), or `error`. `UNPUBLISHED_BY_AGENT` is the sentence for the last two that are not failures.
|
|
190
|
+
|
|
191
|
+
Errors are read from `status` or `statusCode`, so a `MemorixClientError` from `@x12i/memorix-client` classifies the same as this package's own errors. The code is read from `body.error.code`, then `body.code`.
|
|
192
|
+
|
|
193
|
+
`readContentResult`, `listContentResult`, `readEstateAnalyticsResult`, `loadTier0CensusResult`, and `readStoredStoryResult` return `{ state, data }`. The older functions still return the row or `null`. A placeholder land is `null` from those, not a rollup. `verdictReasonView(rows, verdict)` is the finding-drawer text: summary, evidence, and gaps, with a failed skill run dropped.
|
|
194
|
+
|
|
195
|
+
`CONSUMER_MANIFEST` is every `{ objectType, contentType }` these pages read, including `finding` / `verdict-reason`, `story`, and `tier0-analytics`. Compare it with the installed pack to list what the agent has not declared.
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* Both are single Memorix reads. Neither is a working product.
|
|
4
4
|
*/
|
|
5
5
|
import type { EstateAnalyticsApi, EstateData } from './client';
|
|
6
|
+
import { type ReadResult } from './readState';
|
|
6
7
|
export declare const ESTATE_ANALYTICS_TARGET: {
|
|
7
8
|
readonly objectType: "security-map";
|
|
8
9
|
readonly contentType: "estate-analytics";
|
|
@@ -11,7 +12,15 @@ export declare const ESTATE_ANALYTICS_TARGET: {
|
|
|
11
12
|
};
|
|
12
13
|
/**
|
|
13
14
|
* `data` of `working/estate-analytics`.
|
|
14
|
-
*
|
|
15
|
+
* `placeholder` is a land such as `empty-from-frozen-bag`: the address is taken and the rollup is not published.
|
|
16
|
+
* `declared-empty` is a 404. `undeclared` means the pack does not register the content type.
|
|
17
|
+
*/
|
|
18
|
+
export declare function readEstateAnalyticsResult(client: EstateData, signal?: AbortSignal): Promise<ReadResult<Record<string, unknown>>>;
|
|
19
|
+
/**
|
|
20
|
+
* `data` of `working/estate-analytics`.
|
|
21
|
+
* Null when the record is missing, the content type is not registered, or the
|
|
22
|
+
* body is a placeholder land. Any other error is thrown.
|
|
23
|
+
* Use {@link readEstateAnalyticsResult} to tell those apart.
|
|
15
24
|
*/
|
|
16
25
|
export declare function readEstateAnalytics(client: EstateData, signal?: AbortSignal): Promise<Record<string, unknown> | null>;
|
|
17
26
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../src/estate/analytics.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../src/estate/analytics.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE/D,OAAO,EAA0C,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAEtF,eAAO,MAAM,uBAAuB;;;;;CAK1B,CAAC;AAEX;;;;GAIG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,UAAU,EAClB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAc9C;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,UAAU,EAClB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAIzC;AAsBD;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAsBpE;AAED,2EAA2E;AAC3E,eAAO,MAAM,kBAAkB;;;;;;;;EAGrB,CAAC;AAEX;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,kBAAkB,EAC7B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CASzC"}
|
package/dist/estate/analytics.js
CHANGED
|
@@ -4,38 +4,51 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { asRecord } from '../util';
|
|
6
6
|
import { contentData } from './content';
|
|
7
|
+
import { classifyReadError, isPlaceholderRecord } from './readState';
|
|
7
8
|
export const ESTATE_ANALYTICS_TARGET = {
|
|
8
9
|
objectType: 'security-map',
|
|
9
10
|
contentType: 'estate-analytics',
|
|
10
11
|
recordId: 'working/estate-analytics',
|
|
11
12
|
discriminatorValue: 'publication',
|
|
12
13
|
};
|
|
13
|
-
function absent(err) {
|
|
14
|
-
const status = err?.status;
|
|
15
|
-
if (status === 404)
|
|
16
|
-
return true;
|
|
17
|
-
const code = asRecord(asRecord(err.body)?.error)?.code;
|
|
18
|
-
return status === 400 && code === 'ROUTE_UNKNOWN_CONTENT_TYPE';
|
|
19
|
-
}
|
|
20
14
|
/**
|
|
21
15
|
* `data` of `working/estate-analytics`.
|
|
22
|
-
*
|
|
16
|
+
* `placeholder` is a land such as `empty-from-frozen-bag`: the address is taken and the rollup is not published.
|
|
17
|
+
* `declared-empty` is a 404. `undeclared` means the pack does not register the content type.
|
|
23
18
|
*/
|
|
24
|
-
export async function
|
|
19
|
+
export async function readEstateAnalyticsResult(client, signal) {
|
|
25
20
|
if (signal?.aborted)
|
|
26
|
-
return null;
|
|
21
|
+
return { state: 'declared-empty', data: null };
|
|
27
22
|
try {
|
|
28
23
|
const page = await client.getContent({ ...ESTATE_ANALYTICS_TARGET });
|
|
29
24
|
if (signal?.aborted)
|
|
30
|
-
return null;
|
|
31
|
-
|
|
25
|
+
return { state: 'declared-empty', data: null };
|
|
26
|
+
const data = contentData(page);
|
|
27
|
+
if (!data)
|
|
28
|
+
return { state: 'declared-empty', data: null };
|
|
29
|
+
if (isPlaceholderRecord(data))
|
|
30
|
+
return { state: 'placeholder', data: null };
|
|
31
|
+
return { state: 'ready', data };
|
|
32
32
|
}
|
|
33
33
|
catch (err) {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
const kind = classifyReadError(err);
|
|
35
|
+
if (kind === 'error')
|
|
36
|
+
return { state: 'error', data: null, error: err };
|
|
37
|
+
return { state: kind, data: null };
|
|
37
38
|
}
|
|
38
39
|
}
|
|
40
|
+
/**
|
|
41
|
+
* `data` of `working/estate-analytics`.
|
|
42
|
+
* Null when the record is missing, the content type is not registered, or the
|
|
43
|
+
* body is a placeholder land. Any other error is thrown.
|
|
44
|
+
* Use {@link readEstateAnalyticsResult} to tell those apart.
|
|
45
|
+
*/
|
|
46
|
+
export async function readEstateAnalytics(client, signal) {
|
|
47
|
+
const result = await readEstateAnalyticsResult(client, signal);
|
|
48
|
+
if (result.state === 'error')
|
|
49
|
+
throw result.error;
|
|
50
|
+
return result.data;
|
|
51
|
+
}
|
|
39
52
|
const TRIAGE_DECISIONS = ['FIX_NOW', 'PATCH_NOW', 'MITIGATE', 'ACCEPT_RISK'];
|
|
40
53
|
function readCount(leaf) {
|
|
41
54
|
if (typeof leaf === 'number' && Number.isFinite(leaf))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../src/estate/analytics.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../src/estate/analytics.ts"],"names":[],"mappings":"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"}
|
package/dist/estate/census.d.ts
CHANGED
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
* A missing field is the bucket `absent`. A missing KEV flag is `absent`, not `false`.
|
|
13
13
|
*/
|
|
14
14
|
import type { EstateData } from './client';
|
|
15
|
+
import { type ReadResult } from './readState';
|
|
15
16
|
export type Tier0Metric = {
|
|
16
17
|
value: number;
|
|
17
18
|
produced: boolean;
|
|
@@ -99,7 +100,14 @@ export declare function censusOrLander(censusReady: boolean, censusRow: object |
|
|
|
99
100
|
export declare function parseTier0Census(page: unknown, kind: Tier0Census['kind']): Tier0Census | null;
|
|
100
101
|
/**
|
|
101
102
|
* One client-API read of `security-map` / `tier0-analytics`.
|
|
102
|
-
*
|
|
103
|
+
* `declared-empty` is a missing record. `undeclared` means the content type is not registered.
|
|
104
|
+
* `placeholder` is a land with no census. A transport failure is `error` and is not logged here.
|
|
105
|
+
*/
|
|
106
|
+
export declare function loadTier0CensusResult(client: EstateData, board: Tier0BoardId, signal?: AbortSignal): Promise<ReadResult<Tier0Census>>;
|
|
107
|
+
/**
|
|
108
|
+
* One client-API read of `security-map` / `tier0-analytics`.
|
|
109
|
+
* A missing record, an unregistered content type, a placeholder land, or a failed read yields null.
|
|
110
|
+
* Use {@link loadTier0CensusResult} to tell those apart.
|
|
103
111
|
*/
|
|
104
112
|
export declare function loadTier0Census(client: EstateData, board: Tier0BoardId, signal?: AbortSignal): Promise<Tier0Census | null>;
|
|
105
113
|
/** Dialog lookup. `rows[].id` is the lander record id. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"census.d.ts","sourceRoot":"","sources":["../../src/estate/census.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"census.d.ts","sourceRoot":"","sources":["../../src/estate/census.ts"],"names":[],"mappings":"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"}
|
package/dist/estate/census.js
CHANGED
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
import { asRecord } from '../util';
|
|
15
15
|
import { contentData } from './content';
|
|
16
16
|
import { objectIdBody } from './ids';
|
|
17
|
+
import { classifyReadError, isPlaceholderRecord } from './readState';
|
|
17
18
|
export const EMPTY_VULNERABILITY_ROWS = [];
|
|
18
19
|
export const EMPTY_ASSET_ROWS = [];
|
|
19
20
|
export const TIER0_TARGETS = {
|
|
@@ -193,25 +194,16 @@ export function parseTier0Census(page, kind) {
|
|
|
193
194
|
groups,
|
|
194
195
|
};
|
|
195
196
|
}
|
|
196
|
-
/** A missing record (404) or a content type the pack does not register. Any client error with `.status` qualifies. */
|
|
197
|
-
function isAbsent(err) {
|
|
198
|
-
const status = err?.status;
|
|
199
|
-
if (typeof status !== 'number')
|
|
200
|
-
return false;
|
|
201
|
-
if (status === 404)
|
|
202
|
-
return true;
|
|
203
|
-
const error = asRecord(asRecord(err.body)?.error);
|
|
204
|
-
return status === 400 && error?.code === 'ROUTE_UNKNOWN_CONTENT_TYPE';
|
|
205
|
-
}
|
|
206
197
|
/**
|
|
207
198
|
* One client-API read of `security-map` / `tier0-analytics`.
|
|
208
|
-
*
|
|
199
|
+
* `declared-empty` is a missing record. `undeclared` means the content type is not registered.
|
|
200
|
+
* `placeholder` is a land with no census. A transport failure is `error` and is not logged here.
|
|
209
201
|
*/
|
|
210
|
-
export async function
|
|
202
|
+
export async function loadTier0CensusResult(client, board, signal) {
|
|
211
203
|
const target = TIER0_TARGETS[board];
|
|
204
|
+
if (signal?.aborted)
|
|
205
|
+
return { state: 'declared-empty', data: null };
|
|
212
206
|
try {
|
|
213
|
-
if (signal?.aborted)
|
|
214
|
-
return null;
|
|
215
207
|
const page = await client.getContent({
|
|
216
208
|
objectType: 'security-map',
|
|
217
209
|
contentType: 'tier0-analytics',
|
|
@@ -219,15 +211,32 @@ export async function loadTier0Census(client, board, signal) {
|
|
|
219
211
|
discriminatorValue: target.kind,
|
|
220
212
|
});
|
|
221
213
|
if (signal?.aborted)
|
|
222
|
-
return null;
|
|
223
|
-
|
|
214
|
+
return { state: 'declared-empty', data: null };
|
|
215
|
+
const body = contentData(page);
|
|
216
|
+
if (isPlaceholderRecord(body))
|
|
217
|
+
return { state: 'placeholder', data: null };
|
|
218
|
+
const parsed = parseTier0Census(page, target.kind);
|
|
219
|
+
return parsed ? { state: 'ready', data: parsed } : { state: 'declared-empty', data: null };
|
|
224
220
|
}
|
|
225
221
|
catch (err) {
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
222
|
+
const kind = classifyReadError(err);
|
|
223
|
+
if (kind === 'error')
|
|
224
|
+
return { state: 'error', data: null, error: err };
|
|
225
|
+
return { state: kind, data: null };
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* One client-API read of `security-map` / `tier0-analytics`.
|
|
230
|
+
* A missing record, an unregistered content type, a placeholder land, or a failed read yields null.
|
|
231
|
+
* Use {@link loadTier0CensusResult} to tell those apart.
|
|
232
|
+
*/
|
|
233
|
+
export async function loadTier0Census(client, board, signal) {
|
|
234
|
+
const result = await loadTier0CensusResult(client, board, signal);
|
|
235
|
+
if (result.state === 'error') {
|
|
236
|
+
console.warn(`tier0-analytics ${TIER0_TARGETS[board].recordId} unavailable`, result.error);
|
|
229
237
|
return null;
|
|
230
238
|
}
|
|
239
|
+
return result.data;
|
|
231
240
|
}
|
|
232
241
|
/** Dialog lookup. `rows[].id` is the lander record id. */
|
|
233
242
|
export function censusEntryById(rows, id) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"census.js","sourceRoot":"","sources":["../../src/estate/census.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"census.js","sourceRoot":"","sources":["../../src/estate/census.ts"],"names":[],"mappings":"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"}
|
package/dist/estate/content.d.ts
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* The scope reason lives on the envelope `_metadata`, so each row carries it out.
|
|
5
5
|
*/
|
|
6
6
|
import type { ContentFilter, EstateCatalog, EstateData } from './client';
|
|
7
|
+
import { type ReadResult } from './readState';
|
|
7
8
|
export type ContentData = Record<string, unknown>;
|
|
8
9
|
/** A Memorix document envelope. Its facts are `data`, never the envelope itself. */
|
|
9
10
|
export declare function isDocumentEnvelope(value: Record<string, unknown>): boolean;
|
|
@@ -39,8 +40,14 @@ export type ListContentInput = {
|
|
|
39
40
|
};
|
|
40
41
|
/**
|
|
41
42
|
* Every record of one content type on one object type, following `pageInfo.nextCursor`.
|
|
42
|
-
*
|
|
43
|
-
* Anything else is
|
|
43
|
+
* `declared-empty` is a 404. `undeclared` is a content type the pack does not register.
|
|
44
|
+
* A placeholder land is `placeholder` and carries no rows. Anything else is `error`.
|
|
45
|
+
*/
|
|
46
|
+
export declare function listContentResult(client: EstateData, input: ListContentInput): Promise<ReadResult<ContentRow[]>>;
|
|
47
|
+
/**
|
|
48
|
+
* Every record of one content type on one object type, following `pageInfo.nextCursor`.
|
|
49
|
+
* A 404, an undeclared content type, or a placeholder land is an empty list.
|
|
50
|
+
* Anything else is thrown. Use {@link listContentResult} to tell those apart.
|
|
44
51
|
*/
|
|
45
52
|
export declare function listContent(client: EstateData, input: ListContentInput): Promise<ContentRow[]>;
|
|
46
53
|
export type ReadContentInput = {
|
|
@@ -51,7 +58,14 @@ export type ReadContentInput = {
|
|
|
51
58
|
};
|
|
52
59
|
/**
|
|
53
60
|
* One record. Names the discriminator instance when the pack marks it required.
|
|
54
|
-
*
|
|
61
|
+
* `declared-empty` is a miss. `undeclared` means the pack does not register the content type.
|
|
62
|
+
* `placeholder` is a land that occupies the address without a product.
|
|
63
|
+
*/
|
|
64
|
+
export declare function readContentResult(data: EstateData, catalog: EstateCatalog, input: ReadContentInput): Promise<ReadResult<ContentRow>>;
|
|
65
|
+
/**
|
|
66
|
+
* One record. Names the discriminator instance when the pack marks it required.
|
|
67
|
+
* A miss, an undeclared content type, or a placeholder land is null.
|
|
68
|
+
* Anything else is thrown. Use {@link readContentResult} to tell those apart.
|
|
55
69
|
*/
|
|
56
70
|
export declare function readContent(data: EstateData, catalog: EstateCatalog, input: ReadContentInput): Promise<ContentRow | null>;
|
|
57
71
|
export type RecordContentInput = ReadContentInput & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../src/estate/content.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAe,aAAa,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../src/estate/content.ts"],"names":[],"mappings":"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"}
|
package/dist/estate/content.js
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* The scope reason lives on the envelope `_metadata`, so each row carries it out.
|
|
5
5
|
*/
|
|
6
6
|
import { requiredDiscriminator } from './pack';
|
|
7
|
+
import { classifyReadError, isPlaceholderRecord } from './readState';
|
|
7
8
|
function asRecord(value) {
|
|
8
9
|
return value && typeof value === 'object' && !Array.isArray(value)
|
|
9
10
|
? value
|
|
@@ -97,10 +98,10 @@ function nextCursor(page) {
|
|
|
97
98
|
}
|
|
98
99
|
/**
|
|
99
100
|
* Every record of one content type on one object type, following `pageInfo.nextCursor`.
|
|
100
|
-
*
|
|
101
|
-
* Anything else is
|
|
101
|
+
* `declared-empty` is a 404. `undeclared` is a content type the pack does not register.
|
|
102
|
+
* A placeholder land is `placeholder` and carries no rows. Anything else is `error`.
|
|
102
103
|
*/
|
|
103
|
-
export async function
|
|
104
|
+
export async function listContentResult(client, input) {
|
|
104
105
|
const rows = [];
|
|
105
106
|
const pageSize = input.pageSize ?? 200;
|
|
106
107
|
const maxPages = input.maxPages ?? 20;
|
|
@@ -119,33 +120,40 @@ export async function listContent(client, input) {
|
|
|
119
120
|
res = await client.listContent(query);
|
|
120
121
|
}
|
|
121
122
|
catch (err) {
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
123
|
+
const kind = classifyReadError(err);
|
|
124
|
+
if (kind === 'error')
|
|
125
|
+
return { state: 'error', data: null, error: err };
|
|
126
|
+
if (rows.length > 0)
|
|
127
|
+
return { state: 'ready', data: rows };
|
|
128
|
+
return { state: kind, data: null };
|
|
125
129
|
}
|
|
130
|
+
if (rows.length === 0 && isPlaceholderRecord(res))
|
|
131
|
+
return { state: 'placeholder', data: null };
|
|
126
132
|
rows.push(...rowsFrom(res));
|
|
127
133
|
const next = nextCursor(res);
|
|
128
134
|
if (!next)
|
|
129
135
|
break;
|
|
130
136
|
cursor = next;
|
|
131
137
|
}
|
|
132
|
-
return rows;
|
|
133
|
-
}
|
|
134
|
-
/**
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
138
|
+
return { state: 'ready', data: rows };
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Every record of one content type on one object type, following `pageInfo.nextCursor`.
|
|
142
|
+
* A 404, an undeclared content type, or a placeholder land is an empty list.
|
|
143
|
+
* Anything else is thrown. Use {@link listContentResult} to tell those apart.
|
|
144
|
+
*/
|
|
145
|
+
export async function listContent(client, input) {
|
|
146
|
+
const result = await listContentResult(client, input);
|
|
147
|
+
if (result.state === 'error')
|
|
148
|
+
throw result.error;
|
|
149
|
+
return result.data ?? [];
|
|
143
150
|
}
|
|
144
151
|
/**
|
|
145
152
|
* One record. Names the discriminator instance when the pack marks it required.
|
|
146
|
-
*
|
|
153
|
+
* `declared-empty` is a miss. `undeclared` means the pack does not register the content type.
|
|
154
|
+
* `placeholder` is a land that occupies the address without a product.
|
|
147
155
|
*/
|
|
148
|
-
export async function
|
|
156
|
+
export async function readContentResult(data, catalog, input) {
|
|
149
157
|
const required = await requiredDiscriminator(catalog, input.objectType, input.contentType);
|
|
150
158
|
let page;
|
|
151
159
|
try {
|
|
@@ -158,20 +166,37 @@ export async function readContent(data, catalog, input) {
|
|
|
158
166
|
});
|
|
159
167
|
}
|
|
160
168
|
catch (err) {
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
169
|
+
const kind = classifyReadError(err);
|
|
170
|
+
if (kind === 'error')
|
|
171
|
+
return { state: 'error', data: null, error: err };
|
|
172
|
+
return { state: kind, data: null };
|
|
164
173
|
}
|
|
165
174
|
const body = contentData(page);
|
|
166
175
|
if (!body)
|
|
167
|
-
return null;
|
|
176
|
+
return { state: 'declared-empty', data: null };
|
|
177
|
+
if (isPlaceholderRecord(body))
|
|
178
|
+
return { state: 'placeholder', data: null };
|
|
168
179
|
return {
|
|
169
|
-
|
|
170
|
-
data:
|
|
171
|
-
|
|
172
|
-
|
|
180
|
+
state: 'ready',
|
|
181
|
+
data: {
|
|
182
|
+
recordId: input.recordId,
|
|
183
|
+
data: body,
|
|
184
|
+
markdown: input.includeMarkdown ? documentMarkdown(page) : null,
|
|
185
|
+
scopeReason: readScopeReason(page),
|
|
186
|
+
},
|
|
173
187
|
};
|
|
174
188
|
}
|
|
189
|
+
/**
|
|
190
|
+
* One record. Names the discriminator instance when the pack marks it required.
|
|
191
|
+
* A miss, an undeclared content type, or a placeholder land is null.
|
|
192
|
+
* Anything else is thrown. Use {@link readContentResult} to tell those apart.
|
|
193
|
+
*/
|
|
194
|
+
export async function readContent(data, catalog, input) {
|
|
195
|
+
const result = await readContentResult(data, catalog, input);
|
|
196
|
+
if (result.state === 'error')
|
|
197
|
+
throw result.error;
|
|
198
|
+
return result.data;
|
|
199
|
+
}
|
|
175
200
|
/**
|
|
176
201
|
* Every sibling of one content type on one record.
|
|
177
202
|
* `getContent` answers 404 when several records share the id, so this lists with a filter instead.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content.js","sourceRoot":"","sources":["../../src/estate/content.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,qBAAqB,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"content.js","sourceRoot":"","sources":["../../src/estate/content.ts"],"names":[],"mappings":"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"}
|
|
@@ -61,4 +61,16 @@ export declare const MITIGATION_LIST: ContentListSpec;
|
|
|
61
61
|
export declare function isMitigationPlan(data: Record<string, unknown>): boolean;
|
|
62
62
|
/** `data.predictionType` is one of the predicted-attack discriminators. */
|
|
63
63
|
export declare function isPredictedAttack(data: Record<string, unknown>): boolean;
|
|
64
|
+
/** One content type this consumer reads. The pack lint compares this list with installed metadata. */
|
|
65
|
+
export type ConsumerRead = {
|
|
66
|
+
objectType: string;
|
|
67
|
+
contentType: string;
|
|
68
|
+
};
|
|
69
|
+
/**
|
|
70
|
+
* Content types the pages read, one pair per object type.
|
|
71
|
+
* This is the skills contract, the story tab, the finding verdict, and the census.
|
|
72
|
+
* It is not the lander catalog: a collection that exists on one subject and not another
|
|
73
|
+
* is not a missing read.
|
|
74
|
+
*/
|
|
75
|
+
export declare const CONSUMER_MANIFEST: readonly ConsumerRead[];
|
|
64
76
|
//# sourceMappingURL=contract.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/estate/contract.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE5C,MAAM,MAAM,aAAa,GAAG;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,yEAAyE;IACzE,GAAG,EAAE,OAAO,CAAC;CACd,CAAC;AA2KF,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAKhE;AAED,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,EAAE,CAEtE;AAED,+EAA+E;AAC/E,wBAAgB,mBAAmB,IAAI;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,EAAE,CAInF;AAED,yGAAyG;AACzG,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,EAAE,CAAA;CAAE,EAAE,CAM5G;AAED,mGAAmG;AACnG,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAG/D;AAED,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAE5F;AAED,8GAA8G;AAC9G,wBAAgB,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAIhF;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,UAAU,EAAE,MAAM,GACjB,gBAAgB,GAAG,cAAc,GAAG,aAAa,GAAG,IAAI,CAM1D;AAED,oGAAoG;AACpG,MAAM,MAAM,eAAe,GAAG;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,iFAAiF;IACjF,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,kFAAkF;IAClF,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,CAAC;AAYF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,EAAE,eAAgE,CAAC;AAErG;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,eAA0D,CAAC;AAEzF,uFAAuF;AACvF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAOvE;AAED,2EAA2E;AAC3E,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAExE"}
|
|
1
|
+
{"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/estate/contract.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE5C,MAAM,MAAM,aAAa,GAAG;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,yEAAyE;IACzE,GAAG,EAAE,OAAO,CAAC;CACd,CAAC;AA2KF,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAKhE;AAED,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,EAAE,CAEtE;AAED,+EAA+E;AAC/E,wBAAgB,mBAAmB,IAAI;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,EAAE,CAInF;AAED,yGAAyG;AACzG,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,EAAE,CAAA;CAAE,EAAE,CAM5G;AAED,mGAAmG;AACnG,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAG/D;AAED,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAE5F;AAED,8GAA8G;AAC9G,wBAAgB,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAIhF;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,UAAU,EAAE,MAAM,GACjB,gBAAgB,GAAG,cAAc,GAAG,aAAa,GAAG,IAAI,CAM1D;AAED,oGAAoG;AACpG,MAAM,MAAM,eAAe,GAAG;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,iFAAiF;IACjF,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,kFAAkF;IAClF,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,CAAC;AAYF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,EAAE,eAAgE,CAAC;AAErG;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,eAA0D,CAAC;AAEzF,uFAAuF;AACvF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAOvE;AAED,2EAA2E;AAC3E,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAExE;AAED,sGAAsG;AACtG,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAwBF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,EAAE,SAAS,YAAY,EAKnD,CAAC"}
|
package/dist/estate/contract.js
CHANGED
|
@@ -255,4 +255,37 @@ export function isMitigationPlan(data) {
|
|
|
255
255
|
export function isPredictedAttack(data) {
|
|
256
256
|
return PREDICTED_ATTACK_LIST.acceptValues.includes(String(data.predictionType ?? ''));
|
|
257
257
|
}
|
|
258
|
+
/** Object types whose Story tab reads content type `story`. */
|
|
259
|
+
const STORY_OBJECTS = [
|
|
260
|
+
'endpoint-asset',
|
|
261
|
+
'finding',
|
|
262
|
+
'alert',
|
|
263
|
+
'network-device',
|
|
264
|
+
'network-zone',
|
|
265
|
+
'unresolved-subject',
|
|
266
|
+
'vulnerability',
|
|
267
|
+
'security-map',
|
|
268
|
+
];
|
|
269
|
+
function uniqueReads(rows) {
|
|
270
|
+
const seen = new Set();
|
|
271
|
+
return rows.filter((row) => {
|
|
272
|
+
const key = `${row.objectType}/${row.contentType}`;
|
|
273
|
+
if (seen.has(key))
|
|
274
|
+
return false;
|
|
275
|
+
seen.add(key);
|
|
276
|
+
return true;
|
|
277
|
+
});
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Content types the pages read, one pair per object type.
|
|
281
|
+
* This is the skills contract, the story tab, the finding verdict, and the census.
|
|
282
|
+
* It is not the lander catalog: a collection that exists on one subject and not another
|
|
283
|
+
* is not a missing read.
|
|
284
|
+
*/
|
|
285
|
+
export const CONSUMER_MANIFEST = uniqueReads([
|
|
286
|
+
...skillsRecordTargets(),
|
|
287
|
+
...STORY_OBJECTS.map((objectType) => ({ objectType, contentType: 'story' })),
|
|
288
|
+
{ objectType: 'finding', contentType: 'verdict-reason' },
|
|
289
|
+
{ objectType: 'security-map', contentType: 'tier0-analytics' },
|
|
290
|
+
]);
|
|
258
291
|
//# sourceMappingURL=contract.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/estate/contract.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/estate/contract.ts"],"names":[],"mappings":"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"}
|
package/dist/estate/index.d.ts
CHANGED
|
@@ -4,23 +4,27 @@
|
|
|
4
4
|
* and the story pipeline. Pass in the Memorix read client you build yourself.
|
|
5
5
|
* See the package README for which call feeds which page.
|
|
6
6
|
*/
|
|
7
|
-
export { synapixContentTypes, skillsContentTypes, skillsRecordTargets, declaringObjectTypes, otherContractTypes, skillsContract, ownerOf, triageInstance, PREDICTED_ATTACK_LIST, MITIGATION_LIST, isMitigationPlan, isPredictedAttack, } from './contract';
|
|
8
|
-
export type { DataSide, SkillsContent, ContentListSpec } from './contract';
|
|
7
|
+
export { synapixContentTypes, skillsContentTypes, skillsRecordTargets, declaringObjectTypes, otherContractTypes, skillsContract, ownerOf, triageInstance, PREDICTED_ATTACK_LIST, MITIGATION_LIST, isMitigationPlan, isPredictedAttack, CONSUMER_MANIFEST, } from './contract';
|
|
8
|
+
export type { DataSide, SkillsContent, ContentListSpec, ConsumerRead } from './contract';
|
|
9
9
|
export type { ContentFilter, ContentRead, EstateData, EstateCatalog, EstateAnalyticsApi, ObjectTypeFunction, } from './client';
|
|
10
10
|
export { objectIdBody } from './ids';
|
|
11
|
-
export { isDocumentEnvelope, contentData, documentMarkdown, readScopeReason, listContent, readContent, listRecordContent, inventoryDisplayName, } from './content';
|
|
11
|
+
export { isDocumentEnvelope, contentData, documentMarkdown, readScopeReason, listContent, listContentResult, readContent, readContentResult, listRecordContent, inventoryDisplayName, } from './content';
|
|
12
12
|
export type { ContentData, ContentRow, ListContentInput, ReadContentInput, RecordContentInput, } from './content';
|
|
13
13
|
export { contentTypesOf, loadPackListing, requiredDiscriminator } from './pack';
|
|
14
14
|
export type { PackDiscriminator, PackContentType, PackListing, RequiredDiscriminator } from './pack';
|
|
15
15
|
export { RESPONSE_URGENCIES, NOT_APPLICABLE, responseUrgency, priorityOf, hasDecisionId, loadAssetDecisionIds, loadAssetUrgencies, } from './decisions';
|
|
16
16
|
export type { ResponseUrgency, TriageStatusCode, AssetDecisionQuery } from './decisions';
|
|
17
|
-
export { ESTATE_ANALYTICS_TARGET, readEstateAnalytics, estateAnalyticsSuppliesTallies, TRIAGE_TALLY_LISTS, readSourceCensus, } from './analytics';
|
|
18
|
-
export { TIER0_TARGETS, tier0Value, publishedCount, censusOrLander, parseTier0Census, loadTier0Census, censusEntryById, vulnerabilityEntryForCve, EMPTY_VULNERABILITY_ROWS, EMPTY_ASSET_ROWS, } from './census';
|
|
17
|
+
export { ESTATE_ANALYTICS_TARGET, readEstateAnalytics, readEstateAnalyticsResult, estateAnalyticsSuppliesTallies, TRIAGE_TALLY_LISTS, readSourceCensus, } from './analytics';
|
|
18
|
+
export { TIER0_TARGETS, tier0Value, publishedCount, censusOrLander, parseTier0Census, loadTier0Census, loadTier0CensusResult, censusEntryById, vulnerabilityEntryForCve, EMPTY_VULNERABILITY_ROWS, EMPTY_ASSET_ROWS, } from './census';
|
|
19
19
|
export type { Tier0Metric, MetricMap, VulnerabilityCensusRow, AssetCensusRow, VulnerabilityCensus, AssetCensus, EstateCensus, Tier0Census, Tier0BoardId, } from './census';
|
|
20
|
-
export { storyTabsFrom, loadStoryTabs, readStoredStory, runStoryFunction, } from './stories';
|
|
20
|
+
export { storyTabsFrom, loadStoryTabs, readStoredStory, readStoredStoryResult, runStoryFunction, } from './stories';
|
|
21
21
|
export type { StoryTab, StoryTabs, StoredStory, StoryFunctionResult, StoryRun, StoryRunOptions, } from './stories';
|
|
22
22
|
export { PREDICTED_ATTACK_TEMPLATE, predictedAttackReady, tacticColumn, predictionDiagram, predictionStepFrom, predictionStepsFrom, subjectRefOf, } from './predictedAttack';
|
|
23
23
|
export type { PredictionControl, PredictionAsset, PredictionStep, PredictionSource, PredictionDiagram, } from './predictedAttack';
|
|
24
24
|
export { buildLocalStory, loadRecordContents } from './localStories';
|
|
25
25
|
export type { RecordContents, LocalStory } from './localStories';
|
|
26
|
+
export { UNPUBLISHED_BY_AGENT, classifyReadError, dispositionOf, isPlaceholderDisposition, isPlaceholderRecord, readErrorCode, readStatus, } from './readState';
|
|
27
|
+
export type { ReadResult, ReadState } from './readState';
|
|
28
|
+
export { verdictReasonView } from './verdictReason';
|
|
29
|
+
export type { VerdictReasonView } from './verdictReason';
|
|
26
30
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/estate/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,cAAc,EACd,OAAO,EACP,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/estate/index.ts"],"names":[],"mappings":"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"}
|
package/dist/estate/index.js
CHANGED
|
@@ -4,14 +4,16 @@
|
|
|
4
4
|
* and the story pipeline. Pass in the Memorix read client you build yourself.
|
|
5
5
|
* See the package README for which call feeds which page.
|
|
6
6
|
*/
|
|
7
|
-
export { synapixContentTypes, skillsContentTypes, skillsRecordTargets, declaringObjectTypes, otherContractTypes, skillsContract, ownerOf, triageInstance, PREDICTED_ATTACK_LIST, MITIGATION_LIST, isMitigationPlan, isPredictedAttack, } from './contract';
|
|
7
|
+
export { synapixContentTypes, skillsContentTypes, skillsRecordTargets, declaringObjectTypes, otherContractTypes, skillsContract, ownerOf, triageInstance, PREDICTED_ATTACK_LIST, MITIGATION_LIST, isMitigationPlan, isPredictedAttack, CONSUMER_MANIFEST, } from './contract';
|
|
8
8
|
export { objectIdBody } from './ids';
|
|
9
|
-
export { isDocumentEnvelope, contentData, documentMarkdown, readScopeReason, listContent, readContent, listRecordContent, inventoryDisplayName, } from './content';
|
|
9
|
+
export { isDocumentEnvelope, contentData, documentMarkdown, readScopeReason, listContent, listContentResult, readContent, readContentResult, listRecordContent, inventoryDisplayName, } from './content';
|
|
10
10
|
export { contentTypesOf, loadPackListing, requiredDiscriminator } from './pack';
|
|
11
11
|
export { RESPONSE_URGENCIES, NOT_APPLICABLE, responseUrgency, priorityOf, hasDecisionId, loadAssetDecisionIds, loadAssetUrgencies, } from './decisions';
|
|
12
|
-
export { ESTATE_ANALYTICS_TARGET, readEstateAnalytics, estateAnalyticsSuppliesTallies, TRIAGE_TALLY_LISTS, readSourceCensus, } from './analytics';
|
|
13
|
-
export { TIER0_TARGETS, tier0Value, publishedCount, censusOrLander, parseTier0Census, loadTier0Census, censusEntryById, vulnerabilityEntryForCve, EMPTY_VULNERABILITY_ROWS, EMPTY_ASSET_ROWS, } from './census';
|
|
14
|
-
export { storyTabsFrom, loadStoryTabs, readStoredStory, runStoryFunction, } from './stories';
|
|
12
|
+
export { ESTATE_ANALYTICS_TARGET, readEstateAnalytics, readEstateAnalyticsResult, estateAnalyticsSuppliesTallies, TRIAGE_TALLY_LISTS, readSourceCensus, } from './analytics';
|
|
13
|
+
export { TIER0_TARGETS, tier0Value, publishedCount, censusOrLander, parseTier0Census, loadTier0Census, loadTier0CensusResult, censusEntryById, vulnerabilityEntryForCve, EMPTY_VULNERABILITY_ROWS, EMPTY_ASSET_ROWS, } from './census';
|
|
14
|
+
export { storyTabsFrom, loadStoryTabs, readStoredStory, readStoredStoryResult, runStoryFunction, } from './stories';
|
|
15
15
|
export { PREDICTED_ATTACK_TEMPLATE, predictedAttackReady, tacticColumn, predictionDiagram, predictionStepFrom, predictionStepsFrom, subjectRefOf, } from './predictedAttack';
|
|
16
16
|
export { buildLocalStory, loadRecordContents } from './localStories';
|
|
17
|
+
export { UNPUBLISHED_BY_AGENT, classifyReadError, dispositionOf, isPlaceholderDisposition, isPlaceholderRecord, readErrorCode, readStatus, } from './readState';
|
|
18
|
+
export { verdictReasonView } from './verdictReason';
|
|
17
19
|
//# sourceMappingURL=index.js.map
|
package/dist/estate/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/estate/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,cAAc,EACd,OAAO,EACP,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAYpB,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAErC,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,WAAW,CAAC;AASnB,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,QAAQ,CAAC;AAGhF,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,UAAU,EACV,aAAa,EACb,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,8BAA8B,EAC9B,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,aAAa,EACb,UAAU,EACV,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,wBAAwB,EACxB,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,UAAU,CAAC;AAalB,OAAO,EACL,aAAa,EACb,aAAa,EACb,eAAe,EACf,gBAAgB,GACjB,MAAM,WAAW,CAAC;AAUnB,OAAO,EACL,yBAAyB,EACzB,oBAAoB,EACpB,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,GACb,MAAM,mBAAmB,CAAC;AAS3B,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/estate/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,cAAc,EACd,OAAO,EACP,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAYpB,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAErC,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,WAAW,CAAC;AASnB,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,QAAQ,CAAC;AAGhF,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,UAAU,EACV,aAAa,EACb,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,yBAAyB,EACzB,8BAA8B,EAC9B,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,aAAa,EACb,UAAU,EACV,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,eAAe,EACf,wBAAwB,EACxB,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,UAAU,CAAC;AAalB,OAAO,EACL,aAAa,EACb,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,WAAW,CAAC;AAUnB,OAAO,EACL,yBAAyB,EACzB,oBAAoB,EACpB,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,GACb,MAAM,mBAAmB,CAAC;AAS3B,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAGrE,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,aAAa,EACb,wBAAwB,EACxB,mBAAmB,EACnB,aAAa,EACb,UAAU,GACX,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* One classification for every Memorix read.
|
|
3
|
+
* A 404, an undeclared content type, a placeholder land, and a real failure
|
|
4
|
+
* are different states. Callers used to fold the first two into "missing".
|
|
5
|
+
*/
|
|
6
|
+
/** Sentence for an undeclared content type or a placeholder land. */
|
|
7
|
+
export declare const UNPUBLISHED_BY_AGENT = "Not published by the agent";
|
|
8
|
+
export type ReadState = 'ready' | 'declared-empty' | 'undeclared' | 'placeholder' | 'error';
|
|
9
|
+
export type ReadResult<T> = {
|
|
10
|
+
state: 'ready';
|
|
11
|
+
data: T;
|
|
12
|
+
} | {
|
|
13
|
+
state: 'declared-empty' | 'undeclared' | 'placeholder';
|
|
14
|
+
data: null;
|
|
15
|
+
} | {
|
|
16
|
+
state: 'error';
|
|
17
|
+
data: null;
|
|
18
|
+
error: unknown;
|
|
19
|
+
};
|
|
20
|
+
/** `status` (MemorixReadError) or `statusCode` (`@x12i/memorix-client` MemorixClientError). */
|
|
21
|
+
export declare function readStatus(err: unknown): number | null;
|
|
22
|
+
/** `body.error.code`, then `body.code`, then the error's own `code`. */
|
|
23
|
+
export declare function readErrorCode(err: unknown): string | null;
|
|
24
|
+
/**
|
|
25
|
+
* A thrown read. `declared-empty` is 404. `undeclared` is
|
|
26
|
+
* `400 ROUTE_UNKNOWN_CONTENT_TYPE` (and the other `ROUTE_UNKNOWN_*` codes).
|
|
27
|
+
* Anything else, including a missing status, is `error`.
|
|
28
|
+
*/
|
|
29
|
+
export declare function classifyReadError(err: unknown): 'declared-empty' | 'undeclared' | 'error';
|
|
30
|
+
/** `disposition` on the body, or one level down on a consume envelope's `data`. */
|
|
31
|
+
export declare function dispositionOf(body: unknown): string | null;
|
|
32
|
+
export declare function isPlaceholderDisposition(value: string): boolean;
|
|
33
|
+
/** True when the body is a placeholder land, not a published product. */
|
|
34
|
+
export declare function isPlaceholderRecord(body: unknown): boolean;
|
|
35
|
+
//# sourceMappingURL=readState.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"readState.d.ts","sourceRoot":"","sources":["../../src/estate/readState.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,qEAAqE;AACrE,eAAO,MAAM,oBAAoB,+BAA+B,CAAC;AAEjE,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,gBAAgB,GAAG,YAAY,GAAG,aAAa,GAAG,OAAO,CAAC;AAE5F,MAAM,MAAM,UAAU,CAAC,CAAC,IACpB;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,CAAC,CAAA;CAAE,GAC3B;IAAE,KAAK,EAAE,gBAAgB,GAAG,YAAY,GAAG,aAAa,CAAC;IAAC,IAAI,EAAE,IAAI,CAAA;CAAE,GACtE;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC;AAMnD,+FAA+F;AAC/F,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAKtD;AAED,wEAAwE;AACxE,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAIzD;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,GAAG,YAAY,GAAG,OAAO,CAUzF;AAED,mFAAmF;AACnF,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAO1D;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE/D;AAED,yEAAyE;AACzE,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAG1D"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* One classification for every Memorix read.
|
|
3
|
+
* A 404, an undeclared content type, a placeholder land, and a real failure
|
|
4
|
+
* are different states. Callers used to fold the first two into "missing".
|
|
5
|
+
*/
|
|
6
|
+
import { asRecord } from '../util';
|
|
7
|
+
/** Lands that occupy an address without publishing the product. */
|
|
8
|
+
const PLACEHOLDER_DISPOSITIONS = new Set(['empty-from-frozen-bag', 'unavailable']);
|
|
9
|
+
/** Sentence for an undeclared content type or a placeholder land. */
|
|
10
|
+
export const UNPUBLISHED_BY_AGENT = 'Not published by the agent';
|
|
11
|
+
function text(value) {
|
|
12
|
+
return typeof value === 'string' && value.trim() ? value.trim() : null;
|
|
13
|
+
}
|
|
14
|
+
/** `status` (MemorixReadError) or `statusCode` (`@x12i/memorix-client` MemorixClientError). */
|
|
15
|
+
export function readStatus(err) {
|
|
16
|
+
const rec = err;
|
|
17
|
+
if (typeof rec?.status === 'number')
|
|
18
|
+
return rec.status;
|
|
19
|
+
if (typeof rec?.statusCode === 'number')
|
|
20
|
+
return rec.statusCode;
|
|
21
|
+
return null;
|
|
22
|
+
}
|
|
23
|
+
/** `body.error.code`, then `body.code`, then the error's own `code`. */
|
|
24
|
+
export function readErrorCode(err) {
|
|
25
|
+
const body = asRecord(err?.body);
|
|
26
|
+
const code = asRecord(body?.error)?.code ?? body?.code ?? err?.code;
|
|
27
|
+
return typeof code === 'string' ? code : null;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* A thrown read. `declared-empty` is 404. `undeclared` is
|
|
31
|
+
* `400 ROUTE_UNKNOWN_CONTENT_TYPE` (and the other `ROUTE_UNKNOWN_*` codes).
|
|
32
|
+
* Anything else, including a missing status, is `error`.
|
|
33
|
+
*/
|
|
34
|
+
export function classifyReadError(err) {
|
|
35
|
+
const status = readStatus(err);
|
|
36
|
+
if (status === 404)
|
|
37
|
+
return 'declared-empty';
|
|
38
|
+
if (status === 400) {
|
|
39
|
+
const code = readErrorCode(err);
|
|
40
|
+
if (code === 'ROUTE_UNKNOWN_CONTENT_TYPE' || (code != null && code.startsWith('ROUTE_UNKNOWN'))) {
|
|
41
|
+
return 'undeclared';
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return 'error';
|
|
45
|
+
}
|
|
46
|
+
/** `disposition` on the body, or one level down on a consume envelope's `data`. */
|
|
47
|
+
export function dispositionOf(body) {
|
|
48
|
+
const top = asRecord(body);
|
|
49
|
+
if (!top)
|
|
50
|
+
return null;
|
|
51
|
+
const direct = text(top.disposition);
|
|
52
|
+
if (direct)
|
|
53
|
+
return direct.toLowerCase();
|
|
54
|
+
const nested = text(asRecord(top.data)?.disposition);
|
|
55
|
+
return nested ? nested.toLowerCase() : null;
|
|
56
|
+
}
|
|
57
|
+
export function isPlaceholderDisposition(value) {
|
|
58
|
+
return PLACEHOLDER_DISPOSITIONS.has(value.trim().toLowerCase());
|
|
59
|
+
}
|
|
60
|
+
/** True when the body is a placeholder land, not a published product. */
|
|
61
|
+
export function isPlaceholderRecord(body) {
|
|
62
|
+
const disposition = dispositionOf(body);
|
|
63
|
+
return disposition != null && PLACEHOLDER_DISPOSITIONS.has(disposition);
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=readState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"readState.js","sourceRoot":"","sources":["../../src/estate/readState.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,mEAAmE;AACnE,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC,CAAC,uBAAuB,EAAE,aAAa,CAAC,CAAC,CAAC;AAEnF,qEAAqE;AACrE,MAAM,CAAC,MAAM,oBAAoB,GAAG,4BAA4B,CAAC;AASjE,SAAS,IAAI,CAAC,KAAc;IAC1B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACzE,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,UAAU,CAAC,GAAY;IACrC,MAAM,GAAG,GAAG,GAAwD,CAAC;IACrE,IAAI,OAAO,GAAG,EAAE,MAAM,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC;IACvD,IAAI,OAAO,GAAG,EAAE,UAAU,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC,UAAU,CAAC;IAC/D,OAAO,IAAI,CAAC;AACd,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,aAAa,CAAC,GAAY;IACxC,MAAM,IAAI,GAAG,QAAQ,CAAE,GAAiC,EAAE,IAAI,CAAC,CAAC;IAChE,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,IAAI,IAAI,IAAI,EAAE,IAAI,IAAK,GAAiC,EAAE,IAAI,CAAC;IACnG,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AAChD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAY;IAC5C,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;IAC/B,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,gBAAgB,CAAC;IAC5C,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;QACnB,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,IAAI,KAAK,4BAA4B,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC;YAChG,OAAO,YAAY,CAAC;QACtB,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,aAAa,CAAC,IAAa;IACzC,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC3B,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACrC,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC,WAAW,EAAE,CAAC;IACxC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,CAAC;IACrD,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAAa;IACpD,OAAO,wBAAwB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;AAClE,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,mBAAmB,CAAC,IAAa;IAC/C,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IACxC,OAAO,WAAW,IAAI,IAAI,IAAI,wBAAwB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AAC1E,CAAC"}
|
package/dist/estate/stories.d.ts
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
* through the skill API. A run that stops falls back to `buildLocalStory`.
|
|
10
10
|
*/
|
|
11
11
|
import type { EstateCatalog, EstateData, ObjectTypeFunction } from './client';
|
|
12
|
+
import { type ReadResult } from './readState';
|
|
12
13
|
export type StoryTab = {
|
|
13
14
|
/** Storyflowix template id, and the `story` discriminator. */
|
|
14
15
|
template: string;
|
|
@@ -44,7 +45,14 @@ export type StoredStory = {
|
|
|
44
45
|
};
|
|
45
46
|
/**
|
|
46
47
|
* The stored `story` row for one subject and template, via `data.readStory`.
|
|
47
|
-
*
|
|
48
|
+
* `declared-empty` is no row. `undeclared` means `story` is not in the pack.
|
|
49
|
+
* A failure is not cached.
|
|
50
|
+
*/
|
|
51
|
+
export declare function readStoredStoryResult(data: EstateData, objectType: string, recordId: string, template: string, agentId?: string): Promise<ReadResult<StoredStory>>;
|
|
52
|
+
/**
|
|
53
|
+
* The stored `story` row for one subject and template, via `data.readStory`.
|
|
54
|
+
* Null when no row is stored, the content type is undeclared, or the read fails closed.
|
|
55
|
+
* A failure is thrown. Cached per subject and template. Use {@link readStoredStoryResult} for the state.
|
|
48
56
|
*/
|
|
49
57
|
export declare function readStoredStory(data: EstateData, objectType: string, recordId: string, template: string, agentId?: string): Promise<StoredStory | null>;
|
|
50
58
|
/** What the skill API returns for one function run on one subject. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stories.d.ts","sourceRoot":"","sources":["../../src/estate/stories.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"stories.d.ts","sourceRoot":"","sources":["../../src/estate/stories.ts"],"names":[],"mappings":"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"}
|
package/dist/estate/stories.js
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
* through the skill API. A run that stops falls back to `buildLocalStory`.
|
|
10
10
|
*/
|
|
11
11
|
import { asRecord } from '../util';
|
|
12
|
+
import { classifyReadError } from './readState';
|
|
12
13
|
const DEFAULT_AGENT_ID = 'network-synapix';
|
|
13
14
|
const DEFAULT_SKILL_API = '/skill-api';
|
|
14
15
|
function text(value) {
|
|
@@ -18,9 +19,6 @@ function statusOf(err) {
|
|
|
18
19
|
const status = err?.status;
|
|
19
20
|
return typeof status === 'number' ? status : null;
|
|
20
21
|
}
|
|
21
|
-
function errorCode(err) {
|
|
22
|
-
return asRecord(asRecord(err.body)?.error)?.code;
|
|
23
|
-
}
|
|
24
22
|
function presentationValues(body) {
|
|
25
23
|
const top = asRecord(body);
|
|
26
24
|
const contentType = asRecord(top?.contentType) ?? top;
|
|
@@ -108,41 +106,52 @@ function storedFrom(body, template) {
|
|
|
108
106
|
: [],
|
|
109
107
|
};
|
|
110
108
|
}
|
|
111
|
-
function notStored(err) {
|
|
112
|
-
const status = statusOf(err);
|
|
113
|
-
if (status === 404)
|
|
114
|
-
return true;
|
|
115
|
-
return status === 400 && errorCode(err) === 'ROUTE_UNKNOWN_CONTENT_TYPE';
|
|
116
|
-
}
|
|
117
109
|
const storedCache = new Map();
|
|
118
110
|
/**
|
|
119
111
|
* The stored `story` row for one subject and template, via `data.readStory`.
|
|
120
|
-
*
|
|
112
|
+
* `declared-empty` is no row. `undeclared` means `story` is not in the pack.
|
|
113
|
+
* A failure is not cached.
|
|
121
114
|
*/
|
|
122
|
-
export function
|
|
115
|
+
export function readStoredStoryResult(data, objectType, recordId, template, agentId = DEFAULT_AGENT_ID) {
|
|
123
116
|
const type = objectType.trim().toLowerCase();
|
|
124
117
|
const id = recordId.trim();
|
|
125
118
|
const name = template.trim();
|
|
126
119
|
if (!type || !id || !name)
|
|
127
|
-
return Promise.resolve(null);
|
|
120
|
+
return Promise.resolve({ state: 'declared-empty', data: null });
|
|
128
121
|
const key = `${agentId}\u0000${type}\u0000${id}\u0000${name}`;
|
|
129
122
|
const hit = storedCache.get(key);
|
|
130
123
|
if (hit)
|
|
131
124
|
return hit;
|
|
132
125
|
const request = data
|
|
133
126
|
.readStory({ objectType: type, recordId: id, template: name })
|
|
134
|
-
.then((body) =>
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
127
|
+
.then((body) => {
|
|
128
|
+
const stored = storedFrom(body, name);
|
|
129
|
+
return stored ? { state: 'ready', data: stored } : { state: 'declared-empty', data: null };
|
|
130
|
+
}, (err) => {
|
|
131
|
+
const kind = classifyReadError(err);
|
|
132
|
+
if (kind === 'error')
|
|
133
|
+
return { state: 'error', data: null, error: err };
|
|
134
|
+
return { state: kind, data: null };
|
|
138
135
|
});
|
|
139
136
|
storedCache.set(key, request);
|
|
140
|
-
request.
|
|
141
|
-
if (storedCache.get(key) === request)
|
|
137
|
+
void request.then((result) => {
|
|
138
|
+
if (result.state === 'error' && storedCache.get(key) === request)
|
|
142
139
|
storedCache.delete(key);
|
|
143
140
|
});
|
|
144
141
|
return request;
|
|
145
142
|
}
|
|
143
|
+
/**
|
|
144
|
+
* The stored `story` row for one subject and template, via `data.readStory`.
|
|
145
|
+
* Null when no row is stored, the content type is undeclared, or the read fails closed.
|
|
146
|
+
* A failure is thrown. Cached per subject and template. Use {@link readStoredStoryResult} for the state.
|
|
147
|
+
*/
|
|
148
|
+
export function readStoredStory(data, objectType, recordId, template, agentId = DEFAULT_AGENT_ID) {
|
|
149
|
+
return readStoredStoryResult(data, objectType, recordId, template, agentId).then((result) => {
|
|
150
|
+
if (result.state === 'error')
|
|
151
|
+
throw result.error;
|
|
152
|
+
return result.data;
|
|
153
|
+
});
|
|
154
|
+
}
|
|
146
155
|
const NOT_PRODUCED = /\b(was|were|is) not produced\b|\bnot produced\b/i;
|
|
147
156
|
function parseRun(functionId, body) {
|
|
148
157
|
const rec = asRecord(body) ?? {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stories.js","sourceRoot":"","sources":["../../src/estate/stories.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"stories.js","sourceRoot":"","sources":["../../src/estate/stories.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The finding drawer's verdict text.
|
|
3
|
+
* A row counts when it has a summary, evidence, or gaps. Noise from a failed
|
|
4
|
+
* skill run is dropped. A `verdict` on the row, when set, must match the pill.
|
|
5
|
+
*/
|
|
6
|
+
export type VerdictReasonView = {
|
|
7
|
+
status: 'empty' | 'ready';
|
|
8
|
+
summary: string | null;
|
|
9
|
+
evidence: string[];
|
|
10
|
+
gaps: string[];
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Pick the row for `verdict` and keep the text the drawer shows.
|
|
14
|
+
* `markdown` supplies narrative text stored beside the row, when the read asked for it.
|
|
15
|
+
*/
|
|
16
|
+
export declare function verdictReasonView(rows: readonly Record<string, unknown>[], verdict: string, markdown?: (row: Record<string, unknown>) => string | null): VerdictReasonView;
|
|
17
|
+
//# sourceMappingURL=verdictReason.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verdictReason.d.ts","sourceRoot":"","sources":["../../src/estate/verdictReason.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC;IAC1B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB,CAAC;AAyBF;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EACxC,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,GAAG,IAAI,GACzD,iBAAiB,CAanB"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The finding drawer's verdict text.
|
|
3
|
+
* A row counts when it has a summary, evidence, or gaps. Noise from a failed
|
|
4
|
+
* skill run is dropped. A `verdict` on the row, when set, must match the pill.
|
|
5
|
+
*/
|
|
6
|
+
const NOISE = /skill response|empty text|after one retry|recursive_scope/i;
|
|
7
|
+
const EMPTY = { status: 'empty', summary: null, evidence: [], gaps: [] };
|
|
8
|
+
function text(value) {
|
|
9
|
+
return typeof value === 'string' && value.trim() ? value.trim() : null;
|
|
10
|
+
}
|
|
11
|
+
function clean(value) {
|
|
12
|
+
if (!value || NOISE.test(value))
|
|
13
|
+
return null;
|
|
14
|
+
return value;
|
|
15
|
+
}
|
|
16
|
+
function items(value) {
|
|
17
|
+
if (!Array.isArray(value))
|
|
18
|
+
return [];
|
|
19
|
+
return value.flatMap((item) => {
|
|
20
|
+
const direct = text(item);
|
|
21
|
+
if (direct)
|
|
22
|
+
return [direct];
|
|
23
|
+
if (!item || typeof item !== 'object')
|
|
24
|
+
return [];
|
|
25
|
+
const rec = item;
|
|
26
|
+
const nested = text(rec.text) ?? text(rec.value) ?? text(rec.summary) ?? text(rec.label);
|
|
27
|
+
return nested ? [nested] : [];
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Pick the row for `verdict` and keep the text the drawer shows.
|
|
32
|
+
* `markdown` supplies narrative text stored beside the row, when the read asked for it.
|
|
33
|
+
*/
|
|
34
|
+
export function verdictReasonView(rows, verdict, markdown) {
|
|
35
|
+
const wanted = verdict.trim().toUpperCase();
|
|
36
|
+
const row = rows.find((data) => {
|
|
37
|
+
const published = text(data.verdict);
|
|
38
|
+
return !published || published.toUpperCase() === wanted;
|
|
39
|
+
}) ?? null;
|
|
40
|
+
if (!row)
|
|
41
|
+
return EMPTY;
|
|
42
|
+
const summary = clean(markdown?.(row) ?? text(row.summary));
|
|
43
|
+
const evidence = items(row.evidence).filter((item) => !NOISE.test(item));
|
|
44
|
+
const gaps = items(row.gaps).filter((item) => !NOISE.test(item));
|
|
45
|
+
if (!summary && evidence.length === 0 && gaps.length === 0)
|
|
46
|
+
return EMPTY;
|
|
47
|
+
return { status: 'ready', summary, evidence, gaps };
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=verdictReason.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verdictReason.js","sourceRoot":"","sources":["../../src/estate/verdictReason.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,KAAK,GAAG,4DAA4D,CAAC;AAS3E,MAAM,KAAK,GAAsB,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;AAE5F,SAAS,IAAI,CAAC,KAAc;IAC1B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACzE,CAAC;AAED,SAAS,KAAK,CAAC,KAAoB;IACjC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7C,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,KAAK,CAAC,KAAc;IAC3B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACrC,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,MAAM;YAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAC5B,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO,EAAE,CAAC;QACjD,MAAM,GAAG,GAAG,IAA+B,CAAC;QAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACzF,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAChC,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAC/B,IAAwC,EACxC,OAAe,EACf,QAA0D;IAE1D,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5C,MAAM,GAAG,GACP,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QACjB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrC,OAAO,CAAC,SAAS,IAAI,SAAS,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC;IAC1D,CAAC,CAAC,IAAI,IAAI,CAAC;IACb,IAAI,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC;IACvB,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACzE,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACjE,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACzE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AACtD,CAAC"}
|