@descryy/mcp 0.11.7 → 0.12.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/dist/action-handshake.d.ts.map +1 -1
- package/dist/action-handshake.js +5 -1
- package/dist/action-handshake.js.map +1 -1
- package/dist/browser/driver.d.ts +74 -0
- package/dist/browser/driver.d.ts.map +1 -1
- package/dist/browser/driver.js +48 -0
- package/dist/browser/driver.js.map +1 -1
- package/dist/browser/fake-driver.d.ts +39 -0
- package/dist/browser/fake-driver.d.ts.map +1 -1
- package/dist/browser/fake-driver.js +123 -5
- package/dist/browser/fake-driver.js.map +1 -1
- package/dist/browser/fault-attribution.d.ts +75 -39
- package/dist/browser/fault-attribution.d.ts.map +1 -1
- package/dist/browser/fault-attribution.js +100 -89
- package/dist/browser/fault-attribution.js.map +1 -1
- package/dist/browser/graph-write.d.ts +22 -2
- package/dist/browser/graph-write.d.ts.map +1 -1
- package/dist/browser/graph-write.js +60 -2
- package/dist/browser/graph-write.js.map +1 -1
- package/dist/browser/identity-graph-write.d.ts +26 -2
- package/dist/browser/identity-graph-write.d.ts.map +1 -1
- package/dist/browser/identity-graph-write.js +44 -2
- package/dist/browser/identity-graph-write.js.map +1 -1
- package/dist/browser/playwright-driver.d.ts +1 -0
- package/dist/browser/playwright-driver.d.ts.map +1 -1
- package/dist/browser/playwright-driver.js +66 -8
- package/dist/browser/playwright-driver.js.map +1 -1
- package/dist/browser/provider.d.ts +5 -0
- package/dist/browser/provider.d.ts.map +1 -1
- package/dist/browser/provider.js.map +1 -1
- package/dist/browser/reach-recording-session.d.ts.map +1 -1
- package/dist/browser/reach-recording-session.js +10 -0
- package/dist/browser/reach-recording-session.js.map +1 -1
- package/dist/browser/scenario-runner.d.ts.map +1 -1
- package/dist/browser/scenario-runner.js +2 -0
- package/dist/browser/scenario-runner.js.map +1 -1
- package/dist/browser/tool-support.d.ts.map +1 -1
- package/dist/browser/tool-support.js +6 -1
- package/dist/browser/tool-support.js.map +1 -1
- package/dist/findings/index.d.ts +2 -0
- package/dist/findings/index.d.ts.map +1 -0
- package/dist/findings/index.js +2 -0
- package/dist/findings/index.js.map +1 -0
- package/dist/findings/store.d.ts +81 -0
- package/dist/findings/store.d.ts.map +1 -0
- package/dist/findings/store.js +148 -0
- package/dist/findings/store.js.map +1 -0
- package/dist/fs-gateway.d.ts +57 -0
- package/dist/fs-gateway.d.ts.map +1 -0
- package/dist/fs-gateway.js +86 -0
- package/dist/fs-gateway.js.map +1 -0
- package/dist/ready-checks.d.ts +1 -1
- package/dist/ready-checks.d.ts.map +1 -1
- package/dist/ready-checks.js +3 -3
- package/dist/ready-checks.js.map +1 -1
- package/dist/scenarios/storage.d.ts.map +1 -1
- package/dist/scenarios/storage.js +3 -3
- package/dist/scenarios/storage.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +11 -3
- package/dist/server.js.map +1 -1
- package/dist/session.d.ts +6 -1
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +26 -16
- package/dist/session.js.map +1 -1
- package/dist/tools/aliases.d.ts.map +1 -1
- package/dist/tools/aliases.js +2 -0
- package/dist/tools/aliases.js.map +1 -1
- package/dist/tools/browser-read.d.ts +19 -12
- package/dist/tools/browser-read.d.ts.map +1 -1
- package/dist/tools/browser-read.js +34 -18
- package/dist/tools/browser-read.js.map +1 -1
- package/dist/tools/browser-record-start.d.ts +20 -0
- package/dist/tools/browser-record-start.d.ts.map +1 -0
- package/dist/tools/browser-record-start.js +97 -0
- package/dist/tools/browser-record-start.js.map +1 -0
- package/dist/tools/browser-record-stop.d.ts +25 -0
- package/dist/tools/browser-record-stop.d.ts.map +1 -0
- package/dist/tools/browser-record-stop.js +102 -0
- package/dist/tools/browser-record-stop.js.map +1 -0
- package/dist/tools/browser-start-session.d.ts.map +1 -1
- package/dist/tools/browser-start-session.js +12 -0
- package/dist/tools/browser-start-session.js.map +1 -1
- package/dist/tools/browser.d.ts.map +1 -1
- package/dist/tools/browser.js +6 -0
- package/dist/tools/browser.js.map +1 -1
- package/dist/tools/chain.d.ts +5 -0
- package/dist/tools/chain.d.ts.map +1 -1
- package/dist/tools/chain.js +5 -2
- package/dist/tools/chain.js.map +1 -1
- package/dist/tools/change-scope.d.ts +2 -1
- package/dist/tools/change-scope.d.ts.map +1 -1
- package/dist/tools/change-scope.js +19 -10
- package/dist/tools/change-scope.js.map +1 -1
- package/dist/tools/check.d.ts +7 -0
- package/dist/tools/check.d.ts.map +1 -0
- package/dist/tools/check.js +55 -0
- package/dist/tools/check.js.map +1 -0
- package/dist/tools/code-context.d.ts +3 -2
- package/dist/tools/code-context.d.ts.map +1 -1
- package/dist/tools/code-context.js +11 -5
- package/dist/tools/code-context.js.map +1 -1
- package/dist/tools/disclosure.d.ts +3 -2
- package/dist/tools/disclosure.d.ts.map +1 -1
- package/dist/tools/disclosure.js +15 -4
- package/dist/tools/disclosure.js.map +1 -1
- package/dist/tools/draw-conclusion.d.ts +18 -2
- package/dist/tools/draw-conclusion.d.ts.map +1 -1
- package/dist/tools/draw-conclusion.js +69 -11
- package/dist/tools/draw-conclusion.js.map +1 -1
- package/dist/tools/finding-lookup.d.ts +58 -0
- package/dist/tools/finding-lookup.d.ts.map +1 -0
- package/dist/tools/finding-lookup.js +261 -0
- package/dist/tools/finding-lookup.js.map +1 -0
- package/dist/tools/index.d.ts +2 -3
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +4 -28
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/kit.d.ts +1 -1
- package/dist/tools/link-workspace.d.ts +7 -0
- package/dist/tools/link-workspace.d.ts.map +1 -1
- package/dist/tools/link-workspace.js +20 -0
- package/dist/tools/link-workspace.js.map +1 -1
- package/dist/tools/merged-context.d.ts.map +1 -1
- package/dist/tools/merged-context.js +2 -0
- package/dist/tools/merged-context.js.map +1 -1
- package/dist/tools/merged-review.d.ts +5 -0
- package/dist/tools/merged-review.d.ts.map +1 -0
- package/dist/tools/merged-review.js +12 -0
- package/dist/tools/merged-review.js.map +1 -0
- package/dist/tools/merged-workspace.d.ts.map +1 -1
- package/dist/tools/merged-workspace.js +1 -0
- package/dist/tools/merged-workspace.js.map +1 -1
- package/dist/tools/observe-runtime.d.ts +3 -1
- package/dist/tools/observe-runtime.d.ts.map +1 -1
- package/dist/tools/observe-runtime.js +46 -7
- package/dist/tools/observe-runtime.js.map +1 -1
- package/dist/tools/propagation.d.ts +14 -8
- package/dist/tools/propagation.d.ts.map +1 -1
- package/dist/tools/propagation.js +23 -15
- package/dist/tools/propagation.js.map +1 -1
- package/dist/tools/prove-reach.d.ts +8 -0
- package/dist/tools/prove-reach.d.ts.map +1 -1
- package/dist/tools/prove-reach.js +80 -2
- package/dist/tools/prove-reach.js.map +1 -1
- package/dist/tools/reach.d.ts +6 -0
- package/dist/tools/reach.d.ts.map +1 -0
- package/dist/tools/reach.js +50 -0
- package/dist/tools/reach.js.map +1 -0
- package/dist/tools/runtime-journey-drive.d.ts.map +1 -1
- package/dist/tools/runtime-journey-drive.js +12 -1
- package/dist/tools/runtime-journey-drive.js.map +1 -1
- package/dist/tools/verb.d.ts +3 -0
- package/dist/tools/verb.d.ts.map +1 -1
- package/dist/tools/verb.js +7 -0
- package/dist/tools/verb.js.map +1 -1
- package/dist/tools/workspace.d.ts.map +1 -1
- package/dist/tools/workspace.js +10 -2
- package/dist/tools/workspace.js.map +1 -1
- package/package.json +22 -22
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Findings store — one file per finding, under `.descry/findings/<id>.json`.
|
|
3
|
+
*
|
|
4
|
+
* `prove_reach`'s confirming call is the first write here: it drives a real
|
|
5
|
+
* browser, correlates the result through `reportCategory` (`@descryy/ir`),
|
|
6
|
+
* and — until this module existed — returned the governed result and kept
|
|
7
|
+
* nothing. A caller who lost the reply had lost the finding; nothing on disk
|
|
8
|
+
* let a later session, a different tool, or a person read it back. This
|
|
9
|
+
* closes that gap the same way `mark_incident` closed it for confirmed
|
|
10
|
+
* incidents, but per-finding rather than appended to one shared document:
|
|
11
|
+
* `.descry/config.json`'s array-based writers have to read-modify-write the
|
|
12
|
+
* whole file and guard against two calls racing on it (see
|
|
13
|
+
* `writeConfirmedIncident`'s own doc comment); a finding is a fact about one
|
|
14
|
+
* run, has no reason to merge with another, and one file per id sidesteps
|
|
15
|
+
* that race entirely.
|
|
16
|
+
*
|
|
17
|
+
* `.descry/` (gitignored, regenerable — DEC per `session.ts`'s
|
|
18
|
+
* `CONFIG_RELATIVE_PATH`), never `descry/scenarios/`'s committed convention:
|
|
19
|
+
* a finding is a record of what one run concluded, not a fixture a CI replay
|
|
20
|
+
* re-derives from source every time.
|
|
21
|
+
*
|
|
22
|
+
* Stores a real `FindingRecord` (`Finding` plus its `G4Inputs`), not a
|
|
23
|
+
* flattened copy of `reportCategory`'s output — a reader calls `rederive()`
|
|
24
|
+
* to recompute `confidence`/`reliabilityClass`/`resolutionLevel`
|
|
25
|
+
* deterministically from the same inputs this run gated on, rather than
|
|
26
|
+
* trust a cached string that could drift from a later change to the gate's
|
|
27
|
+
* own arithmetic.
|
|
28
|
+
*
|
|
29
|
+
* Every write in this package goes through this one module. A second write
|
|
30
|
+
* site here is exactly the kind of seam the single write gateway (landing in
|
|
31
|
+
* a parallel lane) exists to close before it exists — so a future caller
|
|
32
|
+
* should route through `writeFinding`, never open its own file handle under
|
|
33
|
+
* `.descry/findings/`.
|
|
34
|
+
*/
|
|
35
|
+
import { readdir, readFile } from "node:fs/promises";
|
|
36
|
+
import { join, resolve, sep } from "node:path";
|
|
37
|
+
import { gatewayWriteFile } from "../fs-gateway.js";
|
|
38
|
+
/** Bumped whenever `StoredFinding`'s own shape (not `FindingRecord`'s, which
|
|
39
|
+
* `@descryy/ir` versions itself) changes in a way an old reader can't parse. */
|
|
40
|
+
export const FINDINGS_SCHEMA_VERSION = 1;
|
|
41
|
+
export function findingsDirectory(repoPath) {
|
|
42
|
+
return join(repoPath, ".descry", "findings");
|
|
43
|
+
}
|
|
44
|
+
/** Not the disk-safe path — `readFinding`/`writeFinding` go through
|
|
45
|
+
* `confinedFindingPath` below. This one is for display messages naming even
|
|
46
|
+
* a refused id, mirroring `scenarios/storage.ts#scenarioPath`. */
|
|
47
|
+
export function findingPath(repoPath, id) {
|
|
48
|
+
return join(findingsDirectory(repoPath), `${id}.json`);
|
|
49
|
+
}
|
|
50
|
+
export class FindingStoreError extends Error {
|
|
51
|
+
constructor(path, cause) {
|
|
52
|
+
const detail = cause instanceof Error ? cause.message : String(cause);
|
|
53
|
+
super(`could not read ${path} (${detail})`);
|
|
54
|
+
this.name = "FindingStoreError";
|
|
55
|
+
this.cause = cause;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
/** A-F4's guard, same shape as `scenarios/storage.ts#invalidScenarioNameReason`:
|
|
59
|
+
* an id comes straight from generated data, not tool args, but the same
|
|
60
|
+
* path-escape hazard applies to any string handed to `join`. */
|
|
61
|
+
function invalidFindingIdReason(id) {
|
|
62
|
+
if (id === "")
|
|
63
|
+
return "a finding id cannot be empty";
|
|
64
|
+
if (id.includes("/") || id.includes("\\")) {
|
|
65
|
+
return `"${id}" is not a valid finding id — an id may not contain a path separator`;
|
|
66
|
+
}
|
|
67
|
+
if (id === "." || id === "..")
|
|
68
|
+
return `"${id}" is not a valid finding id`;
|
|
69
|
+
return null;
|
|
70
|
+
}
|
|
71
|
+
function confinedFindingPath(repoPath, id) {
|
|
72
|
+
const invalid = invalidFindingIdReason(id);
|
|
73
|
+
if (invalid !== null)
|
|
74
|
+
throw new Error(invalid);
|
|
75
|
+
const dir = findingsDirectory(repoPath);
|
|
76
|
+
const path = join(dir, `${id}.json`);
|
|
77
|
+
const resolvedDir = resolve(dir) + sep;
|
|
78
|
+
if (!resolve(path).startsWith(resolvedDir)) {
|
|
79
|
+
throw new Error(`refusing to use a finding path outside ${dir}`);
|
|
80
|
+
}
|
|
81
|
+
return path;
|
|
82
|
+
}
|
|
83
|
+
/** Writes one finding, one file, its own id. Overwrites unconditionally on a
|
|
84
|
+
* repeat id — a caller minting a fresh id per execution (as `prove_reach`
|
|
85
|
+
* does) never collides; a caller that intentionally reuses an id is asking
|
|
86
|
+
* for the newest write to win, the same as every other `.descry` writer. */
|
|
87
|
+
export async function writeFinding(repoPath, finding) {
|
|
88
|
+
const path = confinedFindingPath(repoPath, finding.id);
|
|
89
|
+
// Through the write gateway: `.descry/findings/` is inside its allow-list, and the gateway
|
|
90
|
+
// creates the directory. `confinedFindingPath` above still pins the id to that one folder.
|
|
91
|
+
await gatewayWriteFile(repoPath, path, `${JSON.stringify(finding, null, 2)}\n`);
|
|
92
|
+
return { path };
|
|
93
|
+
}
|
|
94
|
+
/** Reads one finding back; `null` means "nothing was ever stored under this
|
|
95
|
+
* id" (ENOENT, or an id that fails validation), never thrown — the same
|
|
96
|
+
* three-way split `scenarios/storage.ts#readScenario` uses, so a caller
|
|
97
|
+
* scanning several ids doesn't have to wrap each one in its own try/catch.
|
|
98
|
+
* A read error that is NOT "missing" (permission, malformed JSON) still
|
|
99
|
+
* throws `FindingStoreError`, carrying the path, rather than collapsing to
|
|
100
|
+
* `null` — C-F2's rule: absence and "could not look" are different facts. */
|
|
101
|
+
export async function readFinding(repoPath, id) {
|
|
102
|
+
let path;
|
|
103
|
+
try {
|
|
104
|
+
path = confinedFindingPath(repoPath, id);
|
|
105
|
+
}
|
|
106
|
+
catch {
|
|
107
|
+
return null;
|
|
108
|
+
}
|
|
109
|
+
let raw;
|
|
110
|
+
try {
|
|
111
|
+
raw = await readFile(path, "utf8");
|
|
112
|
+
}
|
|
113
|
+
catch (error) {
|
|
114
|
+
if (error.code === "ENOENT")
|
|
115
|
+
return null;
|
|
116
|
+
throw new FindingStoreError(path, error);
|
|
117
|
+
}
|
|
118
|
+
let parsed;
|
|
119
|
+
try {
|
|
120
|
+
parsed = JSON.parse(raw);
|
|
121
|
+
}
|
|
122
|
+
catch (error) {
|
|
123
|
+
throw new FindingStoreError(path, error);
|
|
124
|
+
}
|
|
125
|
+
const stored = parsed;
|
|
126
|
+
if (stored.schemaVersion !== FINDINGS_SCHEMA_VERSION) {
|
|
127
|
+
throw new FindingStoreError(path, new Error(`unknown findings schema version ${JSON.stringify(stored.schemaVersion)}`));
|
|
128
|
+
}
|
|
129
|
+
return stored;
|
|
130
|
+
}
|
|
131
|
+
/** Every stored finding's id. ENOENT (no findings directory yet — nothing has
|
|
132
|
+
* ever been recorded) means `[]`; any other read error throws
|
|
133
|
+
* `FindingStoreError` rather than collapsing to `[]`, the same distinction
|
|
134
|
+
* `scenarios/storage.ts#listScenarios` draws for `ScenarioListError`. */
|
|
135
|
+
export async function listFindings(repoPath) {
|
|
136
|
+
const dir = findingsDirectory(repoPath);
|
|
137
|
+
let entries;
|
|
138
|
+
try {
|
|
139
|
+
entries = await readdir(dir);
|
|
140
|
+
}
|
|
141
|
+
catch (error) {
|
|
142
|
+
if (error.code === "ENOENT")
|
|
143
|
+
return [];
|
|
144
|
+
throw new FindingStoreError(dir, error);
|
|
145
|
+
}
|
|
146
|
+
return entries.filter((e) => e.endsWith(".json")).map((e) => e.slice(0, -".json".length));
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/findings/store.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The one place this package writes to disk. Every other module in
|
|
3
|
+
* `packages/mcp/src` calls through here rather than `node:fs`/`node:fs/promises`
|
|
4
|
+
* directly — enforced by `descry-boundary/no-direct-fs-write`
|
|
5
|
+
* (`tools/eslint-plugin-descry-boundary/index.js`, wired for this package's
|
|
6
|
+
* `src/**` in `eslint.config.js`), a small, disclosed allow-list of files
|
|
7
|
+
* that predate this gateway and go through their own existing confinement
|
|
8
|
+
* check instead (`fs-write-allowlist.json`).
|
|
9
|
+
*
|
|
10
|
+
* ## Why this exists
|
|
11
|
+
*
|
|
12
|
+
* The site says Descry never writes to your code. `link_workspace`'s own
|
|
13
|
+
* `link` verb wrote `.descry/config.json` while classed `stateful-read` —
|
|
14
|
+
* exempt from the desktop's unattended-round gate — because nothing made
|
|
15
|
+
* "which paths can this package touch" mechanically checkable; a reviewer
|
|
16
|
+
* had to notice a `writeFile` call and reason about its class by hand. This
|
|
17
|
+
* makes the *set of paths* a fact a lint rule can check, independent of
|
|
18
|
+
* which tool's `run()` happens to call it.
|
|
19
|
+
*
|
|
20
|
+
* ## The allow-list
|
|
21
|
+
*
|
|
22
|
+
* Relative to a repository root:
|
|
23
|
+
* - `.descry/**` — this server's own state: config, confirmed
|
|
24
|
+
* facts/incidents, saved runtime starts, and
|
|
25
|
+
* (per a concurrent lane) `.descry/findings/**`.
|
|
26
|
+
* - `descry/scenarios/**` — committed scenario files. Already action-gated
|
|
27
|
+
* at the tool layer (`browser`'s `save_scenario`
|
|
28
|
+
* verb); this is the second, independent check.
|
|
29
|
+
*
|
|
30
|
+
* Nothing else. A path outside both throws `GatewayPathError` rather than
|
|
31
|
+
* writing — refuse, never silently redirect.
|
|
32
|
+
*
|
|
33
|
+
* ## Not unified with the CLI's own gateway
|
|
34
|
+
*
|
|
35
|
+
* `packages/cli/src` has its own, structurally identical module
|
|
36
|
+
* (`write-gateway.ts`) rather than importing this one. The two packages
|
|
37
|
+
* don't share a build artifact this round — this repo's `@descryy/*`
|
|
38
|
+
* packages resolve through pnpm's workspace link against each package's
|
|
39
|
+
* *published* `dist/`, and adding an export here would be invisible to the
|
|
40
|
+
* CLI until a publish, which the write-gateway task this shipped under
|
|
41
|
+
* explicitly excluded ("nothing is published this round"). Filed as a
|
|
42
|
+
* needs-publish follow-up: promote both to `@descryy/core` once a publish
|
|
43
|
+
* round is available. See `DEC-NEXT-two-package-write-gateways.md`.
|
|
44
|
+
*/
|
|
45
|
+
export declare class GatewayPathError extends Error {
|
|
46
|
+
constructor(absolutePath: string, repoPath: string);
|
|
47
|
+
}
|
|
48
|
+
/** Writes `content` to `absolutePath`, creating parent directories as needed. `absolutePath`
|
|
49
|
+
* must resolve under `repoPath` and inside the allow-list, checked before anything on disk
|
|
50
|
+
* is touched. The one write primitive every other function in this module bottoms out in. */
|
|
51
|
+
export declare function gatewayWriteFile(repoPath: string, absolutePath: string, content: string): Promise<void>;
|
|
52
|
+
/** `JSON.stringify`'s the value with this repo's usual formatting (two-space indent, trailing
|
|
53
|
+
* newline) and writes it under `repoPath`. `relativePath` is joined onto `repoPath` here
|
|
54
|
+
* rather than taken pre-joined, so a caller cannot accidentally pass an already-absolute path
|
|
55
|
+
* that happens to resolve outside the repo and have it silently succeed against a stale root. */
|
|
56
|
+
export declare function gatewayWriteJson(repoPath: string, relativePath: string, value: unknown): Promise<string>;
|
|
57
|
+
//# sourceMappingURL=fs-gateway.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs-gateway.d.ts","sourceRoot":"","sources":["../src/fs-gateway.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAQH,qBAAa,gBAAiB,SAAQ,KAAK;gBAC7B,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;CAOnD;AAeD;;8FAE8F;AAC9F,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAI7G;AAED;;;kGAGkG;AAClG,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,MAAM,CAAC,CAIjB"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The one place this package writes to disk. Every other module in
|
|
3
|
+
* `packages/mcp/src` calls through here rather than `node:fs`/`node:fs/promises`
|
|
4
|
+
* directly — enforced by `descry-boundary/no-direct-fs-write`
|
|
5
|
+
* (`tools/eslint-plugin-descry-boundary/index.js`, wired for this package's
|
|
6
|
+
* `src/**` in `eslint.config.js`), a small, disclosed allow-list of files
|
|
7
|
+
* that predate this gateway and go through their own existing confinement
|
|
8
|
+
* check instead (`fs-write-allowlist.json`).
|
|
9
|
+
*
|
|
10
|
+
* ## Why this exists
|
|
11
|
+
*
|
|
12
|
+
* The site says Descry never writes to your code. `link_workspace`'s own
|
|
13
|
+
* `link` verb wrote `.descry/config.json` while classed `stateful-read` —
|
|
14
|
+
* exempt from the desktop's unattended-round gate — because nothing made
|
|
15
|
+
* "which paths can this package touch" mechanically checkable; a reviewer
|
|
16
|
+
* had to notice a `writeFile` call and reason about its class by hand. This
|
|
17
|
+
* makes the *set of paths* a fact a lint rule can check, independent of
|
|
18
|
+
* which tool's `run()` happens to call it.
|
|
19
|
+
*
|
|
20
|
+
* ## The allow-list
|
|
21
|
+
*
|
|
22
|
+
* Relative to a repository root:
|
|
23
|
+
* - `.descry/**` — this server's own state: config, confirmed
|
|
24
|
+
* facts/incidents, saved runtime starts, and
|
|
25
|
+
* (per a concurrent lane) `.descry/findings/**`.
|
|
26
|
+
* - `descry/scenarios/**` — committed scenario files. Already action-gated
|
|
27
|
+
* at the tool layer (`browser`'s `save_scenario`
|
|
28
|
+
* verb); this is the second, independent check.
|
|
29
|
+
*
|
|
30
|
+
* Nothing else. A path outside both throws `GatewayPathError` rather than
|
|
31
|
+
* writing — refuse, never silently redirect.
|
|
32
|
+
*
|
|
33
|
+
* ## Not unified with the CLI's own gateway
|
|
34
|
+
*
|
|
35
|
+
* `packages/cli/src` has its own, structurally identical module
|
|
36
|
+
* (`write-gateway.ts`) rather than importing this one. The two packages
|
|
37
|
+
* don't share a build artifact this round — this repo's `@descryy/*`
|
|
38
|
+
* packages resolve through pnpm's workspace link against each package's
|
|
39
|
+
* *published* `dist/`, and adding an export here would be invisible to the
|
|
40
|
+
* CLI until a publish, which the write-gateway task this shipped under
|
|
41
|
+
* explicitly excluded ("nothing is published this round"). Filed as a
|
|
42
|
+
* needs-publish follow-up: promote both to `@descryy/core` once a publish
|
|
43
|
+
* round is available. See `DEC-NEXT-two-package-write-gateways.md`.
|
|
44
|
+
*/
|
|
45
|
+
import { mkdir, writeFile } from "node:fs/promises";
|
|
46
|
+
import { dirname, isAbsolute, join, relative, resolve, sep } from "node:path";
|
|
47
|
+
/** Relative to a repository root, `/`-separated, no trailing slash. */
|
|
48
|
+
const ALLOWED_PREFIXES = [".descry", "descry/scenarios"];
|
|
49
|
+
export class GatewayPathError extends Error {
|
|
50
|
+
constructor(absolutePath, repoPath) {
|
|
51
|
+
super(`refusing to write "${absolutePath}" — outside the write gateway's allow-list under "${repoPath}" ` +
|
|
52
|
+
`(${ALLOWED_PREFIXES.map((p) => `${p}/**`).join(", ")})`);
|
|
53
|
+
this.name = "GatewayPathError";
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
/** Throws unless `absolutePath` resolves inside `repoPath` and under one of the allowed
|
|
57
|
+
* prefixes. Returns nothing — callers that need the checked relative path compute it
|
|
58
|
+
* themselves; this is a gate, not a path helper. */
|
|
59
|
+
function assertAllowed(repoPath, absolutePath) {
|
|
60
|
+
const rel = relative(resolve(repoPath), resolve(absolutePath));
|
|
61
|
+
if (rel === "" || rel.startsWith("..") || isAbsolute(rel)) {
|
|
62
|
+
throw new GatewayPathError(absolutePath, repoPath);
|
|
63
|
+
}
|
|
64
|
+
const posixRel = rel.split(sep).join("/");
|
|
65
|
+
const allowed = ALLOWED_PREFIXES.some((prefix) => posixRel === prefix || posixRel.startsWith(`${prefix}/`));
|
|
66
|
+
if (!allowed)
|
|
67
|
+
throw new GatewayPathError(absolutePath, repoPath);
|
|
68
|
+
}
|
|
69
|
+
/** Writes `content` to `absolutePath`, creating parent directories as needed. `absolutePath`
|
|
70
|
+
* must resolve under `repoPath` and inside the allow-list, checked before anything on disk
|
|
71
|
+
* is touched. The one write primitive every other function in this module bottoms out in. */
|
|
72
|
+
export async function gatewayWriteFile(repoPath, absolutePath, content) {
|
|
73
|
+
assertAllowed(repoPath, absolutePath);
|
|
74
|
+
await mkdir(dirname(absolutePath), { recursive: true });
|
|
75
|
+
await writeFile(absolutePath, content, "utf8");
|
|
76
|
+
}
|
|
77
|
+
/** `JSON.stringify`'s the value with this repo's usual formatting (two-space indent, trailing
|
|
78
|
+
* newline) and writes it under `repoPath`. `relativePath` is joined onto `repoPath` here
|
|
79
|
+
* rather than taken pre-joined, so a caller cannot accidentally pass an already-absolute path
|
|
80
|
+
* that happens to resolve outside the repo and have it silently succeed against a stale root. */
|
|
81
|
+
export async function gatewayWriteJson(repoPath, relativePath, value) {
|
|
82
|
+
const absolute = join(repoPath, relativePath);
|
|
83
|
+
await gatewayWriteFile(repoPath, absolute, `${JSON.stringify(value, null, 2)}\n`);
|
|
84
|
+
return absolute;
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=fs-gateway.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs-gateway.js","sourceRoot":"","sources":["../src/fs-gateway.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEH,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAE9E,uEAAuE;AACvE,MAAM,gBAAgB,GAAG,CAAC,SAAS,EAAE,kBAAkB,CAAU,CAAC;AAElE,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IACzC,YAAY,YAAoB,EAAE,QAAgB;QAChD,KAAK,CACH,sBAAsB,YAAY,qDAAqD,QAAQ,IAAI;YACjG,IAAI,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAC3D,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF;AAED;;qDAEqD;AACrD,SAAS,aAAa,CAAC,QAAgB,EAAE,YAAoB;IAC3D,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;IAC/D,IAAI,GAAG,KAAK,EAAE,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1D,MAAM,IAAI,gBAAgB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACrD,CAAC;IACD,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,KAAK,MAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC;IAC5G,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,gBAAgB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;AACnE,CAAC;AAED;;8FAE8F;AAC9F,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,QAAgB,EAAE,YAAoB,EAAE,OAAe;IAC5F,aAAa,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IACtC,MAAM,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,MAAM,SAAS,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AACjD,CAAC;AAED;;;kGAGkG;AAClG,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,QAAgB,EAChB,YAAoB,EACpB,KAAc;IAEd,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IAC9C,MAAM,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAClF,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
package/dist/ready-checks.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ export interface DeclaredDatabaseTarget {
|
|
|
6
6
|
readonly port: number;
|
|
7
7
|
readonly label?: string;
|
|
8
8
|
}
|
|
9
|
-
export declare function buildDatabaseReadyCheck(target: DeclaredDatabaseTarget |
|
|
9
|
+
export declare function buildDatabaseReadyCheck(target: DeclaredDatabaseTarget | undefined): PreflightCheckSpec | null;
|
|
10
10
|
export declare function chromiumLaunchCheck(): PreflightCheckSpec;
|
|
11
11
|
export declare function buildBrowserToolReadyChecks(session: Session): PreflightCheckSpec[];
|
|
12
12
|
//# sourceMappingURL=ready-checks.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ready-checks.d.ts","sourceRoot":"","sources":["../src/ready-checks.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuC,KAAK,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAE3G,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,kBAAkB,CAiBvE;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,sBAAsB,GAAG,
|
|
1
|
+
{"version":3,"file":"ready-checks.d.ts","sourceRoot":"","sources":["../src/ready-checks.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuC,KAAK,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAE3G,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,kBAAkB,CAiBvE;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,sBAAsB,GAAG,SAAS,GAAG,kBAAkB,GAAG,IAAI,CAG7G;AAED,wBAAgB,mBAAmB,IAAI,kBAAkB,CAOxD;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,OAAO,GAAG,kBAAkB,EAAE,CAKlF"}
|
package/dist/ready-checks.js
CHANGED
|
@@ -21,7 +21,7 @@ export function codeMapExistsCheck(session) {
|
|
|
21
21
|
});
|
|
22
22
|
}
|
|
23
23
|
export function buildDatabaseReadyCheck(target) {
|
|
24
|
-
if (target ===
|
|
24
|
+
if (target === undefined)
|
|
25
25
|
return null;
|
|
26
26
|
return databaseReachableCheck(target.host, target.port, target.label);
|
|
27
27
|
}
|
|
@@ -35,9 +35,9 @@ export function chromiumLaunchCheck() {
|
|
|
35
35
|
}
|
|
36
36
|
export function buildBrowserToolReadyChecks(session) {
|
|
37
37
|
const checks = [codeMapExistsCheck(session)];
|
|
38
|
-
const databaseCheck = buildDatabaseReadyCheck(
|
|
38
|
+
const databaseCheck = buildDatabaseReadyCheck(session.config.savedStart?.database);
|
|
39
39
|
if (databaseCheck !== null)
|
|
40
|
-
checks.push(databaseCheck);
|
|
40
|
+
checks.push({ ...databaseCheck, required: false });
|
|
41
41
|
return checks;
|
|
42
42
|
}
|
|
43
43
|
//# sourceMappingURL=ready-checks.js.map
|
package/dist/ready-checks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ready-checks.js","sourceRoot":"","sources":["../src/ready-checks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAA2B,MAAM,6BAA6B,CAAC;AAI3G,MAAM,UAAU,kBAAkB,CAAC,OAAgB;IACjD,OAAO,WAAW,CAAC,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;QAC/D,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YACnC,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE,wBAAwB,OAAO,CAAC,SAAS,mFAAmF;aACtI,CAAC;QACJ,CAAC;QACD,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,WAAW,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE,mBAAmB,OAAO,CAAC,SAAS,gGAAgG;aAC9I,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACrC,CAAC,CAAC,CAAC;AACL,CAAC;AAQD,MAAM,UAAU,uBAAuB,CAAC,
|
|
1
|
+
{"version":3,"file":"ready-checks.js","sourceRoot":"","sources":["../src/ready-checks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAA2B,MAAM,6BAA6B,CAAC;AAI3G,MAAM,UAAU,kBAAkB,CAAC,OAAgB;IACjD,OAAO,WAAW,CAAC,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;QAC/D,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YACnC,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE,wBAAwB,OAAO,CAAC,SAAS,mFAAmF;aACtI,CAAC;QACJ,CAAC;QACD,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,WAAW,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE,mBAAmB,OAAO,CAAC,SAAS,gGAAgG;aAC9I,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACrC,CAAC,CAAC,CAAC;AACL,CAAC;AAQD,MAAM,UAAU,uBAAuB,CAAC,MAA0C;IAChF,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACtC,OAAO,sBAAsB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,OAAO,WAAW,CAAC,UAAU,EAAE,qBAAqB,EAAE,IAAI,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,YAAY,GAAG,yBAAyB,EAAE,CAAC;QACjD,OAAO,YAAY,CAAC,SAAS;YAC3B,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;YAC7B,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC,OAAO,YAAY,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;IACvF,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,OAAgB;IAC1D,MAAM,MAAM,GAAyB,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;IACnE,MAAM,aAAa,GAAG,uBAAuB,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACnF,IAAI,aAAa,KAAK,IAAI;QAAE,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;IAC/E,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/scenarios/storage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/scenarios/storage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAoC,KAAK,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACxF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAI9C,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,oKAAoK;AACpK,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnE;AAED,oPAAoP;AACpP,qBAAa,iBAAkB,SAAQ,KAAK;gBAC9B,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;CAMxC;AA4BD,iOAAiO;AACjO,wBAAsB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAUhF;AAED,4MAA4M;AAC5M,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAwB/F;AAED,iOAAiO;AACjO,wBAAsB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAOvF"}
|
|
@@ -3,8 +3,9 @@
|
|
|
3
3
|
* never `.descry/` (gitignored, regenerable): §7 needs agent-free runs on
|
|
4
4
|
* a fresh CI checkout, where `.descry/` would vanish and fail silently. One file per scenario avoids merge conflicts.
|
|
5
5
|
*/
|
|
6
|
-
import {
|
|
6
|
+
import { readFile, readdir } from "node:fs/promises";
|
|
7
7
|
import { join, resolve, sep } from "node:path";
|
|
8
|
+
import { gatewayWriteFile } from "../fs-gateway.js";
|
|
8
9
|
import { parseScenario, serializeScenario } from "./parse.js";
|
|
9
10
|
const SCENARIO_SUFFIX = ".scenario.json";
|
|
10
11
|
export function scenariosDirectory(repoPath) {
|
|
@@ -97,7 +98,6 @@ export async function writeScenario(repoPath, scenario) {
|
|
|
97
98
|
throw new Error(`refusing to save scenario "${scenario.name}": ${check.problems.join("; ")}`);
|
|
98
99
|
}
|
|
99
100
|
const path = confinedScenarioPath(repoPath, scenario.name);
|
|
100
|
-
await
|
|
101
|
-
await writeFile(path, serializeScenario(scenario), "utf8");
|
|
101
|
+
await gatewayWriteFile(repoPath, path, serializeScenario(scenario));
|
|
102
102
|
}
|
|
103
103
|
//# sourceMappingURL=storage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/scenarios/storage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/scenarios/storage.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAiCH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAML,KAAK,cAAc,EACpB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAwJhD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;CAC5C;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAYjD;AAED,MAAM,WAAW,SAAS;IACxB,uFAAuF;IACvF,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,wDAAwD;IACxD,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;CAC/B;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAiCH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAML,KAAK,cAAc,EACpB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAwJhD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;CAC5C;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAYjD;AAED,MAAM,WAAW,SAAS;IACxB,uFAAuF;IACvF,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,wDAAwD;IACxD,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;CAC/B;AA4ED,wBAAgB,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,SAAS,CAsapE"}
|
package/dist/server.js
CHANGED
|
@@ -230,7 +230,7 @@ const SERVER_INSTRUCTIONS = "Descry reads the repository's source into a code gr
|
|
|
230
230
|
"that exact token performs the write, with the arguments frozen at the first call — a changed " +
|
|
231
231
|
"argument on the second call is discarded and disclosed.\n\n" +
|
|
232
232
|
"`tier` on each tool is `conclusion` for the tools that already state a verdict about your " +
|
|
233
|
-
"code (`
|
|
233
|
+
"code (`check` — quote its `headline` verbatim rather than " +
|
|
234
234
|
"rephrasing it) or `evidence` for every other tool, which returns graph facts for you to " +
|
|
235
235
|
"reason over yourself. Every reply also carries `reportCategory` — one of `confirmed`, " +
|
|
236
236
|
"`strongly supported`, `unconfirmed`, `not analysable`, `unsupported`, or `null` where no " +
|
|
@@ -258,6 +258,13 @@ const SERVER_INSTRUCTIONS = "Descry reads the repository's source into a code gr
|
|
|
258
258
|
"Descry cannot enforce any of this once you leave this server: nothing stops you from adding " +
|
|
259
259
|
"your own claims on top of what a tool returned, and nothing stops you from investigating " +
|
|
260
260
|
"paths no tool surfaced or suggested. The fields above exist so you do not have to guess.";
|
|
261
|
+
function isClaimCheck(called, resolved, rawArgs) {
|
|
262
|
+
if (called === "verify_claim")
|
|
263
|
+
return true;
|
|
264
|
+
if (resolved !== "disclosure" || typeof rawArgs !== "object" || rawArgs === null)
|
|
265
|
+
return false;
|
|
266
|
+
return rawArgs["verb"] === "verify_claim";
|
|
267
|
+
}
|
|
261
268
|
export function createMcpServer(options) {
|
|
262
269
|
const session = options.session;
|
|
263
270
|
const serverName = options.name ?? "descry";
|
|
@@ -363,7 +370,8 @@ export function createMcpServer(options) {
|
|
|
363
370
|
// to `session.recordCallWithId` below, so no gap opens in what a citation
|
|
364
371
|
// can resolve.
|
|
365
372
|
const started = Date.now();
|
|
366
|
-
const
|
|
373
|
+
const claimCheck = isClaimCheck(name, tool.name, params["arguments"]);
|
|
374
|
+
const callId = claimCheck ? randomUUID() : session.allocateCallId();
|
|
367
375
|
// 13.3.16 (N2) steps 2-3: checked once per call, ahead of dispatch, so every
|
|
368
376
|
// reply this call produces — ok, refused, failed or timed out — carries the
|
|
369
377
|
// same disclosure and the same `configStale` flag, not only `analyze`'s.
|
|
@@ -527,7 +535,7 @@ export function createMcpServer(options) {
|
|
|
527
535
|
// already carries as `callId` — rather than a freshly minted one
|
|
528
536
|
// (B10): the two must be the same value for a citation read off this
|
|
529
537
|
// reply to resolve.
|
|
530
|
-
if (
|
|
538
|
+
if (!claimCheck) {
|
|
531
539
|
// B1: a tool that can be handed a credential says how it wants to be
|
|
532
540
|
// remembered (`ToolDefinition.redactArgs`). Every other tool is
|
|
533
541
|
// recorded exactly as it was called, as before.
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/dist/session.d.ts
CHANGED
|
@@ -81,9 +81,14 @@ export interface SavedReadiness {
|
|
|
81
81
|
readonly timeoutMs?: number;
|
|
82
82
|
}
|
|
83
83
|
/** What one successful `observe_runtime` run saved. */
|
|
84
|
+
export interface SavedDatabaseAddress {
|
|
85
|
+
readonly host: string;
|
|
86
|
+
readonly port: number;
|
|
87
|
+
}
|
|
84
88
|
export interface SavedStart {
|
|
85
89
|
readonly services: Readonly<Record<string, SavedServiceStart>>;
|
|
86
90
|
readonly savedAt: string;
|
|
91
|
+
readonly database?: SavedDatabaseAddress;
|
|
87
92
|
}
|
|
88
93
|
/** One entry of `workspaceRepos`. Mirrors `link_workspace`'s own input shape. */
|
|
89
94
|
export interface WorkspaceRepo {
|
|
@@ -206,7 +211,7 @@ export declare function writeConfirmedIncident(repoPath: string, incident: Confi
|
|
|
206
211
|
* already exclude secret values by the time it reaches here — this writer trusts
|
|
207
212
|
* its caller the same way `writeConfirmedIncident` does, rather than re-scanning
|
|
208
213
|
* a shape it did not define. */
|
|
209
|
-
export declare function writeSavedStart(repoPath: string, services: Readonly<Record<string, SavedServiceStart
|
|
214
|
+
export declare function writeSavedStart(repoPath: string, services: Readonly<Record<string, SavedServiceStart>>, database?: SavedDatabaseAddress): Promise<{
|
|
210
215
|
readonly path: string;
|
|
211
216
|
readonly savedAt: string;
|
|
212
217
|
}>;
|
package/dist/session.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA;;;;gGAIgG;AAOhG,OAAO,KAAK,EAAE,aAAa,EAAsB,iBAAiB,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAClG,OAAO,EASL,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,KAAK,EACX,MAAM,eAAe,CAAC;AAEvB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAiC,KAAK,cAAc,EAAE,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACtH,OAAO,EAAgC,KAAK,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA;;;;gGAIgG;AAOhG,OAAO,KAAK,EAAE,aAAa,EAAsB,iBAAiB,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAClG,OAAO,EASL,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,KAAK,EACX,MAAM,eAAe,CAAC;AAEvB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAiC,KAAK,cAAc,EAAE,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACtH,OAAO,EAAgC,KAAK,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAElG,OAAO,EAAiB,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAEhE,MAAM,WAAW,YAAY;IAC3B,wEAAwE;IACxE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;8CAC0C;IAC1C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,mEAAmE;IACnE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,CAAC;IACxC;+FAC2F;IAC3F,QAAQ,CAAC,cAAc,EAAE,SAAS,aAAa,EAAE,CAAC;IAClD;;oBAEgB;IAChB,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IACnD;;4FAEwF;IACxF,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC3D;;+EAE2E;IAC3E,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IAChD;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IACjC,0EAA0E;IAC1E,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,qGAAqG;IACrG,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,gEAAgE;IAChE,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE;QAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IACzE,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC;CACpC;AAED,mFAAmF;AACnF,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;IAC/C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,uDAAuD;AACvD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAC/D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,oBAAoB,CAAC;CAC1C;AAED,iFAAiF;AACjF,MAAM,WAAW,aAAa;IAC5B,oEAAoE;IACpE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,oBAAoB,QAAiC,CAAC;AACnE,eAAO,MAAM,2BAA2B,QAA8B,CAAC;AA8MvE,qBAAa,WAAY,SAAQ,KAAK;gBACxB,OAAO,EAAE,MAAM;CAI5B;AAED,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAqDxE;AAwBD;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,EAAE,MAAM,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS,CAWrG;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;CACnC;AAED;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAgBnF;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,QAAS,CAAC;AAE7C;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAc1F;AAiDD,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,6FAA6F;IAC7F,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACzC;AAED;;gFAEgF;AAChF,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,WAAW,GACjB,OAAO,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC,CAmBpF;AAED;;6EAE6E;AAC7E,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,SAAS,aAAa,EAAE,GAC9B,OAAO,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAepC;AAED;;2FAE2F;AAC3F,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,CAAA;CAAE,CAAC,CAmB7E;AAED;;;;;;;;;2EAS2E;AAC3E,wBAAsB,sBAAsB,CAC1C,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,iBAAiB,GAC1B,OAAO,CAAC;IACT,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B;;;kFAG8E;IAC9E,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC;uFACmF;IACnF,QAAQ,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAChD,CAAC,CAwCD;AAED;;;;;;;;iCAQiC;AACjC,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,EACrD,QAAQ,CAAC,EAAE,oBAAoB,GAC9B,OAAO,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAiB9D;AAED;sFACsF;AACtF,wBAAsB,YAAY,CAChC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,SAAS,MAAM,EAAE,GACzB,OAAO,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAcpC;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,4EAA4E;IAC5E,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC;IAC7C,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC;AAED;;+DAE+D;AAC/D,MAAM,WAAW,gBAAgB;IAC/B,wEAAwE;IACxE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,OAAO;;IAClB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAK1B,MAAM,EAAE,YAAY,CAAC;IAqBrB;;;;;;;;;;;;OAYG;IACH,eAAe,EAAE,mBAAmB,GAAG,SAAS,CAAa;IAE7D;;;;;;;;;;OAUG;IACH,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAa;gBAExC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,KAAK;WAM1E,IAAI,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAM5D;;;;;;;;;;;;;;;OAeG;IACG,YAAY,IAAI,OAAO,CAAC;QAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE,CAAC;IAOtE,IAAI,SAAS,IAAI,MAAM,CAItB;IAED,2CAA2C;IAC3C,KAAK,IAAI,KAAK;IAKd;;sFAEkF;IAClF,gBAAgB,IAAI;QAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;KAAE;IAejD,QAAQ,IAAI,iBAAiB;IAK7B;;0EAEsE;IAChE,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAC;IAe/B;;gGAE4F;IAC5F,eAAe,IAAI,sBAAsB;IAKzC;;+DAE2D;IAC3D,cAAc,IAAI,cAAc;IAKhC;;sCAEkC;IAClC,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAM7C;;gDAE4C;IAC5C,uBAAuB,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI;IAI5D,2HAA2H;IAC3H,kBAAkB,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI;IAInD,2FAA2F;IAC3F,cAAc,IAAI,SAAS,MAAM,EAAE;IAInC;;kEAE8D;IAC9D,KAAK,IAAI,IAAI;IAOb;;uFAEmF;IAC7E,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAK9B;;0DAEsD;IACtD,cAAc,IAAI,MAAM;IAIxB;;kFAE8E;IAC9E,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,gBAAgB;IAI1G;;2EAEuE;IACvE,gBAAgB,CACd,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,gBAAgB;IAMnB,qDAAqD;IACrD,aAAa,IAAI,SAAS,gBAAgB,EAAE;IAI5C,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;CAGvD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS,CAEvE"}
|