agentfootprint 9.24.0 → 9.26.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 +7 -1
- package/README.md +3 -1
- package/ai-instructions/claude-code/SKILL.md +1 -1
- package/dist/adapters/code/local.js +102 -2
- package/dist/adapters/code/local.js.map +1 -1
- package/dist/adapters/hosting/agentcore.js +11 -0
- package/dist/adapters/hosting/agentcore.js.map +1 -1
- package/dist/adapters/identity/jwks.js +277 -0
- package/dist/adapters/identity/jwks.js.map +1 -0
- package/dist/adapters/types.js +18 -1
- package/dist/adapters/types.js.map +1 -1
- package/dist/artifacts/fileArtifacts.js +144 -17
- package/dist/artifacts/fileArtifacts.js.map +1 -1
- package/dist/artifacts/gcsArtifacts.js +398 -0
- package/dist/artifacts/gcsArtifacts.js.map +1 -0
- package/dist/artifacts/index.js +17 -1
- package/dist/artifacts/index.js.map +1 -1
- package/dist/artifacts/objectStore.js +264 -0
- package/dist/artifacts/objectStore.js.map +1 -0
- package/dist/artifacts/payload.js +41 -2
- package/dist/artifacts/payload.js.map +1 -1
- package/dist/artifacts/recordingArtifact.js +88 -0
- package/dist/artifacts/recordingArtifact.js.map +1 -0
- package/dist/artifacts/s3Artifacts.js +542 -0
- package/dist/artifacts/s3Artifacts.js.map +1 -0
- package/dist/artifacts/scopePath.js +87 -0
- package/dist/artifacts/scopePath.js.map +1 -0
- package/dist/artifacts/streaming.js +132 -0
- package/dist/artifacts/streaming.js.map +1 -0
- package/dist/artifacts/types.js +10 -2
- package/dist/artifacts/types.js.map +1 -1
- package/dist/core/Agent.js +176 -0
- package/dist/core/Agent.js.map +1 -1
- package/dist/core/agent/AgentBuilder.js +20 -0
- package/dist/core/agent/AgentBuilder.js.map +1 -1
- package/dist/core/agent/repeatedCall.js +190 -0
- package/dist/core/agent/repeatedCall.js.map +1 -0
- package/dist/core/agent/stages/toolCalls.js +50 -0
- package/dist/core/agent/stages/toolCalls.js.map +1 -1
- package/dist/core/codeRunnerTool.js +149 -12
- package/dist/core/codeRunnerTool.js.map +1 -1
- package/dist/esm/adapters/code/local.d.ts +16 -0
- package/dist/esm/adapters/code/local.js +102 -2
- package/dist/esm/adapters/code/local.js.map +1 -1
- package/dist/esm/adapters/hosting/agentcore.js +11 -0
- package/dist/esm/adapters/hosting/agentcore.js.map +1 -1
- package/dist/esm/adapters/identity/jwks.d.ts +124 -0
- package/dist/esm/adapters/identity/jwks.js +249 -0
- package/dist/esm/adapters/identity/jwks.js.map +1 -0
- package/dist/esm/adapters/types.d.ts +86 -0
- package/dist/esm/adapters/types.js +16 -0
- package/dist/esm/adapters/types.js.map +1 -1
- package/dist/esm/artifacts/fileArtifacts.d.ts +13 -1
- package/dist/esm/artifacts/fileArtifacts.js +145 -18
- package/dist/esm/artifacts/fileArtifacts.js.map +1 -1
- package/dist/esm/artifacts/gcsArtifacts.d.ts +142 -0
- package/dist/esm/artifacts/gcsArtifacts.js +394 -0
- package/dist/esm/artifacts/gcsArtifacts.js.map +1 -0
- package/dist/esm/artifacts/index.d.ts +5 -1
- package/dist/esm/artifacts/index.js +4 -0
- package/dist/esm/artifacts/index.js.map +1 -1
- package/dist/esm/artifacts/objectStore.d.ts +166 -0
- package/dist/esm/artifacts/objectStore.js +252 -0
- package/dist/esm/artifacts/objectStore.js.map +1 -0
- package/dist/esm/artifacts/payload.d.ts +36 -4
- package/dist/esm/artifacts/payload.js +38 -1
- package/dist/esm/artifacts/payload.js.map +1 -1
- package/dist/esm/artifacts/recordingArtifact.d.ts +76 -0
- package/dist/esm/artifacts/recordingArtifact.js +83 -0
- package/dist/esm/artifacts/recordingArtifact.js.map +1 -0
- package/dist/esm/artifacts/s3Artifacts.d.ts +149 -0
- package/dist/esm/artifacts/s3Artifacts.js +538 -0
- package/dist/esm/artifacts/s3Artifacts.js.map +1 -0
- package/dist/esm/artifacts/scopePath.d.ts +50 -0
- package/dist/esm/artifacts/scopePath.js +80 -0
- package/dist/esm/artifacts/scopePath.js.map +1 -0
- package/dist/esm/artifacts/streaming.d.ts +82 -0
- package/dist/esm/artifacts/streaming.js +123 -0
- package/dist/esm/artifacts/streaming.js.map +1 -0
- package/dist/esm/artifacts/types.d.ts +71 -5
- package/dist/esm/artifacts/types.js +10 -2
- package/dist/esm/artifacts/types.js.map +1 -1
- package/dist/esm/core/Agent.d.ts +66 -2
- package/dist/esm/core/Agent.js +176 -0
- package/dist/esm/core/Agent.js.map +1 -1
- package/dist/esm/core/agent/AgentBuilder.js +20 -0
- package/dist/esm/core/agent/AgentBuilder.js.map +1 -1
- package/dist/esm/core/agent/repeatedCall.d.ts +150 -0
- package/dist/esm/core/agent/repeatedCall.js +184 -0
- package/dist/esm/core/agent/repeatedCall.js.map +1 -0
- package/dist/esm/core/agent/stages/toolCalls.d.ts +12 -0
- package/dist/esm/core/agent/stages/toolCalls.js +50 -0
- package/dist/esm/core/agent/stages/toolCalls.js.map +1 -1
- package/dist/esm/core/agent/types.d.ts +82 -0
- package/dist/esm/core/codeRunnerTool.d.ts +31 -0
- package/dist/esm/core/codeRunnerTool.js +149 -12
- package/dist/esm/core/codeRunnerTool.js.map +1 -1
- package/dist/esm/events/payloads.d.ts +22 -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 +180 -0
- package/dist/esm/hosting/admission.js +188 -0
- package/dist/esm/hosting/admission.js.map +1 -0
- package/dist/esm/hosting/artifactWire.d.ts +8 -5
- package/dist/esm/hosting/artifactWire.js +14 -9
- package/dist/esm/hosting/artifactWire.js.map +1 -1
- package/dist/esm/hosting/envelope.d.ts +34 -0
- package/dist/esm/hosting/envelope.js +81 -0
- package/dist/esm/hosting/envelope.js.map +1 -1
- package/dist/esm/hosting/errors.d.ts +131 -0
- package/dist/esm/hosting/errors.js +195 -0
- package/dist/esm/hosting/errors.js.map +1 -1
- package/dist/esm/hosting/httpHost.d.ts +21 -0
- package/dist/esm/hosting/httpHost.js +44 -2
- package/dist/esm/hosting/httpHost.js.map +1 -1
- package/dist/esm/hosting/identityVerification.d.ts +154 -0
- package/dist/esm/hosting/identityVerification.js +135 -0
- package/dist/esm/hosting/identityVerification.js.map +1 -0
- package/dist/esm/hosting/index.d.ts +12 -3
- package/dist/esm/hosting/index.js +16 -2
- package/dist/esm/hosting/index.js.map +1 -1
- package/dist/esm/hosting/memorySessions.d.ts +9 -0
- package/dist/esm/hosting/memorySessions.js +86 -0
- package/dist/esm/hosting/memorySessions.js.map +1 -1
- package/dist/esm/hosting/nodeHost.js +8 -0
- package/dist/esm/hosting/nodeHost.js.map +1 -1
- package/dist/esm/hosting/sessionWire.d.ts +126 -0
- package/dist/esm/hosting/sessionWire.js +95 -0
- package/dist/esm/hosting/sessionWire.js.map +1 -0
- package/dist/esm/hosting/sqliteSessions.js +122 -5
- package/dist/esm/hosting/sqliteSessions.js.map +1 -1
- package/dist/esm/hosting/standingAgent.js +299 -8
- package/dist/esm/hosting/standingAgent.js.map +1 -1
- package/dist/esm/hosting/types.d.ts +166 -6
- package/dist/esm/hosting/types.js.map +1 -1
- package/dist/esm/hosting/wireOps.d.ts +52 -0
- package/dist/esm/hosting/wireOps.js +60 -0
- package/dist/esm/hosting/wireOps.js.map +1 -0
- package/dist/esm/identity.d.ts +1 -0
- package/dist/esm/identity.js +6 -0
- package/dist/esm/identity.js.map +1 -1
- package/dist/esm/index.d.ts +3 -2
- package/dist/esm/index.js +10 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/injection-engine/factories/defineSkill.d.ts +27 -0
- package/dist/esm/lib/injection-engine/factories/defineSkill.js +13 -0
- package/dist/esm/lib/injection-engine/factories/defineSkill.js.map +1 -1
- package/dist/esm/lib/injection-engine/index.d.ts +1 -0
- package/dist/esm/lib/injection-engine/index.js +7 -0
- package/dist/esm/lib/injection-engine/index.js.map +1 -1
- package/dist/esm/lib/injection-engine/skillGraph.js +9 -1
- package/dist/esm/lib/injection-engine/skillGraph.js.map +1 -1
- package/dist/esm/lib/injection-engine/skillGraphCheckup.d.ts +1 -1
- package/dist/esm/lib/injection-engine/skillGraphCheckup.js.map +1 -1
- package/dist/esm/lib/injection-engine/skillSteps.d.ts +16 -0
- package/dist/esm/lib/injection-engine/skillSteps.js +5 -0
- package/dist/esm/lib/injection-engine/skillSteps.js.map +1 -1
- package/dist/esm/lib/injection-engine/skillVocabulary.d.ts +83 -0
- package/dist/esm/lib/injection-engine/skillVocabulary.js +218 -0
- package/dist/esm/lib/injection-engine/skillVocabulary.js.map +1 -0
- package/dist/events/registry.js +2 -0
- package/dist/events/registry.js.map +1 -1
- package/dist/hosting/admission.js +194 -0
- package/dist/hosting/admission.js.map +1 -0
- package/dist/hosting/artifactWire.js +14 -9
- package/dist/hosting/artifactWire.js.map +1 -1
- package/dist/hosting/envelope.js +84 -1
- package/dist/hosting/envelope.js.map +1 -1
- package/dist/hosting/errors.js +203 -1
- package/dist/hosting/errors.js.map +1 -1
- package/dist/hosting/httpHost.js +43 -1
- package/dist/hosting/httpHost.js.map +1 -1
- package/dist/hosting/identityVerification.js +140 -0
- package/dist/hosting/identityVerification.js.map +1 -0
- package/dist/hosting/index.js +38 -1
- package/dist/hosting/index.js.map +1 -1
- package/dist/hosting/memorySessions.js +86 -0
- package/dist/hosting/memorySessions.js.map +1 -1
- package/dist/hosting/nodeHost.js +8 -0
- package/dist/hosting/nodeHost.js.map +1 -1
- package/dist/hosting/sessionWire.js +100 -0
- package/dist/hosting/sessionWire.js.map +1 -0
- package/dist/hosting/sqliteSessions.js +121 -4
- package/dist/hosting/sqliteSessions.js.map +1 -1
- package/dist/hosting/standingAgent.js +297 -6
- package/dist/hosting/standingAgent.js.map +1 -1
- package/dist/hosting/types.js.map +1 -1
- package/dist/hosting/wireOps.js +65 -0
- package/dist/hosting/wireOps.js.map +1 -0
- package/dist/identity.js +9 -1
- package/dist/identity.js.map +1 -1
- package/dist/index.js +30 -13
- package/dist/index.js.map +1 -1
- package/dist/lib/injection-engine/factories/defineSkill.js +13 -0
- package/dist/lib/injection-engine/factories/defineSkill.js.map +1 -1
- package/dist/lib/injection-engine/index.js +10 -1
- package/dist/lib/injection-engine/index.js.map +1 -1
- package/dist/lib/injection-engine/skillGraph.js +9 -1
- package/dist/lib/injection-engine/skillGraph.js.map +1 -1
- package/dist/lib/injection-engine/skillGraphCheckup.js.map +1 -1
- package/dist/lib/injection-engine/skillSteps.js +5 -0
- package/dist/lib/injection-engine/skillSteps.js.map +1 -1
- package/dist/lib/injection-engine/skillVocabulary.js +224 -0
- package/dist/lib/injection-engine/skillVocabulary.js.map +1 -0
- package/dist/types/adapters/code/local.d.ts +16 -0
- package/dist/types/adapters/code/local.d.ts.map +1 -1
- package/dist/types/adapters/hosting/agentcore.d.ts.map +1 -1
- package/dist/types/adapters/identity/jwks.d.ts +125 -0
- package/dist/types/adapters/identity/jwks.d.ts.map +1 -0
- package/dist/types/adapters/types.d.ts +86 -0
- package/dist/types/adapters/types.d.ts.map +1 -1
- package/dist/types/artifacts/fileArtifacts.d.ts +13 -1
- package/dist/types/artifacts/fileArtifacts.d.ts.map +1 -1
- package/dist/types/artifacts/gcsArtifacts.d.ts +143 -0
- package/dist/types/artifacts/gcsArtifacts.d.ts.map +1 -0
- package/dist/types/artifacts/index.d.ts +5 -1
- package/dist/types/artifacts/index.d.ts.map +1 -1
- package/dist/types/artifacts/objectStore.d.ts +167 -0
- package/dist/types/artifacts/objectStore.d.ts.map +1 -0
- package/dist/types/artifacts/payload.d.ts +36 -4
- package/dist/types/artifacts/payload.d.ts.map +1 -1
- package/dist/types/artifacts/recordingArtifact.d.ts +77 -0
- package/dist/types/artifacts/recordingArtifact.d.ts.map +1 -0
- package/dist/types/artifacts/s3Artifacts.d.ts +150 -0
- package/dist/types/artifacts/s3Artifacts.d.ts.map +1 -0
- package/dist/types/artifacts/scopePath.d.ts +51 -0
- package/dist/types/artifacts/scopePath.d.ts.map +1 -0
- package/dist/types/artifacts/streaming.d.ts +83 -0
- package/dist/types/artifacts/streaming.d.ts.map +1 -0
- package/dist/types/artifacts/types.d.ts +71 -5
- package/dist/types/artifacts/types.d.ts.map +1 -1
- package/dist/types/core/Agent.d.ts +66 -2
- package/dist/types/core/Agent.d.ts.map +1 -1
- package/dist/types/core/agent/AgentBuilder.d.ts.map +1 -1
- package/dist/types/core/agent/repeatedCall.d.ts +151 -0
- package/dist/types/core/agent/repeatedCall.d.ts.map +1 -0
- package/dist/types/core/agent/stages/toolCalls.d.ts +12 -0
- package/dist/types/core/agent/stages/toolCalls.d.ts.map +1 -1
- package/dist/types/core/agent/types.d.ts +82 -0
- package/dist/types/core/agent/types.d.ts.map +1 -1
- package/dist/types/core/codeRunnerTool.d.ts +31 -0
- package/dist/types/core/codeRunnerTool.d.ts.map +1 -1
- package/dist/types/events/payloads.d.ts +22 -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 +181 -0
- package/dist/types/hosting/admission.d.ts.map +1 -0
- package/dist/types/hosting/artifactWire.d.ts +8 -5
- package/dist/types/hosting/artifactWire.d.ts.map +1 -1
- package/dist/types/hosting/envelope.d.ts +34 -0
- package/dist/types/hosting/envelope.d.ts.map +1 -1
- package/dist/types/hosting/errors.d.ts +131 -0
- package/dist/types/hosting/errors.d.ts.map +1 -1
- package/dist/types/hosting/httpHost.d.ts +21 -0
- package/dist/types/hosting/httpHost.d.ts.map +1 -1
- package/dist/types/hosting/identityVerification.d.ts +155 -0
- package/dist/types/hosting/identityVerification.d.ts.map +1 -0
- package/dist/types/hosting/index.d.ts +12 -3
- package/dist/types/hosting/index.d.ts.map +1 -1
- package/dist/types/hosting/memorySessions.d.ts +9 -0
- package/dist/types/hosting/memorySessions.d.ts.map +1 -1
- package/dist/types/hosting/nodeHost.d.ts.map +1 -1
- package/dist/types/hosting/sessionWire.d.ts +127 -0
- package/dist/types/hosting/sessionWire.d.ts.map +1 -0
- package/dist/types/hosting/sqliteSessions.d.ts.map +1 -1
- package/dist/types/hosting/standingAgent.d.ts.map +1 -1
- package/dist/types/hosting/types.d.ts +166 -6
- package/dist/types/hosting/types.d.ts.map +1 -1
- package/dist/types/hosting/wireOps.d.ts +53 -0
- package/dist/types/hosting/wireOps.d.ts.map +1 -0
- package/dist/types/identity.d.ts +1 -0
- package/dist/types/identity.d.ts.map +1 -1
- package/dist/types/index.d.ts +3 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/lib/injection-engine/factories/defineSkill.d.ts +27 -0
- package/dist/types/lib/injection-engine/factories/defineSkill.d.ts.map +1 -1
- package/dist/types/lib/injection-engine/index.d.ts +1 -0
- package/dist/types/lib/injection-engine/index.d.ts.map +1 -1
- package/dist/types/lib/injection-engine/skillGraph.d.ts.map +1 -1
- package/dist/types/lib/injection-engine/skillGraphCheckup.d.ts +1 -1
- package/dist/types/lib/injection-engine/skillGraphCheckup.d.ts.map +1 -1
- package/dist/types/lib/injection-engine/skillSteps.d.ts +16 -0
- package/dist/types/lib/injection-engine/skillSteps.d.ts.map +1 -1
- package/dist/types/lib/injection-engine/skillVocabulary.d.ts +84 -0
- package/dist/types/lib/injection-engine/skillVocabulary.d.ts.map +1 -0
- package/package.json +15 -1
|
@@ -418,6 +418,201 @@ export class UnreadableEnvelopeError extends TypeError {
|
|
|
418
418
|
return named;
|
|
419
419
|
}
|
|
420
420
|
}
|
|
421
|
+
/**
|
|
422
|
+
* The caller could not be identified, and this door was configured to insist.
|
|
423
|
+
*
|
|
424
|
+
* **The message never contains the token.** Not truncated, not hashed, not "the
|
|
425
|
+
* first eight characters". A bearer token in a refusal is a bearer token in the
|
|
426
|
+
* reply body, in the log line, in the trace and in every sink attached — one
|
|
427
|
+
* echo and the credential has been published. What travels is
|
|
428
|
+
* {@link IdentityFailureClass} and the sentence that tells the caller what to
|
|
429
|
+
* do about it.
|
|
430
|
+
*/
|
|
431
|
+
export class IdentityNotVerifiedError extends Error {
|
|
432
|
+
code = 'ERR_IDENTITY_NOT_VERIFIED';
|
|
433
|
+
/** What went wrong, in the one vocabulary. Never the token. */
|
|
434
|
+
failure;
|
|
435
|
+
/** Did the request also NAME a user it could not prove? The impersonation
|
|
436
|
+
* shape, kept as a fact so a sink can count it separately. */
|
|
437
|
+
claimedUser;
|
|
438
|
+
constructor(failure, claimedUser) {
|
|
439
|
+
super(`[hosting] the caller was not identified: ${sentenceFor(failure, claimedUser)}`);
|
|
440
|
+
this.name = 'IdentityNotVerifiedError';
|
|
441
|
+
this.failure = failure;
|
|
442
|
+
this.claimedUser = claimedUser;
|
|
443
|
+
}
|
|
444
|
+
}
|
|
445
|
+
/** The teaching half of {@link IdentityNotVerifiedError}, per class. */
|
|
446
|
+
function sentenceFor(failure, claimedUser) {
|
|
447
|
+
switch (failure) {
|
|
448
|
+
case 'no-token':
|
|
449
|
+
return claimedUser
|
|
450
|
+
? `this request named a user but presented no credential, and this host verifies ` +
|
|
451
|
+
`identity. A user id in a header is a string anyone can send — it is accepted only ` +
|
|
452
|
+
`beside a token that proves it. Send 'Authorization: Bearer <token>', or drop the ` +
|
|
453
|
+
`user id and call anonymously (allowed only when the host was built with ` +
|
|
454
|
+
`identity: { verify, allowAnonymous: true }).`
|
|
455
|
+
: `this host verifies identity and the request presented no credential. Send ` +
|
|
456
|
+
`'Authorization: Bearer <token>'. If some callers here are genuinely anonymous, ` +
|
|
457
|
+
`build the host with identity: { verify, allowAnonymous: true } — anonymous ` +
|
|
458
|
+
`requests may then carry no user id at all.`;
|
|
459
|
+
case 'expired':
|
|
460
|
+
return (`the presented token has expired. Refresh it at your identity provider and retry; ` +
|
|
461
|
+
`nothing is wrong with this host or with the token's contents.`);
|
|
462
|
+
case 'not-yet-valid':
|
|
463
|
+
return (`the presented token is not valid yet (its 'nbf' is in the future). That is ` +
|
|
464
|
+
`usually clock skew between the issuer and this host rather than a bad token.`);
|
|
465
|
+
case 'wrong-audience':
|
|
466
|
+
return (`the presented token was minted for a different audience — it is a valid token ` +
|
|
467
|
+
`for somebody else's API. Request one for this API's audience.`);
|
|
468
|
+
case 'wrong-issuer':
|
|
469
|
+
return (`the presented token came from an issuer this host does not accept. Check which ` +
|
|
470
|
+
`identity provider the host was configured with.`);
|
|
471
|
+
case 'claimed-another-user':
|
|
472
|
+
return (`the presented token identifies one user and the request named a different one. ` +
|
|
473
|
+
`One of those two facts is untrue and this door cannot know which, so it serves ` +
|
|
474
|
+
`neither. Send the user id the token proves, or send none.`);
|
|
475
|
+
case 'unverifiable':
|
|
476
|
+
return (`the presented credential could not be verified — the signature did not check ` +
|
|
477
|
+
`out, no key matched it, or it is not a token this host reads. Deliberately one ` +
|
|
478
|
+
`answer for all three: naming which would tell whoever is probing what to fix.`);
|
|
479
|
+
}
|
|
480
|
+
}
|
|
481
|
+
/**
|
|
482
|
+
* The verifier itself could not do its job — its key set was unreachable, its
|
|
483
|
+
* introspection endpoint timed out.
|
|
484
|
+
*
|
|
485
|
+
* A DIFFERENT fact from a token that failed, and the difference is who is at
|
|
486
|
+
* fault: this is the deployment's outage, not the caller's bad credential, and
|
|
487
|
+
* answering it with a 401 would send every client off to re-authenticate
|
|
488
|
+
* against an identity provider that is already down. It maps to 503.
|
|
489
|
+
*/
|
|
490
|
+
export class VerifierUnavailableError extends Error {
|
|
491
|
+
code = 'ERR_IDENTITY_VERIFIER_UNAVAILABLE';
|
|
492
|
+
/** Which verifier could not answer — its name, never its configuration. */
|
|
493
|
+
verifier;
|
|
494
|
+
constructor(verifier, detail) {
|
|
495
|
+
super(`[hosting] identity could not be verified because the '${verifier}' verifier could not ` +
|
|
496
|
+
`answer${detail !== undefined ? ` (${detail})` : ''}. This is an outage on this side, ` +
|
|
497
|
+
`not a bad credential — the caller's token was never judged. Retry once the identity ` +
|
|
498
|
+
`provider is reachable.`);
|
|
499
|
+
this.name = 'VerifierUnavailableError';
|
|
500
|
+
this.verifier = verifier;
|
|
501
|
+
}
|
|
502
|
+
}
|
|
503
|
+
// ─── Admission (9.26.0) ──────────────────────────────────────────────
|
|
504
|
+
/**
|
|
505
|
+
* An admission policy refused this request before any work started.
|
|
506
|
+
*
|
|
507
|
+
* The policy authors the sentence — this class only carries it — because the
|
|
508
|
+
* limit and its reset are the operator's facts, not the library's. What this
|
|
509
|
+
* class guarantees is the SHAPE: a refusal that names a limit is a refusal a
|
|
510
|
+
* client can act on, and one that says "denied" is a support ticket.
|
|
511
|
+
*/
|
|
512
|
+
export class AdmissionRefusedError extends Error {
|
|
513
|
+
code = 'ERR_ADMISSION_REFUSED';
|
|
514
|
+
/** WHO was refused, when the request identified anybody. Never a token. */
|
|
515
|
+
userId;
|
|
516
|
+
constructor(reason, userId) {
|
|
517
|
+
super(`[hosting] this request was not admitted: ${reason}`);
|
|
518
|
+
this.name = 'AdmissionRefusedError';
|
|
519
|
+
if (userId !== undefined)
|
|
520
|
+
this.userId = userId;
|
|
521
|
+
}
|
|
522
|
+
}
|
|
523
|
+
// ─── Session history ops (9.26.0) ────────────────────────────────────
|
|
524
|
+
/**
|
|
525
|
+
* A session-history operation arrived at a door that does not verify identity.
|
|
526
|
+
*
|
|
527
|
+
* Listing a person's conversations is answering "which sessions belong to
|
|
528
|
+
* you?", and a door that reads WHO from an unverified header would answer that
|
|
529
|
+
* for anyone who guesses a user id — enumeration with a friendly interface.
|
|
530
|
+
* So the ops are refused outright rather than served under a claimed name.
|
|
531
|
+
*/
|
|
532
|
+
export class SessionOpNeedsIdentityError extends Error {
|
|
533
|
+
code = 'ERR_SESSION_OP_NEEDS_IDENTITY';
|
|
534
|
+
/** The op that was refused. */
|
|
535
|
+
op;
|
|
536
|
+
constructor(op) {
|
|
537
|
+
super(`[hosting] '${op}' needs a VERIFIED caller and this host does not verify identity. ` +
|
|
538
|
+
`Listing or reading a person's conversations under a user id nobody proved is ` +
|
|
539
|
+
`enumeration: anyone who guesses an id reads somebody's transcript. Build the host ` +
|
|
540
|
+
`with identity: { verify: jwksIdentity({ jwksUrl, issuer, audience }).verify } — or ` +
|
|
541
|
+
`any IdentityVerifier — and these ops answer for the caller the token proves.`);
|
|
542
|
+
this.name = 'SessionOpNeedsIdentityError';
|
|
543
|
+
this.op = op;
|
|
544
|
+
}
|
|
545
|
+
}
|
|
546
|
+
/**
|
|
547
|
+
* A session-history operation arrived at a session store that keeps no
|
|
548
|
+
* owner index.
|
|
549
|
+
*
|
|
550
|
+
* The two members are OPTIONAL on the port on purpose — most stores are a
|
|
551
|
+
* key/value map and owe nobody a secondary index — so this refusal names the
|
|
552
|
+
* store's limitation instead of pretending the answer is "you have no
|
|
553
|
+
* sessions". An empty list and an unanswerable question are different facts,
|
|
554
|
+
* and only one of them is safe to render as "nothing here".
|
|
555
|
+
*/
|
|
556
|
+
export class SessionIndexUnavailableError extends Error {
|
|
557
|
+
code = 'ERR_SESSION_INDEX_UNAVAILABLE';
|
|
558
|
+
op;
|
|
559
|
+
constructor(op, missing) {
|
|
560
|
+
super(`[hosting] '${op}' needs the session store to answer '${missing}', and the store this ` +
|
|
561
|
+
`host was given does not implement it. That is a limitation of the store, not an ` +
|
|
562
|
+
`empty result — reporting "no sessions" here would be an answer nobody could ` +
|
|
563
|
+
`distinguish from the truth. memorySessions() and sqliteSessions({ file }) both ` +
|
|
564
|
+
`implement it; a custom SessionLifecycle can add ${missing} additively.`);
|
|
565
|
+
this.name = 'SessionIndexUnavailableError';
|
|
566
|
+
this.op = op;
|
|
567
|
+
}
|
|
568
|
+
}
|
|
569
|
+
/**
|
|
570
|
+
* The ONE answer for a session the caller may not have — read OR continued.
|
|
571
|
+
*
|
|
572
|
+
* A session that does not exist, one that belongs to somebody else, and one
|
|
573
|
+
* whose stored conversation names no owner all end here, byte-identical but
|
|
574
|
+
* for the id the caller already knew. Told apart, they would be an oracle for
|
|
575
|
+
* which session ids are real — the same law
|
|
576
|
+
* {@link ArtifactNotFoundError} follows, for the same reason.
|
|
577
|
+
*
|
|
578
|
+
* Raised by BOTH doors that open a session at a verifying host: the two
|
|
579
|
+
* session-history ops, and an ordinary turn that named somebody else's session
|
|
580
|
+
* (9.26.0). One refusal, so the answer cannot depend on which door a caller
|
|
581
|
+
* knocked at — the mistake this class of hole is always made of.
|
|
582
|
+
*/
|
|
583
|
+
export class SessionNotFoundError extends Error {
|
|
584
|
+
code = 'ERR_SESSION_NOT_FOUND';
|
|
585
|
+
/** The id that was asked for — the caller's own string, nothing learned. */
|
|
586
|
+
sessionId;
|
|
587
|
+
constructor(sessionId) {
|
|
588
|
+
super(`[hosting] session '${sessionId}' is not one you can open. Deliberately one answer for ` +
|
|
589
|
+
`"no such session", "somebody else's session" and "a session nobody signed for": ` +
|
|
590
|
+
`distinguishing them would tell a caller which ids are real. The ids you can read — ` +
|
|
591
|
+
`and continue — are exactly the ones session-list hands back.`);
|
|
592
|
+
this.name = 'SessionNotFoundError';
|
|
593
|
+
this.sessionId = sessionId;
|
|
594
|
+
}
|
|
595
|
+
}
|
|
596
|
+
/**
|
|
597
|
+
* A session-history result resolved and the reply cannot describe it.
|
|
598
|
+
*
|
|
599
|
+
* The {@link ArtifactNotCarriedError} shape, for the other new terminal.
|
|
600
|
+
*/
|
|
601
|
+
export class SessionsNotCarriedError extends Error {
|
|
602
|
+
code = 'ERR_SESSIONS_NOT_CARRIED';
|
|
603
|
+
op;
|
|
604
|
+
constructor(op, hostName) {
|
|
605
|
+
super(`[hosting] '${op}' resolved, but ` +
|
|
606
|
+
(hostName !== undefined
|
|
607
|
+
? `the '${hostName}' host's wire has no sessions() body shape, `
|
|
608
|
+
: `this host does not implement reply.sessions(), `) +
|
|
609
|
+
`so the result cannot be described on this wire. Nothing is wrong with the session ` +
|
|
610
|
+
`store — serve on an adapter that carries session results (nodeHost does), or add ` +
|
|
611
|
+
`the sessions body shape to the dialect.`);
|
|
612
|
+
this.name = 'SessionsNotCarriedError';
|
|
613
|
+
this.op = op;
|
|
614
|
+
}
|
|
615
|
+
}
|
|
421
616
|
/**
|
|
422
617
|
* Assert that a host can do something, and throw a corrective error naming the
|
|
423
618
|
* adapter when it cannot.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/hosting/errors.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/hosting/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -69,6 +69,7 @@
|
|
|
69
69
|
/// <reference types="node" />
|
|
70
70
|
import type { IncomingMessage, Server, ServerResponse } from 'node:http';
|
|
71
71
|
import type { ArtifactWireRequest, ArtifactWireResult } from './artifactWire.js';
|
|
72
|
+
import type { SessionWireRequest, SessionWireResult } from './sessionWire.js';
|
|
72
73
|
import type { AgentHost, ConversationHandler, ConversationHost, ConversationLimits, HostCapability, HostHandle, HostHandler, PendingAsk } from './types.js';
|
|
73
74
|
import { type ConversationHandshake, type HandshakeFacts } from './webSocketConversation.js';
|
|
74
75
|
export type { ConversationHandshake, HandshakeFacts };
|
|
@@ -126,6 +127,15 @@ export interface HttpWire {
|
|
|
126
127
|
* with the named not-carried refusal.
|
|
127
128
|
*/
|
|
128
129
|
readonly artifact?: ArtifactWireRequest;
|
|
130
|
+
/**
|
|
131
|
+
* A session-history operation this request carries instead of a message
|
|
132
|
+
* (9.26.0). Read it with `readSessionWireOp(facts.body)` — the one owner
|
|
133
|
+
* of the `{ op: 'session-list' | 'session-transcript', sessionId? }`
|
|
134
|
+
* grammar. A dialect that returns it must also implement
|
|
135
|
+
* {@link HttpWire.sessions}, or every resolved listing answers with the
|
|
136
|
+
* named not-carried refusal.
|
|
137
|
+
*/
|
|
138
|
+
readonly session?: SessionWireRequest;
|
|
129
139
|
/**
|
|
130
140
|
* Headers to put on THIS request's reply, whatever terminal it ends with
|
|
131
141
|
* (9.10.0).
|
|
@@ -171,6 +181,17 @@ export interface HttpWire {
|
|
|
171
181
|
* `ArtifactNotCarriedError` refusal instead of an improvised body.
|
|
172
182
|
*/
|
|
173
183
|
artifact?(result: ArtifactWireResult): unknown;
|
|
184
|
+
/**
|
|
185
|
+
* Body for a RESOLVED session-history operation (9.26.0) — the caller's own
|
|
186
|
+
* sessions for a list, one owned session's messages for a transcript.
|
|
187
|
+
* Compose it with `sessionWireBody(result)` (both shipped dialects do) so
|
|
188
|
+
* clients read one shape.
|
|
189
|
+
*
|
|
190
|
+
* Optional exactly as `artifact` is: a wire without it keeps compiling, and
|
|
191
|
+
* a resolved listing on such a wire is answered with the named
|
|
192
|
+
* `SessionsNotCarriedError` refusal instead of an improvised body.
|
|
193
|
+
*/
|
|
194
|
+
sessions?(result: SessionWireResult): unknown;
|
|
174
195
|
/**
|
|
175
196
|
* Pull the port's vocabulary out of one conversation handshake — the session
|
|
176
197
|
* this conversation claims, any header mapping this dialect performs, and the
|
|
@@ -67,7 +67,8 @@
|
|
|
67
67
|
* Everything HTTP lives here and in the wires; `types.ts` knows none of it.
|
|
68
68
|
*/
|
|
69
69
|
import { encodeSSE } from '../stream.js';
|
|
70
|
-
import { ArtifactNotCarriedError, HostClosedError, InvalidWireOpError } from './errors.js';
|
|
70
|
+
import { ArtifactNotCarriedError, HostClosedError, InvalidWireOpError, SessionsNotCarriedError, } from './errors.js';
|
|
71
|
+
import { SESSION_LIST_OP, SESSION_TRANSCRIPT_OP } from './sessionWire.js';
|
|
71
72
|
import { lowerCasedHeaders } from './headers.js';
|
|
72
73
|
import { conversationDoor, } from './webSocketConversation.js';
|
|
73
74
|
/**
|
|
@@ -105,6 +106,26 @@ const STATUS_BY_CODE = {
|
|
|
105
106
|
ERR_ARTIFACT_NOT_FOUND: 404,
|
|
106
107
|
ERR_NO_ARTIFACT_STORE: 501,
|
|
107
108
|
ERR_ARTIFACT_NOT_CARRIED: 501,
|
|
109
|
+
// 9.26.0 — the badge, the bouncer and the history desk.
|
|
110
|
+
// 401: this caller was not identified (a token that did not verify, or one
|
|
111
|
+
// that was never presented at a door that insists).
|
|
112
|
+
// 503: the VERIFIER could not answer — an outage on this side, and telling
|
|
113
|
+
// every client to re-authenticate against an unreachable provider is
|
|
114
|
+
// the wrong instruction at the worst moment.
|
|
115
|
+
// 429: admission said no. The one status a client is expected to back off
|
|
116
|
+
// on, which is exactly what a spend bound wants it to do.
|
|
117
|
+
// 404: a transcript this caller may not have — one answer for missing,
|
|
118
|
+
// foreign and owner-less alike.
|
|
119
|
+
// 501: the door was never given what the op needs (no verifier, no owner
|
|
120
|
+
// index, no wire body shape) — a gap in THIS deployment, not a bad
|
|
121
|
+
// request the caller could fix by sending something else.
|
|
122
|
+
ERR_IDENTITY_NOT_VERIFIED: 401,
|
|
123
|
+
ERR_IDENTITY_VERIFIER_UNAVAILABLE: 503,
|
|
124
|
+
ERR_ADMISSION_REFUSED: 429,
|
|
125
|
+
ERR_SESSION_NOT_FOUND: 404,
|
|
126
|
+
ERR_SESSION_OP_NEEDS_IDENTITY: 501,
|
|
127
|
+
ERR_SESSION_INDEX_UNAVAILABLE: 501,
|
|
128
|
+
ERR_SESSIONS_NOT_CARRIED: 501,
|
|
108
129
|
};
|
|
109
130
|
/**
|
|
110
131
|
* What a run that stopped to ask a person answers with: **202 Accepted.**
|
|
@@ -501,7 +522,7 @@ async function dispatchOne(req, res, handler, wire, hostName) {
|
|
|
501
522
|
}
|
|
502
523
|
throw err;
|
|
503
524
|
}
|
|
504
|
-
const { input, sessionId, userId, decision, artifact, responseHeaders } = read;
|
|
525
|
+
const { input, sessionId, userId, decision, artifact, session, responseHeaders } = read;
|
|
505
526
|
// The dialect's own reply headers — a `Set-Cookie` that issues a session, and
|
|
506
527
|
// nothing else so far. Stripped of `content-type` because the framing below
|
|
507
528
|
// is this host's to decide: a dialect that set it would be choosing between
|
|
@@ -570,6 +591,26 @@ async function dispatchOne(req, res, handler, wire, hostName) {
|
|
|
570
591
|
sendJson(res, 200, payload, extraHeaders);
|
|
571
592
|
}
|
|
572
593
|
},
|
|
594
|
+
sessions(result) {
|
|
595
|
+
if (settled)
|
|
596
|
+
return;
|
|
597
|
+
// Same law as `artifact` above: a wire that cannot describe the result
|
|
598
|
+
// says so by name rather than answering 200 with a shape no client was
|
|
599
|
+
// written against.
|
|
600
|
+
if (!wire.sessions) {
|
|
601
|
+
reply.fail(new SessionsNotCarriedError(result.op === 'list' ? SESSION_LIST_OP : SESSION_TRANSCRIPT_OP, hostName));
|
|
602
|
+
return;
|
|
603
|
+
}
|
|
604
|
+
settled = true;
|
|
605
|
+
const payload = wire.sessions(result);
|
|
606
|
+
if (wantsStream) {
|
|
607
|
+
res.write(encodeSSE('sessions', payload));
|
|
608
|
+
res.end();
|
|
609
|
+
}
|
|
610
|
+
else {
|
|
611
|
+
sendJson(res, 200, payload, extraHeaders);
|
|
612
|
+
}
|
|
613
|
+
},
|
|
573
614
|
awaiting(pending) {
|
|
574
615
|
if (settled)
|
|
575
616
|
return;
|
|
@@ -617,6 +658,7 @@ async function dispatchOne(req, res, handler, wire, hostName) {
|
|
|
617
658
|
...(userId !== undefined && { userId }),
|
|
618
659
|
...(decision !== undefined && { decision }),
|
|
619
660
|
...(artifact !== undefined && { artifact }),
|
|
661
|
+
...(session !== undefined && { session }),
|
|
620
662
|
headers,
|
|
621
663
|
signal: controller.signal,
|
|
622
664
|
}, reply);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpHost.js","sourceRoot":"","sources":["../../../src/hosting/httpHost.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"httpHost.js","sourceRoot":"","sources":["../../../src/hosting/httpHost.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* hosting/identityVerification — the door checks the badge, instead of reading
|
|
3
|
+
* the name off it.
|
|
4
|
+
*
|
|
5
|
+
* Until 9.26 the hosting port had exactly one honest sentence about WHO is
|
|
6
|
+
* calling: `HostRequest.userId` is "what the transport said", and how much that
|
|
7
|
+
* is worth is the transport's answer. A managed runtime that authenticates in
|
|
8
|
+
* front of the container can fill it in; a container you expose yourself cannot,
|
|
9
|
+
* because a header there is a string anybody can send. That sentence is still
|
|
10
|
+
* true. This module is the other half of it: a way to make the door itself the
|
|
11
|
+
* thing that knows, so a deployment does not have to choose between "trust a
|
|
12
|
+
* header" and "no identity at all".
|
|
13
|
+
*
|
|
14
|
+
* ── The shape: one strategy, one method ──────────────────────────────────────
|
|
15
|
+
* {@link IdentityVerifier} takes the bearer token off the wire and hands back
|
|
16
|
+
* {@link VerifiedIdentity} — `{ userId, roles?, claims? }` — or throws. It is
|
|
17
|
+
* vendor-neutral by construction: a JWT from any IdP, an opaque token
|
|
18
|
+
* introspected against a server, a mutual-TLS thumbprint an edge proxy already
|
|
19
|
+
* checked. `jwksIdentity({ jwksUrl, issuer, audience })` is the one adapter
|
|
20
|
+
* this release ships, and it covers cloud IdPs and on-prem ones alike because
|
|
21
|
+
* JWKS is the same protocol in both.
|
|
22
|
+
*
|
|
23
|
+
* ── Where it sits, exactly ───────────────────────────────────────────────────
|
|
24
|
+
* BEFORE `identityForRequest` composes the run's scope. That ordering is the
|
|
25
|
+
* whole feature: the composed scope is what memory namespaces on, what
|
|
26
|
+
* artifacts isolate on, and what a credential provider scopes a token vault on.
|
|
27
|
+
* Verifying after any of that would be checking the badge on the way out.
|
|
28
|
+
*
|
|
29
|
+
* ── The refusal law, and why it is not optional ──────────────────────────────
|
|
30
|
+
* With a verifier configured, a request that names a `userId` and cannot prove
|
|
31
|
+
* it is REFUSED — never quietly downgraded to anonymous, and never served under
|
|
32
|
+
* the name it claimed. Both alternatives are the accepted-and-silently-wrong
|
|
33
|
+
* failure wearing different clothes: one produces an audit trail that names the
|
|
34
|
+
* wrong party, the other produces a door that anybody opens by omitting a
|
|
35
|
+
* field.
|
|
36
|
+
*
|
|
37
|
+
* ── Secrets never travel ─────────────────────────────────────────────────────
|
|
38
|
+
* A bearer token is a credential. It never appears in an error message, an
|
|
39
|
+
* event payload, a log line or a reply body — not truncated, not fingerprinted,
|
|
40
|
+
* not "just the first 8 characters". What travels is the CLASS of the failure
|
|
41
|
+
* ({@link IdentityFailureClass}) and nothing else, which is exactly what an
|
|
42
|
+
* operator needs to act (`expired` → the client should refresh;
|
|
43
|
+
* `wrong-audience` → the client is pointed at the wrong API;
|
|
44
|
+
* `keys-unavailable` → your IdP is unreachable and this is not the caller's
|
|
45
|
+
* fault). That is the `sdkFailure` law, applied to the front door.
|
|
46
|
+
*/
|
|
47
|
+
import type { IdentityFailureClass } from './errors.js';
|
|
48
|
+
/**
|
|
49
|
+
* What a verifier proved. The badge, read after it was checked.
|
|
50
|
+
*
|
|
51
|
+
* Deliberately NOT a `MemoryIdentity`: this is evidence about a PERSON, and the
|
|
52
|
+
* run's identity is a tenant/principal/conversation TUPLE the composer builds
|
|
53
|
+
* from this plus the session. Keeping them separate is what stops a verifier
|
|
54
|
+
* from silently re-namespacing somebody's conversation by returning a field.
|
|
55
|
+
*/
|
|
56
|
+
export interface VerifiedIdentity {
|
|
57
|
+
/** The end user's id — what becomes {@link HostRequest.userId} and, through
|
|
58
|
+
* `identityForRequest`, the run's `principal`. Non-empty by contract; a
|
|
59
|
+
* verifier that cannot name the subject must throw rather than invent one. */
|
|
60
|
+
readonly userId: string;
|
|
61
|
+
/**
|
|
62
|
+
* Roles the token asserted, when it asserted any.
|
|
63
|
+
*
|
|
64
|
+
* These reach the ADMISSION policy (`admission.decide({ identity, … })`) and
|
|
65
|
+
* the session-history ops, and nothing else — they do not enter the run's
|
|
66
|
+
* identity, which stays the three-field tuple every store already scopes on.
|
|
67
|
+
* Stated rather than implied, because "the agent can see my roles" is exactly
|
|
68
|
+
* the kind of belief that gets built on.
|
|
69
|
+
*/
|
|
70
|
+
readonly roles?: readonly string[];
|
|
71
|
+
/**
|
|
72
|
+
* The verified claim set, as the verifier read it. Whatever an authorization
|
|
73
|
+
* decision in THIS deployment needs (a tenant claim, a plan, a scope list)
|
|
74
|
+
* and this library has no business interpreting.
|
|
75
|
+
*
|
|
76
|
+
* Never logged and never emitted by the framework — a claim set routinely
|
|
77
|
+
* carries an email, and one echo puts it in every sink.
|
|
78
|
+
*/
|
|
79
|
+
readonly claims?: Readonly<Record<string, unknown>>;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* The port — one method, vendor-neutral.
|
|
83
|
+
*
|
|
84
|
+
* `verify` is handed the RAW bearer token exactly as the wire delivered it
|
|
85
|
+
* (without the `Bearer ` prefix) and must either return a
|
|
86
|
+
* {@link VerifiedIdentity} or throw. Throwing an
|
|
87
|
+
* {@link IdentityNotVerifiedError} names the failure class; throwing anything
|
|
88
|
+
* else is treated as `'unverifiable'`, because a verifier that failed in a way
|
|
89
|
+
* it did not describe has not verified anything.
|
|
90
|
+
*
|
|
91
|
+
* Implementations must never put the token into what they throw.
|
|
92
|
+
*/
|
|
93
|
+
export interface IdentityVerifier {
|
|
94
|
+
verify(token: string): Promise<VerifiedIdentity>;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* How a host door is told to check badges — {@link StandingAgentBaseOptions.identity}.
|
|
98
|
+
*/
|
|
99
|
+
export interface IdentityVerificationOptions {
|
|
100
|
+
/** The strategy. `jwksIdentity({ … })`, or any {@link IdentityVerifier}. */
|
|
101
|
+
readonly verify: IdentityVerifier['verify'];
|
|
102
|
+
/**
|
|
103
|
+
* Let a request that presents NO `Authorization` header through as anonymous.
|
|
104
|
+
* Default **`false`** — configuring a verifier closes the door.
|
|
105
|
+
*
|
|
106
|
+
* The default is the load-bearing half. A door that verifies a token when one
|
|
107
|
+
* is offered and waves the request through when it is not is a door anybody
|
|
108
|
+
* opens by sending less, and every per-user bound built on top of it (spend
|
|
109
|
+
* ceilings, session listing) evaporates for exactly the callers those bounds
|
|
110
|
+
* exist for.
|
|
111
|
+
*
|
|
112
|
+
* Say `true` when a deployment genuinely serves both — a public demo lane and
|
|
113
|
+
* a signed-in lane on one host. An anonymous request can then never carry a
|
|
114
|
+
* `userId`: it is refused rather than served under a name nobody proved.
|
|
115
|
+
*/
|
|
116
|
+
readonly allowAnonymous?: boolean;
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Pull the bearer token out of the delivered transport headers.
|
|
120
|
+
*
|
|
121
|
+
* ONE extraction, so every dialect's tokens are read the same way. The header
|
|
122
|
+
* is `Authorization: Bearer <token>` — the vocabulary every transport this
|
|
123
|
+
* package speaks already normalizes onto:
|
|
124
|
+
*
|
|
125
|
+
* - `httpHost` (and therefore `nodeHost` / `jsonWire`) hands the handler the
|
|
126
|
+
* request's lower-cased headers verbatim, so the token is simply there;
|
|
127
|
+
* - the managed-runtime dialect maps its own bearer SUBPROTOCOL onto
|
|
128
|
+
* `headers.authorization` before the port ever sees it, which is why that
|
|
129
|
+
* mapping was written the way it was;
|
|
130
|
+
* - a custom `HttpWire` that carries the credential somewhere else supplies
|
|
131
|
+
* the header itself, or wraps its own verifier.
|
|
132
|
+
*
|
|
133
|
+
* The scheme match is case-insensitive (RFC 7235 says it is), and a header with
|
|
134
|
+
* a different scheme returns `undefined` rather than being half-read — handing
|
|
135
|
+
* a Basic credential to a JWT verifier would produce a confusing refusal about
|
|
136
|
+
* the wrong thing.
|
|
137
|
+
*/
|
|
138
|
+
export declare function bearerToken(headers: Readonly<Record<string, string>> | undefined): string | undefined;
|
|
139
|
+
/**
|
|
140
|
+
* Run one request's verification and hand back the proven identity — or refuse.
|
|
141
|
+
*
|
|
142
|
+
* Shared by every door on the composer (a turn, an artifact redemption, a
|
|
143
|
+
* session-history op) so all three inherit one answer to "who is this", and a
|
|
144
|
+
* later door cannot accidentally be the lenient one.
|
|
145
|
+
*
|
|
146
|
+
* @param options the configured verifier, or `undefined` — with `undefined`
|
|
147
|
+
* this returns `undefined` immediately and NOTHING about the
|
|
148
|
+
* request changes (the zero-delta path).
|
|
149
|
+
* @param headers the delivered transport headers.
|
|
150
|
+
* @param claimedUserId what the transport put on `HostRequest.userId`.
|
|
151
|
+
*/
|
|
152
|
+
export declare function verifyRequestIdentity(options: IdentityVerificationOptions | undefined, headers: Readonly<Record<string, string>> | undefined, claimedUserId: string | undefined): Promise<VerifiedIdentity | undefined>;
|
|
153
|
+
/** Re-exported so a consumer typing a verifier reads one vocabulary. */
|
|
154
|
+
export type { IdentityFailureClass };
|