@descryy/mcp 0.2.0 → 0.3.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/bin/descry-mcp.js +6 -1
- package/dist/bin/descry-mcp.js.map +1 -1
- package/dist/browser/driver.d.ts +236 -0
- package/dist/browser/driver.d.ts.map +1 -0
- package/dist/browser/driver.js +70 -0
- package/dist/browser/driver.js.map +1 -0
- package/dist/browser/evidence.d.ts +47 -0
- package/dist/browser/evidence.d.ts.map +1 -0
- package/dist/browser/evidence.js +55 -0
- package/dist/browser/evidence.js.map +1 -0
- package/dist/browser/fake-driver.d.ts +58 -0
- package/dist/browser/fake-driver.d.ts.map +1 -0
- package/dist/browser/fake-driver.js +161 -0
- package/dist/browser/fake-driver.js.map +1 -0
- package/dist/browser/graph-write.d.ts +86 -0
- package/dist/browser/graph-write.d.ts.map +1 -0
- package/dist/browser/graph-write.js +135 -0
- package/dist/browser/graph-write.js.map +1 -0
- package/dist/browser/playwright-driver.d.ts +65 -0
- package/dist/browser/playwright-driver.d.ts.map +1 -0
- package/dist/browser/playwright-driver.js +359 -0
- package/dist/browser/playwright-driver.js.map +1 -0
- package/dist/browser/provider.d.ts +49 -0
- package/dist/browser/provider.d.ts.map +1 -0
- package/dist/browser/provider.js +28 -0
- package/dist/browser/provider.js.map +1 -0
- package/dist/browser/registry.d.ts +182 -0
- package/dist/browser/registry.d.ts.map +1 -0
- package/dist/browser/registry.js +215 -0
- package/dist/browser/registry.js.map +1 -0
- package/dist/browser/scenario-resolve.d.ts +62 -0
- package/dist/browser/scenario-resolve.d.ts.map +1 -0
- package/dist/browser/scenario-resolve.js +127 -0
- package/dist/browser/scenario-resolve.js.map +1 -0
- package/dist/browser/scenario-runner.d.ts +113 -0
- package/dist/browser/scenario-runner.d.ts.map +1 -0
- package/dist/browser/scenario-runner.js +315 -0
- package/dist/browser/scenario-runner.js.map +1 -0
- package/dist/browser/stack-parser.d.ts +43 -0
- package/dist/browser/stack-parser.d.ts.map +1 -0
- package/dist/browser/stack-parser.js +112 -0
- package/dist/browser/stack-parser.js.map +1 -0
- package/dist/browser/tool-support.d.ts +113 -0
- package/dist/browser/tool-support.d.ts.map +1 -0
- package/dist/browser/tool-support.js +181 -0
- package/dist/browser/tool-support.js.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -1
- package/dist/render.d.ts +112 -10
- package/dist/render.d.ts.map +1 -1
- package/dist/render.js +79 -13
- package/dist/render.js.map +1 -1
- package/dist/scenarios/index.d.ts +4 -0
- package/dist/scenarios/index.d.ts.map +1 -0
- package/dist/scenarios/index.js +4 -0
- package/dist/scenarios/index.js.map +1 -0
- package/dist/scenarios/parse.d.ts +32 -0
- package/dist/scenarios/parse.d.ts.map +1 -0
- package/dist/scenarios/parse.js +199 -0
- package/dist/scenarios/parse.js.map +1 -0
- package/dist/scenarios/scenario.d.ts +115 -0
- package/dist/scenarios/scenario.d.ts.map +1 -0
- package/dist/scenarios/scenario.js +41 -0
- package/dist/scenarios/scenario.js.map +1 -0
- package/dist/scenarios/storage.d.ts +51 -0
- package/dist/scenarios/storage.d.ts.map +1 -0
- package/dist/scenarios/storage.js +93 -0
- package/dist/scenarios/storage.js.map +1 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +6 -3
- package/dist/server.js.map +1 -1
- package/dist/session.d.ts +68 -0
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +89 -0
- package/dist/session.js.map +1 -1
- package/dist/tools/analyze.d.ts +41 -1
- package/dist/tools/analyze.d.ts.map +1 -1
- package/dist/tools/analyze.js +81 -8
- package/dist/tools/analyze.js.map +1 -1
- package/dist/tools/browser-click.d.ts +36 -0
- package/dist/tools/browser-click.d.ts.map +1 -0
- package/dist/tools/browser-click.js +117 -0
- package/dist/tools/browser-click.js.map +1 -0
- package/dist/tools/browser-close-session.d.ts +24 -0
- package/dist/tools/browser-close-session.d.ts.map +1 -0
- package/dist/tools/browser-close-session.js +63 -0
- package/dist/tools/browser-close-session.js.map +1 -0
- package/dist/tools/browser-fill.d.ts +49 -0
- package/dist/tools/browser-fill.d.ts.map +1 -0
- package/dist/tools/browser-fill.js +138 -0
- package/dist/tools/browser-fill.js.map +1 -0
- package/dist/tools/browser-navigate.d.ts +32 -0
- package/dist/tools/browser-navigate.d.ts.map +1 -0
- package/dist/tools/browser-navigate.js +103 -0
- package/dist/tools/browser-navigate.js.map +1 -0
- package/dist/tools/browser-run-scenario.d.ts +54 -0
- package/dist/tools/browser-run-scenario.d.ts.map +1 -0
- package/dist/tools/browser-run-scenario.js +228 -0
- package/dist/tools/browser-run-scenario.js.map +1 -0
- package/dist/tools/browser-save-scenario.d.ts +44 -0
- package/dist/tools/browser-save-scenario.d.ts.map +1 -0
- package/dist/tools/browser-save-scenario.js +298 -0
- package/dist/tools/browser-save-scenario.js.map +1 -0
- package/dist/tools/browser-snapshot.d.ts +60 -0
- package/dist/tools/browser-snapshot.d.ts.map +1 -0
- package/dist/tools/browser-snapshot.js +139 -0
- package/dist/tools/browser-snapshot.js.map +1 -0
- package/dist/tools/browser-start-session.d.ts +43 -0
- package/dist/tools/browser-start-session.d.ts.map +1 -0
- package/dist/tools/browser-start-session.js +272 -0
- package/dist/tools/browser-start-session.js.map +1 -0
- package/dist/tools/browser-type.d.ts +48 -0
- package/dist/tools/browser-type.d.ts.map +1 -0
- package/dist/tools/browser-type.js +136 -0
- package/dist/tools/browser-type.js.map +1 -0
- package/dist/tools/contracts.d.ts +15 -0
- package/dist/tools/contracts.d.ts.map +1 -1
- package/dist/tools/contracts.js +14 -3
- package/dist/tools/contracts.js.map +1 -1
- package/dist/tools/git-diff.d.ts.map +1 -1
- package/dist/tools/git-diff.js +85 -6
- package/dist/tools/git-diff.js.map +1 -1
- package/dist/tools/impact.d.ts +9 -0
- package/dist/tools/impact.d.ts.map +1 -1
- package/dist/tools/impact.js +3 -3
- package/dist/tools/impact.js.map +1 -1
- package/dist/tools/index.d.ts +9 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +27 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/kit.d.ts +10 -1
- package/dist/tools/kit.d.ts.map +1 -1
- package/dist/tools/kit.js +2 -0
- package/dist/tools/kit.js.map +1 -1
- package/dist/tools/observe-runtime.d.ts +113 -19
- package/dist/tools/observe-runtime.d.ts.map +1 -1
- package/dist/tools/observe-runtime.js +293 -52
- package/dist/tools/observe-runtime.js.map +1 -1
- package/dist/tools/observe-tests.d.ts +125 -0
- package/dist/tools/observe-tests.d.ts.map +1 -0
- package/dist/tools/observe-tests.js +313 -0
- package/dist/tools/observe-tests.js.map +1 -0
- package/dist/tools/pr-analysis.d.ts +11 -0
- package/dist/tools/pr-analysis.d.ts.map +1 -1
- package/dist/tools/pr-analysis.js +3 -3
- package/dist/tools/pr-analysis.js.map +1 -1
- package/dist/tools/pre-push.d.ts +77 -0
- package/dist/tools/pre-push.d.ts.map +1 -0
- package/dist/tools/pre-push.js +250 -0
- package/dist/tools/pre-push.js.map +1 -0
- package/dist/tools/questions.d.ts.map +1 -1
- package/dist/tools/questions.js +41 -16
- package/dist/tools/questions.js.map +1 -1
- package/dist/tools/verification-status.d.ts +22 -0
- package/dist/tools/verification-status.d.ts.map +1 -1
- package/dist/tools/verification-status.js +51 -5
- package/dist/tools/verification-status.js.map +1 -1
- package/package.json +14 -13
|
@@ -52,26 +52,41 @@
|
|
|
52
52
|
*
|
|
53
53
|
* ## What this closure can actually witness today — measured, not assumed
|
|
54
54
|
*
|
|
55
|
-
* The wire is complete and
|
|
56
|
-
*
|
|
57
|
-
*
|
|
58
|
-
*
|
|
59
|
-
*
|
|
60
|
-
*
|
|
61
|
-
*
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
* So a backend-only run resolves both kinds of node and writes no edge. The
|
|
68
|
-
* composition is right, the gate is real, and the arrow is currently reachable
|
|
69
|
-
* only from a browser-driven run — which `runInstrumentedExecution`'s own
|
|
70
|
-
* contract explicitly does not do ("does not drive a browser"), and which is
|
|
71
|
-
* therefore a different orchestration rather than a missing argument here.
|
|
72
|
-
* `STANDING_NOTES` says this on every call, whatever the counts come back as,
|
|
55
|
+
* The wire is complete, and what it can carry changed when the runtime packages
|
|
56
|
+
* were published at 0.1.0 and pinned here — so this paragraph is the record of
|
|
57
|
+
* a limit that was real and is now lifted, kept rather than deleted because the
|
|
58
|
+
* shape of it recurs.
|
|
59
|
+
*
|
|
60
|
+
* **It used to be that no producer of the required pair — HTTP evidence
|
|
61
|
+
* carrying a call-site stack — was in this server's closure.** The browser
|
|
62
|
+
* network collector never has been. The outbound-fetch instrumentation in
|
|
63
|
+
* `@descryy/runtime-external-service-observation` existed, was proven in
|
|
64
|
+
* `descry-runtime`, and was not installed here at all. So a run resolved both
|
|
65
|
+
* kinds of node and wrote no edge, and `STANDING_NOTES` said so on every call
|
|
73
66
|
* because "no edge was written" and "nothing here could have written one" are
|
|
74
|
-
* different statements
|
|
67
|
+
* different statements.
|
|
68
|
+
*
|
|
69
|
+
* **That second producer is now in the closure**, transitively through
|
|
70
|
+
* `@descryy/runtime-orchestrator`, which applies the adapter's
|
|
71
|
+
* `outboundHttpLaunch()` between the interpreter and the script so the client
|
|
72
|
+
* is patched before any application code can capture an unpatched one. Measured
|
|
73
|
+
* end to end in `observe-runtime-outbound.conformance.test.ts`: two real
|
|
74
|
+
* processes, 17 `EXTERNAL_REQUEST` items alongside 18 `BACKEND_LOG`, one
|
|
75
|
+
* `USES_API` edge minted at R4, and the first `strongly supported` reply this
|
|
76
|
+
* server has produced.
|
|
77
|
+
*
|
|
78
|
+
* **Two limits remain, and they are stated rather than inferred from a zero.**
|
|
79
|
+
* An *attached* service is not launched by Descry, so the instrumentation
|
|
80
|
+
* cannot be installed into it and its outbound calls carry no stack. And
|
|
81
|
+
* browser-side traffic still needs `@descryy/runtime-browser`, which is not
|
|
82
|
+
* here. Both are in `STANDING_NOTES`.
|
|
83
|
+
*
|
|
84
|
+
* The rule that outlives all of it: a disclosure about the closure is a fact
|
|
85
|
+
* about *this build*, not about what `descry-runtime` can do. The two came
|
|
86
|
+
* apart once already, when the cross-boundary lane landed and this file still
|
|
87
|
+
* claimed the capability was absent. Re-check it against the installed tree
|
|
88
|
+
* when the pins move, not against the source repository.
|
|
89
|
+
* Descry.
|
|
75
90
|
*
|
|
76
91
|
* ## Why no denial is ever emitted
|
|
77
92
|
*
|
|
@@ -109,6 +124,7 @@
|
|
|
109
124
|
*/
|
|
110
125
|
import { mkdir } from "node:fs/promises";
|
|
111
126
|
import { dirname, isAbsolute, join } from "node:path";
|
|
127
|
+
import { independentSignalTypes } from "@descryy/ir";
|
|
112
128
|
import { buildGraph, counts, createConfirmedIncidentSource, persistGraph, } from "@descryy/core";
|
|
113
129
|
import { evaluateAction, validateProfile } from "@descryy/runtime-environment-profile";
|
|
114
130
|
import { correlateExecution } from "@descryy/runtime-evidence-correlation";
|
|
@@ -163,13 +179,25 @@ const SCHEMA = {
|
|
|
163
179
|
command: { type: "string", description: "How to start it. Omit when using \"attach\"." },
|
|
164
180
|
cwd: {
|
|
165
181
|
type: "string",
|
|
166
|
-
description: "
|
|
182
|
+
description: "The directory this service is started in. Relative paths resolve against the " +
|
|
183
|
+
"repository root. REQUIRED with \"command\". With \"attach\" it is required only " +
|
|
184
|
+
"for a \"command\" readiness check, which is an executable Descry runs in it; for " +
|
|
185
|
+
"an \"http\" or \"tcp-port\" check it is not needed at all, because nothing is " +
|
|
186
|
+
"started and Descry never executes code in a process it did not spawn.",
|
|
167
187
|
},
|
|
188
|
+
// The description below is the fix for the single most expensive
|
|
189
|
+
// ergonomic gap this tool has: three failed runs in one real
|
|
190
|
+
// investigation, all the same root cause wearing different clothes,
|
|
191
|
+
// and the explanation both times living in a source comment.
|
|
168
192
|
port: {
|
|
169
193
|
type: "integer",
|
|
170
|
-
description: "
|
|
171
|
-
"
|
|
172
|
-
"
|
|
194
|
+
description: "The port readiness checks against, and the two modes need opposite things from you. " +
|
|
195
|
+
"With \"attach\": REQUIRED whenever readiness is \"http\" or \"tcp-port\" — the target " +
|
|
196
|
+
"chose its port before Descry saw it, and nothing in a pid or a log path reveals which, " +
|
|
197
|
+
"so this is refused up front rather than guessed. With \"command\": omit to get an " +
|
|
198
|
+
"ephemeral port, which is passed to your command as PORT; set it only if your command " +
|
|
199
|
+
"hardcodes a port, and then it must be THAT port — a readiness check against a port " +
|
|
200
|
+
"your command did not bind fails while the service is perfectly healthy.",
|
|
173
201
|
},
|
|
174
202
|
dependsOn: {
|
|
175
203
|
type: "array",
|
|
@@ -213,7 +241,7 @@ const SCHEMA = {
|
|
|
213
241
|
additionalProperties: false,
|
|
214
242
|
},
|
|
215
243
|
},
|
|
216
|
-
required: ["
|
|
244
|
+
required: ["readiness"],
|
|
217
245
|
additionalProperties: false,
|
|
218
246
|
},
|
|
219
247
|
},
|
|
@@ -356,10 +384,39 @@ function readServices(args, repoPath) {
|
|
|
356
384
|
if (command !== undefined && typeof command !== "string") {
|
|
357
385
|
throw new ToolInputError(`"services.${name}.command" must be a string`);
|
|
358
386
|
}
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
387
|
+
// Read once, here, because two separate rules below need it: whether a
|
|
388
|
+
// `cwd` is required at all, and whether an attached service must state its
|
|
389
|
+
// port.
|
|
390
|
+
const readinessRaw = entry["readiness"];
|
|
391
|
+
const readinessKind = typeof readinessRaw === "object" && readinessRaw !== null && !Array.isArray(readinessRaw)
|
|
392
|
+
? readinessRaw["kind"]
|
|
393
|
+
: undefined;
|
|
394
|
+
// `cwd` is required exactly where something will be executed in it, and
|
|
395
|
+
// nowhere else. Descry spawns nothing for an attached service and never
|
|
396
|
+
// executes code in a process it did not spawn, so for an attached service
|
|
397
|
+
// with an `http` or `tcp-port` check the value is inert — demanding it
|
|
398
|
+
// makes the caller invent a path that changes nothing. A `command` check
|
|
399
|
+
// *is* executed, in this directory, so it still needs one.
|
|
400
|
+
//
|
|
401
|
+
// The runtime contract's `ServiceConfiguration.cwd` is non-optional, so
|
|
402
|
+
// something must be supplied downstream either way; the repository root is
|
|
403
|
+
// the inert choice, and it is inert precisely because nothing runs there
|
|
404
|
+
// on this path.
|
|
405
|
+
// (`DEC-388`.)
|
|
406
|
+
const cwdRaw = entry["cwd"];
|
|
407
|
+
if (cwdRaw !== undefined && (typeof cwdRaw !== "string" || cwdRaw === "")) {
|
|
408
|
+
throw new ToolInputError(`"services.${name}.cwd" must be a non-empty string`);
|
|
409
|
+
}
|
|
410
|
+
if (cwdRaw === undefined && attachRaw === undefined) {
|
|
411
|
+
throw new ToolInputError(`"services.${name}.cwd" is required and must be a non-empty string: it is the directory ` +
|
|
412
|
+
`"${name}" is started in.`);
|
|
362
413
|
}
|
|
414
|
+
if (cwdRaw === undefined && attachRaw !== undefined && readinessKind === "command") {
|
|
415
|
+
throw new ToolInputError(`"services.${name}.cwd" is required when "${name}" uses "attach" with a "command" ` +
|
|
416
|
+
"readiness check: the check is an executable Descry runs, and it runs in this " +
|
|
417
|
+
"directory. Attaching needs no cwd otherwise — nothing is started.");
|
|
418
|
+
}
|
|
419
|
+
const cwd = cwdRaw ?? repoPath;
|
|
363
420
|
const port = entry["port"];
|
|
364
421
|
if (port !== undefined && (typeof port !== "number" || !Number.isInteger(port) || port < 0)) {
|
|
365
422
|
throw new ToolInputError(`"services.${name}.port" must be a non-negative integer`);
|
|
@@ -390,6 +447,25 @@ function readServices(args, repoPath) {
|
|
|
390
447
|
throw new ToolInputError(`"services.${name}.attach.logFilePath" is required`);
|
|
391
448
|
}
|
|
392
449
|
attach = { pid, logFilePath };
|
|
450
|
+
// A spawned service gets an ephemeral port allocated for it; an attached
|
|
451
|
+
// one cannot, because the target chose its own port before Descry
|
|
452
|
+
// existed and nothing in a pid or a log path reveals which. The
|
|
453
|
+
// controller's refusal to guess is deliberate and right — but expressed
|
|
454
|
+
// as `port ?? 0`, it surfaces to a caller as a readiness check timing
|
|
455
|
+
// out against port 0 some seconds later, with the actual explanation
|
|
456
|
+
// living in a source comment they cannot see. Twice in one real
|
|
457
|
+
// investigation that cost a full failed run to rediscover. So it is
|
|
458
|
+
// refused here, by name, before anything starts.
|
|
459
|
+
//
|
|
460
|
+
// Only for the two checks that resolve a port. A "command" check runs an
|
|
461
|
+
// executable and never asks where the service listens, so demanding a
|
|
462
|
+
// port for it would be a second wrong answer in the other direction.
|
|
463
|
+
if ((readinessKind === "http" || readinessKind === "tcp-port") && port === undefined) {
|
|
464
|
+
throw new ToolInputError(`"services.${name}.port" is required when "${name}" uses "attach" with a ` +
|
|
465
|
+
`"${readinessKind}" readiness check: the check needs a port and an attached target's ` +
|
|
466
|
+
"port cannot be allocated or inferred — it is whatever the already-running process " +
|
|
467
|
+
"bound. State it, or use a \"command\" readiness check, which needs none.");
|
|
468
|
+
}
|
|
393
469
|
}
|
|
394
470
|
const configuration = {
|
|
395
471
|
...(typeof command === "string" ? { command } : {}),
|
|
@@ -534,20 +610,75 @@ const STANDING_NOTES = [
|
|
|
534
610
|
"stack resolving to a function, against an endpoint the same observation named. Every other " +
|
|
535
611
|
"correlated evidence item resolves a node and produces no edge, which is a gap in what this run " +
|
|
536
612
|
"could prove rather than evidence that no such edge exists.",
|
|
537
|
-
"That combination — HTTP evidence carrying a call-site stack — is produced
|
|
538
|
-
"
|
|
539
|
-
"
|
|
540
|
-
"
|
|
541
|
-
"
|
|
542
|
-
"
|
|
613
|
+
"That combination — HTTP evidence carrying a call-site stack — is produced here by the outbound-fetch " +
|
|
614
|
+
"instrumentation in @descryy/runtime-external-service-observation, which this server installs into a " +
|
|
615
|
+
"spawned service before any application code runs. So an observed outbound call CAN write this edge, " +
|
|
616
|
+
"and a run that makes none writes none: the backend collectors attach a stack to log and error lines " +
|
|
617
|
+
"(resolving a function) and none to inbound HTTP traffic (resolving an endpoint), so a service that " +
|
|
618
|
+
"never calls out resolves both kinds of node and still writes nothing. A zero here means this run " +
|
|
619
|
+
"observed no outbound call it could attribute, not that no such call exists in your code.",
|
|
620
|
+
"Two things this still cannot witness. An ATTACHED service is not launched by Descry, so the client " +
|
|
621
|
+
"instrumentation cannot be installed into it and its outbound calls carry no call-site stack. And " +
|
|
622
|
+
"browser-side requests need @descryy/runtime-browser, which is not in this server's closure — the " +
|
|
623
|
+
"browser_* tools refuse with a named remedy rather than appearing to work.",
|
|
543
624
|
"No denial is ever recorded. A run establishes that a call happened; it cannot establish that one " +
|
|
544
625
|
"did not, because it exercises only the paths it took. Nothing here demotes an edge.",
|
|
545
626
|
];
|
|
546
|
-
|
|
547
|
-
|
|
627
|
+
/**
|
|
628
|
+
* Said on every run that attaches, because it explains an absence that
|
|
629
|
+
* otherwise reads as a Descry defect — and did, in a real investigation, until
|
|
630
|
+
* it was measured.
|
|
631
|
+
*
|
|
632
|
+
* A request fired partway through an observation window did not appear in the
|
|
633
|
+
* evidence, and appeared in the log file afterwards. The obvious reading is
|
|
634
|
+
* that observation stopped early. It did not: reproduced end to end against a
|
|
635
|
+
* real attached service, a request fired at t≈5s of a 12s window landed in the
|
|
636
|
+
* evidence store, timestamped correctly. What actually happens is one layer
|
|
637
|
+
* out — a process whose stdout is redirected to a file is block-buffered, not
|
|
638
|
+
* line-buffered, because the descriptor is not a terminal. Measured directly:
|
|
639
|
+
* three lines written over 0.6s were still entirely absent from the file three
|
|
640
|
+
* seconds later, and arrived only when the process flushed.
|
|
641
|
+
*
|
|
642
|
+
* Nothing in Descry can see those bytes; they are in the target's own
|
|
643
|
+
* userspace buffer. So this is not a gap to close, it is a boundary to state —
|
|
644
|
+
* and stating it is what separates "we did not see it" from "it was not
|
|
645
|
+
* there", which is the whole difference this tool exists to preserve.
|
|
646
|
+
*
|
|
647
|
+
* Written for any redirected process, naming no language or framework: the
|
|
648
|
+
* behaviour is the C standard library's, and a note scoped to one ecosystem
|
|
649
|
+
* would invite one more such note per ecosystem.
|
|
650
|
+
*/
|
|
651
|
+
const ATTACH_BUFFERING_NOTE = "Attaching reads a file the target writes; it can only see what the target has already flushed " +
|
|
652
|
+
"there. A process whose output is redirected to a file is usually block-buffered rather than " +
|
|
653
|
+
"line-buffered — its own runtime holds whole lines in a userspace buffer, invisible from outside, " +
|
|
654
|
+
"until the buffer fills or the process flushes. Output produced during this window may therefore " +
|
|
655
|
+
"arrive in the file after the window closed and be absent here, which is a fact about the " +
|
|
656
|
+
"target's buffering and not evidence that it did nothing. Run the target with its output " +
|
|
657
|
+
"unbuffered or line-buffered if the timing matters.";
|
|
658
|
+
/**
|
|
659
|
+
* Every argument this tool takes, read and validated in one place.
|
|
660
|
+
*
|
|
661
|
+
* Extracted from `run` so that `describeAction` can call it too. That is the
|
|
662
|
+
* whole point of the extraction: an `action` tool's first call is the one a
|
|
663
|
+
* caller makes *before* it has a token, and therefore the only cheap place to
|
|
664
|
+
* learn its arguments are wrong. Minting a token, and a paragraph describing
|
|
665
|
+
* an action, for a declaration that cannot possibly run asks a developer to
|
|
666
|
+
* confirm something that was never going to happen — and delivers the real
|
|
667
|
+
* refusal on the second call, after the confirmation.
|
|
668
|
+
*
|
|
669
|
+
* Nothing here touches the filesystem, spawns anything or reads the graph: it
|
|
670
|
+
* is argument reading and nothing else, which is what makes it safe to run at
|
|
671
|
+
* mint time, outside the call budget.
|
|
672
|
+
*
|
|
673
|
+
* Ruled in `documents/decisions-inbox/DEC-387.md`.
|
|
674
|
+
*
|
|
675
|
+
* Exported for its own test: several of the argument rules are conditional and
|
|
676
|
+
* cheaper to assert directly than through a full run.
|
|
677
|
+
*/
|
|
678
|
+
export function readArguments(args, repoPath) {
|
|
548
679
|
const profile = readProfile(args);
|
|
549
680
|
const adapterSpec = readAdapterSpec(args);
|
|
550
|
-
const declared = readServices(args,
|
|
681
|
+
const declared = readServices(args, repoPath);
|
|
551
682
|
const observeForMs = optionalInteger(args, "observeForMs", 1) ?? DEFAULT_OBSERVE_MS;
|
|
552
683
|
const timeoutMs = optionalInteger(args, "timeoutMs", 1) ?? DEFAULT_TIMEOUT_MS;
|
|
553
684
|
const fidelityRaw = optionalInteger(args, "fidelityLevel", 1) ?? 2;
|
|
@@ -556,11 +687,22 @@ async function run(args, ctx) {
|
|
|
556
687
|
const environmentTier = optionalString(args, "environmentTier") ?? "tier-2-container";
|
|
557
688
|
const evidenceArg = optionalString(args, "evidencePath");
|
|
558
689
|
const evidencePath = evidenceArg === undefined
|
|
559
|
-
? join(
|
|
690
|
+
? join(repoPath, DEFAULT_EVIDENCE_RELATIVE_PATH)
|
|
560
691
|
: isAbsolute(evidenceArg)
|
|
561
692
|
? evidenceArg
|
|
562
|
-
: join(
|
|
693
|
+
: join(repoPath, evidenceArg);
|
|
694
|
+
return { profile, adapterSpec, declared, observeForMs, timeoutMs, fidelityRaw, environmentTier, evidencePath };
|
|
695
|
+
}
|
|
696
|
+
async function run(args, ctx) {
|
|
697
|
+
const session = ctx.session;
|
|
698
|
+
const { profile, adapterSpec, declared, observeForMs, timeoutMs, fidelityRaw, environmentTier, evidencePath } = readArguments(args, session.repoPath);
|
|
563
699
|
const notes = [...STANDING_NOTES];
|
|
700
|
+
// Added on the refusal paths too, deliberately. A caller who attaches and is
|
|
701
|
+
// then refused for some unrelated reason will fix that reason and attach
|
|
702
|
+
// again; telling them about the buffering only on the success path means
|
|
703
|
+
// telling them after the run whose result it would have explained.
|
|
704
|
+
if (declared.some((service) => service.attached))
|
|
705
|
+
notes.push(ATTACH_BUFFERING_NOTE);
|
|
564
706
|
const base = session.provider().baseStamp();
|
|
565
707
|
const refuse = (headline, data = {}) => answer({
|
|
566
708
|
headline,
|
|
@@ -795,6 +937,20 @@ async function run(args, ctx) {
|
|
|
795
937
|
// a run that wrote nothing reports R0 rather than borrowing the tier its
|
|
796
938
|
// successful path would have reached.
|
|
797
939
|
resolutionFloor: (written > 0 ? 4 : 0),
|
|
940
|
+
// G3's precondition and G4's `E`, declared because this run actually
|
|
941
|
+
// watched something. Only on a path where evidence really came back: a
|
|
942
|
+
// completed run that collected nothing witnessed nothing, and saying
|
|
943
|
+
// otherwise would assert a precondition on an empty array.
|
|
944
|
+
//
|
|
945
|
+
// Note this is deliberately *not* gated on `written > 0`. Whether an
|
|
946
|
+
// edge could be written is a fact about the graph path, and rule 3
|
|
947
|
+
// already caps the category through `resolutionFloor` just above — a
|
|
948
|
+
// run that saw three channels and wrote no edge is reported
|
|
949
|
+
// `unconfirmed` by the cap, not by pretending it saw nothing. Two
|
|
950
|
+
// separate facts, each stated once.
|
|
951
|
+
...(execution.evidence.length === 0
|
|
952
|
+
? {}
|
|
953
|
+
: { runtimeEvidence: { independentSignalTypes: witnessedSignalTypes(execution.evidence) } }),
|
|
798
954
|
commitSha: base.commitSha,
|
|
799
955
|
graphBuiltAt: base.graphBuiltAt,
|
|
800
956
|
irSchemaVersion: base.irSchemaVersion,
|
|
@@ -847,6 +1003,75 @@ function tally(evidence) {
|
|
|
847
1003
|
byType[item.eventType] = (byType[item.eventType] ?? 0) + 1;
|
|
848
1004
|
return byType;
|
|
849
1005
|
}
|
|
1006
|
+
/**
|
|
1007
|
+
* One evidence row onto one of `@descryy/ir`'s six `RUNTIME_SIGNAL_TYPES`, or
|
|
1008
|
+
* `null`.
|
|
1009
|
+
*
|
|
1010
|
+
* **Decided by `eventType`, with `source` consulted only where the event type
|
|
1011
|
+
* is genuinely ambiguous** — an exception can come off a browser console or a
|
|
1012
|
+
* backend process, and nothing but the collector says which. The obvious
|
|
1013
|
+
* alternative, reading `source` alone, is wrong and was measured to be wrong
|
|
1014
|
+
* rather than reasoned about: every row this repository's own conformance run
|
|
1015
|
+
* produces carries `source: "backend-process"`, and `EVIDENCE_SOURCES` also
|
|
1016
|
+
* has a `backend-log` value that nothing in the shipped dependency closure
|
|
1017
|
+
* emits. A source-driven table would have counted zero channels on every real
|
|
1018
|
+
* run while passing a hand-built test — the exact shape of failure that gets
|
|
1019
|
+
* caught by running the thing.
|
|
1020
|
+
*
|
|
1021
|
+
* **Everything not listed returns `null` and is counted as nothing.** That is
|
|
1022
|
+
* `RuntimeEvidence`'s own rule, not caution added here: `TEST_*` is excluded
|
|
1023
|
+
* by design (its evidentiary weight is `M`'s, never double-counted as a
|
|
1024
|
+
* channel too), harness actions are Descry driving the application rather than
|
|
1025
|
+
* observing it, process lifecycle is a fact about the process rather than
|
|
1026
|
+
* about its behaviour, and a collector or version-mismatch error is a fact
|
|
1027
|
+
* about the run. A kind this table has not ruled on must fail closed, because
|
|
1028
|
+
* the alternative — mapping it to the nearest-looking channel — raises `E`,
|
|
1029
|
+
* and therefore the reported category, with nobody having decided that it
|
|
1030
|
+
* should.
|
|
1031
|
+
*/
|
|
1032
|
+
function signalOf(item) {
|
|
1033
|
+
switch (item.eventType) {
|
|
1034
|
+
case "CONSOLE_MESSAGE":
|
|
1035
|
+
return "browser-console";
|
|
1036
|
+
case "NETWORK_REQUEST":
|
|
1037
|
+
case "NETWORK_RESPONSE":
|
|
1038
|
+
case "HTTP_ERROR":
|
|
1039
|
+
case "WEBSOCKET_CLOSED":
|
|
1040
|
+
return "network";
|
|
1041
|
+
case "SCREENSHOT":
|
|
1042
|
+
case "VIDEO":
|
|
1043
|
+
return "browser-visual";
|
|
1044
|
+
case "BACKEND_LOG":
|
|
1045
|
+
return "backend-log";
|
|
1046
|
+
case "DATABASE_QUERY":
|
|
1047
|
+
return "database";
|
|
1048
|
+
case "EXTERNAL_REQUEST":
|
|
1049
|
+
return "external-service";
|
|
1050
|
+
// The ambiguous pair, and the only place `source` decides: a thrown error
|
|
1051
|
+
// reaches Descry through whichever collector saw it, and that collector is
|
|
1052
|
+
// the channel.
|
|
1053
|
+
case "EXCEPTION":
|
|
1054
|
+
case "STACK_TRACE":
|
|
1055
|
+
return item.source === "browser-console" ? "browser-console" : "backend-log";
|
|
1056
|
+
default:
|
|
1057
|
+
return null;
|
|
1058
|
+
}
|
|
1059
|
+
}
|
|
1060
|
+
/**
|
|
1061
|
+
* `E` for this run — how many of the six channels it actually saw.
|
|
1062
|
+
*
|
|
1063
|
+
* The count itself is `@descryy/ir`'s `independentSignalTypes`, deliberately:
|
|
1064
|
+
* the clamp to six and the drop of `null` signals are that function's rules,
|
|
1065
|
+
* and a second implementation of them here is a second place for the
|
|
1066
|
+
* vocabulary to drift. This function's only job is the translation above.
|
|
1067
|
+
*
|
|
1068
|
+
* Exported for its own test — the mapping decides whether a witnessed answer
|
|
1069
|
+
* reads `strongly supported` or `unconfirmed`, which is too load-bearing to be
|
|
1070
|
+
* asserted only through a category two layers downstream.
|
|
1071
|
+
*/
|
|
1072
|
+
export function witnessedSignalTypes(evidence) {
|
|
1073
|
+
return independentSignalTypes(evidence.map((item) => ({ signal: signalOf(item), detail: item.eventType })));
|
|
1074
|
+
}
|
|
850
1075
|
/**
|
|
851
1076
|
* The R4 write, and the one join this tool performs itself.
|
|
852
1077
|
*
|
|
@@ -911,21 +1136,31 @@ function writeObservations(input) {
|
|
|
911
1136
|
* that makes it not run anything. Every valid call spawns or attaches, and
|
|
912
1137
|
* every one of them can write.
|
|
913
1138
|
*/
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
1139
|
+
/**
|
|
1140
|
+
* §7's `willDo`, and — since `readArguments` is the first thing it does — the
|
|
1141
|
+
* point where an invalid call is refused.
|
|
1142
|
+
*
|
|
1143
|
+
* Returns a string on every valid call rather than ever returning `undefined`:
|
|
1144
|
+
* `undefined` means "this particular call has nothing to confirm", and there
|
|
1145
|
+
* is no such call here. Every accepted declaration boots or attaches to
|
|
1146
|
+
* something and may write durable R4 facts.
|
|
1147
|
+
*
|
|
1148
|
+
* Reads the *parsed* services rather than the raw object, so the sentence a
|
|
1149
|
+
* developer confirms is built from the same values the run will use — which
|
|
1150
|
+
* is also what makes "spawn" and "attach" here mean exactly what
|
|
1151
|
+
* `readServices` decided they mean, rather than a second, looser guess at the
|
|
1152
|
+
* same distinction.
|
|
1153
|
+
*/
|
|
1154
|
+
function describeAction(args, ctx) {
|
|
1155
|
+
const { declared } = readArguments(args, ctx.session.repoPath);
|
|
1156
|
+
const spawned = declared.filter((service) => !service.attached).map((service) => service.name);
|
|
1157
|
+
const attached = declared.filter((service) => service.attached).map((service) => service.name);
|
|
924
1158
|
const parts = [];
|
|
925
1159
|
if (spawned.length > 0)
|
|
926
|
-
parts.push(`start ${spawned.length} service(s) (${spawned.join(", ")})`);
|
|
927
|
-
if (attached.length > 0)
|
|
928
|
-
parts.push(`attach to ${attached.length} already-running service(s) (${attached.join(", ")})`);
|
|
1160
|
+
parts.push(`start ${String(spawned.length)} service(s) (${spawned.join(", ")})`);
|
|
1161
|
+
if (attached.length > 0) {
|
|
1162
|
+
parts.push(`attach to ${String(attached.length)} already-running service(s) (${attached.join(", ")})`);
|
|
1163
|
+
}
|
|
929
1164
|
return (`${parts.join(" and ")}, observe them, and write any edge the run witnesses into this ` +
|
|
930
1165
|
"repository's graph at R4 — a durable fact that raises every later finding resting on it to " +
|
|
931
1166
|
"reliability class A, and that survives re-indexing. Nothing is ever demoted or deleted.");
|
|
@@ -943,7 +1178,13 @@ export const observeRuntimeTool = {
|
|
|
943
1178
|
"already read the resolution field. Running takes a two-call confirmation — the first call " +
|
|
944
1179
|
"performs nothing and returns a token describing what it would do; call again with " +
|
|
945
1180
|
"\"confirmToken\" to actually run it. The environment profile's declared safetyLevel is checked " +
|
|
946
|
-
"before anything starts: booting is a write, attaching is not."
|
|
1181
|
+
"before anything starts: booting is a write, attaching is not. " +
|
|
1182
|
+
"BEFORE CALLING: this observes an application you can already run — it does not help you get to " +
|
|
1183
|
+
"a runnable state, and that boundary is real rather than apologetic. Its dependencies must be up, " +
|
|
1184
|
+
"its environment set, and its migrations applied, all by you. One trap worth stating because it " +
|
|
1185
|
+
"is invisible: overriding some environment variables does not isolate a run from the " +
|
|
1186
|
+
"application's own configuration file — anything you did not explicitly override is still read " +
|
|
1187
|
+
"from it, including values naming environments you did not intend to touch.",
|
|
947
1188
|
inputSchema: SCHEMA,
|
|
948
1189
|
run,
|
|
949
1190
|
describeAction,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observe-runtime.js","sourceRoot":"","sources":["../../src/tools/observe-runtime.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"observe-runtime.js","sourceRoot":"","sources":["../../src/tools/observe-runtime.ts"],"names":[],"mappings":"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"}
|