@relkit/runtime-hono 0.5.4 → 0.5.5
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/agent-active-execution.d.ts +5 -11
- package/dist/agent-active-execution.d.ts.map +1 -1
- package/dist/agent-active-execution.js +3 -0
- package/dist/agent-active-execution.js.map +1 -1
- package/dist/agent-active-execution.types.d.ts +14 -0
- package/dist/agent-active-execution.types.d.ts.map +1 -0
- package/dist/agent-active-execution.types.js +2 -0
- package/dist/agent-active-execution.types.js.map +1 -0
- package/dist/agent-approval-coordinator.d.ts +17 -6
- package/dist/agent-approval-coordinator.d.ts.map +1 -1
- package/dist/agent-approval-coordinator.js +56 -53
- package/dist/agent-approval-coordinator.js.map +1 -1
- package/dist/agent-approval-coordinator.types.d.ts +14 -0
- package/dist/agent-approval-coordinator.types.d.ts.map +1 -0
- package/dist/agent-approval-coordinator.types.js +2 -0
- package/dist/agent-approval-coordinator.types.js.map +1 -0
- package/dist/agent-approval-support.d.ts +26 -0
- package/dist/agent-approval-support.d.ts.map +1 -0
- package/dist/agent-approval-support.js +47 -0
- package/dist/agent-approval-support.js.map +1 -0
- package/dist/agent-capability-negotiation.d.ts +4 -0
- package/dist/agent-capability-negotiation.d.ts.map +1 -1
- package/dist/agent-capability-negotiation.js +4 -0
- package/dist/agent-capability-negotiation.js.map +1 -1
- package/dist/agent-command-validation.d.ts +22 -0
- package/dist/agent-command-validation.d.ts.map +1 -0
- package/dist/agent-command-validation.js +35 -0
- package/dist/agent-command-validation.js.map +1 -0
- package/dist/agent-compatibility.d.ts +14 -0
- package/dist/agent-compatibility.d.ts.map +1 -1
- package/dist/agent-compatibility.js +18 -0
- package/dist/agent-compatibility.js.map +1 -1
- package/dist/agent-content-sink.d.ts +68 -7
- package/dist/agent-content-sink.d.ts.map +1 -1
- package/dist/agent-content-sink.js +136 -123
- package/dist/agent-content-sink.js.map +1 -1
- package/dist/agent-content-sink.types.d.ts +10 -0
- package/dist/agent-content-sink.types.d.ts.map +1 -0
- package/dist/agent-content-sink.types.js +2 -0
- package/dist/agent-content-sink.types.js.map +1 -0
- package/dist/agent-control-admission.d.ts +13 -0
- package/dist/agent-control-admission.d.ts.map +1 -0
- package/dist/agent-control-admission.js +70 -0
- package/dist/agent-control-admission.js.map +1 -0
- package/dist/agent-control-application.d.ts +32 -0
- package/dist/agent-control-application.d.ts.map +1 -0
- package/dist/agent-control-application.js +114 -0
- package/dist/agent-control-application.js.map +1 -0
- package/dist/agent-control-worker.d.ts +43 -2
- package/dist/agent-control-worker.d.ts.map +1 -1
- package/dist/agent-control-worker.js +39 -104
- package/dist/agent-control-worker.js.map +1 -1
- package/dist/agent-control-worker.types.d.ts +4 -0
- package/dist/agent-control-worker.types.d.ts.map +1 -0
- package/dist/agent-control-worker.types.js +2 -0
- package/dist/agent-control-worker.types.js.map +1 -0
- package/dist/agent-conversation.d.ts +18 -0
- package/dist/agent-conversation.d.ts.map +1 -0
- package/dist/agent-conversation.js +33 -0
- package/dist/agent-conversation.js.map +1 -0
- package/dist/agent-follow-up.d.ts +43 -7
- package/dist/agent-follow-up.d.ts.map +1 -1
- package/dist/agent-follow-up.js +59 -25
- package/dist/agent-follow-up.js.map +1 -1
- package/dist/agent-follow-up.types.d.ts +10 -0
- package/dist/agent-follow-up.types.d.ts.map +1 -0
- package/dist/agent-follow-up.types.js +2 -0
- package/dist/agent-follow-up.types.js.map +1 -0
- package/dist/agent-inspector-projection.d.ts +23 -0
- package/dist/agent-inspector-projection.d.ts.map +1 -1
- package/dist/agent-inspector-projection.js +39 -0
- package/dist/agent-inspector-projection.js.map +1 -1
- package/dist/agent-inspector.d.ts +6 -0
- package/dist/agent-inspector.d.ts.map +1 -1
- package/dist/agent-inspector.js +28 -0
- package/dist/agent-inspector.js.map +1 -1
- package/dist/agent-journal.d.ts +118 -0
- package/dist/agent-journal.d.ts.map +1 -0
- package/dist/agent-journal.js +138 -0
- package/dist/agent-journal.js.map +1 -0
- package/dist/agent-observation.d.ts +32 -0
- package/dist/agent-observation.d.ts.map +1 -0
- package/dist/agent-observation.js +96 -0
- package/dist/agent-observation.js.map +1 -0
- package/dist/agent-observation.types.d.ts +16 -0
- package/dist/agent-observation.types.d.ts.map +1 -0
- package/dist/agent-observation.types.js +2 -0
- package/dist/agent-observation.types.js.map +1 -0
- package/dist/agent-progress-sink.d.ts +37 -2
- package/dist/agent-progress-sink.d.ts.map +1 -1
- package/dist/agent-progress-sink.js +81 -46
- package/dist/agent-progress-sink.js.map +1 -1
- package/dist/agent-progress-sink.types.d.ts +4 -0
- package/dist/agent-progress-sink.types.d.ts.map +1 -0
- package/dist/agent-progress-sink.types.js +2 -0
- package/dist/agent-progress-sink.types.js.map +1 -0
- package/dist/agent-protocol-encoding.d.ts +4 -0
- package/dist/agent-protocol-encoding.d.ts.map +1 -1
- package/dist/agent-protocol-encoding.js +24 -0
- package/dist/agent-protocol-encoding.js.map +1 -1
- package/dist/agent-protocol-encoding.types.d.ts +6 -0
- package/dist/agent-protocol-encoding.types.d.ts.map +1 -0
- package/dist/agent-protocol-encoding.types.js +2 -0
- package/dist/agent-protocol-encoding.types.js.map +1 -0
- package/dist/agent-protocol-frame-state.d.ts +34 -0
- package/dist/agent-protocol-frame-state.d.ts.map +1 -1
- package/dist/agent-protocol-frame-state.js +51 -0
- package/dist/agent-protocol-frame-state.js.map +1 -1
- package/dist/agent-protocol-progress.d.ts +7 -5
- package/dist/agent-protocol-progress.d.ts.map +1 -1
- package/dist/agent-protocol-progress.js +6 -0
- package/dist/agent-protocol-progress.js.map +1 -1
- package/dist/agent-protocol-progress.types.d.ts +6 -0
- package/dist/agent-protocol-progress.types.d.ts.map +1 -0
- package/dist/agent-protocol-progress.types.js +2 -0
- package/dist/agent-protocol-progress.types.js.map +1 -0
- package/dist/agent-protocol-stream.d.ts +13 -50
- package/dist/agent-protocol-stream.d.ts.map +1 -1
- package/dist/agent-protocol-stream.js +22 -0
- package/dist/agent-protocol-stream.js.map +1 -1
- package/dist/agent-protocol-stream.types.d.ts +53 -0
- package/dist/agent-protocol-stream.types.d.ts.map +1 -0
- package/dist/agent-protocol-stream.types.js +2 -0
- package/dist/agent-protocol-stream.types.js.map +1 -0
- package/dist/agent-protocol-support.d.ts +52 -4
- package/dist/agent-protocol-support.d.ts.map +1 -1
- package/dist/agent-protocol-support.js +58 -0
- package/dist/agent-protocol-support.js.map +1 -1
- package/dist/agent-protocol-support.types.d.ts +6 -0
- package/dist/agent-protocol-support.types.d.ts.map +1 -0
- package/dist/agent-protocol-support.types.js +2 -0
- package/dist/agent-protocol-support.types.js.map +1 -0
- package/dist/agent-protocol-tool.d.ts +17 -9
- package/dist/agent-protocol-tool.d.ts.map +1 -1
- package/dist/agent-protocol-tool.js +15 -0
- package/dist/agent-protocol-tool.js.map +1 -1
- package/dist/agent-protocol-tool.types.d.ts +11 -0
- package/dist/agent-protocol-tool.types.d.ts.map +1 -0
- package/dist/agent-protocol-tool.types.js +2 -0
- package/dist/agent-protocol-tool.types.js.map +1 -0
- package/dist/agent-protocol.d.ts +5 -0
- package/dist/agent-protocol.d.ts.map +1 -1
- package/dist/agent-protocol.js +30 -0
- package/dist/agent-protocol.js.map +1 -1
- package/dist/agent-reads.d.ts +64 -0
- package/dist/agent-reads.d.ts.map +1 -0
- package/dist/agent-reads.js +119 -0
- package/dist/agent-reads.js.map +1 -0
- package/dist/agent-request-validation.d.ts +50 -0
- package/dist/agent-request-validation.d.ts.map +1 -0
- package/dist/agent-request-validation.js +87 -0
- package/dist/agent-request-validation.js.map +1 -0
- package/dist/agent-rpc-errors.d.ts +14 -0
- package/dist/agent-rpc-errors.d.ts.map +1 -1
- package/dist/agent-rpc-errors.js +22 -0
- package/dist/agent-rpc-errors.js.map +1 -1
- package/dist/agent-rpc-read.d.ts +26 -16
- package/dist/agent-rpc-read.d.ts.map +1 -1
- package/dist/agent-rpc-read.js +50 -122
- package/dist/agent-rpc-read.js.map +1 -1
- package/dist/agent-rpc-resume.d.ts +49 -2
- package/dist/agent-rpc-resume.d.ts.map +1 -1
- package/dist/agent-rpc-resume.js +57 -23
- package/dist/agent-rpc-resume.js.map +1 -1
- package/dist/agent-rpc-resume.types.d.ts +4 -0
- package/dist/agent-rpc-resume.types.d.ts.map +1 -0
- package/dist/agent-rpc-resume.types.js +2 -0
- package/dist/agent-rpc-resume.types.js.map +1 -0
- package/dist/agent-rpc-support.d.ts +60 -23
- package/dist/agent-rpc-support.d.ts.map +1 -1
- package/dist/agent-rpc-support.js +75 -65
- package/dist/agent-rpc-support.js.map +1 -1
- package/dist/agent-rpc-support.schemas.d.ts +4 -0
- package/dist/agent-rpc-support.schemas.d.ts.map +1 -0
- package/dist/agent-rpc-support.schemas.js +4 -0
- package/dist/agent-rpc-support.schemas.js.map +1 -0
- package/dist/agent-rpc-support.types.d.ts +18 -0
- package/dist/agent-rpc-support.types.d.ts.map +1 -0
- package/dist/agent-rpc-support.types.js +2 -0
- package/dist/agent-rpc-support.types.js.map +1 -0
- package/dist/agent-rpc-worker.d.ts +43 -2
- package/dist/agent-rpc-worker.d.ts.map +1 -1
- package/dist/agent-rpc-worker.js +120 -117
- package/dist/agent-rpc-worker.js.map +1 -1
- package/dist/agent-rpc-worker.types.d.ts +4 -0
- package/dist/agent-rpc-worker.types.d.ts.map +1 -0
- package/dist/agent-rpc-worker.types.js +2 -0
- package/dist/agent-rpc-worker.types.js.map +1 -0
- package/dist/agent-rpc-write.d.ts +25 -0
- package/dist/agent-rpc-write.d.ts.map +1 -1
- package/dist/agent-rpc-write.js +34 -105
- package/dist/agent-rpc-write.js.map +1 -1
- package/dist/agent-rpc.d.ts +4 -0
- package/dist/agent-rpc.d.ts.map +1 -1
- package/dist/agent-rpc.js +10 -0
- package/dist/agent-rpc.js.map +1 -1
- package/dist/agent-run-admission.d.ts +13 -0
- package/dist/agent-run-admission.d.ts.map +1 -0
- package/dist/agent-run-admission.js +60 -0
- package/dist/agent-run-admission.js.map +1 -0
- package/dist/agent-run-journal.d.ts +41 -3
- package/dist/agent-run-journal.d.ts.map +1 -1
- package/dist/agent-run-journal.js +63 -81
- package/dist/agent-run-journal.js.map +1 -1
- package/dist/agent-run-journal.types.d.ts +4 -0
- package/dist/agent-run-journal.types.d.ts.map +1 -0
- package/dist/agent-run-journal.types.js +2 -0
- package/dist/agent-run-journal.types.js.map +1 -0
- package/dist/agent-run-supervision.d.ts +20 -0
- package/dist/agent-run-supervision.d.ts.map +1 -0
- package/dist/agent-run-supervision.js +42 -0
- package/dist/agent-run-supervision.js.map +1 -0
- package/dist/agent-run-supervision.types.d.ts +7 -0
- package/dist/agent-run-supervision.types.d.ts.map +1 -0
- package/dist/agent-run-supervision.types.js +2 -0
- package/dist/agent-run-supervision.types.js.map +1 -0
- package/dist/agent-run-tasks.d.ts +35 -1
- package/dist/agent-run-tasks.d.ts.map +1 -1
- package/dist/agent-run-tasks.js +72 -4
- package/dist/agent-run-tasks.js.map +1 -1
- package/dist/agent-run-tasks.types.d.ts +5 -0
- package/dist/agent-run-tasks.types.d.ts.map +1 -0
- package/dist/agent-run-tasks.types.js +2 -0
- package/dist/agent-run-tasks.types.js.map +1 -0
- package/dist/agent-runtime.d.ts +1 -16
- package/dist/agent-runtime.d.ts.map +1 -1
- package/dist/agent-runtime.types.d.ts +18 -0
- package/dist/agent-runtime.types.d.ts.map +1 -0
- package/dist/agent-runtime.types.js +2 -0
- package/dist/agent-runtime.types.js.map +1 -0
- package/dist/agent-tool-content.d.ts +17 -0
- package/dist/agent-tool-content.d.ts.map +1 -0
- package/dist/agent-tool-content.js +61 -0
- package/dist/agent-tool-content.js.map +1 -0
- package/dist/api-docs.d.ts +8 -13
- package/dist/api-docs.d.ts.map +1 -1
- package/dist/api-docs.js +38 -2
- package/dist/api-docs.js.map +1 -1
- package/dist/api-docs.types.d.ts +14 -0
- package/dist/api-docs.types.d.ts.map +1 -0
- package/dist/api-docs.types.js +2 -0
- package/dist/api-docs.types.js.map +1 -0
- package/dist/auth.d.ts +26 -15
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +46 -4
- package/dist/auth.js.map +1 -1
- package/dist/auth.types.d.ts +20 -0
- package/dist/auth.types.d.ts.map +1 -0
- package/dist/auth.types.js +2 -0
- package/dist/auth.types.js.map +1 -0
- package/dist/client-authorization.d.ts +22 -0
- package/dist/client-authorization.d.ts.map +1 -1
- package/dist/client-authorization.js +26 -12
- package/dist/client-authorization.js.map +1 -1
- package/dist/client-contract.d.ts +8 -4
- package/dist/client-contract.d.ts.map +1 -1
- package/dist/client-contract.js +6 -0
- package/dist/client-contract.js.map +1 -1
- package/dist/client-contract.types.d.ts +8 -0
- package/dist/client-contract.types.d.ts.map +1 -0
- package/dist/client-contract.types.js +2 -0
- package/dist/client-contract.types.js.map +1 -0
- package/dist/client-identity.d.ts +39 -15
- package/dist/client-identity.d.ts.map +1 -1
- package/dist/client-identity.js +50 -4
- package/dist/client-identity.js.map +1 -1
- package/dist/client-identity.types.d.ts +19 -0
- package/dist/client-identity.types.d.ts.map +1 -0
- package/dist/client-identity.types.js +2 -0
- package/dist/client-identity.types.js.map +1 -0
- package/dist/control-plane.d.ts +4 -0
- package/dist/control-plane.d.ts.map +1 -1
- package/dist/control-plane.js +4 -0
- package/dist/control-plane.js.map +1 -1
- package/dist/create-app.d.ts +11 -20
- package/dist/create-app.d.ts.map +1 -1
- package/dist/create-app.js +25 -8
- package/dist/create-app.js.map +1 -1
- package/dist/create-app.types.d.ts +21 -0
- package/dist/create-app.types.d.ts.map +1 -0
- package/dist/create-app.types.js +2 -0
- package/dist/create-app.types.js.map +1 -0
- package/dist/http-effect.d.ts +43 -0
- package/dist/http-effect.d.ts.map +1 -0
- package/dist/http-effect.js +67 -0
- package/dist/http-effect.js.map +1 -0
- package/dist/http-invocation.d.ts +22 -0
- package/dist/http-invocation.d.ts.map +1 -0
- package/dist/http-invocation.js +44 -0
- package/dist/http-invocation.js.map +1 -0
- package/dist/http-logging.d.ts +23 -0
- package/dist/http-logging.d.ts.map +1 -0
- package/dist/http-logging.js +69 -0
- package/dist/http-logging.js.map +1 -0
- package/dist/http-logging.types.d.ts +8 -0
- package/dist/http-logging.types.d.ts.map +1 -0
- package/dist/http-logging.types.js +2 -0
- package/dist/http-logging.types.js.map +1 -0
- package/dist/http-response.d.ts +22 -0
- package/dist/http-response.d.ts.map +1 -1
- package/dist/http-response.js +55 -8
- package/dist/http-response.js.map +1 -1
- package/dist/http-span-record.d.ts +5 -0
- package/dist/http-span-record.d.ts.map +1 -1
- package/dist/http-span-record.js +5 -0
- package/dist/http-span-record.js.map +1 -1
- package/dist/http-span.d.ts +18 -0
- package/dist/http-span.d.ts.map +1 -1
- package/dist/http-span.js +37 -3
- package/dist/http-span.js.map +1 -1
- package/dist/http-stream-observation.d.ts +13 -0
- package/dist/http-stream-observation.d.ts.map +1 -0
- package/dist/http-stream-observation.js +15 -0
- package/dist/http-stream-observation.js.map +1 -0
- package/dist/http-validation.d.ts +12 -0
- package/dist/http-validation.d.ts.map +1 -0
- package/dist/http-validation.js +17 -0
- package/dist/http-validation.js.map +1 -0
- package/dist/internal-endpoint-paths.d.ts +3 -0
- package/dist/internal-endpoint-paths.d.ts.map +1 -1
- package/dist/internal-endpoint-paths.js +3 -0
- package/dist/internal-endpoint-paths.js.map +1 -1
- package/dist/internal-endpoint-query.d.ts +18 -0
- package/dist/internal-endpoint-query.d.ts.map +1 -0
- package/dist/internal-endpoint-query.js +88 -0
- package/dist/internal-endpoint-query.js.map +1 -0
- package/dist/internal-endpoints-utils.d.ts +39 -4
- package/dist/internal-endpoints-utils.d.ts.map +1 -1
- package/dist/internal-endpoints-utils.js +48 -52
- package/dist/internal-endpoints-utils.js.map +1 -1
- package/dist/internal-endpoints.d.ts +11 -46
- package/dist/internal-endpoints.d.ts.map +1 -1
- package/dist/internal-endpoints.js +25 -2
- package/dist/internal-endpoints.js.map +1 -1
- package/dist/internal-endpoints.types.d.ts +57 -0
- package/dist/internal-endpoints.types.d.ts.map +1 -0
- package/dist/internal-endpoints.types.js +2 -0
- package/dist/internal-endpoints.types.js.map +1 -0
- package/dist/jobs/authorization.d.ts +22 -8
- package/dist/jobs/authorization.d.ts.map +1 -1
- package/dist/jobs/authorization.js +29 -16
- package/dist/jobs/authorization.js.map +1 -1
- package/dist/jobs/authorization.types.d.ts +9 -0
- package/dist/jobs/authorization.types.d.ts.map +1 -0
- package/dist/jobs/authorization.types.js +2 -0
- package/dist/jobs/authorization.types.js.map +1 -0
- package/dist/jobs/common.d.ts +54 -3
- package/dist/jobs/common.d.ts.map +1 -1
- package/dist/jobs/common.js +63 -23
- package/dist/jobs/common.js.map +1 -1
- package/dist/jobs/common.schemas.d.ts +6 -0
- package/dist/jobs/common.schemas.d.ts.map +1 -0
- package/dist/jobs/common.schemas.js +41 -0
- package/dist/jobs/common.schemas.js.map +1 -0
- package/dist/jobs/cursors.d.ts +38 -0
- package/dist/jobs/cursors.d.ts.map +1 -1
- package/dist/jobs/cursors.js +50 -0
- package/dist/jobs/cursors.js.map +1 -1
- package/dist/jobs/handlers-mutations-cancel.d.ts +15 -0
- package/dist/jobs/handlers-mutations-cancel.d.ts.map +1 -0
- package/dist/jobs/handlers-mutations-cancel.js +49 -0
- package/dist/jobs/handlers-mutations-cancel.js.map +1 -0
- package/dist/jobs/handlers-mutations-retry.d.ts +14 -0
- package/dist/jobs/handlers-mutations-retry.d.ts.map +1 -0
- package/dist/jobs/handlers-mutations-retry.js +37 -0
- package/dist/jobs/handlers-mutations-retry.js.map +1 -0
- package/dist/jobs/handlers-mutations-trigger.d.ts +14 -0
- package/dist/jobs/handlers-mutations-trigger.d.ts.map +1 -0
- package/dist/jobs/handlers-mutations-trigger.js +33 -0
- package/dist/jobs/handlers-mutations-trigger.js.map +1 -0
- package/dist/jobs/handlers-mutations.d.ts +33 -0
- package/dist/jobs/handlers-mutations.d.ts.map +1 -1
- package/dist/jobs/handlers-mutations.js +53 -69
- package/dist/jobs/handlers-mutations.js.map +1 -1
- package/dist/jobs/handlers-mutations.types.d.ts +10 -0
- package/dist/jobs/handlers-mutations.types.d.ts.map +1 -0
- package/dist/jobs/handlers-mutations.types.js +2 -0
- package/dist/jobs/handlers-mutations.types.js.map +1 -0
- package/dist/jobs/handlers-read-get.d.ts +14 -0
- package/dist/jobs/handlers-read-get.d.ts.map +1 -0
- package/dist/jobs/handlers-read-get.js +33 -0
- package/dist/jobs/handlers-read-get.js.map +1 -0
- package/dist/jobs/handlers-read-list.d.ts +14 -0
- package/dist/jobs/handlers-read-list.d.ts.map +1 -0
- package/dist/jobs/handlers-read-list.js +42 -0
- package/dist/jobs/handlers-read-list.js.map +1 -0
- package/dist/jobs/handlers-read-watch.d.ts +15 -0
- package/dist/jobs/handlers-read-watch.d.ts.map +1 -0
- package/dist/jobs/handlers-read-watch.js +39 -0
- package/dist/jobs/handlers-read-watch.js.map +1 -0
- package/dist/jobs/handlers-read.d.ts +33 -0
- package/dist/jobs/handlers-read.d.ts.map +1 -1
- package/dist/jobs/handlers-read.js +53 -66
- package/dist/jobs/handlers-read.js.map +1 -1
- package/dist/jobs/handlers-read.types.d.ts +10 -0
- package/dist/jobs/handlers-read.types.d.ts.map +1 -0
- package/dist/jobs/handlers-read.types.js +2 -0
- package/dist/jobs/handlers-read.types.js.map +1 -0
- package/dist/jobs/handlers-stream.d.ts +28 -0
- package/dist/jobs/handlers-stream.d.ts.map +1 -1
- package/dist/jobs/handlers-stream.js +77 -31
- package/dist/jobs/handlers-stream.js.map +1 -1
- package/dist/jobs/handlers-validation.d.ts +16 -0
- package/dist/jobs/handlers-validation.d.ts.map +1 -1
- package/dist/jobs/handlers-validation.js +21 -0
- package/dist/jobs/handlers-validation.js.map +1 -1
- package/dist/jobs/projection-stream.d.ts +11 -0
- package/dist/jobs/projection-stream.d.ts.map +1 -1
- package/dist/jobs/projection-stream.js +37 -0
- package/dist/jobs/projection-stream.js.map +1 -1
- package/dist/jobs/projection-validation.d.ts +12 -0
- package/dist/jobs/projection-validation.d.ts.map +1 -1
- package/dist/jobs/projection-validation.js +44 -0
- package/dist/jobs/projection-validation.js.map +1 -1
- package/dist/jobs/projection.d.ts +29 -0
- package/dist/jobs/projection.d.ts.map +1 -1
- package/dist/jobs/projection.js +34 -1
- package/dist/jobs/projection.js.map +1 -1
- package/dist/jobs/rpc.d.ts +4 -0
- package/dist/jobs/rpc.d.ts.map +1 -1
- package/dist/jobs/rpc.js +51 -1
- package/dist/jobs/rpc.js.map +1 -1
- package/dist/jobs/runtime.types.d.ts +49 -0
- package/dist/jobs/runtime.types.d.ts.map +1 -0
- package/dist/jobs/runtime.types.js +2 -0
- package/dist/jobs/runtime.types.js.map +1 -0
- package/dist/jobs/support-lookups.d.ts +20 -0
- package/dist/jobs/support-lookups.d.ts.map +1 -0
- package/dist/jobs/support-lookups.js +34 -0
- package/dist/jobs/support-lookups.js.map +1 -0
- package/dist/jobs/support.d.ts +56 -1
- package/dist/jobs/support.d.ts.map +1 -1
- package/dist/jobs/support.js +61 -20
- package/dist/jobs/support.js.map +1 -1
- package/dist/jobs/types.d.ts +17 -42
- package/dist/jobs/types.d.ts.map +1 -1
- package/dist/jobs/types.js +20 -0
- package/dist/jobs/types.js.map +1 -1
- package/dist/manifest-validation.d.ts +12 -1
- package/dist/manifest-validation.d.ts.map +1 -1
- package/dist/manifest-validation.js +17 -0
- package/dist/manifest-validation.js.map +1 -1
- package/dist/manifest-validation.types.d.ts +3 -0
- package/dist/manifest-validation.types.d.ts.map +1 -0
- package/dist/manifest-validation.types.js +2 -0
- package/dist/manifest-validation.types.js.map +1 -0
- package/dist/materialize-routes-utils.d.ts +41 -1
- package/dist/materialize-routes-utils.d.ts.map +1 -1
- package/dist/materialize-routes-utils.js +80 -22
- package/dist/materialize-routes-utils.js.map +1 -1
- package/dist/materialize-routes-validation.d.ts +4 -0
- package/dist/materialize-routes-validation.d.ts.map +1 -1
- package/dist/materialize-routes-validation.js +5 -1
- package/dist/materialize-routes-validation.js.map +1 -1
- package/dist/materialize-routes.d.ts +9 -100
- package/dist/materialize-routes.d.ts.map +1 -1
- package/dist/materialize-routes.js +24 -9
- package/dist/materialize-routes.js.map +1 -1
- package/dist/materialize-routes.types.d.ts +110 -0
- package/dist/materialize-routes.types.d.ts.map +1 -0
- package/dist/materialize-routes.types.js +2 -0
- package/dist/materialize-routes.types.js.map +1 -0
- package/dist/mcp.d.ts +39 -4
- package/dist/mcp.d.ts.map +1 -1
- package/dist/mcp.js +56 -10
- package/dist/mcp.js.map +1 -1
- package/dist/mcp.types.d.ts +15 -0
- package/dist/mcp.types.d.ts.map +1 -0
- package/dist/mcp.types.js +2 -0
- package/dist/mcp.types.js.map +1 -0
- package/dist/middleware-limits.d.ts +4 -0
- package/dist/middleware-limits.d.ts.map +1 -1
- package/dist/middleware-limits.js +16 -7
- package/dist/middleware-limits.js.map +1 -1
- package/dist/middleware-utils.d.ts +62 -53
- package/dist/middleware-utils.d.ts.map +1 -1
- package/dist/middleware-utils.js +72 -1
- package/dist/middleware-utils.js.map +1 -1
- package/dist/middleware-utils.types.d.ts +59 -0
- package/dist/middleware-utils.types.d.ts.map +1 -0
- package/dist/middleware-utils.types.js +2 -0
- package/dist/middleware-utils.types.js.map +1 -0
- package/dist/middleware.d.ts +19 -7
- package/dist/middleware.d.ts.map +1 -1
- package/dist/middleware.js +28 -6
- package/dist/middleware.js.map +1 -1
- package/dist/middleware.types.d.ts +10 -0
- package/dist/middleware.types.d.ts.map +1 -0
- package/dist/middleware.types.js +2 -0
- package/dist/middleware.types.js.map +1 -0
- package/dist/native-stream.d.ts +18 -1
- package/dist/native-stream.d.ts.map +1 -1
- package/dist/native-stream.js +55 -4
- package/dist/native-stream.js.map +1 -1
- package/dist/native-stream.schemas.d.ts +6 -0
- package/dist/native-stream.schemas.d.ts.map +1 -0
- package/dist/native-stream.schemas.js +6 -0
- package/dist/native-stream.schemas.js.map +1 -0
- package/dist/native-stream.types.d.ts +4 -0
- package/dist/native-stream.types.d.ts.map +1 -0
- package/dist/native-stream.types.js +2 -0
- package/dist/native-stream.types.js.map +1 -0
- package/dist/rate-limit-store.d.ts +37 -11
- package/dist/rate-limit-store.d.ts.map +1 -1
- package/dist/rate-limit-store.js +108 -43
- package/dist/rate-limit-store.js.map +1 -1
- package/dist/rate-limit-store.types.d.ts +18 -0
- package/dist/rate-limit-store.types.d.ts.map +1 -0
- package/dist/rate-limit-store.types.js +2 -0
- package/dist/rate-limit-store.types.js.map +1 -0
- package/dist/rate-limit-telemetry.d.ts +9 -0
- package/dist/rate-limit-telemetry.d.ts.map +1 -1
- package/dist/rate-limit-telemetry.js +9 -0
- package/dist/rate-limit-telemetry.js.map +1 -1
- package/dist/rate-limit.d.ts +8 -7
- package/dist/rate-limit.d.ts.map +1 -1
- package/dist/rate-limit.js +42 -0
- package/dist/rate-limit.js.map +1 -1
- package/dist/rate-limit.types.d.ts +9 -0
- package/dist/rate-limit.types.d.ts.map +1 -0
- package/dist/rate-limit.types.js +2 -0
- package/dist/rate-limit.types.js.map +1 -0
- package/dist/realtime-observation.d.ts +40 -0
- package/dist/realtime-observation.d.ts.map +1 -0
- package/dist/realtime-observation.js +147 -0
- package/dist/realtime-observation.js.map +1 -0
- package/dist/realtime-observation.types.d.ts +20 -0
- package/dist/realtime-observation.types.d.ts.map +1 -0
- package/dist/realtime-observation.types.js +2 -0
- package/dist/realtime-observation.types.js.map +1 -0
- package/dist/realtime-presence.d.ts +13 -0
- package/dist/realtime-presence.d.ts.map +1 -0
- package/dist/realtime-presence.js +24 -0
- package/dist/realtime-presence.js.map +1 -0
- package/dist/realtime-rpc-support.d.ts +15 -8
- package/dist/realtime-rpc-support.d.ts.map +1 -1
- package/dist/realtime-rpc-support.js +25 -5
- package/dist/realtime-rpc-support.js.map +1 -1
- package/dist/realtime-rpc-support.types.d.ts +9 -0
- package/dist/realtime-rpc-support.types.d.ts.map +1 -0
- package/dist/realtime-rpc-support.types.js +2 -0
- package/dist/realtime-rpc-support.types.js.map +1 -0
- package/dist/realtime-rpc.d.ts +4 -0
- package/dist/realtime-rpc.d.ts.map +1 -1
- package/dist/realtime-rpc.js +9 -124
- package/dist/realtime-rpc.js.map +1 -1
- package/dist/realtime-runtime.d.ts +1 -12
- package/dist/realtime-runtime.d.ts.map +1 -1
- package/dist/realtime-runtime.types.d.ts +14 -0
- package/dist/realtime-runtime.types.d.ts.map +1 -0
- package/dist/realtime-runtime.types.js +2 -0
- package/dist/realtime-runtime.types.js.map +1 -0
- package/dist/request-body-service.d.ts +23 -0
- package/dist/request-body-service.d.ts.map +1 -0
- package/dist/request-body-service.js +80 -0
- package/dist/request-body-service.js.map +1 -0
- package/dist/request-body-service.types.d.ts +7 -0
- package/dist/request-body-service.types.d.ts.map +1 -0
- package/dist/request-body-service.types.js +2 -0
- package/dist/request-body-service.types.js.map +1 -0
- package/dist/request-context.d.ts +5 -0
- package/dist/request-context.d.ts.map +1 -1
- package/dist/request-context.js +34 -0
- package/dist/request-context.js.map +1 -1
- package/dist/request-inference.d.ts +11 -0
- package/dist/request-inference.d.ts.map +1 -1
- package/dist/request-inference.js +33 -0
- package/dist/request-inference.js.map +1 -1
- package/dist/request-mapping-body.d.ts +10 -23
- package/dist/request-mapping-body.d.ts.map +1 -1
- package/dist/request-mapping-body.js +36 -30
- package/dist/request-mapping-body.js.map +1 -1
- package/dist/request-mapping-body.schemas.d.ts +9 -0
- package/dist/request-mapping-body.schemas.d.ts.map +1 -0
- package/dist/request-mapping-body.schemas.js +11 -0
- package/dist/request-mapping-body.schemas.js.map +1 -0
- package/dist/request-mapping-body.types.d.ts +31 -0
- package/dist/request-mapping-body.types.d.ts.map +1 -0
- package/dist/request-mapping-body.types.js +2 -0
- package/dist/request-mapping-body.types.js.map +1 -0
- package/dist/request-mapping-fields.d.ts +35 -0
- package/dist/request-mapping-fields.d.ts.map +1 -1
- package/dist/request-mapping-fields.js +48 -0
- package/dist/request-mapping-fields.js.map +1 -1
- package/dist/request-mapping-object.d.ts +22 -12
- package/dist/request-mapping-object.d.ts.map +1 -1
- package/dist/request-mapping-object.js +34 -4
- package/dist/request-mapping-object.js.map +1 -1
- package/dist/request-mapping-object.types.d.ts +19 -0
- package/dist/request-mapping-object.types.d.ts.map +1 -0
- package/dist/request-mapping-object.types.js +2 -0
- package/dist/request-mapping-object.types.js.map +1 -0
- package/dist/request-mapping-sources.d.ts +28 -1
- package/dist/request-mapping-sources.d.ts.map +1 -1
- package/dist/request-mapping-sources.js +27 -0
- package/dist/request-mapping-sources.js.map +1 -1
- package/dist/request-mapping-transform.d.ts +8 -0
- package/dist/request-mapping-transform.d.ts.map +1 -1
- package/dist/request-mapping-transform.js +20 -0
- package/dist/request-mapping-transform.js.map +1 -1
- package/dist/request-mapping.d.ts +31 -29
- package/dist/request-mapping.d.ts.map +1 -1
- package/dist/request-mapping.js +55 -15
- package/dist/request-mapping.js.map +1 -1
- package/dist/request-mapping.types.d.ts +38 -0
- package/dist/request-mapping.types.d.ts.map +1 -0
- package/dist/request-mapping.types.js +2 -0
- package/dist/request-mapping.types.js.map +1 -0
- package/dist/request-record-middleware.d.ts +14 -1
- package/dist/request-record-middleware.d.ts.map +1 -1
- package/dist/request-record-middleware.js +22 -0
- package/dist/request-record-middleware.js.map +1 -1
- package/dist/request-record-utils.d.ts +25 -2
- package/dist/request-record-utils.d.ts.map +1 -1
- package/dist/request-record-utils.js +27 -2
- package/dist/request-record-utils.js.map +1 -1
- package/dist/response-mapping-provider.d.ts +9 -0
- package/dist/response-mapping-provider.d.ts.map +1 -0
- package/dist/response-mapping-provider.js +15 -0
- package/dist/response-mapping-provider.js.map +1 -0
- package/dist/response-mapping-utils.d.ts +46 -2
- package/dist/response-mapping-utils.d.ts.map +1 -1
- package/dist/response-mapping-utils.js +56 -0
- package/dist/response-mapping-utils.js.map +1 -1
- package/dist/response-mapping-utils.types.d.ts +5 -0
- package/dist/response-mapping-utils.types.d.ts.map +1 -0
- package/dist/response-mapping-utils.types.js +2 -0
- package/dist/response-mapping-utils.types.js.map +1 -0
- package/dist/response-mapping-validation.d.ts +13 -0
- package/dist/response-mapping-validation.d.ts.map +1 -0
- package/dist/response-mapping-validation.js +20 -0
- package/dist/response-mapping-validation.js.map +1 -0
- package/dist/response-mapping.d.ts +57 -8
- package/dist/response-mapping.d.ts.map +1 -1
- package/dist/response-mapping.js +114 -72
- package/dist/response-mapping.js.map +1 -1
- package/dist/response-mapping.types.d.ts +11 -0
- package/dist/response-mapping.types.d.ts.map +1 -0
- package/dist/response-mapping.types.js +2 -0
- package/dist/response-mapping.types.js.map +1 -0
- package/dist/route-middleware.d.ts +5 -0
- package/dist/route-middleware.d.ts.map +1 -1
- package/dist/route-middleware.js +29 -5
- package/dist/route-middleware.js.map +1 -1
- package/dist/rpc-identity.d.ts +13 -6
- package/dist/rpc-identity.d.ts.map +1 -1
- package/dist/rpc-identity.js +11 -0
- package/dist/rpc-identity.js.map +1 -1
- package/dist/rpc-identity.types.d.ts +9 -0
- package/dist/rpc-identity.types.d.ts.map +1 -0
- package/dist/rpc-identity.types.js +2 -0
- package/dist/rpc-identity.types.js.map +1 -0
- package/dist/rpc-middleware-trace.d.ts +14 -0
- package/dist/rpc-middleware-trace.d.ts.map +1 -1
- package/dist/rpc-middleware-trace.js +20 -4
- package/dist/rpc-middleware-trace.js.map +1 -1
- package/dist/rpc-response.d.ts +12 -0
- package/dist/rpc-response.d.ts.map +1 -1
- package/dist/rpc-response.js +12 -0
- package/dist/rpc-response.js.map +1 -1
- package/dist/rpc-route-types.d.ts +26 -1
- package/dist/rpc-route-types.d.ts.map +1 -1
- package/dist/rpc-route-types.js +37 -0
- package/dist/rpc-route-types.js.map +1 -1
- package/dist/rpc-websocket.d.ts +6 -1
- package/dist/rpc-websocket.d.ts.map +1 -1
- package/dist/rpc-websocket.js +20 -1
- package/dist/rpc-websocket.js.map +1 -1
- package/dist/rpc.d.ts +11 -3
- package/dist/rpc.d.ts.map +1 -1
- package/dist/rpc.js +43 -6
- package/dist/rpc.js.map +1 -1
- package/dist/rpc.types.d.ts +5 -0
- package/dist/rpc.types.d.ts.map +1 -0
- package/dist/rpc.types.js +2 -0
- package/dist/rpc.types.js.map +1 -0
- package/dist/static-file-service.d.ts +22 -0
- package/dist/static-file-service.d.ts.map +1 -0
- package/dist/static-file-service.js +43 -0
- package/dist/static-file-service.js.map +1 -0
- package/dist/static-files.d.ts +7 -3
- package/dist/static-files.d.ts.map +1 -1
- package/dist/static-files.js +32 -19
- package/dist/static-files.js.map +1 -1
- package/dist/static-files.types.d.ts +5 -0
- package/dist/static-files.types.d.ts.map +1 -0
- package/dist/static-files.types.js +2 -0
- package/dist/static-files.types.js.map +1 -0
- package/dist/transport-security-errors.d.ts +10 -0
- package/dist/transport-security-errors.d.ts.map +1 -0
- package/dist/transport-security-errors.js +14 -0
- package/dist/transport-security-errors.js.map +1 -0
- package/dist/transport-security.d.ts +49 -13
- package/dist/transport-security.d.ts.map +1 -1
- package/dist/transport-security.js +86 -15
- package/dist/transport-security.js.map +1 -1
- package/dist/transport-security.types.d.ts +11 -0
- package/dist/transport-security.types.d.ts.map +1 -0
- package/dist/transport-security.types.js +2 -0
- package/dist/transport-security.types.js.map +1 -0
- package/package.json +19 -16
|
@@ -1,13 +1,7 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
readonly steering: AgentSteeringBuffer;
|
|
7
|
-
}
|
|
8
|
-
export interface AgentSteeringBuffer {
|
|
9
|
-
readonly push: (message: string) => void;
|
|
10
|
-
readonly drain: () => readonly string[];
|
|
11
|
-
}
|
|
1
|
+
import type { AgentSteeringBuffer } from "./agent-active-execution.types.js";
|
|
2
|
+
export type { ActiveAgentExecution, AgentSteeringBuffer } from "./agent-active-execution.types.js";
|
|
3
|
+
/** Creates the run-owned buffer used to exchange steering input with execution.
|
|
4
|
+
* @returns An independent run-owned steering buffer.
|
|
5
|
+
*/
|
|
12
6
|
export declare function createAgentSteeringBuffer(): AgentSteeringBuffer;
|
|
13
7
|
//# sourceMappingURL=agent-active-execution.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-active-execution.d.ts","sourceRoot":"","sources":["../src/agent-active-execution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"agent-active-execution.d.ts","sourceRoot":"","sources":["../src/agent-active-execution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAwB,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACnG,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAEnG;;GAEG;AACH,wBAAgB,yBAAyB,IAAI,mBAAmB,CAM/D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-active-execution.js","sourceRoot":"","sources":["../src/agent-active-execution.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agent-active-execution.js","sourceRoot":"","sources":["../src/agent-active-execution.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,UAAU,yBAAyB;IACvC,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,IAAI,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;QAChD,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;KAC/B,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { AcceptRunReceipt, ExecutionClaim } from "@relkit/agents";
|
|
2
|
+
/** Contract for active agent execution used by agent active execution. */
|
|
3
|
+
export interface ActiveAgentExecution {
|
|
4
|
+
receipt: AcceptRunReceipt;
|
|
5
|
+
claim: ExecutionClaim;
|
|
6
|
+
readonly controlRunIds: string[];
|
|
7
|
+
readonly steering: AgentSteeringBuffer;
|
|
8
|
+
}
|
|
9
|
+
/** Contract for agent steering buffer used by agent active execution. */
|
|
10
|
+
export interface AgentSteeringBuffer {
|
|
11
|
+
readonly push: (message: string) => void;
|
|
12
|
+
readonly drain: () => readonly string[];
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=agent-active-execution.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-active-execution.types.d.ts","sourceRoot":"","sources":["../src/agent-active-execution.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEvE,0EAA0E;AAC1E,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,KAAK,EAAE,cAAc,CAAC;IACtB,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAC;CACxC;AAED,yEAAyE;AACzE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,QAAQ,CAAC,KAAK,EAAE,MAAM,SAAS,MAAM,EAAE,CAAC;CACzC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-active-execution.types.js","sourceRoot":"","sources":["../src/agent-active-execution.types.ts"],"names":[],"mappings":""}
|
|
@@ -1,20 +1,31 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ResolvedAgent } from "./agent-approval-coordinator.types.js";
|
|
2
|
+
import type { PendingApproval } from "@relkit/agents";
|
|
2
3
|
import { type OperationId } from "@relkit/contracts";
|
|
3
|
-
import type { agentContext } from "./agent-rpc-support.js";
|
|
4
4
|
import type { RouteMaterializationOptions } from "./materialize-routes.js";
|
|
5
5
|
import type { ActiveAgentExecution } from "./agent-active-execution.js";
|
|
6
|
-
|
|
6
|
+
export { claimRun } from "./agent-approval-support.js";
|
|
7
|
+
/** Owns approval decisions and their batched journal writes for one accepted run. */
|
|
7
8
|
export declare class AgentApprovalCoordinator {
|
|
8
9
|
private readonly resolved;
|
|
9
10
|
private readonly active;
|
|
10
11
|
private readonly options;
|
|
11
12
|
private readonly waiting;
|
|
13
|
+
private readonly scope;
|
|
12
14
|
private flushQueued;
|
|
13
15
|
constructor(resolved: ResolvedAgent, active: ActiveAgentExecution, options: RouteMaterializationOptions);
|
|
14
16
|
readonly request: (approval: PendingApproval) => Promise<"approved" | "denied">;
|
|
17
|
+
/** Joins pending journal writes and interrupts unresolved decisions on run completion.
|
|
18
|
+
* @returns Completion after the approval scope closes and every unresolved decision is interrupted.
|
|
19
|
+
*/
|
|
20
|
+
close(): Promise<void>;
|
|
21
|
+
private readonly continueEffect;
|
|
22
|
+
/** Admits a fenced approval continuation before releasing waiting tool calls.
|
|
23
|
+
* @param operationId - Idempotency identifier for durable admission or lookup.
|
|
24
|
+
* @param payload - Untrusted public payload validated before application use.
|
|
25
|
+
* @param beforeResume - Optional durable settlement callback completed before tool execution resumes.
|
|
26
|
+
* @returns Completion after durable admission, claim acquisition and release of all waiting decisions.
|
|
27
|
+
*/
|
|
15
28
|
continue(operationId: OperationId, payload: unknown, beforeResume?: () => Promise<void>): Promise<void>;
|
|
16
|
-
private
|
|
29
|
+
private readonly flushEffect;
|
|
17
30
|
}
|
|
18
|
-
export declare function claimRun(provider: AgentStateProvider, resolved: ResolvedAgent, receipt: AcceptRunReceipt, options: RouteMaterializationOptions): Promise<ExecutionClaim>;
|
|
19
|
-
export {};
|
|
20
31
|
//# sourceMappingURL=agent-approval-coordinator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-approval-coordinator.d.ts","sourceRoot":"","sources":["../src/agent-approval-coordinator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"agent-approval-coordinator.d.ts","sourceRoot":"","sources":["../src/agent-approval-coordinator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAmB,MAAM,uCAAuC,CAAC;AAC5F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAKxE,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,qFAAqF;AACrF,qBAAa,wBAAwB;IAMjC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAP1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsC;IAC9D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAsB;IAC5C,OAAO,CAAC,WAAW,CAAS;gBAGT,QAAQ,EAAE,aAAa,EACvB,MAAM,EAAE,oBAAoB,EAC5B,OAAO,EAAE,2BAA2B;IAGvD,QAAQ,CAAC,OAAO,GAAI,UAAU,eAAe,KAAG,OAAO,CAAC,UAAU,GAAG,QAAQ,CAAC,CA4B5E;IAEF;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ5B,OAAO,CAAC,QAAQ,CAAC,cAAc,CA0E7B;IAEF;;;;;OAKG;IACH,QAAQ,CACN,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,OAAO,EAChB,YAAY,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GACjC,OAAO,CAAC,IAAI,CAAC;IAShB,OAAO,CAAC,QAAQ,CAAC,WAAW,CA+C1B;CACH"}
|
|
@@ -1,11 +1,18 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {} from "@relkit/contracts";
|
|
2
2
|
import { createOperationId } from "@relkit/realtime";
|
|
3
3
|
import { agentLimits, digest, encodedBytes } from "./agent-rpc-support.js";
|
|
4
|
+
import { Deferred, Effect, Exit, Scope } from "effect";
|
|
5
|
+
import { httpBoundary, HttpBoundaryError, observeHttp, runHttp } from "./http-effect.js";
|
|
6
|
+
import { currentHttpContextLayer } from "./http-logging.js";
|
|
7
|
+
import { claimRun, approvalDecisions, receiptExpiry } from "./agent-approval-support.js";
|
|
8
|
+
export { claimRun } from "./agent-approval-support.js";
|
|
9
|
+
/** Owns approval decisions and their batched journal writes for one accepted run. */
|
|
4
10
|
export class AgentApprovalCoordinator {
|
|
5
11
|
resolved;
|
|
6
12
|
active;
|
|
7
13
|
options;
|
|
8
14
|
waiting = new Map();
|
|
15
|
+
scope = Scope.makeUnsafe();
|
|
9
16
|
flushQueued = false;
|
|
10
17
|
constructor(resolved, active, options) {
|
|
11
18
|
this.resolved = resolved;
|
|
@@ -20,38 +27,52 @@ export class AgentApprovalCoordinator {
|
|
|
20
27
|
});
|
|
21
28
|
const existing = this.waiting.get(approvalId);
|
|
22
29
|
if (existing !== undefined)
|
|
23
|
-
return
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
original(decision);
|
|
27
|
-
resolve(decision);
|
|
28
|
-
};
|
|
29
|
-
});
|
|
30
|
-
const result = new Promise((resolve) => {
|
|
31
|
-
this.waiting.set(approvalId, { approval, approvalId, resolve });
|
|
32
|
-
});
|
|
30
|
+
return runHttp(Deferred.await(existing.decision));
|
|
31
|
+
const decision = Deferred.makeUnsafe();
|
|
32
|
+
this.waiting.set(approvalId, { approval, approvalId, decision });
|
|
33
33
|
if (!this.flushQueued) {
|
|
34
34
|
this.flushQueued = true;
|
|
35
|
-
|
|
35
|
+
/** Observes the batched approval journal write inside the approval scope.
|
|
36
|
+
* @returns A lazy flush effect whose failure completes every waiting decision.
|
|
37
|
+
*/
|
|
38
|
+
const flush = () => observeHttp("agent.approval.flush", this.flushEffect());
|
|
39
|
+
Effect.runFork(Effect.yieldNow.pipe(Effect.andThen(flush()), Effect.catch((error) => Effect.forEach(this.waiting.values(), (entry) => Deferred.fail(entry.decision, error))), Effect.forkIn(this.scope), Effect.provide(currentHttpContextLayer())));
|
|
36
40
|
}
|
|
37
|
-
return
|
|
41
|
+
return runHttp(Deferred.await(decision));
|
|
38
42
|
};
|
|
39
|
-
|
|
43
|
+
/** Joins pending journal writes and interrupts unresolved decisions on run completion.
|
|
44
|
+
* @returns Completion after the approval scope closes and every unresolved decision is interrupted.
|
|
45
|
+
*/
|
|
46
|
+
async close() {
|
|
47
|
+
await runHttp(Scope.close(this.scope, Exit.void));
|
|
48
|
+
await runHttp(Effect.forEach(this.waiting.values(), (entry) => Deferred.interrupt(entry.decision)));
|
|
49
|
+
this.waiting.clear();
|
|
50
|
+
}
|
|
51
|
+
continueEffect = Effect.fn("AgentApprovals.continue")((operationId, payload, beforeResume) => Effect.gen(function* () {
|
|
40
52
|
const entries = [...this.waiting.values()];
|
|
41
53
|
if (entries.length === 0)
|
|
42
|
-
|
|
54
|
+
return yield* Effect.fail(new HttpBoundaryError({
|
|
55
|
+
operation: "agent.approval.continue",
|
|
56
|
+
cause: new Error("No approval interruption is pending."),
|
|
57
|
+
}));
|
|
43
58
|
const decisions = approvalDecisions(payload);
|
|
44
59
|
if (entries.some(({ approvalId }) => decisions[approvalId] === undefined)) {
|
|
45
|
-
|
|
60
|
+
return yield* Effect.fail(new HttpBoundaryError({
|
|
61
|
+
operation: "agent.approval.continue",
|
|
62
|
+
cause: new Error("Every open approval requires a decision."),
|
|
63
|
+
}));
|
|
46
64
|
}
|
|
47
65
|
const interruptSetDigest = entries[0]?.interruptSetDigest;
|
|
48
66
|
if (interruptSetDigest === undefined ||
|
|
49
67
|
entries.some((entry) => entry.interruptSetDigest !== interruptSetDigest)) {
|
|
50
|
-
|
|
68
|
+
return yield* Effect.fail(new HttpBoundaryError({
|
|
69
|
+
operation: "agent.approval.continue",
|
|
70
|
+
cause: new Error("Approval interrupt set is not ready."),
|
|
71
|
+
}));
|
|
51
72
|
}
|
|
52
73
|
const interruptedRunId = this.active.receipt.runId;
|
|
53
74
|
const semanticDigest = digest({ interruptedRunId, interruptSetDigest, decisions });
|
|
54
|
-
const continuation =
|
|
75
|
+
const continuation = yield* httpBoundary("agent.approval.continue", () => Promise.resolve(this.resolved.provider.admitContinuation({
|
|
55
76
|
...this.resolved.scope,
|
|
56
77
|
operationId,
|
|
57
78
|
semanticDigest,
|
|
@@ -62,7 +83,7 @@ export class AgentApprovalCoordinator {
|
|
|
62
83
|
decisions,
|
|
63
84
|
admittedAt: new Date().toISOString(),
|
|
64
85
|
receiptExpiresAt: receiptExpiry(),
|
|
65
|
-
});
|
|
86
|
+
})));
|
|
66
87
|
this.active.receipt = {
|
|
67
88
|
operationId: continuation.operationId,
|
|
68
89
|
threadId: continuation.threadId,
|
|
@@ -71,14 +92,23 @@ export class AgentApprovalCoordinator {
|
|
|
71
92
|
duplicate: continuation.duplicate,
|
|
72
93
|
};
|
|
73
94
|
this.active.controlRunIds.push(continuation.runId);
|
|
74
|
-
this.active.claim =
|
|
75
|
-
|
|
95
|
+
this.active.claim = yield* httpBoundary("agent.approval.continue", () => Promise.resolve(claimRun(this.resolved.provider, this.resolved, this.active.receipt, this.options)));
|
|
96
|
+
yield* httpBoundary("agent.approval.continue", () => Promise.resolve(beforeResume?.()));
|
|
76
97
|
for (const entry of entries) {
|
|
77
98
|
this.waiting.delete(entry.approvalId);
|
|
78
|
-
entry.
|
|
99
|
+
yield* Deferred.succeed(entry.decision, decisions[entry.approvalId] === "approve" ? "approved" : "denied");
|
|
79
100
|
}
|
|
101
|
+
}.bind(this)));
|
|
102
|
+
/** Admits a fenced approval continuation before releasing waiting tool calls.
|
|
103
|
+
* @param operationId - Idempotency identifier for durable admission or lookup.
|
|
104
|
+
* @param payload - Untrusted public payload validated before application use.
|
|
105
|
+
* @param beforeResume - Optional durable settlement callback completed before tool execution resumes.
|
|
106
|
+
* @returns Completion after durable admission, claim acquisition and release of all waiting decisions.
|
|
107
|
+
*/
|
|
108
|
+
continue(operationId, payload, beforeResume) {
|
|
109
|
+
return runHttp(observeHttp("agent.approval.continue", this.continueEffect(operationId, payload, beforeResume)));
|
|
80
110
|
}
|
|
81
|
-
|
|
111
|
+
flushEffect = Effect.fn("AgentApprovals.flush")(() => Effect.gen(function* () {
|
|
82
112
|
this.flushQueued = false;
|
|
83
113
|
const entries = [...this.waiting.values()].filter((entry) => entry.interruptSetDigest === undefined);
|
|
84
114
|
if (entries.length === 0)
|
|
@@ -98,7 +128,7 @@ export class AgentApprovalCoordinator {
|
|
|
98
128
|
sideEffect: entry.approval.sideEffect,
|
|
99
129
|
},
|
|
100
130
|
};
|
|
101
|
-
|
|
131
|
+
yield* httpBoundary("agent.approval.flush", () => Promise.resolve(this.resolved.provider.appendJournal({
|
|
102
132
|
...this.resolved.scope,
|
|
103
133
|
threadId: this.active.receipt.threadId,
|
|
104
134
|
runId: this.active.receipt.runId,
|
|
@@ -114,35 +144,8 @@ export class AgentApprovalCoordinator {
|
|
|
114
144
|
createdAt: new Date().toISOString(),
|
|
115
145
|
},
|
|
116
146
|
limits: agentLimits,
|
|
117
|
-
});
|
|
147
|
+
})));
|
|
118
148
|
}
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
export function claimRun(provider, resolved, receipt, options) {
|
|
122
|
-
return provider.claimRun({
|
|
123
|
-
...resolved.scope,
|
|
124
|
-
threadId: receipt.threadId,
|
|
125
|
-
runId: receipt.runId,
|
|
126
|
-
workerId: crypto.randomUUID(),
|
|
127
|
-
generationId: options.agentRuntime.generationId,
|
|
128
|
-
expiresAt: new Date(Date.now() + REALTIME_RUNTIME_LIMITS.leaseExpiryMs).toISOString(),
|
|
129
|
-
});
|
|
130
|
-
}
|
|
131
|
-
function approvalDecisions(value) {
|
|
132
|
-
if (value === null || typeof value !== "object")
|
|
133
|
-
return {};
|
|
134
|
-
const payload = value;
|
|
135
|
-
if (typeof payload.approvalId === "string" && isDecision(payload.decision)) {
|
|
136
|
-
return { [payload.approvalId]: payload.decision };
|
|
137
|
-
}
|
|
138
|
-
if (payload.decisions === null || typeof payload.decisions !== "object")
|
|
139
|
-
return {};
|
|
140
|
-
return Object.fromEntries(Object.entries(payload.decisions).filter((entry) => isDecision(entry[1])));
|
|
141
|
-
}
|
|
142
|
-
function isDecision(value) {
|
|
143
|
-
return value === "approve" || value === "deny";
|
|
144
|
-
}
|
|
145
|
-
function receiptExpiry() {
|
|
146
|
-
return new Date(Date.now() + REALTIME_RUNTIME_LIMITS.agentReceiptMs).toISOString();
|
|
149
|
+
}.bind(this)));
|
|
147
150
|
}
|
|
148
151
|
//# sourceMappingURL=agent-approval-coordinator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-approval-coordinator.js","sourceRoot":"","sources":["../src/agent-approval-coordinator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agent-approval-coordinator.js","sourceRoot":"","sources":["../src/agent-approval-coordinator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { PendingApproval } from "@relkit/agents";
|
|
2
|
+
import type { agentContext } from "./agent-rpc-support.js";
|
|
3
|
+
import type { Deferred } from "effect";
|
|
4
|
+
import type { HttpBoundaryError } from "./http-effect.js";
|
|
5
|
+
/** Authorized agent descriptor, provider and immutable durable request scope. */
|
|
6
|
+
export type ResolvedAgent = Awaited<ReturnType<typeof agentContext>>;
|
|
7
|
+
/** Contract for waiting approval used by agent approval coordinator. */
|
|
8
|
+
export interface WaitingApproval {
|
|
9
|
+
readonly approval: PendingApproval;
|
|
10
|
+
readonly approvalId: string;
|
|
11
|
+
interruptSetDigest?: string;
|
|
12
|
+
readonly decision: Deferred.Deferred<"approved" | "denied", HttpBoundaryError>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=agent-approval-coordinator.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-approval-coordinator.types.d.ts","sourceRoot":"","sources":["../src/agent-approval-coordinator.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE1D,iFAAiF;AACjF,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,CAAC;AAErE,wEAAwE;AACxE,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,UAAU,GAAG,QAAQ,EAAE,iBAAiB,CAAC,CAAC;CAChF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-approval-coordinator.types.js","sourceRoot":"","sources":["../src/agent-approval-coordinator.types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { ResolvedAgent } from "./agent-approval-coordinator.types.js";
|
|
2
|
+
import type { AcceptRunReceipt, AgentStateProvider, ExecutionClaim } from "@relkit/agents";
|
|
3
|
+
import type { RouteMaterializationOptions } from "./materialize-routes.js";
|
|
4
|
+
/** Claims the accepted run for the active generation with a bounded lease.
|
|
5
|
+
* @param provider - Foreign provider whose native API owns durable state.
|
|
6
|
+
* @param resolved - Authorized agent descriptor, provider and durable request scope.
|
|
7
|
+
* @param receipt - Durable accepted-run receipt identifying the thread and run.
|
|
8
|
+
* @param options - Application dependencies and configuration for this domain.
|
|
9
|
+
* @returns The acquired execution claim containing its fencing token and lease expiry.
|
|
10
|
+
*/
|
|
11
|
+
export declare function claimRun(provider: AgentStateProvider, resolved: ResolvedAgent, receipt: AcceptRunReceipt, options: RouteMaterializationOptions): Promise<ExecutionClaim>;
|
|
12
|
+
/** Normalizes single and batched approval payloads into recognized decisions.
|
|
13
|
+
* @param value - Value inspected, validated or projected by this operation.
|
|
14
|
+
* @returns Recognized approve or deny values keyed by approval identifier.
|
|
15
|
+
*/
|
|
16
|
+
export declare function approvalDecisions(value: unknown): Readonly<Record<string, "approve" | "deny">>;
|
|
17
|
+
/** Recognizes the two supported approval decision literals.
|
|
18
|
+
* @param value - Value inspected, validated or projected by this operation.
|
|
19
|
+
* @returns Whether the inspected value satisfies the declared type guard.
|
|
20
|
+
*/
|
|
21
|
+
export declare function isDecision(value: unknown): value is "approve" | "deny";
|
|
22
|
+
/** Computes the bounded retention deadline for an agent receipt.
|
|
23
|
+
* @returns The ISO receipt-expiry timestamp computed from the configured retention limit.
|
|
24
|
+
*/
|
|
25
|
+
export declare function receiptExpiry(): string;
|
|
26
|
+
//# sourceMappingURL=agent-approval-support.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-approval-support.d.ts","sourceRoot":"","sources":["../src/agent-approval-support.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAG3F,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AAE3E;;;;;;GAMG;AACH,wBAAgB,QAAQ,CACtB,QAAQ,EAAE,kBAAkB,EAC5B,QAAQ,EAAE,aAAa,EACvB,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,cAAc,CAAC,CASzB;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,CAAC,CAY9F;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,SAAS,GAAG,MAAM,CAEtE;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { REALTIME_RUNTIME_LIMITS } from "@relkit/contracts";
|
|
2
|
+
/** Claims the accepted run for the active generation with a bounded lease.
|
|
3
|
+
* @param provider - Foreign provider whose native API owns durable state.
|
|
4
|
+
* @param resolved - Authorized agent descriptor, provider and durable request scope.
|
|
5
|
+
* @param receipt - Durable accepted-run receipt identifying the thread and run.
|
|
6
|
+
* @param options - Application dependencies and configuration for this domain.
|
|
7
|
+
* @returns The acquired execution claim containing its fencing token and lease expiry.
|
|
8
|
+
*/
|
|
9
|
+
export function claimRun(provider, resolved, receipt, options) {
|
|
10
|
+
return provider.claimRun({
|
|
11
|
+
...resolved.scope,
|
|
12
|
+
threadId: receipt.threadId,
|
|
13
|
+
runId: receipt.runId,
|
|
14
|
+
workerId: crypto.randomUUID(),
|
|
15
|
+
generationId: options.agentRuntime.generationId,
|
|
16
|
+
expiresAt: new Date(Date.now() + REALTIME_RUNTIME_LIMITS.leaseExpiryMs).toISOString(),
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
/** Normalizes single and batched approval payloads into recognized decisions.
|
|
20
|
+
* @param value - Value inspected, validated or projected by this operation.
|
|
21
|
+
* @returns Recognized approve or deny values keyed by approval identifier.
|
|
22
|
+
*/
|
|
23
|
+
export function approvalDecisions(value) {
|
|
24
|
+
if (value === null || typeof value !== "object")
|
|
25
|
+
return {};
|
|
26
|
+
const payload = value;
|
|
27
|
+
if (typeof payload.approvalId === "string" && isDecision(payload.decision)) {
|
|
28
|
+
return { [payload.approvalId]: payload.decision };
|
|
29
|
+
}
|
|
30
|
+
if (payload.decisions === null || typeof payload.decisions !== "object")
|
|
31
|
+
return {};
|
|
32
|
+
return Object.fromEntries(Object.entries(payload.decisions).filter((entry) => isDecision(entry[1])));
|
|
33
|
+
}
|
|
34
|
+
/** Recognizes the two supported approval decision literals.
|
|
35
|
+
* @param value - Value inspected, validated or projected by this operation.
|
|
36
|
+
* @returns Whether the inspected value satisfies the declared type guard.
|
|
37
|
+
*/
|
|
38
|
+
export function isDecision(value) {
|
|
39
|
+
return value === "approve" || value === "deny";
|
|
40
|
+
}
|
|
41
|
+
/** Computes the bounded retention deadline for an agent receipt.
|
|
42
|
+
* @returns The ISO receipt-expiry timestamp computed from the configured retention limit.
|
|
43
|
+
*/
|
|
44
|
+
export function receiptExpiry() {
|
|
45
|
+
return new Date(Date.now() + REALTIME_RUNTIME_LIMITS.agentReceiptMs).toISOString();
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=agent-approval-support.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-approval-support.js","sourceRoot":"","sources":["../src/agent-approval-support.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAI5D;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CACtB,QAA4B,EAC5B,QAAuB,EACvB,OAAyB,EACzB,OAAoC;IAEpC,OAAO,QAAQ,CAAC,QAAQ,CAAC;QACvB,GAAG,QAAQ,CAAC,KAAK;QACjB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,QAAQ,EAAE,MAAM,CAAC,UAAU,EAAE;QAC7B,YAAY,EAAE,OAAO,CAAC,YAAa,CAAC,YAAY;QAChD,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,uBAAuB,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE;KACtF,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IAC3D,MAAM,OAAO,GAAG,KAA0E,CAAC;IAC3F,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3E,OAAO,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC;IACpD,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,KAAK,IAAI,IAAI,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IACnF,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAyC,EAAE,CACxF,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CACrB,CACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,UAAU,CAAC,KAAc;IACvC,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,MAAM,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,uBAAuB,CAAC,cAAc,CAAC,CAAC,WAAW,EAAE,CAAC;AACrF,CAAC"}
|
|
@@ -1,2 +1,6 @@
|
|
|
1
|
+
/** Reject requests missing required native agent stream capabilities.
|
|
2
|
+
* @param request - Incoming HTTP request.
|
|
3
|
+
* @returns Nothing when every required capability is offered.
|
|
4
|
+
*/
|
|
1
5
|
export declare function assertAgentCapabilities(request: Request): void;
|
|
2
6
|
//# sourceMappingURL=agent-capability-negotiation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-capability-negotiation.d.ts","sourceRoot":"","sources":["../src/agent-capability-negotiation.ts"],"names":[],"mappings":"AAOA,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAY9D"}
|
|
1
|
+
{"version":3,"file":"agent-capability-negotiation.d.ts","sourceRoot":"","sources":["../src/agent-capability-negotiation.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAY9D"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import { ORPCError } from "@orpc/server";
|
|
2
2
|
import { AGENT_CAPABILITY_HEADER, AGENT_CAPABILITY_QUERY, AGENT_STREAM_CAPABILITIES, } from "@relkit/contracts";
|
|
3
|
+
/** Reject requests missing required native agent stream capabilities.
|
|
4
|
+
* @param request - Incoming HTTP request.
|
|
5
|
+
* @returns Nothing when every required capability is offered.
|
|
6
|
+
*/
|
|
3
7
|
export function assertAgentCapabilities(request) {
|
|
4
8
|
const value = request.headers.get(AGENT_CAPABILITY_HEADER) ??
|
|
5
9
|
new URL(request.url).searchParams.get(AGENT_CAPABILITY_QUERY) ??
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-capability-negotiation.js","sourceRoot":"","sources":["../src/agent-capability-negotiation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAE3B,MAAM,UAAU,uBAAuB,CAAC,OAAgB;IACtD,MAAM,KAAK,GACT,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;QAC5C,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,sBAAsB,CAAC;QAC7D,EAAE,CAAC;IACL,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACvE,MAAM,OAAO,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;IAC3F,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IACjC,MAAM,IAAI,SAAS,CAAC,gCAAgC,EAAE;QACpD,OAAO,EAAE,4EAA4E;QACrF,IAAI,EAAE,EAAE,QAAQ,EAAE,yBAAyB,EAAE,OAAO,EAAE;KACvD,CAAC,CAAC;AACL,CAAC"}
|
|
1
|
+
{"version":3,"file":"agent-capability-negotiation.js","sourceRoot":"","sources":["../src/agent-capability-negotiation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAE3B;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAgB;IACtD,MAAM,KAAK,GACT,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;QAC5C,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,sBAAsB,CAAC;QAC7D,EAAE,CAAC;IACL,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACvE,MAAM,OAAO,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;IAC3F,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IACjC,MAAM,IAAI,SAAS,CAAC,gCAAgC,EAAE;QACpD,OAAO,EAAE,4EAA4E;QACrF,IAAI,EAAE,EAAE,QAAQ,EAAE,yBAAyB,EAAE,OAAO,EAAE;KACvD,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { RouteMaterializationOptions } from "./materialize-routes.js";
|
|
2
|
+
import type { RpcContext } from "./rpc.js";
|
|
3
|
+
import { type AgentInput } from "./agent-rpc-support.js";
|
|
4
|
+
/** Checks client identity and transport security before mutating durable agent state.
|
|
5
|
+
* @param input - Submitted operation input; validation and authorization occur before effects are admitted.
|
|
6
|
+
* @param context - Trusted Hono or oRPC request context containing request state and authentication.
|
|
7
|
+
* @param options - Application dependencies and configuration for this domain.
|
|
8
|
+
* @returns Completion after identity and optional transport-security checks pass.
|
|
9
|
+
*/
|
|
10
|
+
export declare function assertWrite(input: AgentInput, context: RpcContext, options: RouteMaterializationOptions): Promise<void>;
|
|
11
|
+
/** Validates a supplied operation identifier or creates one within the receipt window.
|
|
12
|
+
* @param value - Value inspected, validated or projected by this operation.
|
|
13
|
+
* @returns The validated operation ID within the supported receipt window.
|
|
14
|
+
*/
|
|
15
|
+
export declare function requiredOperationId(value: string | undefined): import("@relkit/contracts").OperationId;
|
|
16
|
+
/** Checks the public payload shape required by the selected control kind.
|
|
17
|
+
* @param kind - Declared stage or control kind selecting the relevant policy.
|
|
18
|
+
* @param value - Value inspected, validated or projected by this operation.
|
|
19
|
+
* @returns Whether the inspected value satisfies the declared type guard.
|
|
20
|
+
*/
|
|
21
|
+
export declare function isControlPayload(kind: string | undefined, value: unknown): value is object | string;
|
|
22
|
+
//# sourceMappingURL=agent-command-validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-command-validation.d.ts","sourceRoot":"","sources":["../src/agent-command-validation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD;;;;;GAKG;AACH,wBAAsB,WAAW,CAC/B,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,UAAU,EACnB,OAAO,EAAE,2BAA2B,iBAKrC;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,2CAI5D;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,MAAM,GAAG,MAAM,CAG1B"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { REALTIME_RUNTIME_LIMITS } from "@relkit/contracts";
|
|
2
|
+
import { createOperationId, parseOperationId } from "@relkit/realtime";
|
|
3
|
+
import { assertExpectedIdentity, assertRpcSecurity } from "./rpc-identity.js";
|
|
4
|
+
import {} from "./agent-rpc-support.js";
|
|
5
|
+
/** Checks client identity and transport security before mutating durable agent state.
|
|
6
|
+
* @param input - Submitted operation input; validation and authorization occur before effects are admitted.
|
|
7
|
+
* @param context - Trusted Hono or oRPC request context containing request state and authentication.
|
|
8
|
+
* @param options - Application dependencies and configuration for this domain.
|
|
9
|
+
* @returns Completion after identity and optional transport-security checks pass.
|
|
10
|
+
*/
|
|
11
|
+
export async function assertWrite(input, context, options) {
|
|
12
|
+
await assertExpectedIdentity(context, options.clientIdentity, input.expectedIdentity);
|
|
13
|
+
if (options.transportSecurity !== undefined)
|
|
14
|
+
await assertRpcSecurity(context, options.transportSecurity);
|
|
15
|
+
}
|
|
16
|
+
/** Validates a supplied operation identifier or creates one within the receipt window.
|
|
17
|
+
* @param value - Value inspected, validated or projected by this operation.
|
|
18
|
+
* @returns The validated operation ID within the supported receipt window.
|
|
19
|
+
*/
|
|
20
|
+
export function requiredOperationId(value) {
|
|
21
|
+
return parseOperationId(value ?? createOperationId(), {
|
|
22
|
+
receiptWindowMs: REALTIME_RUNTIME_LIMITS.agentReceiptMs,
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
/** Checks the public payload shape required by the selected control kind.
|
|
26
|
+
* @param kind - Declared stage or control kind selecting the relevant policy.
|
|
27
|
+
* @param value - Value inspected, validated or projected by this operation.
|
|
28
|
+
* @returns Whether the inspected value satisfies the declared type guard.
|
|
29
|
+
*/
|
|
30
|
+
export function isControlPayload(kind, value) {
|
|
31
|
+
if (kind === "steer" || kind === "follow-up")
|
|
32
|
+
return typeof value === "string";
|
|
33
|
+
return value !== null && typeof value === "object";
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=agent-command-validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-command-validation.js","sourceRoot":"","sources":["../src/agent-command-validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEvE,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAG9E,OAAO,EAAmB,MAAM,wBAAwB,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,KAAiB,EACjB,OAAmB,EACnB,OAAoC;IAEpC,MAAM,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,cAAe,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACvF,IAAI,OAAO,CAAC,iBAAiB,KAAK,SAAS;QACzC,MAAM,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAChE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAyB;IAC3D,OAAO,gBAAgB,CAAC,KAAK,IAAI,iBAAiB,EAAE,EAAE;QACpD,eAAe,EAAE,uBAAuB,CAAC,cAAc;KACxD,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAC9B,IAAwB,EACxB,KAAc;IAEd,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,WAAW;QAAE,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC;IAC/E,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC;AACrD,CAAC"}
|
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
import { type AgentRunCompatibility, type StoredRun, type ThreadSnapshot } from "@relkit/contracts";
|
|
2
|
+
/** Classify persisted run versions and whether their checkpoint can resume.
|
|
3
|
+
* @param run - Persisted run being inspected.
|
|
4
|
+
* @param waitingRunId - Run ID owning the resumable waiting checkpoint.
|
|
5
|
+
* @returns Native read-write or historical read-only compatibility metadata.
|
|
6
|
+
*/
|
|
2
7
|
export declare function agentRunCompatibility(run: StoredRun | undefined, waitingRunId?: string): AgentRunCompatibility;
|
|
8
|
+
/** Attach compatibility metadata and hide checkpoints for historical runs.
|
|
9
|
+
* @param snapshot - Current thread snapshot.
|
|
10
|
+
* @returns The client snapshot with resumable state only for writable runs.
|
|
11
|
+
*/
|
|
3
12
|
export declare function clientAgentSnapshot(snapshot: ThreadSnapshot): ThreadSnapshot;
|
|
13
|
+
/** Reject mutations of historical runs without a native checkpoint.
|
|
14
|
+
* @param snapshot - Current thread snapshot.
|
|
15
|
+
* @param runId - Selected run identifier.
|
|
16
|
+
* @returns Nothing for writable runs; otherwise throws AGENT_RUN_READ_ONLY.
|
|
17
|
+
*/
|
|
4
18
|
export declare function assertAgentRunWritable(snapshot: ThreadSnapshot, runId?: string): void;
|
|
5
19
|
//# sourceMappingURL=agent-compatibility.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-compatibility.d.ts","sourceRoot":"","sources":["../src/agent-compatibility.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,qBAAqB,EAC1B,KAAK,SAAS,EACd,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAE3B,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,SAAS,GAAG,SAAS,EAC1B,YAAY,CAAC,EAAE,MAAM,GACpB,qBAAqB,CAiBvB;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,cAAc,GAAG,cAAc,CAM5E;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CASrF"}
|
|
1
|
+
{"version":3,"file":"agent-compatibility.d.ts","sourceRoot":"","sources":["../src/agent-compatibility.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,qBAAqB,EAC1B,KAAK,SAAS,EACd,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAE3B;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,SAAS,GAAG,SAAS,EAC1B,YAAY,CAAC,EAAE,MAAM,GACpB,qBAAqB,CAiBvB;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,cAAc,GAAG,cAAc,CAM5E;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CASrF"}
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import { ORPCError } from "@orpc/server";
|
|
2
2
|
import { AGENT_STATE_SCHEMA_VERSION, AGENT_STREAM_VERSION, } from "@relkit/contracts";
|
|
3
|
+
/** Classify persisted run versions and whether their checkpoint can resume.
|
|
4
|
+
* @param run - Persisted run being inspected.
|
|
5
|
+
* @param waitingRunId - Run ID owning the resumable waiting checkpoint.
|
|
6
|
+
* @returns Native read-write or historical read-only compatibility metadata.
|
|
7
|
+
*/
|
|
3
8
|
export function agentRunCompatibility(run, waitingRunId) {
|
|
4
9
|
if (run === undefined) {
|
|
5
10
|
return { runtime: "native", access: "read-write", resumableCheckpoint: false };
|
|
@@ -17,6 +22,10 @@ export function agentRunCompatibility(run, waitingRunId) {
|
|
|
17
22
|
...(typeof owner?.schemaVersion === "number" ? { schemaVersion: owner.schemaVersion } : {}),
|
|
18
23
|
};
|
|
19
24
|
}
|
|
25
|
+
/** Attach compatibility metadata and hide checkpoints for historical runs.
|
|
26
|
+
* @param snapshot - Current thread snapshot.
|
|
27
|
+
* @returns The client snapshot with resumable state only for writable runs.
|
|
28
|
+
*/
|
|
20
29
|
export function clientAgentSnapshot(snapshot) {
|
|
21
30
|
const run = currentRun(snapshot);
|
|
22
31
|
const compatibility = agentRunCompatibility(run, snapshot.waiting?.runId);
|
|
@@ -25,6 +34,11 @@ export function clientAgentSnapshot(snapshot) {
|
|
|
25
34
|
const { waiting: _waiting, ...readOnly } = snapshot;
|
|
26
35
|
return { ...readOnly, compatibility };
|
|
27
36
|
}
|
|
37
|
+
/** Reject mutations of historical runs without a native checkpoint.
|
|
38
|
+
* @param snapshot - Current thread snapshot.
|
|
39
|
+
* @param runId - Selected run identifier.
|
|
40
|
+
* @returns Nothing for writable runs; otherwise throws AGENT_RUN_READ_ONLY.
|
|
41
|
+
*/
|
|
28
42
|
export function assertAgentRunWritable(snapshot, runId) {
|
|
29
43
|
const run = runId === undefined
|
|
30
44
|
? currentRun(snapshot)
|
|
@@ -35,6 +49,10 @@ export function assertAgentRunWritable(snapshot, runId) {
|
|
|
35
49
|
message: "Historical AI SDK runs are read-only and have no native resumable checkpoint.",
|
|
36
50
|
});
|
|
37
51
|
}
|
|
52
|
+
/** Select the active run or the most recently accepted stored run.
|
|
53
|
+
* @param snapshot - Current thread snapshot.
|
|
54
|
+
* @returns The selected run, or undefined when the thread has none.
|
|
55
|
+
*/
|
|
38
56
|
function currentRun(snapshot) {
|
|
39
57
|
const active = snapshot.activeRun?.runId;
|
|
40
58
|
if (active !== undefined) {
|