@relkit/runtime-hono 0.5.3 → 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
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import { Context, Effect, Layer } from "effect";
|
|
2
|
+
import { httpBoundary, observeHttp } from "./http-effect.js";
|
|
3
|
+
import { createOperationId } from "@relkit/realtime";
|
|
4
|
+
import { agentLimits, encodedBytes } from "./agent-rpc-support.js";
|
|
5
|
+
/** Projects an agent value into a user or assistant journal message.
|
|
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 claim - Current fenced execution claim required by the provider.
|
|
9
|
+
* @param role - Public message role used to select the configured chat projection.
|
|
10
|
+
* @param value - Value inspected, validated or projected by this operation.
|
|
11
|
+
* @param messageId - Stable public message identifier retained across streaming updates.
|
|
12
|
+
* @param createdAt - Public creation timestamp retained by the journal record.
|
|
13
|
+
* @param state - State owned by the current request or operation.
|
|
14
|
+
* @returns Completion after the projected text message is durably journaled.
|
|
15
|
+
*/
|
|
16
|
+
export const appendAgentMessageEffect = Effect.fn("AgentJournal.appendAgentMessage")(function* (resolved, receipt, claim, role, value, messageId = crypto.randomUUID(), createdAt = new Date().toISOString(), state) {
|
|
17
|
+
const message = {
|
|
18
|
+
messageId,
|
|
19
|
+
runId: receipt.runId,
|
|
20
|
+
role,
|
|
21
|
+
parts: [
|
|
22
|
+
{
|
|
23
|
+
partId: `${messageId}:text`,
|
|
24
|
+
kind: "text",
|
|
25
|
+
text: publicAgentText(resolved, role, value),
|
|
26
|
+
...(state === undefined ? {} : { state }),
|
|
27
|
+
},
|
|
28
|
+
],
|
|
29
|
+
createdAt,
|
|
30
|
+
};
|
|
31
|
+
yield* appendBrowserMessageEffect(resolved, receipt, claim, message);
|
|
32
|
+
});
|
|
33
|
+
/** Appends a bounded browser message under the current execution claim.
|
|
34
|
+
* @param resolved - Authorized agent descriptor, provider and durable request scope.
|
|
35
|
+
* @param receipt - Durable accepted-run receipt identifying the thread and run.
|
|
36
|
+
* @param claim - Current fenced execution claim required by the provider.
|
|
37
|
+
* @param message - Public message included in the resulting value or failure.
|
|
38
|
+
* @returns Completion after the bounded browser message is durably journaled.
|
|
39
|
+
*/
|
|
40
|
+
export const appendBrowserMessageEffect = Effect.fn("AgentJournal.appendBrowserMessage")(function* (resolved, receipt, claim, message) {
|
|
41
|
+
yield* httpBoundary("agent.appendBrowserMessage", () => resolved.provider.appendJournal({
|
|
42
|
+
...resolved.scope,
|
|
43
|
+
threadId: receipt.threadId,
|
|
44
|
+
runId: receipt.runId,
|
|
45
|
+
claim,
|
|
46
|
+
operationId: createOperationId(),
|
|
47
|
+
semanticDigest: JSON.stringify(message),
|
|
48
|
+
record: {
|
|
49
|
+
recordId: crypto.randomUUID(),
|
|
50
|
+
runId: receipt.runId,
|
|
51
|
+
kind: "message",
|
|
52
|
+
publicValue: message,
|
|
53
|
+
encodedBytes: encodedBytes(message),
|
|
54
|
+
createdAt: message.createdAt,
|
|
55
|
+
},
|
|
56
|
+
limits: agentLimits,
|
|
57
|
+
}));
|
|
58
|
+
});
|
|
59
|
+
/** Selects the configured chat field before rendering a public message.
|
|
60
|
+
* @param resolved - Authorized agent descriptor, provider and durable request scope.
|
|
61
|
+
* @param role - Public message role used to select the configured chat projection.
|
|
62
|
+
* @param value - Value inspected, validated or projected by this operation.
|
|
63
|
+
* @returns The configured chat text field, raw string input, or a JSON representation.
|
|
64
|
+
*/
|
|
65
|
+
export function publicAgentText(resolved, role, value) {
|
|
66
|
+
const output = role === "user" ? resolved.descriptor.chat?.input : resolved.descriptor.chat?.output;
|
|
67
|
+
if (typeof output === "string" &&
|
|
68
|
+
value !== null &&
|
|
69
|
+
typeof value === "object" &&
|
|
70
|
+
typeof value[output] === "string")
|
|
71
|
+
return value[output];
|
|
72
|
+
return typeof value === "string" ? value : JSON.stringify(value);
|
|
73
|
+
}
|
|
74
|
+
/** Persists the terminal run outcome and receipt retention deadline.
|
|
75
|
+
* @param resolved - Authorized agent descriptor, provider and durable request scope.
|
|
76
|
+
* @param receipt - Durable accepted-run receipt identifying the thread and run.
|
|
77
|
+
* @param claim - Current fenced execution claim required by the provider.
|
|
78
|
+
* @param outcome - Terminal classification used for durable state and telemetry.
|
|
79
|
+
* @param publicValue - Already projected public value admitted to durable storage.
|
|
80
|
+
* @returns Completion after the terminal record and receipt retention are persisted.
|
|
81
|
+
*/
|
|
82
|
+
export const completeAgentRunEffect = Effect.fn("AgentJournal.completeAgentRun")(function* (resolved, receipt, claim, outcome, publicValue) {
|
|
83
|
+
const now = new Date().toISOString();
|
|
84
|
+
const terminalValue = publicValue !== null && typeof publicValue === "object" && !Array.isArray(publicValue)
|
|
85
|
+
? { ...publicValue, outcome }
|
|
86
|
+
: { value: publicValue, outcome };
|
|
87
|
+
yield* httpBoundary("agent.completeAgentRun", () => resolved.provider.completeRun({
|
|
88
|
+
...resolved.scope,
|
|
89
|
+
operationId: createOperationId(),
|
|
90
|
+
semanticDigest: `${receipt.runId}:${outcome}`,
|
|
91
|
+
threadId: receipt.threadId,
|
|
92
|
+
runId: receipt.runId,
|
|
93
|
+
claim,
|
|
94
|
+
outcome,
|
|
95
|
+
terminalRecord: {
|
|
96
|
+
recordId: crypto.randomUUID(),
|
|
97
|
+
runId: receipt.runId,
|
|
98
|
+
kind: "terminal",
|
|
99
|
+
publicValue: terminalValue,
|
|
100
|
+
encodedBytes: encodedBytes(terminalValue),
|
|
101
|
+
createdAt: now,
|
|
102
|
+
},
|
|
103
|
+
settledAt: now,
|
|
104
|
+
receiptExpiresAt: new Date(Date.now() + 30 * 86_400_000).toISOString(),
|
|
105
|
+
}));
|
|
106
|
+
});
|
|
107
|
+
/** Marks an owned run interrupted using its expected generation and fencing claim.
|
|
108
|
+
* @param resolved - Authorized agent descriptor, provider and durable request scope.
|
|
109
|
+
* @param receipt - Durable accepted-run receipt identifying the thread and run.
|
|
110
|
+
* @param claim - Current fenced execution claim required by the provider.
|
|
111
|
+
* @param expectedOwner - Expected generation and protocol owner used to fence interruption.
|
|
112
|
+
* @param reason - Cancellation or interruption reason supplied by the owning boundary.
|
|
113
|
+
* @returns Completion after the provider applies the fenced interruption.
|
|
114
|
+
*/
|
|
115
|
+
export const interruptAgentRunEffect = Effect.fn("AgentJournal.interruptAgentRun")(function* (resolved, receipt, claim, expectedOwner, reason) {
|
|
116
|
+
yield* httpBoundary("agent.interruptAgentRun", () => resolved.provider.interruptOwnedRun({
|
|
117
|
+
...resolved.scope,
|
|
118
|
+
operationId: createOperationId(),
|
|
119
|
+
threadId: receipt.threadId,
|
|
120
|
+
runId: receipt.runId,
|
|
121
|
+
expectedOwner,
|
|
122
|
+
expectedClaimId: claim.claimId,
|
|
123
|
+
expectedFence: claim.fence,
|
|
124
|
+
reason: reason ?? (Date.parse(claim.expiresAt) <= Date.now() ? "claim-expired" : "process-lost"),
|
|
125
|
+
interruptedAt: new Date().toISOString(),
|
|
126
|
+
}));
|
|
127
|
+
});
|
|
128
|
+
/** Lazy agent domain workflows with typed native failures. */
|
|
129
|
+
export class AgentJournal extends Context.Service()("@relkit/runtime-hono/AgentJournal") {
|
|
130
|
+
}
|
|
131
|
+
/** Live operations; tests can replace the same contract. */
|
|
132
|
+
export const AgentJournalLive = Layer.succeed(AgentJournal, {
|
|
133
|
+
appendAgentMessage: (...args) => observeHttp("agent.appendAgentMessage", appendAgentMessageEffect(...args)),
|
|
134
|
+
appendBrowserMessage: (...args) => observeHttp("agent.appendBrowserMessage", appendBrowserMessageEffect(...args)),
|
|
135
|
+
completeAgentRun: (...args) => observeHttp("agent.completeAgentRun", completeAgentRunEffect(...args)),
|
|
136
|
+
interruptAgentRun: (...args) => observeHttp("agent.interruptAgentRun", interruptAgentRunEffect(...args)),
|
|
137
|
+
});
|
|
138
|
+
//# sourceMappingURL=agent-journal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-journal.js","sourceRoot":"","sources":["../src/agent-journal.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Context, Layer, Stream } from "effect";
|
|
2
|
+
import { HttpBoundaryError } from "./http-effect.js";
|
|
3
|
+
import { type AgentInput } from "./agent-rpc-support.js";
|
|
4
|
+
import type { RpcContext } from "./rpc.js";
|
|
5
|
+
import type { RouteMaterializationOptions } from "./materialize-routes.js";
|
|
6
|
+
import type { AgentObservationFrame } from "./agent-observation.types.js";
|
|
7
|
+
/** Builds a journal feed whose waits and iterator scope are owned by its consumer.
|
|
8
|
+
* @param input - Agent identity, thread and required resume checkpoint.
|
|
9
|
+
* @param context - Trusted transport request context.
|
|
10
|
+
* @param options - Active generation and provider configuration.
|
|
11
|
+
* @param signal - Optional transport cancellation signal.
|
|
12
|
+
* @returns A lazy stream with typed native failures and fresh authorization before every frame.
|
|
13
|
+
*/
|
|
14
|
+
declare function observation(input: AgentInput, context: RpcContext, options: RouteMaterializationOptions, signal?: AbortSignal): Stream.Stream<AgentObservationFrame, HttpBoundaryError, never>;
|
|
15
|
+
declare const AgentObservation_base: Context.ServiceClass<AgentObservation, "@relkit/runtime-hono/AgentObservation", {
|
|
16
|
+
readonly observe: typeof observation;
|
|
17
|
+
}>;
|
|
18
|
+
/** Journal observations preserve fresh authorization, bounded pages and cancellable waits. */
|
|
19
|
+
export declare class AgentObservation extends AgentObservation_base {
|
|
20
|
+
}
|
|
21
|
+
/** Live observation implementation; each consumer owns its stream scope. */
|
|
22
|
+
export declare const AgentObservationLive: Layer.Layer<AgentObservation, never, never>;
|
|
23
|
+
/** Opens an authorized agent journal at the native transport edge.
|
|
24
|
+
* @param input - Agent identity, thread and checkpoint.
|
|
25
|
+
* @param context - Trusted transport context.
|
|
26
|
+
* @param options - Generation dependencies.
|
|
27
|
+
* @param signal - Optional transport cancellation.
|
|
28
|
+
* @returns A lazy iterable; returning releases its pending provider wait.
|
|
29
|
+
*/
|
|
30
|
+
export declare function observeAgent(input: AgentInput, context: RpcContext, options: RouteMaterializationOptions, signal?: AbortSignal): AsyncIterable<AgentObservationFrame>;
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=agent-observation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-observation.d.ts","sourceRoot":"","sources":["../src/agent-observation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,OAAO,EAAU,KAAK,EAAU,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGvE,OAAO,EAA8B,iBAAiB,EAAe,MAAM,kBAAkB,CAAC;AAC9F,OAAO,EAAsC,KAAK,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAG7F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAG1E;;;;;;GAMG;AACH,iBAAS,WAAW,CAClB,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,UAAU,EACnB,OAAO,EAAE,2BAA2B,EACpC,MAAM,CAAC,EAAE,WAAW,kEA2FrB;;sBAKqB,OAAO,WAAW;;AAHxC,8FAA8F;AAC9F,qBAAa,gBAAiB,SAAQ,qBAGM;CAAG;AAE/C,4EAA4E;AAC5E,eAAO,MAAM,oBAAoB,6CAE/B,CAAC;AAEH;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,UAAU,EACnB,OAAO,EAAE,2BAA2B,EACpC,MAAM,CAAC,EAAE,WAAW,GACnB,aAAa,CAAC,qBAAqB,CAAC,CAMtC"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { Clock, Context, Effect, Layer, Option, Stream } from "effect";
|
|
2
|
+
import { agentClientEvents } from "@relkit/agents";
|
|
3
|
+
import { REALTIME_RUNTIME_LIMITS } from "@relkit/contracts";
|
|
4
|
+
import { httpBoundary, httpIterable, HttpBoundaryError, observeHttp } from "./http-effect.js";
|
|
5
|
+
import { agentContext, requireAgentThreadId } from "./agent-rpc-support.js";
|
|
6
|
+
import { assertExpectedIdentity } from "./rpc-identity.js";
|
|
7
|
+
import { clientAgentSnapshot } from "./agent-compatibility.js";
|
|
8
|
+
import { observeHttpStream } from "./http-stream-observation.js";
|
|
9
|
+
/** Builds a journal feed whose waits and iterator scope are owned by its consumer.
|
|
10
|
+
* @param input - Agent identity, thread and required resume checkpoint.
|
|
11
|
+
* @param context - Trusted transport request context.
|
|
12
|
+
* @param options - Active generation and provider configuration.
|
|
13
|
+
* @param signal - Optional transport cancellation signal.
|
|
14
|
+
* @returns A lazy stream with typed native failures and fresh authorization before every frame.
|
|
15
|
+
*/
|
|
16
|
+
function observation(input, context, options, signal) {
|
|
17
|
+
return Stream.unwrap(Effect.gen(function* () {
|
|
18
|
+
const threadId = requireAgentThreadId(input.threadId);
|
|
19
|
+
if (input.after === undefined)
|
|
20
|
+
return yield* Effect.fail(new HttpBoundaryError({
|
|
21
|
+
operation: "agent.observe",
|
|
22
|
+
cause: new TypeError("checkpoint is required."),
|
|
23
|
+
}));
|
|
24
|
+
/** Refreshes the principal and checks observation authorization before a page or frame.
|
|
25
|
+
* @returns The currently authorized agent provider scope.
|
|
26
|
+
*/
|
|
27
|
+
const authorize = Effect.fn("AgentObservation.authorize")(function* () {
|
|
28
|
+
yield* httpBoundary("agent.observe.identity", () => assertExpectedIdentity(context, options.clientIdentity, input.expectedIdentity));
|
|
29
|
+
return yield* httpBoundary("agent.observe.authorize", () => agentContext({ ...input, threadId }, context, options, "observe"));
|
|
30
|
+
});
|
|
31
|
+
const initial = yield* authorize();
|
|
32
|
+
const checkpoint = input.after;
|
|
33
|
+
return Stream.paginate({ after: checkpoint, wait: false }, Effect.fn("AgentObservation.readPage")(function* (state) {
|
|
34
|
+
if (signal?.aborted)
|
|
35
|
+
return [[], Option.none()];
|
|
36
|
+
const resolved = yield* authorize();
|
|
37
|
+
if (state.wait) {
|
|
38
|
+
const now = yield* Clock.currentTimeMillis;
|
|
39
|
+
yield* httpBoundary("agent.observe.wait", (fiberSignal) => resolved.provider.waitForJournal({
|
|
40
|
+
...resolved.scope,
|
|
41
|
+
threadId,
|
|
42
|
+
after: state.after,
|
|
43
|
+
deadlineMs: now + 15_000,
|
|
44
|
+
signal: signal === undefined ? fiberSignal : AbortSignal.any([signal, fiberSignal]),
|
|
45
|
+
}));
|
|
46
|
+
}
|
|
47
|
+
const page = yield* observeHttp("agent.observe.read", httpBoundary("agent.observe.read", () => resolved.provider.readJournal({
|
|
48
|
+
...resolved.scope,
|
|
49
|
+
threadId,
|
|
50
|
+
after: state.after,
|
|
51
|
+
limit: 100,
|
|
52
|
+
maxEncodedBytes: 1024 * 1024,
|
|
53
|
+
})));
|
|
54
|
+
const frames = [];
|
|
55
|
+
if (page.gap !== undefined) {
|
|
56
|
+
const snapshot = clientAgentSnapshot(yield* httpBoundary("agent.observe.snapshot", () => resolved.provider.loadThread({
|
|
57
|
+
...resolved.scope,
|
|
58
|
+
threadId,
|
|
59
|
+
maxEncodedBytes: REALTIME_RUNTIME_LIMITS.initialSnapshotBytes,
|
|
60
|
+
})));
|
|
61
|
+
frames.push({ kind: "gap", reason: page.gap, snapshot });
|
|
62
|
+
return [frames, Option.some({ after: snapshot.checkpoint, wait: false })];
|
|
63
|
+
}
|
|
64
|
+
for (const record of page.records)
|
|
65
|
+
for (const event of agentClientEvents(record))
|
|
66
|
+
frames.push({ kind: "event", event });
|
|
67
|
+
if (page.records.some((record) => ["approval", "control", "terminal", "interruption"].includes(record.kind))) {
|
|
68
|
+
const snapshot = clientAgentSnapshot(yield* httpBoundary("agent.observe.snapshot", () => resolved.provider.loadThread({
|
|
69
|
+
...resolved.scope,
|
|
70
|
+
threadId,
|
|
71
|
+
maxEncodedBytes: REALTIME_RUNTIME_LIMITS.initialSnapshotBytes,
|
|
72
|
+
})));
|
|
73
|
+
frames.push({ kind: "snapshot", snapshot });
|
|
74
|
+
}
|
|
75
|
+
return [frames, Option.some({ after: page.checkpoint, wait: !page.hasMore })];
|
|
76
|
+
})).pipe(Stream.mapEffect((frame) => authorize().pipe(Effect.as(frame))));
|
|
77
|
+
}));
|
|
78
|
+
}
|
|
79
|
+
/** Journal observations preserve fresh authorization, bounded pages and cancellable waits. */
|
|
80
|
+
export class AgentObservation extends Context.Service()("@relkit/runtime-hono/AgentObservation") {
|
|
81
|
+
}
|
|
82
|
+
/** Live observation implementation; each consumer owns its stream scope. */
|
|
83
|
+
export const AgentObservationLive = Layer.succeed(AgentObservation, {
|
|
84
|
+
observe: (...args) => observeHttpStream("agent.observe", observation(...args)),
|
|
85
|
+
});
|
|
86
|
+
/** Opens an authorized agent journal at the native transport edge.
|
|
87
|
+
* @param input - Agent identity, thread and checkpoint.
|
|
88
|
+
* @param context - Trusted transport context.
|
|
89
|
+
* @param options - Generation dependencies.
|
|
90
|
+
* @param signal - Optional transport cancellation.
|
|
91
|
+
* @returns A lazy iterable; returning releases its pending provider wait.
|
|
92
|
+
*/
|
|
93
|
+
export function observeAgent(input, context, options, signal) {
|
|
94
|
+
return httpIterable(Stream.unwrap(Effect.map(AgentObservation, (service) => service.observe(input, context, options, signal))).pipe(Stream.provide(AgentObservationLive)));
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=agent-observation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-observation.js","sourceRoot":"","sources":["../src/agent-observation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { agentClientEvents } from "@relkit/agents";
|
|
2
|
+
import type { agentContext } from "./agent-rpc-support.js";
|
|
3
|
+
import type { clientAgentSnapshot } from "./agent-compatibility.js";
|
|
4
|
+
/** Public observation frames after compatibility projection and fresh authorization. */
|
|
5
|
+
export type AgentObservationFrame = {
|
|
6
|
+
readonly kind: "event";
|
|
7
|
+
readonly event: ReturnType<typeof agentClientEvents>[number];
|
|
8
|
+
} | {
|
|
9
|
+
readonly kind: "snapshot";
|
|
10
|
+
readonly snapshot: ReturnType<typeof clientAgentSnapshot>;
|
|
11
|
+
} | {
|
|
12
|
+
readonly kind: "gap";
|
|
13
|
+
readonly reason: NonNullable<Awaited<ReturnType<Awaited<ReturnType<typeof agentContext>>["provider"]["readJournal"]>>["gap"]>;
|
|
14
|
+
readonly snapshot: ReturnType<typeof clientAgentSnapshot>;
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=agent-observation.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-observation.types.d.ts","sourceRoot":"","sources":["../src/agent-observation.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,wFAAwF;AACxF,MAAM,MAAM,qBAAqB,GAC7B;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAA;CAAE,GACxF;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAA;CAAE,GACxF;IACE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAC1B,OAAO,CACL,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,aAAa,CAAC,CAAC,CAChF,CAAC,KAAK,CAAC,CACT,CAAC;IACF,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC;CAC3D,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-observation.types.js","sourceRoot":"","sources":["../src/agent-observation.types.ts"],"names":[],"mappings":""}
|
|
@@ -1,7 +1,42 @@
|
|
|
1
|
+
import { Context, Effect, Layer } from "effect";
|
|
2
|
+
import { HttpBoundaryError } from "./http-effect.js";
|
|
3
|
+
import type { ResolvedAgent } from "./agent-progress-sink.types.js";
|
|
1
4
|
import type { ProgressSink } from "@relkit/invocation";
|
|
2
5
|
import type { ActiveAgentExecution } from "./agent-active-execution.js";
|
|
3
|
-
|
|
4
|
-
|
|
6
|
+
/** Allocates independent journal state; native effects remain lazy.
|
|
7
|
+
* @param resolved - Authorized agent descriptor, provider and durable request scope.
|
|
8
|
+
* @param active - Mutable state owned by the accepted run and its continuation chain.
|
|
9
|
+
* @param tool - Declared tool or tool-call identity used for policy and attribution.
|
|
10
|
+
* @returns A lazy Effect allocating independent progress state and its emission operation.
|
|
11
|
+
*/
|
|
12
|
+
export declare function makeAgentProgress(resolved: ResolvedAgent, active: ActiveAgentExecution, tool?: {
|
|
13
|
+
readonly toolCallId: string;
|
|
14
|
+
readonly toolId: string;
|
|
15
|
+
}): Effect.Effect<Readonly<{
|
|
16
|
+
emit: (value: unknown, signal: AbortSignal) => Effect.Effect<undefined, HttpBoundaryError, never>;
|
|
17
|
+
}>, never, never>;
|
|
18
|
+
declare const AgentProgress_base: Context.ServiceClass<AgentProgress, "@relkit/runtime-hono/AgentProgress", Readonly<{
|
|
19
|
+
emit: (value: unknown, signal: AbortSignal) => Effect.Effect<undefined, HttpBoundaryError, never>;
|
|
20
|
+
}>>;
|
|
21
|
+
/** Owns per-run journal emission and progress state. */
|
|
22
|
+
export declare class AgentProgress extends AgentProgress_base {
|
|
23
|
+
}
|
|
24
|
+
/** Allocates one stateful journal service per supplied layer.
|
|
25
|
+
* @param resolved - Authorized agent descriptor, provider and durable request scope.
|
|
26
|
+
* @param active - Mutable state owned by the accepted run and its continuation chain.
|
|
27
|
+
* @param tool - Declared tool or tool-call identity used for policy and attribution.
|
|
28
|
+
* @returns A layer allocating one independent progress service and its emission state.
|
|
29
|
+
*/
|
|
30
|
+
export declare function AgentProgressLive(resolved: ResolvedAgent, active: ActiveAgentExecution, tool?: {
|
|
31
|
+
readonly toolCallId: string;
|
|
32
|
+
readonly toolId: string;
|
|
33
|
+
}): Layer.Layer<AgentProgress, never, never>;
|
|
34
|
+
/** Builds the native journal compatibility adapter over one owned service instance.
|
|
35
|
+
* @param resolved - Authorized agent descriptor, provider and durable request scope.
|
|
36
|
+
* @param active - Mutable state owned by the accepted run and its continuation chain.
|
|
37
|
+
* @param tool - Declared tool or tool-call identity used for policy and attribution.
|
|
38
|
+
* @returns A native progress sink backed by one owned progress service.
|
|
39
|
+
*/
|
|
5
40
|
export declare function createAgentProgressSink(resolved: ResolvedAgent, active: ActiveAgentExecution, tool?: {
|
|
6
41
|
readonly toolCallId: string;
|
|
7
42
|
readonly toolId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-progress-sink.d.ts","sourceRoot":"","sources":["../src/agent-progress-sink.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-progress-sink.d.ts","sourceRoot":"","sources":["../src/agent-progress-sink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAgB,iBAAiB,EAAwB,MAAM,kBAAkB,CAAC;AACzF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAGxE;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,aAAa,EACvB,MAAM,EAAE,oBAAoB,EAC5B,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE;;kBA2DhE;;;;AAED,wDAAwD;AACxD,qBAAa,aAAc,SAAQ,kBAGM;CAAG;AAE5C;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,aAAa,EACvB,MAAM,EAAE,oBAAoB,EAC5B,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,4CAGhE;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,aAAa,EACvB,MAAM,EAAE,oBAAoB,EAC5B,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC9D,YAAY,CAMd"}
|
|
@@ -1,52 +1,87 @@
|
|
|
1
|
+
import { Context, Effect, Layer } from "effect";
|
|
2
|
+
import { httpBoundary, HttpBoundaryError, observeHttp, runHttp } from "./http-effect.js";
|
|
1
3
|
import { createOperationId } from "@relkit/realtime";
|
|
2
4
|
import { agentLimits, digest, encodedBytes } from "./agent-rpc-support.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
{
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
...(tool ?? {}),
|
|
27
|
-
value,
|
|
28
|
-
},
|
|
29
|
-
],
|
|
30
|
-
createdAt,
|
|
31
|
-
};
|
|
32
|
-
await resolved.provider.appendJournal({
|
|
33
|
-
...resolved.scope,
|
|
34
|
-
threadId: active.receipt.threadId,
|
|
35
|
-
runId: active.receipt.runId,
|
|
36
|
-
claim: active.claim,
|
|
37
|
-
operationId: createOperationId(),
|
|
38
|
-
semanticDigest: digest(message),
|
|
39
|
-
record: {
|
|
40
|
-
recordId: crypto.randomUUID(),
|
|
5
|
+
/** Allocates independent journal state; native effects remain lazy.
|
|
6
|
+
* @param resolved - Authorized agent descriptor, provider and durable request scope.
|
|
7
|
+
* @param active - Mutable state owned by the accepted run and its continuation chain.
|
|
8
|
+
* @param tool - Declared tool or tool-call identity used for policy and attribution.
|
|
9
|
+
* @returns A lazy Effect allocating independent progress state and its emission operation.
|
|
10
|
+
*/
|
|
11
|
+
export function makeAgentProgress(resolved, active, tool) {
|
|
12
|
+
return Effect.sync(() => {
|
|
13
|
+
let progressRunId = active.receipt.runId;
|
|
14
|
+
let createdAt = new Date().toISOString();
|
|
15
|
+
return Object.freeze({
|
|
16
|
+
emit: Effect.fn("AgentProgress.emit")(function* (value, signal) {
|
|
17
|
+
if (signal.aborted)
|
|
18
|
+
return yield* Effect.fail(new HttpBoundaryError({ operation: "agent.content.emit", cause: signal.reason }));
|
|
19
|
+
if (progressRunId !== active.receipt.runId) {
|
|
20
|
+
progressRunId = active.receipt.runId;
|
|
21
|
+
createdAt = new Date().toISOString();
|
|
22
|
+
}
|
|
23
|
+
const messageId = tool === undefined
|
|
24
|
+
? `${active.receipt.runId}:progress`
|
|
25
|
+
: `${active.receipt.runId}:tool:${tool.toolCallId}:progress`;
|
|
26
|
+
const message = {
|
|
27
|
+
messageId,
|
|
41
28
|
runId: active.receipt.runId,
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
29
|
+
role: "tool",
|
|
30
|
+
parts: [
|
|
31
|
+
{
|
|
32
|
+
partId: `${messageId}:latest`,
|
|
33
|
+
kind: "progress",
|
|
34
|
+
scope: tool === undefined ? "run" : "tool",
|
|
35
|
+
...(tool ?? {}),
|
|
36
|
+
value,
|
|
37
|
+
},
|
|
38
|
+
],
|
|
39
|
+
createdAt,
|
|
40
|
+
};
|
|
41
|
+
yield* httpBoundary("agent.content.emit", () => resolved.provider.appendJournal({
|
|
42
|
+
...resolved.scope,
|
|
43
|
+
threadId: active.receipt.threadId,
|
|
44
|
+
runId: active.receipt.runId,
|
|
45
|
+
claim: active.claim,
|
|
46
|
+
operationId: createOperationId(),
|
|
47
|
+
semanticDigest: digest(message),
|
|
48
|
+
record: {
|
|
49
|
+
recordId: crypto.randomUUID(),
|
|
50
|
+
runId: active.receipt.runId,
|
|
51
|
+
kind: "message",
|
|
52
|
+
publicValue: message,
|
|
53
|
+
encodedBytes: encodedBytes(message),
|
|
54
|
+
createdAt: new Date().toISOString(),
|
|
55
|
+
},
|
|
56
|
+
limits: agentLimits,
|
|
57
|
+
}));
|
|
58
|
+
}, (effect) => observeHttp("agent.content.emit", effect)),
|
|
59
|
+
});
|
|
50
60
|
});
|
|
51
61
|
}
|
|
62
|
+
/** Owns per-run journal emission and progress state. */
|
|
63
|
+
export class AgentProgress extends Context.Service()("@relkit/runtime-hono/AgentProgress") {
|
|
64
|
+
}
|
|
65
|
+
/** Allocates one stateful journal service per supplied layer.
|
|
66
|
+
* @param resolved - Authorized agent descriptor, provider and durable request scope.
|
|
67
|
+
* @param active - Mutable state owned by the accepted run and its continuation chain.
|
|
68
|
+
* @param tool - Declared tool or tool-call identity used for policy and attribution.
|
|
69
|
+
* @returns A layer allocating one independent progress service and its emission state.
|
|
70
|
+
*/
|
|
71
|
+
export function AgentProgressLive(resolved, active, tool) {
|
|
72
|
+
return Layer.effect(AgentProgress, makeAgentProgress(resolved, active, tool));
|
|
73
|
+
}
|
|
74
|
+
/** Builds the native journal compatibility adapter over one owned service instance.
|
|
75
|
+
* @param resolved - Authorized agent descriptor, provider and durable request scope.
|
|
76
|
+
* @param active - Mutable state owned by the accepted run and its continuation chain.
|
|
77
|
+
* @param tool - Declared tool or tool-call identity used for policy and attribution.
|
|
78
|
+
* @returns A native progress sink backed by one owned progress service.
|
|
79
|
+
*/
|
|
80
|
+
export function createAgentProgressSink(resolved, active, tool) {
|
|
81
|
+
const service = Effect.runSync(makeAgentProgress(resolved, active, tool));
|
|
82
|
+
return {
|
|
83
|
+
...service,
|
|
84
|
+
emit: (value, signal) => runHttp(service.emit(value, signal), signal),
|
|
85
|
+
};
|
|
86
|
+
}
|
|
52
87
|
//# sourceMappingURL=agent-progress-sink.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-progress-sink.js","sourceRoot":"","sources":["../src/agent-progress-sink.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agent-progress-sink.js","sourceRoot":"","sources":["../src/agent-progress-sink.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-progress-sink.types.d.ts","sourceRoot":"","sources":["../src/agent-progress-sink.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAE3D,iFAAiF;AACjF,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-progress-sink.types.js","sourceRoot":"","sources":["../src/agent-progress-sink.types.ts"],"names":[],"mappings":""}
|
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
import type { AgentProtocolFrame } from "./agent-protocol-stream.js";
|
|
2
|
+
/** Translate one native agent frame into AG-UI protocol events.
|
|
3
|
+
* @param frame - Native frame to validate or encode.
|
|
4
|
+
* @returns Ordered AG-UI events for state, text, tools and terminal outcomes.
|
|
5
|
+
*/
|
|
2
6
|
export declare function agUiFrames(frame: AgentProtocolFrame): Iterable<unknown>;
|
|
3
7
|
//# sourceMappingURL=agent-protocol-encoding.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-protocol-encoding.d.ts","sourceRoot":"","sources":["../src/agent-protocol-encoding.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agent-protocol-encoding.d.ts","sourceRoot":"","sources":["../src/agent-protocol-encoding.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE;;;GAGG;AACH,wBAAiB,UAAU,CAAC,KAAK,EAAE,kBAAkB,GAAG,QAAQ,CAAC,OAAO,CAAC,CAgCxE"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import { EventType } from "@ag-ui/core";
|
|
2
2
|
import { AGENT_STREAM_VERSION } from "@relkit/contracts";
|
|
3
|
+
/** Translate one native agent frame into AG-UI protocol events.
|
|
4
|
+
* @param frame - Native frame to validate or encode.
|
|
5
|
+
* @returns Ordered AG-UI events for state, text, tools and terminal outcomes.
|
|
6
|
+
*/
|
|
3
7
|
export function* agUiFrames(frame) {
|
|
4
8
|
if (frame.kind === "state") {
|
|
5
9
|
yield { type: EventType.STATE_SNAPSHOT, snapshot: frame.value };
|
|
@@ -42,6 +46,10 @@ export function* agUiFrames(frame) {
|
|
|
42
46
|
yield { type: EventType.RUN_ERROR, message: "Agent execution failed.", code: frame.status };
|
|
43
47
|
}
|
|
44
48
|
}
|
|
49
|
+
/** Translate tool input and result phases into AG-UI tool events.
|
|
50
|
+
* @param frame - Native frame to validate or encode.
|
|
51
|
+
* @returns Tool start, argument, end, result or custom events.
|
|
52
|
+
*/
|
|
45
53
|
function* agUiToolFrames(frame) {
|
|
46
54
|
if (["started", "input-streaming", "input-ready"].includes(frame.state)) {
|
|
47
55
|
if (frame.inputStarted)
|
|
@@ -72,6 +80,10 @@ function* agUiToolFrames(frame) {
|
|
|
72
80
|
yield { type: EventType.CUSTOM, name: "relkit.tool", value: frame };
|
|
73
81
|
}
|
|
74
82
|
}
|
|
83
|
+
/** Encode execution events with native journal metadata for replay correlation.
|
|
84
|
+
* @param frame - Native frame to validate or encode.
|
|
85
|
+
* @returns An AG-UI state snapshot or custom event with RELKIT metadata.
|
|
86
|
+
*/
|
|
75
87
|
function executionEvent(frame) {
|
|
76
88
|
const value = frame.value;
|
|
77
89
|
if (!isExecutionEvent(value)) {
|
|
@@ -104,11 +116,19 @@ function executionEvent(frame) {
|
|
|
104
116
|
metadata,
|
|
105
117
|
};
|
|
106
118
|
}
|
|
119
|
+
/** Read a nonempty custom event name or use the RELKIT fallback.
|
|
120
|
+
* @param value - Value to validate or project.
|
|
121
|
+
* @returns The custom name, defaulting to relkit.custom.
|
|
122
|
+
*/
|
|
107
123
|
function customName(value) {
|
|
108
124
|
return isRecord(value) && typeof value.name === "string" && value.name !== ""
|
|
109
125
|
? value.name
|
|
110
126
|
: "relkit.custom";
|
|
111
127
|
}
|
|
128
|
+
/** Validate the metadata needed to encode native execution events.
|
|
129
|
+
* @param value - Value to validate or project.
|
|
130
|
+
* @returns Whether sequence, scope, kind and timestamp have supported shapes.
|
|
131
|
+
*/
|
|
112
132
|
function isExecutionEvent(value) {
|
|
113
133
|
return (isRecord(value) &&
|
|
114
134
|
typeof value.nativeSequence === "number" &&
|
|
@@ -117,6 +137,10 @@ function isExecutionEvent(value) {
|
|
|
117
137
|
value.scope.every((entry) => typeof entry === "string") &&
|
|
118
138
|
typeof value.occurredAt === "string");
|
|
119
139
|
}
|
|
140
|
+
/** Check whether a value is a non-null object suitable for field inspection.
|
|
141
|
+
* @param value - Value to validate or project.
|
|
142
|
+
* @returns Whether object fields can be inspected.
|
|
143
|
+
*/
|
|
120
144
|
function isRecord(value) {
|
|
121
145
|
return value !== null && typeof value === "object" && !Array.isArray(value);
|
|
122
146
|
}
|