agentfootprint 9.30.0 → 9.32.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/AGENTS.md +1 -1
- package/CLAUDE.md +6 -2
- package/ai-instructions/claude-code/SKILL.md +1 -1
- package/dist/adapters/identity/jwks.js +18 -0
- package/dist/adapters/identity/jwks.js.map +1 -1
- package/dist/adapters/llm/BrowserOpenAIProvider.js +5 -3
- package/dist/adapters/llm/BrowserOpenAIProvider.js.map +1 -1
- package/dist/adapters/llm/OpenAIProvider.js +74 -2
- package/dist/adapters/llm/OpenAIProvider.js.map +1 -1
- package/dist/adapters/llm/azureUrl.js +48 -0
- package/dist/adapters/llm/azureUrl.js.map +1 -0
- package/dist/adapters/llm/createProvider.js +25 -6
- package/dist/adapters/llm/createProvider.js.map +1 -1
- package/dist/adapters/types.js.map +1 -1
- package/dist/artifacts/gcsArtifacts.js +20 -0
- package/dist/artifacts/gcsArtifacts.js.map +1 -1
- package/dist/esm/adapters/identity/jwks.d.ts +18 -0
- package/dist/esm/adapters/identity/jwks.js +18 -0
- package/dist/esm/adapters/identity/jwks.js.map +1 -1
- package/dist/esm/adapters/llm/BrowserOpenAIProvider.js +5 -3
- package/dist/esm/adapters/llm/BrowserOpenAIProvider.js.map +1 -1
- package/dist/esm/adapters/llm/OpenAIProvider.d.ts +15 -2
- package/dist/esm/adapters/llm/OpenAIProvider.js +74 -2
- package/dist/esm/adapters/llm/OpenAIProvider.js.map +1 -1
- package/dist/esm/adapters/llm/azureUrl.d.ts +36 -0
- package/dist/esm/adapters/llm/azureUrl.js +43 -0
- package/dist/esm/adapters/llm/azureUrl.js.map +1 -0
- package/dist/esm/adapters/llm/createProvider.d.ts +5 -1
- package/dist/esm/adapters/llm/createProvider.js +25 -6
- package/dist/esm/adapters/llm/createProvider.js.map +1 -1
- package/dist/esm/adapters/types.d.ts +30 -2
- package/dist/esm/adapters/types.js.map +1 -1
- package/dist/esm/artifacts/gcsArtifacts.d.ts +20 -0
- package/dist/esm/artifacts/gcsArtifacts.js +20 -0
- package/dist/esm/artifacts/gcsArtifacts.js.map +1 -1
- package/dist/esm/events/payloads.d.ts +36 -0
- package/dist/esm/events/registry.d.ts +3 -1
- package/dist/esm/events/registry.js +2 -0
- package/dist/esm/events/registry.js.map +1 -1
- package/dist/esm/hosting/admission.d.ts +25 -0
- package/dist/esm/hosting/admission.js +25 -0
- package/dist/esm/hosting/admission.js.map +1 -1
- package/dist/esm/hosting/envelope.d.ts +10 -0
- package/dist/esm/hosting/envelope.js +10 -0
- package/dist/esm/hosting/envelope.js.map +1 -1
- package/dist/esm/hosting/index.d.ts +1 -0
- package/dist/esm/hosting/index.js.map +1 -1
- package/dist/esm/hosting/ingressRecord.d.ts +177 -0
- package/dist/esm/hosting/ingressRecord.js +246 -0
- package/dist/esm/hosting/ingressRecord.js.map +1 -0
- package/dist/esm/hosting/standingAgent.js +50 -1
- package/dist/esm/hosting/standingAgent.js.map +1 -1
- package/dist/esm/hosting/types.d.ts +31 -0
- package/dist/esm/hosting/types.js.map +1 -1
- package/dist/esm/lib/injection-engine/skillExamples.d.ts +168 -0
- package/dist/esm/lib/injection-engine/skillExamples.js +435 -0
- package/dist/esm/lib/injection-engine/skillExamples.js.map +1 -0
- package/dist/esm/lib/injection-engine/skillGraph.d.ts +63 -0
- package/dist/esm/lib/injection-engine/skillGraph.js +40 -2
- package/dist/esm/lib/injection-engine/skillGraph.js.map +1 -1
- package/dist/esm/lib/injection-engine/skillGraphCheckup.d.ts +25 -2
- package/dist/esm/lib/injection-engine/skillGraphCheckup.js +11 -2
- package/dist/esm/lib/injection-engine/skillGraphCheckup.js.map +1 -1
- package/dist/esm/lib/injection-engine/skillMatch.d.ts +7 -0
- package/dist/esm/lib/injection-engine/skillMatch.js +9 -4
- package/dist/esm/lib/injection-engine/skillMatch.js.map +1 -1
- package/dist/esm/lib/mcp/gatewayTransport.d.ts +52 -0
- package/dist/esm/lib/mcp/gatewayTransport.js +1 -0
- package/dist/esm/lib/mcp/gatewayTransport.js.map +1 -1
- package/dist/esm/lib/mcp/mcpClient.js +8 -1
- package/dist/esm/lib/mcp/mcpClient.js.map +1 -1
- package/dist/esm/lib/mcp/types.d.ts +10 -0
- package/dist/esm/observe.js +2 -1
- package/dist/esm/observe.js.map +1 -1
- package/dist/esm/recorders/core/ResilienceRecorder.d.ts +8 -7
- package/dist/esm/recorders/core/ResilienceRecorder.js +9 -7
- package/dist/esm/recorders/core/ResilienceRecorder.js.map +1 -1
- package/dist/esm/recorders/core/resilienceHooks.d.ts +1 -0
- package/dist/esm/recorders/core/resilienceHooks.js +13 -0
- package/dist/esm/recorders/core/resilienceHooks.js.map +1 -1
- package/dist/esm/resilience/withCircuitBreaker.d.ts +27 -7
- package/dist/esm/resilience/withCircuitBreaker.js +53 -19
- package/dist/esm/resilience/withCircuitBreaker.js.map +1 -1
- package/dist/esm/resilience/withFallback.d.ts +11 -0
- package/dist/esm/resilience/withFallback.js +11 -0
- package/dist/esm/resilience/withFallback.js.map +1 -1
- package/dist/esm/resilience/withRetry.d.ts +12 -0
- package/dist/esm/resilience/withRetry.js +12 -0
- package/dist/esm/resilience/withRetry.js.map +1 -1
- package/dist/esm/security/PermissionPolicy.d.ts +22 -0
- package/dist/esm/security/PermissionPolicy.js +22 -0
- package/dist/esm/security/PermissionPolicy.js.map +1 -1
- package/dist/events/registry.js +2 -0
- package/dist/events/registry.js.map +1 -1
- package/dist/hosting/admission.js +25 -0
- package/dist/hosting/admission.js.map +1 -1
- package/dist/hosting/envelope.js +10 -0
- package/dist/hosting/envelope.js.map +1 -1
- package/dist/hosting/index.js.map +1 -1
- package/dist/hosting/ingressRecord.js +250 -0
- package/dist/hosting/ingressRecord.js.map +1 -0
- package/dist/hosting/standingAgent.js +50 -1
- package/dist/hosting/standingAgent.js.map +1 -1
- package/dist/hosting/types.js.map +1 -1
- package/dist/lib/injection-engine/skillExamples.js +440 -0
- package/dist/lib/injection-engine/skillExamples.js.map +1 -0
- package/dist/lib/injection-engine/skillGraph.js +40 -2
- package/dist/lib/injection-engine/skillGraph.js.map +1 -1
- package/dist/lib/injection-engine/skillGraphCheckup.js +11 -2
- package/dist/lib/injection-engine/skillGraphCheckup.js.map +1 -1
- package/dist/lib/injection-engine/skillMatch.js +11 -5
- package/dist/lib/injection-engine/skillMatch.js.map +1 -1
- package/dist/lib/mcp/gatewayTransport.js +1 -0
- package/dist/lib/mcp/gatewayTransport.js.map +1 -1
- package/dist/lib/mcp/mcpClient.js +8 -1
- package/dist/lib/mcp/mcpClient.js.map +1 -1
- package/dist/observe.js +2 -1
- package/dist/observe.js.map +1 -1
- package/dist/recorders/core/ResilienceRecorder.js +9 -7
- package/dist/recorders/core/ResilienceRecorder.js.map +1 -1
- package/dist/recorders/core/resilienceHooks.js +13 -0
- package/dist/recorders/core/resilienceHooks.js.map +1 -1
- package/dist/resilience/withCircuitBreaker.js +53 -19
- package/dist/resilience/withCircuitBreaker.js.map +1 -1
- package/dist/resilience/withFallback.js +11 -0
- package/dist/resilience/withFallback.js.map +1 -1
- package/dist/resilience/withRetry.js +12 -0
- package/dist/resilience/withRetry.js.map +1 -1
- package/dist/security/PermissionPolicy.js +22 -0
- package/dist/security/PermissionPolicy.js.map +1 -1
- package/dist/types/adapters/identity/jwks.d.ts +18 -0
- package/dist/types/adapters/identity/jwks.d.ts.map +1 -1
- package/dist/types/adapters/llm/BrowserOpenAIProvider.d.ts.map +1 -1
- package/dist/types/adapters/llm/OpenAIProvider.d.ts +15 -2
- package/dist/types/adapters/llm/OpenAIProvider.d.ts.map +1 -1
- package/dist/types/adapters/llm/azureUrl.d.ts +37 -0
- package/dist/types/adapters/llm/azureUrl.d.ts.map +1 -0
- package/dist/types/adapters/llm/createProvider.d.ts +5 -1
- package/dist/types/adapters/llm/createProvider.d.ts.map +1 -1
- package/dist/types/adapters/types.d.ts +30 -2
- package/dist/types/adapters/types.d.ts.map +1 -1
- package/dist/types/artifacts/gcsArtifacts.d.ts +20 -0
- package/dist/types/artifacts/gcsArtifacts.d.ts.map +1 -1
- package/dist/types/events/payloads.d.ts +36 -0
- package/dist/types/events/payloads.d.ts.map +1 -1
- package/dist/types/events/registry.d.ts +3 -1
- package/dist/types/events/registry.d.ts.map +1 -1
- package/dist/types/hosting/admission.d.ts +25 -0
- package/dist/types/hosting/admission.d.ts.map +1 -1
- package/dist/types/hosting/envelope.d.ts +10 -0
- package/dist/types/hosting/envelope.d.ts.map +1 -1
- package/dist/types/hosting/index.d.ts +1 -0
- package/dist/types/hosting/index.d.ts.map +1 -1
- package/dist/types/hosting/ingressRecord.d.ts +178 -0
- package/dist/types/hosting/ingressRecord.d.ts.map +1 -0
- package/dist/types/hosting/standingAgent.d.ts.map +1 -1
- package/dist/types/hosting/types.d.ts +31 -0
- package/dist/types/hosting/types.d.ts.map +1 -1
- package/dist/types/lib/injection-engine/skillExamples.d.ts +169 -0
- package/dist/types/lib/injection-engine/skillExamples.d.ts.map +1 -0
- package/dist/types/lib/injection-engine/skillGraph.d.ts +63 -0
- package/dist/types/lib/injection-engine/skillGraph.d.ts.map +1 -1
- package/dist/types/lib/injection-engine/skillGraphCheckup.d.ts +25 -2
- package/dist/types/lib/injection-engine/skillGraphCheckup.d.ts.map +1 -1
- package/dist/types/lib/injection-engine/skillMatch.d.ts +7 -0
- package/dist/types/lib/injection-engine/skillMatch.d.ts.map +1 -1
- package/dist/types/lib/mcp/gatewayTransport.d.ts +52 -0
- package/dist/types/lib/mcp/gatewayTransport.d.ts.map +1 -1
- package/dist/types/lib/mcp/types.d.ts +10 -0
- package/dist/types/lib/mcp/types.d.ts.map +1 -1
- package/dist/types/observe.d.ts.map +1 -1
- package/dist/types/recorders/core/ResilienceRecorder.d.ts +8 -7
- package/dist/types/recorders/core/ResilienceRecorder.d.ts.map +1 -1
- package/dist/types/recorders/core/resilienceHooks.d.ts +1 -0
- package/dist/types/recorders/core/resilienceHooks.d.ts.map +1 -1
- package/dist/types/resilience/withCircuitBreaker.d.ts +27 -7
- package/dist/types/resilience/withCircuitBreaker.d.ts.map +1 -1
- package/dist/types/resilience/withFallback.d.ts +11 -0
- package/dist/types/resilience/withFallback.d.ts.map +1 -1
- package/dist/types/resilience/withRetry.d.ts +12 -0
- package/dist/types/resilience/withRetry.d.ts.map +1 -1
- package/dist/types/security/PermissionPolicy.d.ts +22 -0
- package/dist/types/security/PermissionPolicy.d.ts.map +1 -1
- package/package.json +2 -1
|
@@ -0,0 +1,246 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* hosting/ingressRecord — what the door decided, for the requests that never
|
|
3
|
+
* became a run.
|
|
4
|
+
*
|
|
5
|
+
* await standingAgent({
|
|
6
|
+
* agent, sessions, host,
|
|
7
|
+
* identity: { verify },
|
|
8
|
+
* admission: turnsPerHour({ limit: 60 }),
|
|
9
|
+
* onIngressDecision: (record) => myAuditSink.write(record),
|
|
10
|
+
* });
|
|
11
|
+
*
|
|
12
|
+
* ── The gap this closes, named exactly ───────────────────────────────────────
|
|
13
|
+
* `auditExport()` is a record of RUNS. A 401 out of `identity.verify` and a 429
|
|
14
|
+
* out of `admission.decide` both happen before a run exists — no agent has been
|
|
15
|
+
* built, no observer is attached, no typed event is emitted — so neither is in
|
|
16
|
+
* the bundle. Two independent review rounds wrote that down as the same finding,
|
|
17
|
+
* and the honest consequence is the sharp one: **an empty bundle is not evidence
|
|
18
|
+
* that nobody was turned away.** It is evidence that nobody ran.
|
|
19
|
+
*
|
|
20
|
+
* This is the seam where the turned-away go. One record per request the composer
|
|
21
|
+
* decided, handed to a sink you own, at the moment the reply reaches its
|
|
22
|
+
* terminal.
|
|
23
|
+
*
|
|
24
|
+
* ── What it is NOT, said before anything else ────────────────────────────────
|
|
25
|
+
* **It does not join the audit hash chain.** Nothing here is hashed, chained,
|
|
26
|
+
* sequenced against `auditExport()`'s records, or verifiable by
|
|
27
|
+
* `verifyAuditBundle`. It is a STREAM you chain into your own sink. Saying
|
|
28
|
+
* otherwise would make this fix the exact failure it exists to close — a
|
|
29
|
+
* mechanism that looks like evidence and is not. If you need ingress decisions
|
|
30
|
+
* inside a tamper-evident chain, write them into the same store your audit
|
|
31
|
+
* bundle lands in and chain them there, where the sequence is yours to define.
|
|
32
|
+
*
|
|
33
|
+
* ── Secrets never travel ─────────────────────────────────────────────────────
|
|
34
|
+
* A record carries the CLASS of what happened and the identifiers the caller
|
|
35
|
+
* already knew. Never the bearer token, never a header, never a claim set,
|
|
36
|
+
* never an error's message — the `sdkFailure` law, applied to the front door.
|
|
37
|
+
* `errorName` and `errorCode` are this package's own vocabulary; a message may
|
|
38
|
+
* carry an SDK's text, an operator's sentence or a store's detail, so no message
|
|
39
|
+
* is copied. The one identity field is `userId`, and it is the id the token
|
|
40
|
+
* PROVED — never one a request merely claimed.
|
|
41
|
+
*
|
|
42
|
+
* ── What the composer can decide, and what it never sees ─────────────────────
|
|
43
|
+
* Every ingress exit of `standingAgent` funnels through one reply terminal, so
|
|
44
|
+
* all of these land here — including the ones a consumer's own `verify` and
|
|
45
|
+
* `decide` never observe:
|
|
46
|
+
*
|
|
47
|
+
* - a request with no `Authorization: Bearer …` at all (`verify` is never
|
|
48
|
+
* called, so nothing you wrote could have logged it);
|
|
49
|
+
* - a verifier that could not answer (503) as distinct from a bad credential;
|
|
50
|
+
* - an admission refusal, and also an admission ALLOW — the census is what
|
|
51
|
+
* makes an absence readable;
|
|
52
|
+
* - a turn or a transcript naming somebody else's session (the 404 that is
|
|
53
|
+
* deliberately indistinguishable from "no such session");
|
|
54
|
+
* - a session op at a door with no verifier, a store with no owner index, a
|
|
55
|
+
* concurrent-run refusal, an artifact ref that did not resolve;
|
|
56
|
+
* - and a request that was SERVED.
|
|
57
|
+
*
|
|
58
|
+
* What it does not carry, stated rather than implied: a body the TRANSPORT
|
|
59
|
+
* refused before the composer ever saw it — unparseable JSON, or an `op` this
|
|
60
|
+
* host's wire grammar does not speak (`InvalidWireOpError`, answered 400 by
|
|
61
|
+
* `httpHost` inside its own request reader). That is a malformed request rather
|
|
62
|
+
* than a decision about a caller, and the composer does not claim it. Your HTTP
|
|
63
|
+
* access log has it.
|
|
64
|
+
*
|
|
65
|
+
* Pattern: Observer at a composition boundary. Zero-cost when unset — with no
|
|
66
|
+
* sink configured nothing is built, nothing is wrapped, and the reply object the
|
|
67
|
+
* handler uses is the host's own, to the byte.
|
|
68
|
+
*/
|
|
69
|
+
import { bearerToken } from './identityVerification.js';
|
|
70
|
+
import { AdmissionRefusedError, IdentityNotVerifiedError, SessionNotFoundError, VerifierUnavailableError, } from './errors.js';
|
|
71
|
+
import { ARTIFACT_GET_OP, ARTIFACT_HEAD_OP } from './artifactWire.js';
|
|
72
|
+
import { SESSION_LIST_OP, SESSION_TRANSCRIPT_OP } from './sessionWire.js';
|
|
73
|
+
/**
|
|
74
|
+
* Classify one refusal into the record's vocabulary.
|
|
75
|
+
*
|
|
76
|
+
* The order is deliberate: the classes this package authored are matched by
|
|
77
|
+
* `instanceof` first, so a door refusal never reads as a generic failure, and
|
|
78
|
+
* anything else keeps only its class NAME. No message is read, from any error,
|
|
79
|
+
* ever.
|
|
80
|
+
*/
|
|
81
|
+
function classify(err) {
|
|
82
|
+
if (err instanceof IdentityNotVerifiedError) {
|
|
83
|
+
return {
|
|
84
|
+
outcome: 'identity-refused',
|
|
85
|
+
errorCode: err.code,
|
|
86
|
+
errorName: err.name,
|
|
87
|
+
identityFailure: err.failure,
|
|
88
|
+
claimedUser: err.claimedUser,
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
if (err instanceof VerifierUnavailableError) {
|
|
92
|
+
return { outcome: 'verifier-unavailable', errorCode: err.code, errorName: err.name };
|
|
93
|
+
}
|
|
94
|
+
if (err instanceof AdmissionRefusedError) {
|
|
95
|
+
return { outcome: 'admission-refused', errorCode: err.code, errorName: err.name };
|
|
96
|
+
}
|
|
97
|
+
if (err instanceof SessionNotFoundError) {
|
|
98
|
+
return { outcome: 'session-refused', errorCode: err.code, errorName: err.name };
|
|
99
|
+
}
|
|
100
|
+
const code = err?.code;
|
|
101
|
+
const name = err?.name;
|
|
102
|
+
// A hosting refusal names itself with an `ERR_…` code. Anything else is a
|
|
103
|
+
// failure rather than a decision — and either way only the class travels.
|
|
104
|
+
const hasHostingCode = typeof code === 'string' && code.startsWith('ERR_');
|
|
105
|
+
return {
|
|
106
|
+
outcome: hasHostingCode ? 'refused' : 'failed',
|
|
107
|
+
...(typeof code === 'string' && { errorCode: code }),
|
|
108
|
+
...(typeof name === 'string' && { errorName: name }),
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
/** Which op name a request named, in the spelling a body uses. */
|
|
112
|
+
function opOf(request) {
|
|
113
|
+
if (request.session !== undefined) {
|
|
114
|
+
return request.session.op === 'list' ? SESSION_LIST_OP : SESSION_TRANSCRIPT_OP;
|
|
115
|
+
}
|
|
116
|
+
if (request.artifact !== undefined) {
|
|
117
|
+
return request.artifact.op === 'head' ? ARTIFACT_HEAD_OP : ARTIFACT_GET_OP;
|
|
118
|
+
}
|
|
119
|
+
return undefined;
|
|
120
|
+
}
|
|
121
|
+
/** Which door a request knocked at — the same discriminants the handler uses. */
|
|
122
|
+
function doorOf(request) {
|
|
123
|
+
if (request.session !== undefined)
|
|
124
|
+
return 'session-op';
|
|
125
|
+
if (request.artifact !== undefined)
|
|
126
|
+
return 'artifact';
|
|
127
|
+
return 'turn';
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Which conversation this request named. A `session-transcript` names it inside
|
|
131
|
+
* the op rather than beside it, and a record that missed that would be blind to
|
|
132
|
+
* exactly the refusal the ownership rule produces.
|
|
133
|
+
*/
|
|
134
|
+
function sessionOf(request) {
|
|
135
|
+
if (request.session !== undefined && request.session.op === 'transcript') {
|
|
136
|
+
return request.session.sessionId;
|
|
137
|
+
}
|
|
138
|
+
return request.sessionId;
|
|
139
|
+
}
|
|
140
|
+
let warnedOnce = false;
|
|
141
|
+
/** Report a throwing sink once. A broken record is a fault worth naming; a
|
|
142
|
+
* fault reported on every request is a second outage. */
|
|
143
|
+
function warnSink(err) {
|
|
144
|
+
if (warnedOnce)
|
|
145
|
+
return;
|
|
146
|
+
warnedOnce = true;
|
|
147
|
+
// eslint-disable-next-line no-console
|
|
148
|
+
console.warn(`[hosting] the onIngressDecision sink threw and the record was dropped. The request was ` +
|
|
149
|
+
`unaffected — a broken log must not turn a served request into a failed one — but this ` +
|
|
150
|
+
`door's ingress decisions are not being recorded. Reported once per process. Cause: ` +
|
|
151
|
+
`${err?.name ?? 'unknown'}`);
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Begin one request's ingress record.
|
|
155
|
+
*
|
|
156
|
+
* @internal — the option is public, this bookkeeping is not.
|
|
157
|
+
*/
|
|
158
|
+
export function beginIngress(request, sink) {
|
|
159
|
+
const door = doorOf(request);
|
|
160
|
+
const op = opOf(request);
|
|
161
|
+
const sessionId = sessionOf(request);
|
|
162
|
+
// Presence, never the value: the whole point of the class vocabulary above is
|
|
163
|
+
// that an operator can act without a single character of the credential.
|
|
164
|
+
const bearerPresent = bearerToken(request.headers) !== undefined;
|
|
165
|
+
let userId;
|
|
166
|
+
let admission;
|
|
167
|
+
let filed = false;
|
|
168
|
+
function file(outcome, err) {
|
|
169
|
+
if (filed)
|
|
170
|
+
return;
|
|
171
|
+
filed = true;
|
|
172
|
+
const detail = err === undefined ? undefined : classify(err);
|
|
173
|
+
const record = {
|
|
174
|
+
at: Date.now(),
|
|
175
|
+
door,
|
|
176
|
+
...(op !== undefined && { op }),
|
|
177
|
+
outcome: detail?.outcome ?? outcome,
|
|
178
|
+
...(detail?.errorCode !== undefined && { errorCode: detail.errorCode }),
|
|
179
|
+
...(detail?.errorName !== undefined && { errorName: detail.errorName }),
|
|
180
|
+
...(detail?.identityFailure !== undefined && { identityFailure: detail.identityFailure }),
|
|
181
|
+
...(detail?.claimedUser !== undefined && { claimedUser: detail.claimedUser }),
|
|
182
|
+
...(userId !== undefined && { userId }),
|
|
183
|
+
...(sessionId !== undefined && { sessionId }),
|
|
184
|
+
bearerPresent,
|
|
185
|
+
...(admission !== undefined && { admission }),
|
|
186
|
+
};
|
|
187
|
+
try {
|
|
188
|
+
sink(record);
|
|
189
|
+
}
|
|
190
|
+
catch (sinkErr) {
|
|
191
|
+
warnSink(sinkErr);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
return {
|
|
195
|
+
watch(reply) {
|
|
196
|
+
// Every optional terminal is forwarded ONLY when the host has it: the
|
|
197
|
+
// composer feature-detects `awaiting`/`artifact`/`sessions`, so a wrapper
|
|
198
|
+
// that defined them unconditionally would tell it the host can describe a
|
|
199
|
+
// pause it cannot, and the named refusal for that case would never fire.
|
|
200
|
+
return {
|
|
201
|
+
complete(output) {
|
|
202
|
+
file('served');
|
|
203
|
+
reply.complete(output);
|
|
204
|
+
},
|
|
205
|
+
fail(error) {
|
|
206
|
+
file('failed', error);
|
|
207
|
+
reply.fail(error);
|
|
208
|
+
},
|
|
209
|
+
...(reply.awaiting && {
|
|
210
|
+
awaiting: (pending) => {
|
|
211
|
+
file('served');
|
|
212
|
+
reply.awaiting?.(pending);
|
|
213
|
+
},
|
|
214
|
+
}),
|
|
215
|
+
...(reply.artifact && {
|
|
216
|
+
artifact: (result) => {
|
|
217
|
+
file('served');
|
|
218
|
+
reply.artifact?.(result);
|
|
219
|
+
},
|
|
220
|
+
}),
|
|
221
|
+
...(reply.sessions && {
|
|
222
|
+
sessions: (result) => {
|
|
223
|
+
file('served');
|
|
224
|
+
reply.sessions?.(result);
|
|
225
|
+
},
|
|
226
|
+
}),
|
|
227
|
+
// Not a terminal: a chunk is part of an answer still being written.
|
|
228
|
+
...(reply.emit && { emit: (chunk) => reply.emit?.(chunk) }),
|
|
229
|
+
};
|
|
230
|
+
},
|
|
231
|
+
identified(verified) {
|
|
232
|
+
if (verified !== undefined)
|
|
233
|
+
userId = verified.userId;
|
|
234
|
+
},
|
|
235
|
+
admitted(verdict) {
|
|
236
|
+
admission = verdict;
|
|
237
|
+
},
|
|
238
|
+
settle() {
|
|
239
|
+
// Only reachable if a request left the door without ending its reply,
|
|
240
|
+
// which the composer never does. Recorded as a failure rather than
|
|
241
|
+
// silently dropped: a census with holes is the thing this replaces.
|
|
242
|
+
file('failed');
|
|
243
|
+
},
|
|
244
|
+
};
|
|
245
|
+
}
|
|
246
|
+
//# sourceMappingURL=ingressRecord.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ingressRecord.js","sourceRoot":"","sources":["../../../src/hosting/ingressRecord.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AAEH,OAAO,EAAE,WAAW,EAAyB,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,GAEzB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAgG1E;;;;;;;GAOG;AACH,SAAS,QAAQ,CAAC,GAAY;IAO5B,IAAI,GAAG,YAAY,wBAAwB,EAAE,CAAC;QAC5C,OAAO;YACL,OAAO,EAAE,kBAAkB;YAC3B,SAAS,EAAE,GAAG,CAAC,IAAI;YACnB,SAAS,EAAE,GAAG,CAAC,IAAI;YACnB,eAAe,EAAE,GAAG,CAAC,OAAO;YAC5B,WAAW,EAAE,GAAG,CAAC,WAAW;SAC7B,CAAC;IACJ,CAAC;IACD,IAAI,GAAG,YAAY,wBAAwB,EAAE,CAAC;QAC5C,OAAO,EAAE,OAAO,EAAE,sBAAsB,EAAE,SAAS,EAAE,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;IACvF,CAAC;IACD,IAAI,GAAG,YAAY,qBAAqB,EAAE,CAAC;QACzC,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;IACpF,CAAC;IACD,IAAI,GAAG,YAAY,oBAAoB,EAAE,CAAC;QACxC,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;IAClF,CAAC;IACD,MAAM,IAAI,GAAI,GAAsC,EAAE,IAAI,CAAC;IAC3D,MAAM,IAAI,GAAI,GAAsC,EAAE,IAAI,CAAC;IAC3D,0EAA0E;IAC1E,0EAA0E;IAC1E,MAAM,cAAc,GAAG,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC3E,OAAO;QACL,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;QAC9C,GAAG,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QACpD,GAAG,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;KACrD,CAAC;AACJ,CAAC;AAsBD,kEAAkE;AAClE,SAAS,IAAI,CAAC,OAAoB;IAChC,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,qBAAqB,CAAC;IACjF,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACnC,OAAO,OAAO,CAAC,QAAQ,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,eAAe,CAAC;IAC7E,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,iFAAiF;AACjF,SAAS,MAAM,CAAC,OAAoB;IAClC,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS;QAAE,OAAO,YAAY,CAAC;IACvD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,UAAU,CAAC;IACtD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,SAAS,SAAS,CAAC,OAAoB;IACrC,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,YAAY,EAAE,CAAC;QACzE,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;IACnC,CAAC;IACD,OAAO,OAAO,CAAC,SAAS,CAAC;AAC3B,CAAC;AAED,IAAI,UAAU,GAAG,KAAK,CAAC;AAEvB;0DAC0D;AAC1D,SAAS,QAAQ,CAAC,GAAY;IAC5B,IAAI,UAAU;QAAE,OAAO;IACvB,UAAU,GAAG,IAAI,CAAC;IAClB,sCAAsC;IACtC,OAAO,CAAC,IAAI,CACV,yFAAyF;QACvF,wFAAwF;QACxF,qFAAqF;QACrF,GAAI,GAAqC,EAAE,IAAI,IAAI,SAAS,EAAE,CACjE,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,OAAoB,EAAE,IAAiB;IAClE,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAC7B,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IACzB,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IACrC,8EAA8E;IAC9E,yEAAyE;IACzE,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,SAAS,CAAC;IACjE,IAAI,MAA0B,CAAC;IAC/B,IAAI,SAA8C,CAAC;IACnD,IAAI,KAAK,GAAG,KAAK,CAAC;IAElB,SAAS,IAAI,CAAC,OAAuB,EAAE,GAAa;QAClD,IAAI,KAAK;YAAE,OAAO;QAClB,KAAK,GAAG,IAAI,CAAC;QACb,MAAM,MAAM,GAAG,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAkB;YAC5B,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,IAAI;YACJ,GAAG,CAAC,EAAE,KAAK,SAAS,IAAI,EAAE,EAAE,EAAE,CAAC;YAC/B,OAAO,EAAE,MAAM,EAAE,OAAO,IAAI,OAAO;YACnC,GAAG,CAAC,MAAM,EAAE,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC;YACvE,GAAG,CAAC,MAAM,EAAE,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC;YACvE,GAAG,CAAC,MAAM,EAAE,eAAe,KAAK,SAAS,IAAI,EAAE,eAAe,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC;YACzF,GAAG,CAAC,MAAM,EAAE,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;YAC7E,GAAG,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,MAAM,EAAE,CAAC;YACvC,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;YAC7C,aAAa;YACb,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;SAC9C,CAAC;QACF,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,CAAC;QACf,CAAC;QAAC,OAAO,OAAO,EAAE,CAAC;YACjB,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAED,OAAO;QACL,KAAK,CAAC,KAAgB;YACpB,sEAAsE;YACtE,0EAA0E;YAC1E,0EAA0E;YAC1E,yEAAyE;YACzE,OAAO;gBACL,QAAQ,CAAC,MAAc;oBACrB,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACf,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACzB,CAAC;gBACD,IAAI,CAAC,KAAY;oBACf,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;oBACtB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACpB,CAAC;gBACD,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI;oBACpB,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE;wBACpB,IAAI,CAAC,QAAQ,CAAC,CAAC;wBACf,KAAK,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC;oBAC5B,CAAC;iBACF,CAAC;gBACF,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI;oBACpB,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;wBACnB,IAAI,CAAC,QAAQ,CAAC,CAAC;wBACf,KAAK,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC;oBAC3B,CAAC;iBACF,CAAC;gBACF,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI;oBACpB,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;wBACnB,IAAI,CAAC,QAAQ,CAAC,CAAC;wBACf,KAAK,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC;oBAC3B,CAAC;iBACF,CAAC;gBACF,oEAAoE;gBACpE,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,IAAI,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;aACpE,CAAC;QACJ,CAAC;QACD,UAAU,CAAC,QAAsC;YAC/C,IAAI,QAAQ,KAAK,SAAS;gBAAE,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;QACvD,CAAC;QACD,QAAQ,CAAC,OAAgC;YACvC,SAAS,GAAG,OAAO,CAAC;QACtB,CAAC;QACD,MAAM;YACJ,sEAAsE;YACtE,mEAAmE;YACnE,oEAAoE;YACpE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjB,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -105,6 +105,7 @@ import { envelopeOwner, envelopeTranscript, readEnvelope, readPausedRun, toEnvel
|
|
|
105
105
|
import { AdmissionRefusedError, ArtifactNotCarriedError, ArtifactNotFoundError, ArtifactSessionRequiredError, AwaitingDecisionError, ConcurrentRunError, NoArtifactStoreError, NoPendingAskError, PauseNotCarriedError, SessionIndexUnavailableError, SessionNotFoundError, SessionOpNeedsIdentityError, SessionsNotCarriedError, UnreadableEnvelopeError, } from './errors.js';
|
|
106
106
|
import { verifyRequestIdentity } from './identityVerification.js';
|
|
107
107
|
import { spendKeyFor, spendLedger } from './admission.js';
|
|
108
|
+
import { beginIngress } from './ingressRecord.js';
|
|
108
109
|
import { SESSION_LIST_OP, SESSION_TRANSCRIPT_OP } from './sessionWire.js';
|
|
109
110
|
import { DEFAULT_MAX_ACTIVE_SESSIONS } from './types.js';
|
|
110
111
|
/**
|
|
@@ -164,6 +165,13 @@ export async function standingAgent(options) {
|
|
|
164
165
|
* server's whole traffic would be a cost nobody asked for.
|
|
165
166
|
*/
|
|
166
167
|
const ledger = admission !== undefined ? spendLedger() : undefined;
|
|
168
|
+
/**
|
|
169
|
+
* Where ingress decisions go (9.32.0), or `undefined` — the zero-delta path.
|
|
170
|
+
* With no sink nothing is wrapped and the handler uses the host's own reply
|
|
171
|
+
* object, which is what makes this option free for everyone who never asks
|
|
172
|
+
* for it.
|
|
173
|
+
*/
|
|
174
|
+
const ingressSink = options.onIngressDecision;
|
|
167
175
|
// ── Refused at construction, before a socket exists ──────────────────
|
|
168
176
|
//
|
|
169
177
|
// Two spellings of one decision, and nothing could make the winner visible
|
|
@@ -461,7 +469,17 @@ export async function standingAgent(options) {
|
|
|
461
469
|
lane.chain = mine.then(() => undefined, () => undefined);
|
|
462
470
|
return mine;
|
|
463
471
|
}
|
|
464
|
-
|
|
472
|
+
/**
|
|
473
|
+
* The composer's whole request path — with the reply it is handed already
|
|
474
|
+
* wrapped, when an ingress record is being kept.
|
|
475
|
+
*
|
|
476
|
+
* Split out from {@link handler} for exactly one reason: the record's funnel
|
|
477
|
+
* has to be ONE place. Every exit below ends at a reply terminal, so wrapping
|
|
478
|
+
* the reply once above this function covers all of them — a refusal added
|
|
479
|
+
* later cannot forget to report, because reporting is not something any exit
|
|
480
|
+
* does.
|
|
481
|
+
*/
|
|
482
|
+
const answerRequest = async (request, reply, note) => {
|
|
465
483
|
// ── The badge, before anything else ───────────────────────────────
|
|
466
484
|
// FIRST, and once — so a turn, a claim-ticket redemption and a session
|
|
467
485
|
// read all inherit one answer to "who is this", and a door added later
|
|
@@ -476,6 +494,10 @@ export async function standingAgent(options) {
|
|
|
476
494
|
reply.fail(err instanceof Error ? err : new Error(String(err)));
|
|
477
495
|
return;
|
|
478
496
|
}
|
|
497
|
+
// The PROVEN id, on the record — never the claimed one, which is the whole
|
|
498
|
+
// distinction the verifier exists to draw. Nothing is recorded when nobody
|
|
499
|
+
// was proven; absent and "anonymous" are the same fact here.
|
|
500
|
+
note?.identified(verified);
|
|
479
501
|
// The user id that reaches every downstream composition. With a verifier
|
|
480
502
|
// it is the one the TOKEN proved (the request's own claim was already
|
|
481
503
|
// reconciled or refused); without one it is exactly what the transport
|
|
@@ -530,10 +552,15 @@ export async function standingAgent(options) {
|
|
|
530
552
|
recentSpend: ledger.read(spendKey),
|
|
531
553
|
});
|
|
532
554
|
if (typeof verdict === 'object' && verdict !== null && 'refuse' in verdict) {
|
|
555
|
+
note?.admitted('refuse');
|
|
533
556
|
reply.fail(new AdmissionRefusedError(verdict.refuse, userId));
|
|
534
557
|
return;
|
|
535
558
|
}
|
|
536
559
|
queueAnyway = typeof verdict === 'object' && verdict !== null && 'queue' in verdict;
|
|
560
|
+
// An ALLOW is recorded too. A stream of refusals alone cannot answer
|
|
561
|
+
// "was anybody turned away?" — only a census can, which is the same
|
|
562
|
+
// reason an empty audit bundle is not evidence of an empty door.
|
|
563
|
+
note?.admitted(queueAnyway ? 'queue' : 'allow');
|
|
537
564
|
// Counted at ADMISSION, not at completion: a turn that is running has
|
|
538
565
|
// been spent whether or not it ever answers, and counting on the way
|
|
539
566
|
// out would let a caller hold N runs open under a limit of one.
|
|
@@ -553,6 +580,28 @@ export async function standingAgent(options) {
|
|
|
553
580
|
reply.fail(err instanceof Error ? err : new Error(String(err)));
|
|
554
581
|
}
|
|
555
582
|
};
|
|
583
|
+
/**
|
|
584
|
+
* What the host calls — {@link answerRequest} with the ingress record's one
|
|
585
|
+
* funnel around it (9.32.0).
|
|
586
|
+
*
|
|
587
|
+
* With no sink configured this is the identity function over the host's own
|
|
588
|
+
* reply: no wrapper object, no bookkeeping, no branch inside any exit path.
|
|
589
|
+
*
|
|
590
|
+
* `settle()` covers the one case a terminal cannot: a request that leaves
|
|
591
|
+
* without ending its reply at all. The composer never does that, and the
|
|
592
|
+
* `finally` is there because "never" is a claim about today's code rather
|
|
593
|
+
* than a guarantee — a census with a hole in it is what this replaces.
|
|
594
|
+
*/
|
|
595
|
+
const handler = async (request, hostReply) => {
|
|
596
|
+
const note = ingressSink === undefined ? undefined : beginIngress(request, ingressSink);
|
|
597
|
+
const reply = note === undefined ? hostReply : note.watch(hostReply);
|
|
598
|
+
try {
|
|
599
|
+
await answerRequest(request, reply, note);
|
|
600
|
+
}
|
|
601
|
+
finally {
|
|
602
|
+
note?.settle();
|
|
603
|
+
}
|
|
604
|
+
};
|
|
556
605
|
/**
|
|
557
606
|
* Answer "which conversations are mine?" and "what did we say?" — the two
|
|
558
607
|
* session-history ops (9.26.0).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standingAgent.js","sourceRoot":"","sources":["../../../src/hosting/standingAgent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"standingAgent.js","sourceRoot":"","sources":["../../../src/hosting/standingAgent.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,7 @@ import type { Unsubscribe } from '../events/dispatcher.js';
|
|
|
30
30
|
import type { ArtifactWireRequest, ArtifactWireResult } from './artifactWire.js';
|
|
31
31
|
import type { IdentityVerificationOptions } from './identityVerification.js';
|
|
32
32
|
import type { AdmissionPolicy } from './admission.js';
|
|
33
|
+
import type { IngressSink } from './ingressRecord.js';
|
|
33
34
|
import type { SessionSummary, SessionWireRequest, SessionWireResult } from './sessionWire.js';
|
|
34
35
|
export type { Unsubscribe };
|
|
35
36
|
/**
|
|
@@ -821,6 +822,36 @@ export interface StandingAgentBaseOptions<TH extends HostHandle = HostHandle> {
|
|
|
821
822
|
* decided against a window none of them had joined.
|
|
822
823
|
*/
|
|
823
824
|
readonly admission?: AdmissionPolicy;
|
|
825
|
+
/**
|
|
826
|
+
* Where this door's ingress decisions go (9.32.0) — one record per request,
|
|
827
|
+
* including every request that never became a run.
|
|
828
|
+
*
|
|
829
|
+
* `auditExport()` is a record of RUNS, so a 401 from `identity.verify` and a
|
|
830
|
+
* 429 from `admission.decide` are not in it: they happen before an agent
|
|
831
|
+
* exists. Two independent review rounds named that gap. This is where the
|
|
832
|
+
* turned-away go — and where the SERVED are recorded too, because an absence
|
|
833
|
+
* is only readable against a census.
|
|
834
|
+
*
|
|
835
|
+
* **It does not join the audit hash chain.** Nothing here is hashed,
|
|
836
|
+
* sequenced or verifiable by `verifyAuditBundle`; it is a stream you chain
|
|
837
|
+
* into your own sink. Claiming otherwise would make this the very
|
|
838
|
+
* looks-like-evidence failure it exists to close.
|
|
839
|
+
*
|
|
840
|
+
* The record carries classes and identifiers only — never the token, never a
|
|
841
|
+
* header, never a claim set, never an error's message. See
|
|
842
|
+
* {@link IngressRecord} for the field-by-field contract and for the one thing
|
|
843
|
+
* it deliberately does not cover (a body the transport's own wire grammar
|
|
844
|
+
* refused before this composer ever saw it).
|
|
845
|
+
*
|
|
846
|
+
* Unset — the default — nothing is built, nothing is wrapped, and the reply
|
|
847
|
+
* the handler uses is the host's own object, to the byte.
|
|
848
|
+
*
|
|
849
|
+
* @example
|
|
850
|
+
* onIngressDecision: (record) => {
|
|
851
|
+
* if (record.outcome !== 'served') securityLog.write(record);
|
|
852
|
+
* }
|
|
853
|
+
*/
|
|
854
|
+
readonly onIngressDecision?: IngressSink;
|
|
824
855
|
/**
|
|
825
856
|
* How often a run's progress becomes crash-survivable. Default `'exit'` —
|
|
826
857
|
* one write when the run finishes, which is what every release before this
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/hosting/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/hosting/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AA25BH;iFACiF;AACjF,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAC"}
|