liminal 0.5.1 → 0.5.3
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/Agent.ts +28 -0
- package/CHANGELOG.md +16 -0
- package/Fiber.ts +117 -0
- package/Globals.ts +10 -0
- package/Handler.ts +0 -0
- package/L/L.ts +13 -0
- package/L/_infer.ts +35 -0
- package/L/_message.ts +18 -0
- package/L/all.ts +11 -0
- package/L/assistant.ts +34 -0
- package/L/branch.ts +45 -0
- package/L/emit.ts +11 -0
- package/L/fork.ts +18 -0
- package/L/join.ts +9 -0
- package/L/model.ts +11 -0
- package/L/namespace.ts +11 -0
- package/L/rune.ts +19 -0
- package/L/self.ts +13 -0
- package/L/state.ts +20 -0
- package/L/system.ts +13 -0
- package/L/user.ts +13 -0
- package/LEvent.ts +35 -0
- package/Message.ts +11 -90
- package/Model.ts +10 -17
- package/Rune.ts +17 -0
- package/Runic.ts +22 -0
- package/cli/main.ts +1 -19
- package/dist/Agent.d.ts +12 -0
- package/dist/Agent.js +16 -0
- package/dist/Agent.js.map +1 -0
- package/dist/Fiber.d.ts +38 -0
- package/dist/Fiber.js +79 -0
- package/dist/Fiber.js.map +1 -0
- package/dist/Globals.d.ts +7 -0
- package/dist/Globals.js +2 -0
- package/dist/Globals.js.map +1 -0
- package/dist/Handler.js +2 -0
- package/dist/Handler.js.map +1 -0
- package/dist/L/L.d.ts +13 -0
- package/dist/L/L.js +14 -0
- package/dist/L/L.js.map +1 -0
- package/dist/L/_infer.d.ts +4 -0
- package/dist/L/_infer.js +29 -0
- package/dist/L/_infer.js.map +1 -0
- package/dist/L/_message.d.ts +6 -0
- package/dist/L/_message.js +14 -0
- package/dist/L/_message.js.map +1 -0
- package/dist/L/all.d.ts +7 -0
- package/dist/L/all.js +5 -0
- package/dist/L/all.js.map +1 -0
- package/dist/L/assistant.d.ts +7 -0
- package/dist/L/assistant.js +23 -0
- package/dist/L/assistant.js.map +1 -0
- package/dist/L/branch.d.ts +11 -0
- package/dist/L/branch.js +32 -0
- package/dist/L/branch.js.map +1 -0
- package/dist/L/emit.d.ts +5 -0
- package/dist/L/emit.js +7 -0
- package/dist/L/emit.js.map +1 -0
- package/dist/L/fork.d.ts +7 -0
- package/dist/L/fork.js +11 -0
- package/dist/L/fork.js.map +1 -0
- package/dist/L/join.d.ts +5 -0
- package/dist/L/join.js +5 -0
- package/dist/L/join.js.map +1 -0
- package/dist/L/model.d.ts +5 -0
- package/dist/L/model.js +7 -0
- package/dist/L/model.js.map +1 -0
- package/dist/L/namespace.js +12 -0
- package/dist/L/namespace.js.map +1 -0
- package/dist/L/rune.d.ts +6 -0
- package/dist/L/rune.js +11 -0
- package/dist/L/rune.js.map +1 -0
- package/dist/L/self.d.ts +6 -0
- package/dist/L/self.js +7 -0
- package/dist/L/self.js.map +1 -0
- package/dist/L/state.d.ts +7 -0
- package/dist/L/state.js +14 -0
- package/dist/L/state.js.map +1 -0
- package/dist/L/system.d.ts +6 -0
- package/dist/L/system.js +7 -0
- package/dist/L/system.js.map +1 -0
- package/dist/L/user.d.ts +6 -0
- package/dist/L/user.js +7 -0
- package/dist/L/user.js.map +1 -0
- package/dist/LEvent.d.ts +28 -0
- package/dist/LEvent.js +5 -0
- package/dist/LEvent.js.map +1 -0
- package/dist/Message.d.ts +12 -81
- package/dist/Model.d.ts +4 -15
- package/dist/Model.js +6 -0
- package/dist/Model.js.map +1 -1
- package/dist/Rune.d.ts +11 -0
- package/dist/Rune.js +5 -0
- package/dist/Rune.js.map +1 -0
- package/dist/Runic.d.ts +9 -0
- package/dist/Runic.js +18 -0
- package/dist/Runic.js.map +1 -0
- package/dist/cli/main.d.ts +0 -1
- package/dist/cli/main.js +2 -14
- package/dist/cli/main.js.map +1 -1
- package/dist/index.d.ts +10 -40
- package/dist/index.js +10 -40
- package/dist/index.js.map +1 -1
- package/dist/state/Counter.d.ts +6 -0
- package/dist/state/Counter.js +13 -0
- package/dist/state/Counter.js.map +1 -0
- package/dist/state/DefaultStateMap.d.ts +4 -0
- package/dist/state/DefaultStateMap.js +14 -0
- package/dist/state/DefaultStateMap.js.map +1 -0
- package/dist/state/MessageRegistry.d.ts +7 -0
- package/dist/state/MessageRegistry.js +14 -0
- package/dist/state/MessageRegistry.js.map +1 -0
- package/dist/state/ModelConfig.d.ts +49 -0
- package/dist/state/ModelConfig.js +18 -0
- package/dist/state/ModelConfig.js.map +1 -0
- package/dist/state/ModelRegistry.d.ts +15 -0
- package/dist/state/ModelRegistry.js +43 -0
- package/dist/state/ModelRegistry.js.map +1 -0
- package/dist/state/StateMap.d.ts +7 -0
- package/dist/state/StateMap.js +10 -0
- package/dist/state/StateMap.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/index.ts +10 -40
- package/package.json +6 -9
- package/state/Counter.ts +11 -0
- package/state/DefaultStateMap.ts +14 -0
- package/state/MessageRegistry.ts +17 -0
- package/state/ModelConfig.ts +49 -0
- package/state/ModelRegistry.ts +55 -0
- package/state/StateMap.ts +15 -0
- package/tsconfig.json +5 -1
- package/Action.ts +0 -29
- package/Actor.ts +0 -20
- package/Exec.ts +0 -63
- package/L.ts +0 -27
- package/LiminalAssertionError.ts +0 -3
- package/LiminalConfig.ts +0 -7
- package/PathLike.ts +0 -19
- package/Scope.ts +0 -133
- package/Spec.ts +0 -29
- package/Tool.ts +0 -58
- package/_.ts +0 -11
- package/actions/abort.ts +0 -23
- package/actions/actions_common/updateModels.ts +0 -23
- package/actions/actions_derived/__snapshots__/declareModel.test.ts.snap +0 -89
- package/actions/actions_derived/clear.ts +0 -6
- package/actions/actions_derived/declareModel.test.ts +0 -33
- package/actions/actions_derived/declareModel.ts +0 -9
- package/actions/actions_derived/declareModel.type-test.ts +0 -70
- package/actions/actions_derived/getMessages.ts +0 -9
- package/actions/actions_derived/messages.test.ts +0 -88
- package/actions/actions_derived/messages.ts +0 -19
- package/actions/actions_derived/metatype.ts +0 -9
- package/actions/appendMessage.ts +0 -30
- package/actions/await.ts +0 -13
- package/actions/branch.ts +0 -108
- package/actions/catch.ts +0 -42
- package/actions/declareArg.ts +0 -14
- package/actions/disableTool.ts +0 -26
- package/actions/embed.ts +0 -28
- package/actions/emit.ts +0 -21
- package/actions/enableTool.ts +0 -75
- package/actions/enableTool.type-test.ts +0 -118
- package/actions/getScope.ts +0 -11
- package/actions/getSignal.ts +0 -10
- package/actions/getTools.ts +0 -11
- package/actions/infer.ts +0 -37
- package/actions/pushModel.ts +0 -32
- package/actions/removeMessage.ts +0 -22
- package/actions/removeModel.ts +0 -31
- package/actions/setMessages.ts +0 -66
- package/actions/throw.ts +0 -18
- package/cli/WriteHandler.ts +0 -35
- package/cli/cli_common.ts +0 -3
- package/cli/runExec.ts +0 -68
- package/dist/Action.d.ts +0 -15
- package/dist/Action.js +0 -13
- package/dist/Action.js.map +0 -1
- package/dist/Actor.d.ts +0 -14
- package/dist/Actor.js +0 -2
- package/dist/Actor.js.map +0 -1
- package/dist/Exec.d.ts +0 -27
- package/dist/Exec.js +0 -22
- package/dist/Exec.js.map +0 -1
- package/dist/L.d.ts +0 -26
- package/dist/L.js +0 -27
- package/dist/L.js.map +0 -1
- package/dist/LiminalAssertionError.d.ts +0 -3
- package/dist/LiminalAssertionError.js +0 -4
- package/dist/LiminalAssertionError.js.map +0 -1
- package/dist/LiminalConfig.d.ts +0 -6
- package/dist/LiminalConfig.js +0 -2
- package/dist/LiminalConfig.js.map +0 -1
- package/dist/PathLike.d.ts +0 -14
- package/dist/PathLike.js +0 -2
- package/dist/PathLike.js.map +0 -1
- package/dist/Scope.d.ts +0 -36
- package/dist/Scope.js +0 -90
- package/dist/Scope.js.map +0 -1
- package/dist/Spec.d.ts +0 -20
- package/dist/Spec.js +0 -2
- package/dist/Spec.js.map +0 -1
- package/dist/Tool.d.ts +0 -21
- package/dist/Tool.js +0 -32
- package/dist/Tool.js.map +0 -1
- package/dist/_.d.ts +0 -5
- package/dist/_.js +0 -7
- package/dist/_.js.map +0 -1
- package/dist/actions/abort.d.ts +0 -9
- package/dist/actions/abort.js +0 -15
- package/dist/actions/abort.js.map +0 -1
- package/dist/actions/actions_common/updateModels.d.ts +0 -3
- package/dist/actions/actions_common/updateModels.js +0 -17
- package/dist/actions/actions_common/updateModels.js.map +0 -1
- package/dist/actions/actions_derived/clear.d.ts +0 -8
- package/dist/actions/actions_derived/clear.js +0 -5
- package/dist/actions/actions_derived/clear.js.map +0 -1
- package/dist/actions/actions_derived/declareModel.d.ts +0 -5
- package/dist/actions/actions_derived/declareModel.js +0 -7
- package/dist/actions/actions_derived/declareModel.js.map +0 -1
- package/dist/actions/actions_derived/declareModel.test.js +0 -32
- package/dist/actions/actions_derived/declareModel.test.js.map +0 -1
- package/dist/actions/actions_derived/declareModel.type-test.js +0 -66
- package/dist/actions/actions_derived/declareModel.type-test.js.map +0 -1
- package/dist/actions/actions_derived/getMessages.d.ts +0 -3
- package/dist/actions/actions_derived/getMessages.js +0 -8
- package/dist/actions/actions_derived/getMessages.js.map +0 -1
- package/dist/actions/actions_derived/messages.d.ts +0 -6
- package/dist/actions/actions_derived/messages.js +0 -15
- package/dist/actions/actions_derived/messages.js.map +0 -1
- package/dist/actions/actions_derived/messages.test.d.ts +0 -1
- package/dist/actions/actions_derived/messages.test.js +0 -72
- package/dist/actions/actions_derived/messages.test.js.map +0 -1
- package/dist/actions/actions_derived/metatype.d.ts +0 -9
- package/dist/actions/actions_derived/metatype.js +0 -7
- package/dist/actions/actions_derived/metatype.js.map +0 -1
- package/dist/actions/appendMessage.d.ts +0 -10
- package/dist/actions/appendMessage.js +0 -20
- package/dist/actions/appendMessage.js.map +0 -1
- package/dist/actions/await.d.ts +0 -5
- package/dist/actions/await.js +0 -10
- package/dist/actions/await.js.map +0 -1
- package/dist/actions/branch.d.ts +0 -35
- package/dist/actions/branch.js +0 -40
- package/dist/actions/branch.js.map +0 -1
- package/dist/actions/catch.d.ts +0 -10
- package/dist/actions/catch.js +0 -27
- package/dist/actions/catch.js.map +0 -1
- package/dist/actions/declareArg.d.ts +0 -8
- package/dist/actions/declareArg.js +0 -10
- package/dist/actions/declareArg.js.map +0 -1
- package/dist/actions/disableTool.d.ts +0 -10
- package/dist/actions/disableTool.js +0 -17
- package/dist/actions/disableTool.js.map +0 -1
- package/dist/actions/embed.d.ts +0 -9
- package/dist/actions/embed.js +0 -23
- package/dist/actions/embed.js.map +0 -1
- package/dist/actions/emit.d.ts +0 -9
- package/dist/actions/emit.js +0 -14
- package/dist/actions/emit.js.map +0 -1
- package/dist/actions/enableTool.d.ts +0 -20
- package/dist/actions/enableTool.js +0 -26
- package/dist/actions/enableTool.js.map +0 -1
- package/dist/actions/enableTool.type-test.d.ts +0 -1
- package/dist/actions/enableTool.type-test.js +0 -30
- package/dist/actions/enableTool.type-test.js.map +0 -1
- package/dist/actions/getScope.d.ts +0 -5
- package/dist/actions/getScope.js +0 -8
- package/dist/actions/getScope.js.map +0 -1
- package/dist/actions/getSignal.d.ts +0 -4
- package/dist/actions/getSignal.js +0 -8
- package/dist/actions/getSignal.js.map +0 -1
- package/dist/actions/getTools.d.ts +0 -5
- package/dist/actions/getTools.js +0 -8
- package/dist/actions/getTools.js.map +0 -1
- package/dist/actions/infer.d.ts +0 -13
- package/dist/actions/infer.js +0 -21
- package/dist/actions/infer.js.map +0 -1
- package/dist/actions/pushModel.d.ts +0 -11
- package/dist/actions/pushModel.js +0 -21
- package/dist/actions/pushModel.js.map +0 -1
- package/dist/actions/removeMessage.d.ts +0 -9
- package/dist/actions/removeMessage.js +0 -17
- package/dist/actions/removeMessage.js.map +0 -1
- package/dist/actions/removeModel.d.ts +0 -10
- package/dist/actions/removeModel.js +0 -20
- package/dist/actions/removeModel.js.map +0 -1
- package/dist/actions/setMessages.d.ts +0 -16
- package/dist/actions/setMessages.js +0 -31
- package/dist/actions/setMessages.js.map +0 -1
- package/dist/actions/throw.d.ts +0 -9
- package/dist/actions/throw.js +0 -13
- package/dist/actions/throw.js.map +0 -1
- package/dist/cli/WriteHandler.d.ts +0 -9
- package/dist/cli/WriteHandler.js +0 -24
- package/dist/cli/WriteHandler.js.map +0 -1
- package/dist/cli/cli_common.d.ts +0 -3
- package/dist/cli/cli_common.js +0 -2
- package/dist/cli/cli_common.js.map +0 -1
- package/dist/cli/runExec.d.ts +0 -2
- package/dist/cli/runExec.js +0 -69
- package/dist/cli/runExec.js.map +0 -1
- package/dist/events/Aborted.d.ts +0 -4
- package/dist/events/Aborted.js +0 -2
- package/dist/events/Aborted.js.map +0 -1
- package/dist/events/Embedded.d.ts +0 -5
- package/dist/events/Embedded.js +0 -2
- package/dist/events/Embedded.js.map +0 -1
- package/dist/events/EmbeddingRequested.d.ts +0 -4
- package/dist/events/EmbeddingRequested.js +0 -2
- package/dist/events/EmbeddingRequested.js.map +0 -1
- package/dist/events/Emitted.d.ts +0 -4
- package/dist/events/Emitted.js +0 -2
- package/dist/events/Emitted.js.map +0 -1
- package/dist/events/EventBase.d.ts +0 -3
- package/dist/events/EventBase.js +0 -2
- package/dist/events/EventBase.js.map +0 -1
- package/dist/events/EventHandler.d.ts +0 -2
- package/dist/events/EventHandler.js +0 -2
- package/dist/events/EventHandler.js.map +0 -1
- package/dist/events/EventResolved.d.ts +0 -19
- package/dist/events/EventResolved.js +0 -2
- package/dist/events/EventResolved.js.map +0 -1
- package/dist/events/Forked.d.ts +0 -3
- package/dist/events/Forked.js +0 -2
- package/dist/events/Forked.js.map +0 -1
- package/dist/events/InferenceRequested.d.ts +0 -3
- package/dist/events/InferenceRequested.js +0 -2
- package/dist/events/InferenceRequested.js.map +0 -1
- package/dist/events/Inferred.d.ts +0 -5
- package/dist/events/Inferred.js +0 -2
- package/dist/events/Inferred.js.map +0 -1
- package/dist/events/LEvent.d.ts +0 -18
- package/dist/events/LEvent.js +0 -2
- package/dist/events/LEvent.js.map +0 -1
- package/dist/events/MessageAppended.d.ts +0 -5
- package/dist/events/MessageAppended.js +0 -2
- package/dist/events/MessageAppended.js.map +0 -1
- package/dist/events/MessageRemoved.d.ts +0 -5
- package/dist/events/MessageRemoved.js +0 -2
- package/dist/events/MessageRemoved.js.map +0 -1
- package/dist/events/MessagesSet.d.ts +0 -5
- package/dist/events/MessagesSet.js +0 -2
- package/dist/events/MessagesSet.js.map +0 -1
- package/dist/events/ModelPushed.d.ts +0 -7
- package/dist/events/ModelPushed.js +0 -2
- package/dist/events/ModelPushed.js.map +0 -1
- package/dist/events/ModelRemoved.d.ts +0 -7
- package/dist/events/ModelRemoved.js +0 -2
- package/dist/events/ModelRemoved.js.map +0 -1
- package/dist/events/Returned.d.ts +0 -4
- package/dist/events/Returned.js +0 -2
- package/dist/events/Returned.js.map +0 -1
- package/dist/events/Threw.d.ts +0 -4
- package/dist/events/Threw.js +0 -2
- package/dist/events/Threw.js.map +0 -1
- package/dist/events/ToolCalled.d.ts +0 -6
- package/dist/events/ToolCalled.js +0 -2
- package/dist/events/ToolCalled.js.map +0 -1
- package/dist/events/ToolDisabled.d.ts +0 -5
- package/dist/events/ToolDisabled.js +0 -2
- package/dist/events/ToolDisabled.js.map +0 -1
- package/dist/events/ToolEnabled.d.ts +0 -7
- package/dist/events/ToolEnabled.js +0 -2
- package/dist/events/ToolEnabled.js.map +0 -1
- package/dist/events/isScopeChildEvent.d.ts +0 -6
- package/dist/events/isScopeChildEvent.js +0 -9
- package/dist/events/isScopeChildEvent.js.map +0 -1
- package/dist/events/isScopeDescendantEvent.d.ts +0 -14
- package/dist/events/isScopeDescendantEvent.js +0 -12
- package/dist/events/isScopeDescendantEvent.js.map +0 -1
- package/dist/testing/ActorAssertions.d.ts +0 -9
- package/dist/testing/ActorAssertions.js +0 -6
- package/dist/testing/ActorAssertions.js.map +0 -1
- package/dist/testing/TestEmbeddingModel.d.ts +0 -6
- package/dist/testing/TestEmbeddingModel.js +0 -10
- package/dist/testing/TestEmbeddingModel.js.map +0 -1
- package/dist/testing/TestLanguageModel.d.ts +0 -8
- package/dist/testing/TestLanguageModel.js +0 -21
- package/dist/testing/TestLanguageModel.js.map +0 -1
- package/dist/testing/index.d.ts +0 -4
- package/dist/testing/index.js +0 -5
- package/dist/testing/index.js.map +0 -1
- package/dist/testing/takeFirstAction.d.ts +0 -3
- package/dist/testing/takeFirstAction.js +0 -6
- package/dist/testing/takeFirstAction.js.map +0 -1
- package/dist/types/AssertDiagnostics.d.ts +0 -18
- package/dist/types/AssertDiagnostics.js +0 -152
- package/dist/types/AssertDiagnostics.js.map +0 -1
- package/dist/types/JSONRootType.d.ts +0 -6
- package/dist/types/JSONRootType.js +0 -2
- package/dist/types/JSONRootType.js.map +0 -1
- package/dist/types/JSONType.d.ts +0 -16
- package/dist/types/JSONType.js +0 -2
- package/dist/types/JSONType.js.map +0 -1
- package/dist/types/JSONTypeBase.d.ts +0 -3
- package/dist/types/JSONTypeBase.js +0 -2
- package/dist/types/JSONTypeBase.js.map +0 -1
- package/dist/types/Metatype/MetatypeDescriptor.d.ts +0 -41
- package/dist/types/Metatype/MetatypeDescriptor.js +0 -38
- package/dist/types/Metatype/MetatypeDescriptor.js.map +0 -1
- package/dist/types/Metatype/fromMetatypeDescriptor.d.ts +0 -6
- package/dist/types/Metatype/fromMetatypeDescriptor.js +0 -43
- package/dist/types/Metatype/fromMetatypeDescriptor.js.map +0 -1
- package/dist/types/Type.d.ts +0 -30
- package/dist/types/Type.js +0 -5
- package/dist/types/Type.js.map +0 -1
- package/dist/types/TypeContext.d.ts +0 -7
- package/dist/types/TypeContext.js +0 -17
- package/dist/types/TypeContext.js.map +0 -1
- package/dist/types/TypeLike.d.ts +0 -23
- package/dist/types/TypeLike.js +0 -23
- package/dist/types/TypeLike.js.map +0 -1
- package/dist/types/TypeVisitor.d.ts +0 -14
- package/dist/types/TypeVisitor.js +0 -12
- package/dist/types/TypeVisitor.js.map +0 -1
- package/dist/types/array.d.ts +0 -10
- package/dist/types/array.js +0 -9
- package/dist/types/array.js.map +0 -1
- package/dist/types/boolean.d.ts +0 -6
- package/dist/types/boolean.js +0 -3
- package/dist/types/boolean.js.map +0 -1
- package/dist/types/const.d.ts +0 -8
- package/dist/types/const.js +0 -7
- package/dist/types/const.js.map +0 -1
- package/dist/types/declareType.d.ts +0 -2
- package/dist/types/declareType.js +0 -57
- package/dist/types/declareType.js.map +0 -1
- package/dist/types/enum.d.ts +0 -8
- package/dist/types/enum.js +0 -7
- package/dist/types/enum.js.map +0 -1
- package/dist/types/factories.d.ts +0 -8
- package/dist/types/factories.js +0 -9
- package/dist/types/factories.js.map +0 -1
- package/dist/types/index.d.ts +0 -2
- package/dist/types/index.js +0 -3
- package/dist/types/index.js.map +0 -1
- package/dist/types/integer.d.ts +0 -6
- package/dist/types/integer.js +0 -3
- package/dist/types/integer.js.map +0 -1
- package/dist/types/intrinsics.d.ts +0 -11
- package/dist/types/intrinsics.js +0 -12
- package/dist/types/intrinsics.js.map +0 -1
- package/dist/types/match.d.ts +0 -3
- package/dist/types/match.js +0 -11
- package/dist/types/match.js.map +0 -1
- package/dist/types/non_factories.d.ts +0 -21
- package/dist/types/non_factories.js +0 -9
- package/dist/types/non_factories.js.map +0 -1
- package/dist/types/null.d.ts +0 -7
- package/dist/types/null.js +0 -4
- package/dist/types/null.js.map +0 -1
- package/dist/types/number.d.ts +0 -6
- package/dist/types/number.js +0 -3
- package/dist/types/number.js.map +0 -1
- package/dist/types/object.d.ts +0 -16
- package/dist/types/object.js +0 -10
- package/dist/types/object.js.map +0 -1
- package/dist/types/ref.d.ts +0 -7
- package/dist/types/ref.js +0 -5
- package/dist/types/ref.js.map +0 -1
- package/dist/types/string.d.ts +0 -6
- package/dist/types/string.js +0 -3
- package/dist/types/string.js.map +0 -1
- package/dist/types/toJSON.d.ts +0 -5
- package/dist/types/toJSON.js +0 -97
- package/dist/types/toJSON.js.map +0 -1
- package/dist/types/type_common.d.ts +0 -10
- package/dist/types/type_common.js +0 -12
- package/dist/types/type_common.js.map +0 -1
- package/dist/types/types_derived/option.d.ts +0 -5
- package/dist/types/types_derived/option.js +0 -6
- package/dist/types/types_derived/option.js.map +0 -1
- package/dist/types/types_derived/taggedUnion.d.ts +0 -19
- package/dist/types/types_derived/taggedUnion.js +0 -8
- package/dist/types/types_derived/taggedUnion.js.map +0 -1
- package/dist/types/types_derived/wrapper.d.ts +0 -8
- package/dist/types/types_derived/wrapper.js +0 -5
- package/dist/types/types_derived/wrapper.js.map +0 -1
- package/dist/types/union.d.ts +0 -9
- package/dist/types/union.js +0 -9
- package/dist/types/union.js.map +0 -1
- package/dist/util/ArrayOfLength.d.ts +0 -1
- package/dist/util/ArrayOfLength.js +0 -2
- package/dist/util/ArrayOfLength.js.map +0 -1
- package/dist/util/DeferredOr.d.ts +0 -1
- package/dist/util/DeferredOr.js +0 -2
- package/dist/util/DeferredOr.js.map +0 -1
- package/dist/util/EnsureNarrow.d.ts +0 -2
- package/dist/util/EnsureNarrow.js +0 -2
- package/dist/util/EnsureNarrow.js.map +0 -1
- package/dist/util/EnsureRecord.d.ts +0 -2
- package/dist/util/EnsureRecord.js +0 -2
- package/dist/util/EnsureRecord.js.map +0 -1
- package/dist/util/Expand.d.ts +0 -3
- package/dist/util/Expand.js +0 -2
- package/dist/util/Expand.js.map +0 -1
- package/dist/util/Falsy.d.ts +0 -1
- package/dist/util/Falsy.js +0 -2
- package/dist/util/Falsy.js.map +0 -1
- package/dist/util/FromEntries.d.ts +0 -3
- package/dist/util/FromEntries.js +0 -2
- package/dist/util/FromEntries.js.map +0 -1
- package/dist/util/IteratorLike.d.ts +0 -1
- package/dist/util/IteratorLike.js +0 -2
- package/dist/util/IteratorLike.js.map +0 -1
- package/dist/util/JSONEntry.d.ts +0 -2
- package/dist/util/JSONEntry.js +0 -2
- package/dist/util/JSONEntry.js.map +0 -1
- package/dist/util/JSONKey.d.ts +0 -1
- package/dist/util/JSONKey.js +0 -2
- package/dist/util/JSONKey.js.map +0 -1
- package/dist/util/JSONObject.d.ts +0 -5
- package/dist/util/JSONObject.js +0 -2
- package/dist/util/JSONObject.js.map +0 -1
- package/dist/util/JSONSchemaMemo.d.ts +0 -2
- package/dist/util/JSONSchemaMemo.js +0 -13
- package/dist/util/JSONSchemaMemo.js.map +0 -1
- package/dist/util/JSONValue.d.ts +0 -2
- package/dist/util/JSONValue.js +0 -2
- package/dist/util/JSONValue.js.map +0 -1
- package/dist/util/PromiseOr.d.ts +0 -1
- package/dist/util/PromiseOr.js +0 -2
- package/dist/util/PromiseOr.js.map +0 -1
- package/dist/util/Result.d.ts +0 -7
- package/dist/util/Result.js +0 -2
- package/dist/util/Result.js.map +0 -1
- package/dist/util/Taggable.d.ts +0 -9
- package/dist/util/Taggable.js +0 -8
- package/dist/util/Taggable.js.map +0 -1
- package/dist/util/TupleToRecord.d.ts +0 -5
- package/dist/util/TupleToRecord.js +0 -2
- package/dist/util/TupleToRecord.js.map +0 -1
- package/dist/util/assert.d.ts +0 -1
- package/dist/util/assert.js +0 -7
- package/dist/util/assert.js.map +0 -1
- package/dist/util/dedent.d.ts +0 -1
- package/dist/util/dedent.js +0 -5
- package/dist/util/dedent.js.map +0 -1
- package/dist/util/fixTemplateStrings.d.ts +0 -11
- package/dist/util/fixTemplateStrings.js +0 -83
- package/dist/util/fixTemplateStrings.js.map +0 -1
- package/dist/util/fixTemplateStrings.test.d.ts +0 -1
- package/dist/util/fixTemplateStrings.test.js +0 -221
- package/dist/util/fixTemplateStrings.test.js.map +0 -1
- package/dist/util/isAsyncIterator.d.ts +0 -1
- package/dist/util/isAsyncIterator.js +0 -7
- package/dist/util/isAsyncIterator.js.map +0 -1
- package/dist/util/isIterator.d.ts +0 -1
- package/dist/util/isIterator.js +0 -7
- package/dist/util/isIterator.js.map +0 -1
- package/dist/util/isJSONValue.d.ts +0 -2
- package/dist/util/isJSONValue.js +0 -16
- package/dist/util/isJSONValue.js.map +0 -1
- package/dist/util/isPropertyKey.d.ts +0 -1
- package/dist/util/isPropertyKey.js +0 -4
- package/dist/util/isPropertyKey.js.map +0 -1
- package/dist/util/isTemplateStringsArray.d.ts +0 -1
- package/dist/util/isTemplateStringsArray.js +0 -4
- package/dist/util/isTemplateStringsArray.js.map +0 -1
- package/dist/util/jsonEquals.d.ts +0 -2
- package/dist/util/jsonEquals.js +0 -33
- package/dist/util/jsonEquals.js.map +0 -1
- package/dist/util/nullaryMemo.d.ts +0 -1
- package/dist/util/nullaryMemo.js +0 -12
- package/dist/util/nullaryMemo.js.map +0 -1
- package/dist/util/unimplemented.d.ts +0 -1
- package/dist/util/unimplemented.js +0 -5
- package/dist/util/unimplemented.js.map +0 -1
- package/dist/util/unreachable.d.ts +0 -1
- package/dist/util/unreachable.js +0 -5
- package/dist/util/unreachable.js.map +0 -1
- package/dist/util/unwrapDeferred.d.ts +0 -2
- package/dist/util/unwrapDeferred.js +0 -4
- package/dist/util/unwrapDeferred.js.map +0 -1
- package/dist/util/util.d.ts +0 -10
- package/dist/util/util.js +0 -11
- package/dist/util/util.js.map +0 -1
- package/events/Aborted.ts +0 -5
- package/events/Embedded.ts +0 -6
- package/events/EmbeddingRequested.ts +0 -5
- package/events/Emitted.ts +0 -5
- package/events/EventBase.ts +0 -3
- package/events/EventHandler.ts +0 -3
- package/events/EventResolved.ts +0 -30
- package/events/Forked.ts +0 -3
- package/events/InferenceRequested.ts +0 -3
- package/events/Inferred.ts +0 -6
- package/events/LEvent.ts +0 -36
- package/events/MessageAppended.ts +0 -6
- package/events/MessageRemoved.ts +0 -6
- package/events/MessagesSet.ts +0 -6
- package/events/ModelPushed.ts +0 -10
- package/events/ModelRemoved.ts +0 -10
- package/events/Returned.ts +0 -5
- package/events/Threw.ts +0 -5
- package/events/ToolCalled.ts +0 -7
- package/events/ToolDisabled.ts +0 -6
- package/events/ToolEnabled.ts +0 -8
- package/events/isScopeChildEvent.ts +0 -15
- package/events/isScopeDescendantEvent.ts +0 -30
- package/testing/ActorAssertions.ts +0 -19
- package/testing/TestEmbeddingModel.ts +0 -18
- package/testing/TestLanguageModel.ts +0 -32
- package/testing/index.ts +0 -4
- package/testing/takeFirstAction.ts +0 -8
- package/types/AssertDiagnostics.ts +0 -183
- package/types/JSONRootType.ts +0 -8
- package/types/JSONType.ts +0 -27
- package/types/JSONTypeBase.ts +0 -3
- package/types/Metatype/MetatypeDescriptor.ts +0 -80
- package/types/Metatype/fromMetatypeDescriptor.ts +0 -52
- package/types/Type.ts +0 -46
- package/types/TypeContext.ts +0 -19
- package/types/TypeLike.ts +0 -60
- package/types/TypeVisitor.ts +0 -49
- package/types/array.ts +0 -20
- package/types/boolean.ts +0 -9
- package/types/const.ts +0 -17
- package/types/declareType.ts +0 -71
- package/types/enum.ts +0 -14
- package/types/factories.ts +0 -8
- package/types/index.ts +0 -2
- package/types/integer.ts +0 -9
- package/types/intrinsics.ts +0 -11
- package/types/match.ts +0 -13
- package/types/non_factories.ts +0 -26
- package/types/null.ts +0 -10
- package/types/number.ts +0 -9
- package/types/object.ts +0 -27
- package/types/ref.ts +0 -12
- package/types/string.ts +0 -9
- package/types/toJSON.ts +0 -111
- package/types/type_common.ts +0 -21
- package/types/types_derived/option.ts +0 -10
- package/types/types_derived/taggedUnion.ts +0 -30
- package/types/types_derived/wrapper.ts +0 -10
- package/types/union.ts +0 -19
- package/util/ArrayOfLength.ts +0 -5
- package/util/DeferredOr.ts +0 -1
- package/util/EnsureNarrow.ts +0 -5
- package/util/EnsureRecord.ts +0 -3
- package/util/Expand.ts +0 -1
- package/util/Falsy.ts +0 -1
- package/util/FromEntries.ts +0 -3
- package/util/IteratorLike.ts +0 -1
- package/util/JSONEntry.ts +0 -3
- package/util/JSONKey.ts +0 -1
- package/util/JSONObject.ts +0 -6
- package/util/JSONSchemaMemo.ts +0 -15
- package/util/JSONValue.ts +0 -3
- package/util/PromiseOr.ts +0 -1
- package/util/Result.ts +0 -7
- package/util/Taggable.ts +0 -18
- package/util/TupleToRecord.ts +0 -5
- package/util/assert.ts +0 -7
- package/util/dedent.ts +0 -5
- package/util/fixTemplateStrings.test.ts +0 -250
- package/util/fixTemplateStrings.ts +0 -99
- package/util/isAsyncIterator.ts +0 -6
- package/util/isIterator.ts +0 -6
- package/util/isJSONValue.ts +0 -20
- package/util/isPropertyKey.ts +0 -3
- package/util/isTemplateStringsArray.ts +0 -3
- package/util/jsonEquals.ts +0 -41
- package/util/nullaryMemo.ts +0 -11
- package/util/unimplemented.ts +0 -5
- package/util/unreachable.ts +0 -5
- package/util/unwrapDeferred.ts +0 -5
- package/util/util.ts +0 -10
- /package/dist/{actions/actions_derived/declareModel.test.d.ts → Handler.d.ts} +0 -0
- /package/dist/{actions/actions_derived/declareModel.type-test.d.ts → L/namespace.d.ts} +0 -0
package/Rune.ts
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { Fiber } from "./Fiber.ts"
|
|
2
|
+
|
|
3
|
+
export interface Rune<out E = any> {
|
|
4
|
+
(fiber: Fiber): any
|
|
5
|
+
[RuneKey]: E
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export declare namespace Rune {
|
|
9
|
+
export type E<X extends Rune> = X[RuneKey]
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export const RuneKey: unique symbol = Symbol.for("liminal/Rune")
|
|
13
|
+
export type RuneKey = typeof RuneKey
|
|
14
|
+
|
|
15
|
+
export function isRune(value: unknown): value is Rune {
|
|
16
|
+
return typeof value === "object" && value !== null && RuneKey in value
|
|
17
|
+
}
|
package/Runic.ts
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { Rune } from "./Rune.ts"
|
|
2
|
+
|
|
3
|
+
export type RuneIterator<Y extends Rune = Rune, T = any> = Iterator<Y, T> | AsyncIterator<Y, T>
|
|
4
|
+
export type RuneIterable<Y extends Rune, T> = Iterable<Y, T> | AsyncIterable<Y, T>
|
|
5
|
+
export type Runic<Y extends Rune = Rune, T = any> = RuneIterable<Y, T> | (() => RuneIterable<Y, T>)
|
|
6
|
+
export namespace Runic {
|
|
7
|
+
export type Y<R extends Runic> = R extends Runic<infer Y> ? Y : never
|
|
8
|
+
export type T<R extends Runic> = R extends Runic<Rune, infer T> ? T : never
|
|
9
|
+
|
|
10
|
+
export function unwrap<Y extends Rune, T>(runic: Runic<Y, T>): RuneIterator<Y, T> {
|
|
11
|
+
if (Symbol.iterator in runic) {
|
|
12
|
+
return runic[Symbol.iterator]()
|
|
13
|
+
} else if (Symbol.asyncIterator in runic) {
|
|
14
|
+
return runic[Symbol.asyncIterator]()
|
|
15
|
+
}
|
|
16
|
+
const iterable = runic()
|
|
17
|
+
if (Symbol.iterator in iterable) {
|
|
18
|
+
return iterable[Symbol.iterator]()
|
|
19
|
+
}
|
|
20
|
+
return iterable[Symbol.asyncIterator]()
|
|
21
|
+
}
|
|
22
|
+
}
|
package/cli/main.ts
CHANGED
|
@@ -1,19 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import process from "node:process"
|
|
4
|
-
import { L } from "../index.ts"
|
|
5
|
-
import type { CliCtx } from "./cli_common.ts"
|
|
6
|
-
import { runExec } from "./runExec.ts"
|
|
7
|
-
|
|
8
|
-
const args = process.argv.slice(2)
|
|
9
|
-
const command = L.enum("exec").assert(args.shift())
|
|
10
|
-
const ctl = new AbortController()
|
|
11
|
-
|
|
12
|
-
const cliCtx: CliCtx = { ctl }
|
|
13
|
-
|
|
14
|
-
switch (command) {
|
|
15
|
-
case "exec": {
|
|
16
|
-
await runExec(cliCtx, args)
|
|
17
|
-
break
|
|
18
|
-
}
|
|
19
|
-
}
|
|
1
|
+
console.log("TODO")
|
package/dist/Agent.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type FiberInfo } from "./Fiber.ts";
|
|
2
|
+
import type { Rune, RuneKey } from "./Rune.ts";
|
|
3
|
+
import type { Runic } from "./Runic.ts";
|
|
4
|
+
export interface Agent<out T, out E> extends PromiseLike<T> {
|
|
5
|
+
T: T;
|
|
6
|
+
E: E;
|
|
7
|
+
}
|
|
8
|
+
export declare function Agent<Y extends Rune, T>(runic: Runic<Y, T>, config?: AgentConfig<Y, T>): Agent<T, Rune.E<Y>>;
|
|
9
|
+
export interface AgentConfig<Y extends Rune, _T> {
|
|
10
|
+
handler: (event: Y[RuneKey], info: FiberInfo) => void;
|
|
11
|
+
signal?: AbortSignal;
|
|
12
|
+
}
|
package/dist/Agent.js
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Fiber } from "./Fiber.js";
|
|
2
|
+
export function Agent(runic, config) {
|
|
3
|
+
return {
|
|
4
|
+
then(onfulfilled, onrejected) {
|
|
5
|
+
const root = Fiber({
|
|
6
|
+
globals: {
|
|
7
|
+
handler: config?.handler ?? (() => { }),
|
|
8
|
+
},
|
|
9
|
+
runic,
|
|
10
|
+
signal: config?.signal,
|
|
11
|
+
});
|
|
12
|
+
return root.run().then(onfulfilled, onrejected);
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=Agent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Agent.js","sourceRoot":"","sources":["../Agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAkB,MAAM,YAAY,CAAA;AASlD,MAAM,UAAU,KAAK,CAAoB,KAAkB,EAAE,MAA0B;IACrF,OAAO;QACL,IAAI,CAAC,WAAW,EAAE,UAAU;YAC1B,MAAM,IAAI,GAAG,KAAK,CAAC;gBACjB,OAAO,EAAE;oBACP,OAAO,EAAE,MAAM,EAAE,OAAO,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;iBACvC;gBACD,KAAK;gBACL,MAAM,EAAE,MAAM,EAAE,MAAM;aACvB,CAAC,CAAA;YACF,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;QACjD,CAAC;KACsD,CAAA;AAC3D,CAAC"}
|
package/dist/Fiber.d.ts
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { Globals } from "./Globals.ts";
|
|
2
|
+
import type { Rune } from "./Rune.ts";
|
|
3
|
+
import { Runic } from "./Runic.ts";
|
|
4
|
+
import { StateMap } from "./state/StateMap.ts";
|
|
5
|
+
export interface Fiber<out T = any> {
|
|
6
|
+
T: T;
|
|
7
|
+
parent: Fiber<any> | undefined;
|
|
8
|
+
status: FiberStatus<T>;
|
|
9
|
+
fiberId: number;
|
|
10
|
+
state: StateMap;
|
|
11
|
+
globals: Globals;
|
|
12
|
+
run(this: this): Promise<T>;
|
|
13
|
+
handler<E>(event: E): void;
|
|
14
|
+
}
|
|
15
|
+
export type FiberStatus<T> = {
|
|
16
|
+
type: "untouched";
|
|
17
|
+
} | {
|
|
18
|
+
type: "pending";
|
|
19
|
+
promise: Promise<T>;
|
|
20
|
+
} | {
|
|
21
|
+
type: "resolved";
|
|
22
|
+
value: T;
|
|
23
|
+
} | {
|
|
24
|
+
type: "rejected";
|
|
25
|
+
reason?: unknown;
|
|
26
|
+
};
|
|
27
|
+
export interface FiberInfo {
|
|
28
|
+
fiber: number;
|
|
29
|
+
timestamp: number;
|
|
30
|
+
}
|
|
31
|
+
export interface FiberConfig<T> {
|
|
32
|
+
parent?: Fiber<any>;
|
|
33
|
+
globals: Globals;
|
|
34
|
+
runic: Runic<Rune, T>;
|
|
35
|
+
state?: StateMap | undefined;
|
|
36
|
+
signal?: AbortSignal | undefined;
|
|
37
|
+
}
|
|
38
|
+
export declare function Fiber<T>(config: FiberConfig<T>): Fiber<T>;
|
package/dist/Fiber.js
ADDED
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { LEventTag } from "./LEvent.js";
|
|
2
|
+
import { Runic } from "./Runic.js";
|
|
3
|
+
import { DefaultStateMap } from "./state/DefaultStateMap.js";
|
|
4
|
+
import { StateMap } from "./state/StateMap.js";
|
|
5
|
+
let nextFiberId = 0;
|
|
6
|
+
export function Fiber(config) {
|
|
7
|
+
const fiber = {
|
|
8
|
+
state: config.state ?? new DefaultStateMap(),
|
|
9
|
+
globals: config.globals,
|
|
10
|
+
parent: config.parent,
|
|
11
|
+
status: { type: "untouched" },
|
|
12
|
+
fiberId: nextFiberId++,
|
|
13
|
+
run,
|
|
14
|
+
handler,
|
|
15
|
+
};
|
|
16
|
+
fiber.handler({
|
|
17
|
+
[LEventTag]: "fiber_created",
|
|
18
|
+
});
|
|
19
|
+
return fiber;
|
|
20
|
+
function handler(event) {
|
|
21
|
+
config.globals.handler(event, {
|
|
22
|
+
fiber: this.fiberId,
|
|
23
|
+
timestamp: Date.now(),
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
async function run() {
|
|
27
|
+
if (this.status.type === "pending") {
|
|
28
|
+
return await this.status.promise;
|
|
29
|
+
}
|
|
30
|
+
else if (this.status.type === "resolved") {
|
|
31
|
+
return this.status.value;
|
|
32
|
+
}
|
|
33
|
+
else if (this.status.type === "rejected") {
|
|
34
|
+
throw this.status.reason;
|
|
35
|
+
}
|
|
36
|
+
this.handler({
|
|
37
|
+
[LEventTag]: "fiber_started",
|
|
38
|
+
});
|
|
39
|
+
const { promise, resolve, reject } = Promise.withResolvers();
|
|
40
|
+
if (config.signal) {
|
|
41
|
+
if (config.signal.aborted) {
|
|
42
|
+
reject(config.signal.reason);
|
|
43
|
+
return await promise;
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
config.signal.addEventListener("abort", () => {
|
|
47
|
+
reject(config.signal?.reason);
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
this.status = {
|
|
52
|
+
type: "pending",
|
|
53
|
+
promise,
|
|
54
|
+
};
|
|
55
|
+
queueMicrotask(async () => {
|
|
56
|
+
const iterator = Runic.unwrap(config.runic);
|
|
57
|
+
let nextArg;
|
|
58
|
+
try {
|
|
59
|
+
let current = await iterator.next(nextArg);
|
|
60
|
+
while (!current.done) {
|
|
61
|
+
const rune = current.value;
|
|
62
|
+
const nextArg = await rune(this);
|
|
63
|
+
current = await iterator.next(nextArg);
|
|
64
|
+
}
|
|
65
|
+
const { value } = current;
|
|
66
|
+
this.handler({
|
|
67
|
+
[LEventTag]: "fiber_resolved",
|
|
68
|
+
value,
|
|
69
|
+
});
|
|
70
|
+
resolve(value);
|
|
71
|
+
}
|
|
72
|
+
catch (reason) {
|
|
73
|
+
reject(reason);
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
return await promise;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=Fiber.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Fiber.js","sourceRoot":"","sources":["../Fiber.ts"],"names":[],"mappings":"AACA,OAAO,EAA4D,SAAS,EAAE,MAAM,aAAa,CAAA;AAEjG,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AA+B9C,IAAI,WAAW,GAAG,CAAC,CAAA;AAUnB,MAAM,UAAU,KAAK,CAAI,MAAsB;IAC7C,MAAM,KAAK,GAAG;QACZ,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,IAAI,eAAe,EAAE;QAC5C,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;QAC7B,OAAO,EAAE,WAAW,EAAE;QACtB,GAAG;QACH,OAAO;KACkC,CAAA;IAC3C,KAAK,CAAC,OAAO,CAAe;QAC1B,CAAC,SAAS,CAAC,EAAE,eAAe;KAC7B,CAAC,CAAA;IACF,OAAO,KAAK,CAAA;IAEZ,SAAS,OAAO,CAAoB,KAAQ;QAC1C,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE;YAC5B,KAAK,EAAE,IAAI,CAAC,OAAO;YACnB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,UAAU,GAAG;QAChB,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACnC,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA;QAClC,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC3C,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAA;QAC1B,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC3C,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAA;QAC1B,CAAC;QACD,IAAI,CAAC,OAAO,CAAe;YACzB,CAAC,SAAS,CAAC,EAAE,eAAe;SAC7B,CAAC,CAAA;QACF,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,aAAa,EAAK,CAAA;QAC/D,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC1B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;gBAC5B,OAAO,MAAM,OAAO,CAAA;YACtB,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;oBAC3C,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;gBAC/B,CAAC,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QACD,IAAI,CAAC,MAAM,GAAG;YACZ,IAAI,EAAE,SAAS;YACf,OAAO;SACR,CAAA;QACD,cAAc,CAAC,KAAK,IAAI,EAAE;YACxB,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAC3C,IAAI,OAAY,CAAA;YAChB,IAAI,CAAC;gBACH,IAAI,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBAC1C,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;oBACrB,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAA;oBAC1B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAA;oBAChC,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBACxC,CAAC;gBACD,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAA;gBACzB,IAAI,CAAC,OAAO,CAAgB;oBAC1B,CAAC,SAAS,CAAC,EAAE,gBAAgB;oBAC7B,KAAK;iBACN,CAAC,CAAA;gBACF,OAAO,CAAC,KAAK,CAAC,CAAA;YAChB,CAAC;YAAC,OAAO,MAAe,EAAE,CAAC;gBACzB,MAAM,CAAC,MAAM,CAAC,CAAA;YAChB,CAAC;QACH,CAAC,CAAC,CAAA;QACF,OAAO,MAAM,OAAO,CAAA;IACtB,CAAC;AACH,CAAC"}
|
package/dist/Globals.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Globals.js","sourceRoot":"","sources":["../Globals.ts"],"names":[],"mappings":""}
|
package/dist/Handler.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Handler.js","sourceRoot":"","sources":["../Handler.ts"],"names":[],"mappings":""}
|
package/dist/L/L.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export * from "liminal-schema/factories";
|
|
2
|
+
export * from "./_infer.ts";
|
|
3
|
+
export * from "./_message.ts";
|
|
4
|
+
export * from "./assistant.ts";
|
|
5
|
+
export * from "./branch.ts";
|
|
6
|
+
export * from "./emit.ts";
|
|
7
|
+
export * from "./fork.ts";
|
|
8
|
+
export * from "./join.ts";
|
|
9
|
+
export * from "./model.ts";
|
|
10
|
+
export * from "./self.ts";
|
|
11
|
+
export * from "./state.ts";
|
|
12
|
+
export * from "./system.ts";
|
|
13
|
+
export * from "./user.ts";
|
package/dist/L/L.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export * from "liminal-schema/factories";
|
|
2
|
+
export * from "./_infer.js";
|
|
3
|
+
export * from "./_message.js";
|
|
4
|
+
export * from "./assistant.js";
|
|
5
|
+
export * from "./branch.js";
|
|
6
|
+
export * from "./emit.js";
|
|
7
|
+
export * from "./fork.js";
|
|
8
|
+
export * from "./join.js";
|
|
9
|
+
export * from "./model.js";
|
|
10
|
+
export * from "./self.js";
|
|
11
|
+
export * from "./state.js";
|
|
12
|
+
export * from "./system.js";
|
|
13
|
+
export * from "./user.js";
|
|
14
|
+
//# sourceMappingURL=L.js.map
|
package/dist/L/L.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"L.js","sourceRoot":"","sources":["../../L/L.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA"}
|
package/dist/L/_infer.js
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { assert } from "liminal-util";
|
|
2
|
+
import { LEventTag } from "../LEvent.js";
|
|
3
|
+
import { Counter } from "../state/Counter.js";
|
|
4
|
+
import { MessageRegistry } from "../state/MessageRegistry.js";
|
|
5
|
+
import { ModelRegistry } from "../state/ModelRegistry.js";
|
|
6
|
+
import { emit } from "./emit.js";
|
|
7
|
+
import { rune } from "./rune.js";
|
|
8
|
+
import { state } from "./state.js";
|
|
9
|
+
export function* _infer(schema) {
|
|
10
|
+
const [modelRegistry, { messages }, counter] = yield* state(ModelRegistry, MessageRegistry, InferenceRequestCounter);
|
|
11
|
+
const model = modelRegistry.peek();
|
|
12
|
+
assert(model);
|
|
13
|
+
const requestId = counter.next();
|
|
14
|
+
yield* emit({
|
|
15
|
+
[LEventTag]: "inference_requested",
|
|
16
|
+
...schema && { schema },
|
|
17
|
+
requestId,
|
|
18
|
+
});
|
|
19
|
+
const inference = yield* rune(() => model.resolve(messages, schema));
|
|
20
|
+
yield* emit({
|
|
21
|
+
[LEventTag]: "inferred",
|
|
22
|
+
inference,
|
|
23
|
+
requestId,
|
|
24
|
+
});
|
|
25
|
+
return inference;
|
|
26
|
+
}
|
|
27
|
+
class InferenceRequestCounter extends Counter {
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=_infer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_infer.js","sourceRoot":"","sources":["../../L/_infer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAuD,SAAS,EAAE,MAAM,cAAc,CAAA;AAE7F,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC,MAAM,SAAS,CAAC,CAAC,MAAM,CAAC,MAAmB;IACzC,MAAM,CAAC,aAAa,EAAE,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,KAAK,CACzD,aAAa,EACb,eAAe,EACf,uBAAuB,CACxB,CAAA;IACD,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,CAAA;IAClC,MAAM,CAAC,KAAK,CAAC,CAAA;IACb,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;IAChC,KAAK,CAAC,CAAC,IAAI,CAAqB;QAC9B,CAAC,SAAS,CAAC,EAAE,qBAAqB;QAClC,GAAG,MAAM,IAAI,EAAE,MAAM,EAAE;QACvB,SAAS;KACV,CAAC,CAAA;IACF,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA;IACpE,KAAK,CAAC,CAAC,IAAI,CAAW;QACpB,CAAC,SAAS,CAAC,EAAE,UAAU;QACvB,SAAS;QACT,SAAS;KACV,CAAC,CAAA;IACF,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,MAAM,uBAAwB,SAAQ,OAAO;CAAG"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type LEvent } from "../LEvent.ts";
|
|
2
|
+
import type { ContentPart, MessageRole } from "../Message.ts";
|
|
3
|
+
import type { Rune } from "../Rune.ts";
|
|
4
|
+
export interface _message extends Generator<Rune<LEvent>, void> {
|
|
5
|
+
}
|
|
6
|
+
export declare function _message(role: MessageRole, content: Array<ContentPart>): _message;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { LEventTag } from "../LEvent.js";
|
|
2
|
+
import { MessageRegistry } from "../state/MessageRegistry.js";
|
|
3
|
+
import { emit } from "./emit.js";
|
|
4
|
+
import { state } from "./state.js";
|
|
5
|
+
export function* _message(role, content) {
|
|
6
|
+
const [messageRegistry] = yield* state(MessageRegistry);
|
|
7
|
+
const message = { role, content };
|
|
8
|
+
yield* emit({
|
|
9
|
+
[LEventTag]: "message_appended",
|
|
10
|
+
message,
|
|
11
|
+
});
|
|
12
|
+
messageRegistry.append(message);
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=_message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_message.js","sourceRoot":"","sources":["../../L/_message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,SAAS,EAAwB,MAAM,cAAc,CAAA;AAG3E,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAIlC,MAAM,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAiB,EAAE,OAA2B;IACtE,MAAM,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;IACvD,MAAM,OAAO,GAAY,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;IAC1C,KAAK,CAAC,CAAC,IAAI,CAAkB;QAC3B,CAAC,SAAS,CAAC,EAAE,kBAAkB;QAC/B,OAAO;KACR,CAAC,CAAA;IACF,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;AACjC,CAAC"}
|
package/dist/L/all.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Fiber } from "../Fiber.ts";
|
|
2
|
+
import type { Rune } from "../Rune.ts";
|
|
3
|
+
export interface all<A extends Array<any>> extends Generator<Rune<never>, Fiber<A>> {
|
|
4
|
+
}
|
|
5
|
+
export declare function all<XA extends Array<Fiber>>(...fibers: XA): all<{
|
|
6
|
+
[I in keyof XA]: XA[I]["T"];
|
|
7
|
+
}>;
|
package/dist/L/all.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"all.js","sourceRoot":"","sources":["../../L/all.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAIhC,MAAM,SAAS,CAAC,CAAC,GAAG,CAClB,GAAG,MAAU;IAEb,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAU,CAAA;AAC5F,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type LType } from "liminal-schema";
|
|
2
|
+
import type { LEvent } from "../LEvent.ts";
|
|
3
|
+
import type { Rune } from "../Rune.ts";
|
|
4
|
+
export interface assistant extends Iterable<Rune<LEvent>, string> {
|
|
5
|
+
<T>(schema: LType<T>): Generator<Rune<LEvent>, T>;
|
|
6
|
+
}
|
|
7
|
+
export declare const assistant: assistant;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { toJSONSchema } from "liminal-schema";
|
|
2
|
+
import { LiminalAssertionError } from "liminal-util";
|
|
3
|
+
import { _infer } from "./_infer.js";
|
|
4
|
+
import { _message } from "./_message.js";
|
|
5
|
+
import { rune } from "./rune.js";
|
|
6
|
+
export const assistant = Object.assign(function* (type) {
|
|
7
|
+
const schema = toJSONSchema(type);
|
|
8
|
+
const inference = yield* _infer(schema);
|
|
9
|
+
yield* _message("assistant", [{ part: inference }]);
|
|
10
|
+
const input = JSON.parse(inference);
|
|
11
|
+
const result = yield* rune(() => type["~standard"].validate(input));
|
|
12
|
+
if (result.issues) {
|
|
13
|
+
throw new LiminalAssertionError(JSON.stringify(result.issues, null, 2));
|
|
14
|
+
}
|
|
15
|
+
return result.value;
|
|
16
|
+
}, {
|
|
17
|
+
*[Symbol.iterator]() {
|
|
18
|
+
const inference = yield* _infer();
|
|
19
|
+
yield* _message("assistant", [{ part: inference }]);
|
|
20
|
+
return inference;
|
|
21
|
+
},
|
|
22
|
+
});
|
|
23
|
+
//# sourceMappingURL=assistant.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assistant.js","sourceRoot":"","sources":["../../L/assistant.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAEzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AAGpD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAMhC,MAAM,CAAC,MAAM,SAAS,GAAc,MAAM,CAAC,MAAM,CAC/C,QAAQ,CAAC,EAAI,IAAc;IACzB,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;IACjC,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IACvC,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;IACnD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IACnC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAE,IAA8C,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;IAC9G,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,MAAM,IAAI,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IACzE,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAA;AACrB,CAAC,EACD;IACE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;QAChB,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,MAAM,EAAE,CAAA;QACjC,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;QACnD,OAAO,SAAS,CAAA;IAClB,CAAC;CACF,CACF,CAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type Rune } from "../Rune.ts";
|
|
2
|
+
import type { Runic } from "../Runic.ts";
|
|
3
|
+
export interface branch<Y extends Rune, T> extends Generator<Y, T> {
|
|
4
|
+
}
|
|
5
|
+
export declare function branch<X extends Runic>(runic: X): branch<Runic.Y<X>, Runic.T<X>>;
|
|
6
|
+
export declare function branch<XA extends Array<Runic>>(runics: XA): branch<Runic.Y<XA[number]> | Rune<never>, {
|
|
7
|
+
[I in keyof XA]: Runic.T<XA[I]>;
|
|
8
|
+
}>;
|
|
9
|
+
export declare function branch<XR extends Record<keyof any, Runic>>(runics: XR): branch<Runic.Y<XR[keyof XR]> | Rune<never>, {
|
|
10
|
+
[K in keyof XR]: Runic.T<XR[K]>;
|
|
11
|
+
}>;
|
package/dist/L/branch.js
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Fiber } from "../Fiber.js";
|
|
2
|
+
import {} from "../Rune.js";
|
|
3
|
+
import { all } from "./all.js";
|
|
4
|
+
import { fork } from "./fork.js";
|
|
5
|
+
import { join } from "./join.js";
|
|
6
|
+
import { self } from "./self.js";
|
|
7
|
+
export function* branch(value) {
|
|
8
|
+
const parent = yield* self;
|
|
9
|
+
const { globals, state } = parent;
|
|
10
|
+
if (Array.isArray(value)) {
|
|
11
|
+
const fibers = value.map((runic) => Fiber({
|
|
12
|
+
globals,
|
|
13
|
+
parent,
|
|
14
|
+
runic,
|
|
15
|
+
state: state.clone(),
|
|
16
|
+
}));
|
|
17
|
+
return yield* join(yield* all(...fibers));
|
|
18
|
+
}
|
|
19
|
+
else if (typeof value === "object") {
|
|
20
|
+
const fibers = Object.values(value).map((runic) => Fiber({
|
|
21
|
+
globals,
|
|
22
|
+
parent,
|
|
23
|
+
runic,
|
|
24
|
+
state: state.clone(),
|
|
25
|
+
}));
|
|
26
|
+
const resolved = yield* join(yield* all(...fibers));
|
|
27
|
+
return Object.fromEntries(Object.keys(value).map((key, i) => [key, resolved[i]]));
|
|
28
|
+
}
|
|
29
|
+
const fiber = yield* fork(typeof value === "function" ? value() : value, state.clone());
|
|
30
|
+
return yield* join(fiber);
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=branch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"branch.js","sourceRoot":"","sources":["../../L/branch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACnC,OAAO,EAAa,MAAM,YAAY,CAAA;AAEtC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAWhC,MAAM,SAAS,CAAC,CAAC,MAAM,CAAC,KAAsD;IAC5E,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,IAAI,CAAA;IAC1B,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;IACjC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACjC,KAAK,CAAC;YACJ,OAAO;YACP,MAAM;YACN,KAAK;YACL,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE;SACrB,CAAC,CACH,CAAA;QACD,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;IAC3C,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAChD,KAAK,CAAC;YACJ,OAAO;YACP,MAAM;YACN,KAAK;YACL,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE;SACrB,CAAC,CACH,CAAA;QACD,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QACnD,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACnF,CAAC;IACD,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAA;IACvF,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAC3B,CAAC"}
|
package/dist/L/emit.d.ts
ADDED
package/dist/L/emit.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"emit.js","sourceRoot":"","sources":["../../L/emit.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAIhC,MAAM,SAAS,CAAC,CAAC,IAAI,CAAU,KAAsB;IACnD,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;QACpB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IACtB,CAAC,CAAC,EAAK,CAAA;AACT,CAAC"}
|
package/dist/L/fork.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Fiber } from "../Fiber.ts";
|
|
2
|
+
import type { Rune } from "../Rune.ts";
|
|
3
|
+
import type { Runic } from "../Runic.ts";
|
|
4
|
+
import type { StateMap } from "../state/StateMap.ts";
|
|
5
|
+
export interface fork<Y extends Rune, T> extends Generator<Rune<never> | Y, Fiber<T>> {
|
|
6
|
+
}
|
|
7
|
+
export declare function fork<Y extends Rune, T>(runic: Runic<Y, T>, state?: StateMap): fork<Y, T>;
|
package/dist/L/fork.js
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Fiber } from "../Fiber.js";
|
|
2
|
+
import { rune } from "./rune.js";
|
|
3
|
+
export function* fork(runic, state) {
|
|
4
|
+
return yield* rune((parent) => Fiber({
|
|
5
|
+
globals: parent.globals,
|
|
6
|
+
parent,
|
|
7
|
+
runic,
|
|
8
|
+
state: state?.clone(),
|
|
9
|
+
}));
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=fork.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fork.js","sourceRoot":"","sources":["../../L/fork.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAInC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAIhC,MAAM,SAAS,CAAC,CAAC,IAAI,CAAoB,KAAkB,EAAE,KAAgB;IAC3E,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAC5B,KAAK,CAAC;QACJ,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,MAAM;QACN,KAAK;QACL,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;KACtB,CAAC,CACH,CAAA;AACH,CAAC"}
|
package/dist/L/join.d.ts
ADDED
package/dist/L/join.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"join.js","sourceRoot":"","sources":["../../L/join.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAIhC,MAAM,SAAS,CAAC,CAAC,IAAI,CAAkB,KAAQ;IAC7C,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAA;AAC7C,CAAC"}
|
package/dist/L/model.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../L/model.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAIlC,MAAM,SAAS,CAAC,CAAC,KAAK,CAAC,KAAY;IACjC,MAAM,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;IACnD,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAC/B,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// import type { Rune } from "../Rune"
|
|
2
|
+
// import type { Runic } from "../Runic"
|
|
3
|
+
export {};
|
|
4
|
+
// export function* namespace<K extends keyof any, X extends Runic>(
|
|
5
|
+
// key: K,
|
|
6
|
+
// runic: X,
|
|
7
|
+
// ): Generator<Rune<never> | Runic.Y<X>, Runic.T<X>> {
|
|
8
|
+
// const { globals, state } = self_
|
|
9
|
+
// const namespace = globals.namespace(key)
|
|
10
|
+
// return yield* rune((fiber) => Fiber(fiber.globals, fiber.parent, runic, state.clone()))
|
|
11
|
+
// }
|
|
12
|
+
//# sourceMappingURL=namespace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../L/namespace.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,wCAAwC;;AAExC,oEAAoE;AACpE,YAAY;AACZ,cAAc;AACd,uDAAuD;AACvD,qCAAqC;AACrC,6CAA6C;AAC7C,4FAA4F;AAC5F,IAAI"}
|
package/dist/L/rune.d.ts
ADDED
package/dist/L/rune.js
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { RuneKey } from "../Rune.js";
|
|
2
|
+
export function rune(source) {
|
|
3
|
+
return Object.assign(function* () {
|
|
4
|
+
return yield Object.assign(source, { [RuneKey]: {} });
|
|
5
|
+
}, {
|
|
6
|
+
*[Symbol.iterator]() {
|
|
7
|
+
return yield Object.assign(source, { [RuneKey]: {} });
|
|
8
|
+
},
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=rune.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rune.js","sourceRoot":"","sources":["../../L/rune.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,OAAO,EAAE,MAAM,YAAY,CAAA;AAM/C,MAAM,UAAU,IAAI,CAAI,MAA2B;IACjD,OAAO,MAAM,CAAC,MAAM,CAClB,QAAQ,CAAC;QACP,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,EAAW,EAAE,CAAC,CAAA;IAChE,CAAC,EACD;QACE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;YAChB,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,EAAW,EAAE,CAAC,CAAA;QAChE,CAAC;KACF,CACF,CAAA;AACH,CAAC"}
|
package/dist/L/self.d.ts
ADDED
package/dist/L/self.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"self.js","sourceRoot":"","sources":["../../L/self.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAMhC,MAAM,CAAC,MAAM,IAAI,GAAS;IACxB,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;QAChB,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAA;IACtC,CAAC;CACF,CAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Rune } from "../Rune.ts";
|
|
2
|
+
import type { StateConstructor } from "../state/StateMap.ts";
|
|
3
|
+
export interface state<CA extends Array<StateConstructor>> extends Generator<Rune<never>, {
|
|
4
|
+
[I in keyof CA]: InstanceType<CA[I]>;
|
|
5
|
+
}> {
|
|
6
|
+
}
|
|
7
|
+
export declare function state<CA extends Array<StateConstructor>>(...constructors: CA): state<CA>;
|
package/dist/L/state.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { rune } from "./rune.js";
|
|
2
|
+
export function* state(...constructors) {
|
|
3
|
+
return yield* rune((fiber) => {
|
|
4
|
+
return constructors.map((constructor) => {
|
|
5
|
+
let instance = fiber.state.get(constructor);
|
|
6
|
+
if (!instance) {
|
|
7
|
+
instance = new constructor();
|
|
8
|
+
fiber.state.set(constructor, instance);
|
|
9
|
+
}
|
|
10
|
+
return instance;
|
|
11
|
+
});
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=state.js.map
|