rhachet 1.12.1 → 1.12.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/dist/contract/cli/invoke.js +1 -1
- package/dist/contract/cli/invoke.js.map +1 -1
- package/dist/contract/cli/invokeAsk.d.ts +3 -3
- package/dist/contract/cli/invokeBriefs.d.ts +2 -2
- package/dist/contract/cli/invokeBriefsBoot.d.ts +1 -1
- package/dist/contract/cli/invokeBriefsBoot.js +2 -2
- package/dist/contract/cli/invokeBriefsBoot.js.map +1 -1
- package/dist/contract/cli/invokeBriefsLink.d.ts +2 -2
- package/dist/contract/cli/invokeBriefsLink.js +1 -1
- package/dist/contract/cli/invokeBriefsLink.js.map +1 -1
- package/dist/contract/cli/invokeChoose.d.ts +1 -1
- package/dist/contract/cli/invokeInit.d.ts +1 -1
- package/dist/contract/cli/invokeInit.js +1 -1
- package/dist/contract/cli/invokeInit.js.map +1 -1
- package/dist/contract/cli/invokeList.d.ts +2 -2
- package/dist/contract/cli/invokeReadme.d.ts +2 -2
- package/dist/contract/cli/invokeRoles.d.ts +2 -2
- package/dist/contract/cli/invokeRolesBoot.d.ts +1 -1
- package/dist/contract/cli/invokeRolesBoot.js +2 -2
- package/dist/contract/cli/invokeRolesBoot.js.map +1 -1
- package/dist/contract/cli/invokeRolesLink.d.ts +2 -2
- package/dist/contract/cli/invokeRolesLink.js +1 -1
- package/dist/contract/cli/invokeRolesLink.js.map +1 -1
- package/dist/contract/sdk.d.ts +13 -13
- package/dist/contract/sdk.js +25 -25
- package/dist/contract/sdk.js.map +1 -1
- package/dist/domain/constants.d.ts +3 -0
- package/dist/domain/constants.js +5 -0
- package/dist/domain/constants.js.map +1 -0
- package/dist/domain/objects/InvokeHooks.d.ts +1 -1
- package/dist/domain/objects/InvokeOpts.d.ts +1 -1
- package/dist/domain/objects/Role.d.ts +2 -2
- package/dist/domain/objects/RoleContext.d.ts +1 -1
- package/dist/domain/objects/RoleSkill.d.ts +2 -2
- package/dist/domain/objects/RoleSkillArgGetter.d.ts +3 -3
- package/dist/domain/objects/RoleTrait.d.ts +2 -2
- package/dist/domain/objects/Stitch.d.ts +4 -4
- package/dist/domain/objects/Stitch.js.map +1 -1
- package/dist/domain/objects/StitchChoice.d.ts +2 -2
- package/dist/domain/objects/StitchChoice.js.map +1 -1
- package/dist/domain/objects/StitchCycle.d.ts +4 -4
- package/dist/domain/objects/StitchCycle.js.map +1 -1
- package/dist/domain/objects/StitchFanout.d.ts +4 -4
- package/dist/domain/objects/StitchFanout.js.map +1 -1
- package/dist/domain/objects/StitchRoute.d.ts +1 -1
- package/dist/domain/objects/StitchRoute.js.map +1 -1
- package/dist/domain/objects/StitchSetEvent.d.ts +3 -3
- package/dist/domain/objects/StitchStep.d.ts +3 -3
- package/dist/domain/objects/Stitcher.d.ts +9 -9
- package/dist/domain/objects/Stitcher.js.map +1 -1
- package/dist/domain/objects/Template.d.ts +2 -2
- package/dist/domain/objects/Template.js.map +1 -1
- package/dist/domain/objects/Thread.d.ts +2 -2
- package/dist/domain/objects/Threads.d.ts +2 -2
- package/dist/domain/objects/Threads.js.map +1 -1
- package/dist/domain/objects/index.d.ts +2 -2
- package/dist/domain/objects/index.js +2 -2
- package/dist/domain/objects/index.js.map +1 -1
- package/dist/logic/context/genContextStitchTrail.d.ts +1 -1
- package/dist/logic/context/genContextStitchTrail.js.map +1 -1
- package/dist/logic/invoke/assureFindRole.d.ts +2 -2
- package/dist/logic/invoke/assureUniqueRoles.d.ts +1 -1
- package/dist/logic/invoke/getInvokeHooksByOpts.d.ts +2 -2
- package/dist/logic/invoke/getRegistriesByOpts.d.ts +2 -2
- package/dist/logic/invoke/getSkillContext.d.ts +3 -3
- package/dist/logic/invoke/getSkillThreads.d.ts +4 -4
- package/dist/logic/invoke/hooks/onInvokeAskInput.d.ts +2 -2
- package/dist/logic/invoke/performInCurrentThread.d.ts +2 -2
- package/dist/logic/invoke/performInIsolatedThread.execute.d.ts +1 -1
- package/dist/logic/invoke/performInIsolatedThread.invoke.d.ts +2 -2
- package/dist/logic/invoke/performInIsolatedThread.invoke.js +3 -3
- package/dist/logic/invoke/performInIsolatedThread.invoke.js.map +1 -1
- package/dist/logic/invoke/performInIsolatedThreads.d.ts +1 -1
- package/dist/logic/role/addRoleTraits.d.ts +5 -5
- package/dist/logic/role/enrollThread.d.ts +4 -4
- package/dist/logic/role/genRoleSkill.d.ts +1 -1
- package/dist/logic/stitch/adapters/imagineViaOpenAI.d.ts +1 -1
- package/dist/logic/stitch/enstitch.d.ts +3 -3
- package/dist/logic/stitch/enstitch.js +1 -1
- package/dist/logic/stitch/enstitch.js.map +1 -1
- package/dist/logic/stitch/invokeImagineStitcher.d.ts +3 -3
- package/dist/logic/stitch/withStitchTrail.d.ts +4 -4
- package/dist/logic/stitch/withStitchTrail.js +1 -1
- package/dist/logic/stitch/withStitchTrail.js.map +1 -1
- package/dist/logic/template/genStepImagineViaTemplate.d.ts +2 -2
- package/dist/logic/template/genStepImagineViaTemplate.js.map +1 -1
- package/dist/logic/template/genTemplate.d.ts +3 -3
- package/dist/logic/template/getTemplatePathByCallerPath.d.ts +1 -1
- package/dist/logic/template/getTemplatePathByCallerPath.js +2 -2
- package/dist/logic/template/getTemplatePathByCallerPath.js.map +1 -1
- package/dist/logic/template/getTemplateValFromArtifacts.d.ts +2 -2
- package/dist/logic/template/getTemplateValFromArtifacts.js.map +1 -1
- package/dist/logic/template/getTemplateVarsFromInheritance.d.ts +1 -1
- package/dist/logic/template/useTemplate.d.ts +2 -2
- package/dist/logic/thread/getStitch.d.ts +1 -1
- package/dist/logic/weave/compose/GStitcherInferredFromChoice.generic.d.ts +3 -3
- package/dist/logic/weave/compose/GStitcherInferredFromCycle.generic.d.ts +4 -4
- package/dist/logic/weave/compose/GStitcherInferredFromFanout.generic.d.ts +6 -6
- package/dist/logic/weave/compose/GStitcherInferredFromRoute.generic.d.ts +4 -4
- package/dist/logic/weave/compose/ProcedureContextMerged.generic.d.ts +1 -1
- package/dist/logic/weave/compose/ThreadsMerged.generic.d.ts +4 -4
- package/dist/logic/weave/compose/asStitcher.d.ts +3 -3
- package/dist/logic/weave/compose/asStitcherFlat.d.ts +2 -2
- package/dist/logic/weave/compose/genStitchChoice.d.ts +3 -3
- package/dist/logic/weave/compose/genStitchCycle.d.ts +5 -5
- package/dist/logic/weave/compose/genStitchFanout.d.ts +5 -5
- package/dist/logic/weave/compose/genStitchFanout.js.map +1 -1
- package/dist/logic/weave/compose/genStitchRoute.d.ts +3 -3
- package/dist/logic/weave/compose/genStitchRoute.js.map +1 -1
- package/dist/logic/weave/enweaveOneChoice.d.ts +2 -2
- package/dist/logic/weave/enweaveOneChoice.js.map +1 -1
- package/dist/logic/weave/enweaveOneCycle.d.ts +2 -2
- package/dist/logic/weave/enweaveOneCycle.js.map +1 -1
- package/dist/logic/weave/enweaveOneFanout.d.ts +2 -2
- package/dist/logic/weave/enweaveOneFanout.js.map +1 -1
- package/dist/logic/weave/enweaveOneRoute.d.ts +2 -2
- package/dist/logic/weave/enweaveOneRoute.js.map +1 -1
- package/dist/logic/weave/enweaveOneStitcher.d.ts +2 -2
- package/dist/logic/weave/enweaveOneStitcher.js.map +1 -1
- package/license.md +21 -0
- package/package.json +38 -38
- package/dist/.test/directory.d.ts +0 -2
- package/dist/.test/directory.js +0 -6
- package/dist/.test/directory.js.map +0 -1
- package/dist/.test/example.use.repo/example.echoRegistry.d.ts +0 -2
- package/dist/.test/example.use.repo/example.echoRegistry.js +0 -108
- package/dist/.test/example.use.repo/example.echoRegistry.js.map +0 -1
- package/dist/.test/genContextLogTrail.d.ts +0 -2
- package/dist/.test/genContextLogTrail.js +0 -12
- package/dist/.test/genContextLogTrail.js.map +0 -1
- package/dist/.test/getContextOpenAI.d.ts +0 -2
- package/dist/.test/getContextOpenAI.js +0 -18
- package/dist/.test/getContextOpenAI.js.map +0 -1
- package/dist/.test/stitchers/genStitcherCodeFileRead.d.ts +0 -14
- package/dist/.test/stitchers/genStitcherCodeFileRead.js +0 -23
- package/dist/.test/stitchers/genStitcherCodeFileRead.js.map +0 -1
- package/dist/.test/stitchers/genStitcherCodeFileWrite.d.ts +0 -16
- package/dist/.test/stitchers/genStitcherCodeFileWrite.js +0 -29
- package/dist/.test/stitchers/genStitcherCodeFileWrite.js.map +0 -1
- package/dist/.test/stitchers/genStitcherCodeReviewImagine.d.ts +0 -15
- package/dist/.test/stitchers/genStitcherCodeReviewImagine.js +0 -97
- package/dist/.test/stitchers/genStitcherCodeReviewImagine.js.map +0 -1
- package/dist/.test/stitchers/stitcherCodeDiffImagine.d.ts +0 -13
- package/dist/.test/stitchers/stitcherCodeDiffImagine.js +0 -33
- package/dist/.test/stitchers/stitcherCodeDiffImagine.js.map +0 -1
- package/dist/.test/stitchers/stitcherFanoutRandomSum.d.ts +0 -13
- package/dist/.test/stitchers/stitcherFanoutRandomSum.js +0 -45
- package/dist/.test/stitchers/stitcherFanoutRandomSum.js.map +0 -1
- package/dist/.test/stitchers/stitcherFanoutSubroutes.d.ts +0 -35
- package/dist/.test/stitchers/stitcherFanoutSubroutes.js +0 -76
- package/dist/.test/stitchers/stitcherFanoutSubroutes.js.map +0 -1
- package/dist/.test/threads/codeArtist.d.ts +0 -6
- package/dist/.test/threads/codeArtist.js +0 -26
- package/dist/.test/threads/codeArtist.js.map +0 -1
- package/dist/.test/threads/codeCritic.d.ts +0 -6
- package/dist/.test/threads/codeCritic.js +0 -21
- package/dist/.test/threads/codeCritic.js.map +0 -1
- package/dist/.test/threads/director.d.ts +0 -6
- package/dist/.test/threads/director.js +0 -14
- package/dist/.test/threads/director.js.map +0 -1
- package/dist/contract/cli/invoke.integration.test.d.ts +0 -1
- package/dist/contract/cli/invoke.integration.test.js +0 -39
- package/dist/contract/cli/invoke.integration.test.js.map +0 -1
- package/dist/contract/cli/invokeAsk.integration.test.d.ts +0 -1
- package/dist/contract/cli/invokeAsk.integration.test.js +0 -69
- package/dist/contract/cli/invokeAsk.integration.test.js.map +0 -1
- package/dist/contract/cli/invokeBriefsBoot.integration.test.d.ts +0 -1
- package/dist/contract/cli/invokeBriefsBoot.integration.test.js +0 -159
- package/dist/contract/cli/invokeBriefsBoot.integration.test.js.map +0 -1
- package/dist/contract/cli/invokeBriefsLink.integration.test.d.ts +0 -1
- package/dist/contract/cli/invokeBriefsLink.integration.test.js +0 -100
- package/dist/contract/cli/invokeBriefsLink.integration.test.js.map +0 -1
- package/dist/contract/cli/invokeChoose.integration.test.d.ts +0 -1
- package/dist/contract/cli/invokeChoose.integration.test.js +0 -111
- package/dist/contract/cli/invokeChoose.integration.test.js.map +0 -1
- package/dist/contract/cli/invokeInit.integration.test.d.ts +0 -1
- package/dist/contract/cli/invokeInit.integration.test.js +0 -123
- package/dist/contract/cli/invokeInit.integration.test.js.map +0 -1
- package/dist/contract/cli/invokeReadme.integration.test.d.ts +0 -1
- package/dist/contract/cli/invokeReadme.integration.test.js +0 -62
- package/dist/contract/cli/invokeReadme.integration.test.js.map +0 -1
- package/dist/contract/cli/invokeRolesBoot.integration.test.d.ts +0 -1
- package/dist/contract/cli/invokeRolesBoot.integration.test.js +0 -152
- package/dist/contract/cli/invokeRolesBoot.integration.test.js.map +0 -1
- package/dist/contract/cli/invokeRolesLink.integration.test.d.ts +0 -1
- package/dist/contract/cli/invokeRolesLink.integration.test.js +0 -117
- package/dist/contract/cli/invokeRolesLink.integration.test.js.map +0 -1
- package/dist/domain/objects/InvokeOpts.test.d.ts +0 -1
- package/dist/domain/objects/InvokeOpts.test.js +0 -41
- package/dist/domain/objects/InvokeOpts.test.js.map +0 -1
- package/dist/domain/objects/Stitcher.test.d.ts +0 -1
- package/dist/domain/objects/Stitcher.test.js +0 -78
- package/dist/domain/objects/Stitcher.test.js.map +0 -1
- package/dist/domain/objects/Template.test.d.ts +0 -1
- package/dist/domain/objects/Template.test.js +0 -48
- package/dist/domain/objects/Template.test.js.map +0 -1
- package/dist/logic/init/generateRhachetConfig.test.d.ts +0 -1
- package/dist/logic/init/generateRhachetConfig.test.js +0 -35
- package/dist/logic/init/generateRhachetConfig.test.js.map +0 -1
- package/dist/logic/invoke/addAttemptQualifierToOutputPath.test.d.ts +0 -1
- package/dist/logic/invoke/addAttemptQualifierToOutputPath.test.js +0 -130
- package/dist/logic/invoke/addAttemptQualifierToOutputPath.test.js.map +0 -1
- package/dist/logic/invoke/getPeerQualifiersOfOutputChoice.test.d.ts +0 -1
- package/dist/logic/invoke/getPeerQualifiersOfOutputChoice.test.js +0 -77
- package/dist/logic/invoke/getPeerQualifiersOfOutputChoice.test.js.map +0 -1
- package/dist/logic/invoke/getSkillContext.test.d.ts +0 -1
- package/dist/logic/invoke/getSkillContext.test.js +0 -85
- package/dist/logic/invoke/getSkillContext.test.js.map +0 -1
- package/dist/logic/invoke/getSkillThread.test.d.ts +0 -1
- package/dist/logic/invoke/getSkillThread.test.js +0 -115
- package/dist/logic/invoke/getSkillThread.test.js.map +0 -1
- package/dist/logic/invoke/performInIsolatedThread.invoke.integration.test.d.ts +0 -1
- package/dist/logic/invoke/performInIsolatedThread.invoke.integration.test.js +0 -74
- package/dist/logic/invoke/performInIsolatedThread.invoke.integration.test.js.map +0 -1
- package/dist/logic/invoke/performInIsolatedThreads.integration.test.d.ts +0 -1
- package/dist/logic/invoke/performInIsolatedThreads.integration.test.js +0 -75
- package/dist/logic/invoke/performInIsolatedThreads.integration.test.js.map +0 -1
- package/dist/logic/role/addRoleTraits.test.d.ts +0 -1
- package/dist/logic/role/addRoleTraits.test.js +0 -93
- package/dist/logic/role/addRoleTraits.test.js.map +0 -1
- package/dist/logic/role/enrollThread.integration.test.d.ts +0 -1
- package/dist/logic/role/enrollThread.integration.test.js +0 -79
- package/dist/logic/role/enrollThread.integration.test.js.map +0 -1
- package/dist/logic/role/genRoleSkill.test.d.ts +0 -1
- package/dist/logic/role/genRoleSkill.test.js +0 -79
- package/dist/logic/role/genRoleSkill.test.js.map +0 -1
- package/dist/logic/stitch/enstitch.test.d.ts +0 -1
- package/dist/logic/stitch/enstitch.test.js +0 -112
- package/dist/logic/stitch/enstitch.test.js.map +0 -1
- package/dist/logic/stitch/invokeImagineStitcher.integration.test.d.ts +0 -1
- package/dist/logic/stitch/invokeImagineStitcher.integration.test.js +0 -195
- package/dist/logic/stitch/invokeImagineStitcher.integration.test.js.map +0 -1
- package/dist/logic/template/genStepImagineViaTemplate.test.d.ts +0 -1
- package/dist/logic/template/genStepImagineViaTemplate.test.js +0 -126
- package/dist/logic/template/genStepImagineViaTemplate.test.js.map +0 -1
- package/dist/logic/template/genTemplate.test.d.ts +0 -1
- package/dist/logic/template/genTemplate.test.js +0 -118
- package/dist/logic/template/genTemplate.test.js.map +0 -1
- package/dist/logic/template/useTemplate.integration.test.d.ts +0 -1
- package/dist/logic/template/useTemplate.integration.test.js +0 -28
- package/dist/logic/template/useTemplate.integration.test.js.map +0 -1
- package/dist/logic/thread/getStitch.test.d.ts +0 -1
- package/dist/logic/thread/getStitch.test.js +0 -73
- package/dist/logic/thread/getStitch.test.js.map +0 -1
- package/dist/logic/weave/compose/GStitcherInferredFromChoice.generic.test.d.ts +0 -1
- package/dist/logic/weave/compose/GStitcherInferredFromChoice.generic.test.js +0 -67
- package/dist/logic/weave/compose/GStitcherInferredFromChoice.generic.test.js.map +0 -1
- package/dist/logic/weave/compose/GStitcherInferredFromCycle.generic.test.d.ts +0 -1
- package/dist/logic/weave/compose/GStitcherInferredFromCycle.generic.test.js +0 -132
- package/dist/logic/weave/compose/GStitcherInferredFromCycle.generic.test.js.map +0 -1
- package/dist/logic/weave/compose/GStitcherInferredFromFanout.generic.test.d.ts +0 -1
- package/dist/logic/weave/compose/GStitcherInferredFromFanout.generic.test.js +0 -74
- package/dist/logic/weave/compose/GStitcherInferredFromFanout.generic.test.js.map +0 -1
- package/dist/logic/weave/compose/GStitcherInferredFromRoute.generic.test.d.ts +0 -1
- package/dist/logic/weave/compose/GStitcherInferredFromRoute.generic.test.js +0 -190
- package/dist/logic/weave/compose/GStitcherInferredFromRoute.generic.test.js.map +0 -1
- package/dist/logic/weave/compose/ProcedureContextMerged.generic.test.d.ts +0 -1
- package/dist/logic/weave/compose/ProcedureContextMerged.generic.test.js +0 -29
- package/dist/logic/weave/compose/ProcedureContextMerged.generic.test.js.map +0 -1
- package/dist/logic/weave/compose/ThreadsMerged.generic.test.d.ts +0 -1
- package/dist/logic/weave/compose/ThreadsMerged.generic.test.js +0 -420
- package/dist/logic/weave/compose/ThreadsMerged.generic.test.js.map +0 -1
- package/dist/logic/weave/compose/asStitcher.test.d.ts +0 -1
- package/dist/logic/weave/compose/asStitcher.test.js +0 -95
- package/dist/logic/weave/compose/asStitcher.test.js.map +0 -1
- package/dist/logic/weave/compose/asStitcherFlat.test.d.ts +0 -1
- package/dist/logic/weave/compose/asStitcherFlat.test.js +0 -96
- package/dist/logic/weave/compose/asStitcherFlat.test.js.map +0 -1
- package/dist/logic/weave/compose/genStitchChoice.test.d.ts +0 -1
- package/dist/logic/weave/compose/genStitchChoice.test.js +0 -200
- package/dist/logic/weave/compose/genStitchChoice.test.js.map +0 -1
- package/dist/logic/weave/compose/genStitchCycle.test.d.ts +0 -1
- package/dist/logic/weave/compose/genStitchCycle.test.js +0 -267
- package/dist/logic/weave/compose/genStitchCycle.test.js.map +0 -1
- package/dist/logic/weave/compose/genStitchFanout.test.d.ts +0 -1
- package/dist/logic/weave/compose/genStitchFanout.test.js +0 -79
- package/dist/logic/weave/compose/genStitchFanout.test.js.map +0 -1
- package/dist/logic/weave/compose/genStitchRoute.test.d.ts +0 -1
- package/dist/logic/weave/compose/genStitchRoute.test.js +0 -120
- package/dist/logic/weave/compose/genStitchRoute.test.js.map +0 -1
- package/dist/logic/weave/enweaveOneChoice.test.d.ts +0 -1
- package/dist/logic/weave/enweaveOneChoice.test.js +0 -181
- package/dist/logic/weave/enweaveOneChoice.test.js.map +0 -1
- package/dist/logic/weave/enweaveOneCycle.test.d.ts +0 -1
- package/dist/logic/weave/enweaveOneCycle.test.js +0 -180
- package/dist/logic/weave/enweaveOneCycle.test.js.map +0 -1
- package/dist/logic/weave/enweaveOneFanout.integration.test.d.ts +0 -1
- package/dist/logic/weave/enweaveOneFanout.integration.test.js +0 -166
- package/dist/logic/weave/enweaveOneFanout.integration.test.js.map +0 -1
- package/dist/logic/weave/enweaveOneRoute.integration.test.d.ts +0 -1
- package/dist/logic/weave/enweaveOneRoute.integration.test.js +0 -159
- package/dist/logic/weave/enweaveOneRoute.integration.test.js.map +0 -1
- package/dist/logic/weave/enweaveOneStitcher.integration.test.d.ts +0 -2
- package/dist/logic/weave/enweaveOneStitcher.integration.test.js +0 -258
- package/dist/logic/weave/enweaveOneStitcher.integration.test.js.map +0 -1
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const test_fns_1 = require("test-fns");
|
|
4
|
-
const genContextLogTrail_1 = require("../../.test/genContextLogTrail");
|
|
5
|
-
const genContextStitchTrail_1 = require("../context/genContextStitchTrail");
|
|
6
|
-
const genThread_1 = require("../thread/genThread");
|
|
7
|
-
const genStepImagineViaTemplate_1 = require("./genStepImagineViaTemplate");
|
|
8
|
-
const genTemplate_1 = require("./genTemplate");
|
|
9
|
-
const useTemplate_1 = require("./useTemplate");
|
|
10
|
-
jest.mock('./useTemplate', () => ({
|
|
11
|
-
useTemplate: jest.fn(),
|
|
12
|
-
}));
|
|
13
|
-
describe('genStepImagineViaTemplate', () => {
|
|
14
|
-
const context = {
|
|
15
|
-
...(0, genContextLogTrail_1.genContextLogTrail)(),
|
|
16
|
-
...(0, genContextStitchTrail_1.genContextStitchTrail)(),
|
|
17
|
-
};
|
|
18
|
-
(0, test_fns_1.given)('a prompt template and imagine step with incompatible threads', () => {
|
|
19
|
-
const threads = {
|
|
20
|
-
assistant: (0, genThread_1.genThread)({ role: 'assistant', name: 'Bert' }),
|
|
21
|
-
};
|
|
22
|
-
const template = (0, genTemplate_1.genTemplate)({
|
|
23
|
-
ref: { uri: 'path/to/template.md' },
|
|
24
|
-
getVariables: (input) => ({
|
|
25
|
-
name: input.threads.assistant.context.name,
|
|
26
|
-
}),
|
|
27
|
-
});
|
|
28
|
-
(0, test_fns_1.then)('there should be a devtime error on instantiation', async () => {
|
|
29
|
-
(0, genStepImagineViaTemplate_1.genStepImagineViaTemplate)({
|
|
30
|
-
slug: 'test-slug',
|
|
31
|
-
readme: 'testing imagine via template',
|
|
32
|
-
stitchee: 'assistant',
|
|
33
|
-
// @ts-expect-error: Property 'name' is missing in type 'ThreadContextRole<"assistant">' but required in type '{ role: "assistant"; name: string; }'.ts(2322)
|
|
34
|
-
template,
|
|
35
|
-
imagine: async (prompt) => `AI said: ${prompt}`,
|
|
36
|
-
deprompt: ({ input, output }) => ({
|
|
37
|
-
input: { prompt: input },
|
|
38
|
-
output: { content: output },
|
|
39
|
-
}),
|
|
40
|
-
});
|
|
41
|
-
});
|
|
42
|
-
});
|
|
43
|
-
(0, test_fns_1.given)('a prompt template and imagine step with compatible threads', () => {
|
|
44
|
-
const threads = {
|
|
45
|
-
assistant: (0, genThread_1.genThread)({ role: 'assistant', name: 'Casey' }),
|
|
46
|
-
};
|
|
47
|
-
const template = (0, genTemplate_1.genTemplate)({
|
|
48
|
-
ref: { uri: 'path/to/template.md' },
|
|
49
|
-
getVariables: (input) => ({
|
|
50
|
-
name: input.threads.assistant.context.name,
|
|
51
|
-
}),
|
|
52
|
-
});
|
|
53
|
-
(0, test_fns_1.when)('creating a StitchStepImagine', () => {
|
|
54
|
-
useTemplate_1.useTemplate.mockImplementation(async (input) => {
|
|
55
|
-
console.log({ input });
|
|
56
|
-
const vars = await input.variables;
|
|
57
|
-
return `hydrated: ${vars.name}`;
|
|
58
|
-
});
|
|
59
|
-
const imagineStep = (0, genStepImagineViaTemplate_1.genStepImagineViaTemplate)({
|
|
60
|
-
slug: 'test-slug',
|
|
61
|
-
readme: 'testing imagine via template',
|
|
62
|
-
stitchee: 'assistant',
|
|
63
|
-
template,
|
|
64
|
-
imagine: async (prompt) => `AI said: ${prompt}`,
|
|
65
|
-
deprompt: ({ input, output }) => ({
|
|
66
|
-
input: { prompt: input },
|
|
67
|
-
output: { content: output },
|
|
68
|
-
}),
|
|
69
|
-
});
|
|
70
|
-
(0, test_fns_1.then)('it defines a valid imagine step', async () => {
|
|
71
|
-
expect(imagineStep.form).toBe('IMAGINE');
|
|
72
|
-
expect(imagineStep.slug).toBe('test-slug');
|
|
73
|
-
expect(imagineStep.stitchee).toBe('assistant');
|
|
74
|
-
});
|
|
75
|
-
(0, test_fns_1.then)('it renders the prompt using useTemplate()', async () => {
|
|
76
|
-
const prompt = await imagineStep.enprompt({ threads });
|
|
77
|
-
expect(prompt).toBe('hydrated: Casey');
|
|
78
|
-
expect(useTemplate_1.useTemplate).toHaveBeenCalledWith({
|
|
79
|
-
ref: { uri: 'path/to/template.md' },
|
|
80
|
-
variables: { name: 'Casey' },
|
|
81
|
-
});
|
|
82
|
-
});
|
|
83
|
-
(0, test_fns_1.then)('it runs the imagine function with the prompt', async () => {
|
|
84
|
-
const result = await imagineStep.imagine('a prompt', context);
|
|
85
|
-
expect(result).toBe('AI said: a prompt');
|
|
86
|
-
});
|
|
87
|
-
(0, test_fns_1.then)('it transforms the output with deprompt', () => {
|
|
88
|
-
const deprompted = imagineStep.deprompt({
|
|
89
|
-
threads,
|
|
90
|
-
promptIn: 'abc',
|
|
91
|
-
promptOut: 'xyz',
|
|
92
|
-
});
|
|
93
|
-
expect(deprompted).toEqual({
|
|
94
|
-
input: { prompt: 'abc' },
|
|
95
|
-
output: { content: 'xyz' },
|
|
96
|
-
});
|
|
97
|
-
});
|
|
98
|
-
});
|
|
99
|
-
(0, test_fns_1.when)('passing an invalid stitchee', () => {
|
|
100
|
-
(0, test_fns_1.then)('TypeScript throws an error', () => {
|
|
101
|
-
(0, genStepImagineViaTemplate_1.genStepImagineViaTemplate)({
|
|
102
|
-
slug: 'invalid',
|
|
103
|
-
readme: 'should fail',
|
|
104
|
-
// @ts-expect-error 'ghost' is not a valid stitchee
|
|
105
|
-
stitchee: 'ghost',
|
|
106
|
-
template,
|
|
107
|
-
imagine: async (prompt) => `ghost: ${prompt}`,
|
|
108
|
-
});
|
|
109
|
-
});
|
|
110
|
-
});
|
|
111
|
-
(0, test_fns_1.when)('passing a non-literal stitchee key', () => {
|
|
112
|
-
const stitchee = 'assistant';
|
|
113
|
-
(0, test_fns_1.then)('TypeScript throws an error', () => {
|
|
114
|
-
(0, genStepImagineViaTemplate_1.genStepImagineViaTemplate)({
|
|
115
|
-
slug: 'bad-key',
|
|
116
|
-
readme: 'non-literal stitchee',
|
|
117
|
-
// @ts-expect-error stitchee must be a literal keyof threads
|
|
118
|
-
stitchee,
|
|
119
|
-
template,
|
|
120
|
-
imagine: async () => `result`,
|
|
121
|
-
});
|
|
122
|
-
});
|
|
123
|
-
});
|
|
124
|
-
});
|
|
125
|
-
});
|
|
126
|
-
//# sourceMappingURL=genStepImagineViaTemplate.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"genStepImagineViaTemplate.test.js","sourceRoot":"","sources":["../../../src/logic/template/genStepImagineViaTemplate.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const rhachet_artifact_git_1 = require("rhachet-artifact-git");
|
|
4
|
-
const test_fns_1 = require("test-fns");
|
|
5
|
-
const genThread_1 = require("../thread/genThread");
|
|
6
|
-
const genTemplate_1 = require("./genTemplate");
|
|
7
|
-
const ref = { uri: __dirname + '/.temp/useTemplate.example1.md' };
|
|
8
|
-
const templateArt = (0, rhachet_artifact_git_1.genArtifactGitFile)(ref);
|
|
9
|
-
describe('genTemplate', () => {
|
|
10
|
-
(0, test_fns_1.given)('a valid template and threads with nested values', () => {
|
|
11
|
-
const threads = {
|
|
12
|
-
person: (0, genThread_1.genThread)({
|
|
13
|
-
role: 'person',
|
|
14
|
-
name: 'Casey',
|
|
15
|
-
meta: { day: 'Monday' },
|
|
16
|
-
}),
|
|
17
|
-
};
|
|
18
|
-
(0, test_fns_1.when)('calling use() on a hydrated template', () => {
|
|
19
|
-
const template = (0, genTemplate_1.genTemplate)({
|
|
20
|
-
ref,
|
|
21
|
-
getVariables: (input) => ({
|
|
22
|
-
name: input.threads.person.context.name,
|
|
23
|
-
meta: input.threads.person.context.meta,
|
|
24
|
-
}),
|
|
25
|
-
});
|
|
26
|
-
(0, test_fns_1.then)('it returns the fully hydrated string', async () => {
|
|
27
|
-
await templateArt.set({
|
|
28
|
-
content: 'Hello $.rhachet{name} — today is $.rhachet{meta.day}',
|
|
29
|
-
});
|
|
30
|
-
const result = await template.use({ threads });
|
|
31
|
-
expect(result).toBe('Hello Casey — today is Monday');
|
|
32
|
-
});
|
|
33
|
-
});
|
|
34
|
-
});
|
|
35
|
-
(0, test_fns_1.given)('a template with deeply nested async variables', () => {
|
|
36
|
-
const threads = {
|
|
37
|
-
session: (0, genThread_1.genThread)({
|
|
38
|
-
role: 'session',
|
|
39
|
-
user: { name: 'Jordan', details: { role: 'admin' } },
|
|
40
|
-
}),
|
|
41
|
-
};
|
|
42
|
-
(0, test_fns_1.when)('calling use() with async getVariables', () => {
|
|
43
|
-
const template = (0, genTemplate_1.genTemplate)({
|
|
44
|
-
ref,
|
|
45
|
-
getVariables: async (input) => ({
|
|
46
|
-
user: input.threads.session.context.user,
|
|
47
|
-
}),
|
|
48
|
-
});
|
|
49
|
-
(0, test_fns_1.then)('it correctly interpolates the nested keys', async () => {
|
|
50
|
-
await templateArt.set({
|
|
51
|
-
content: 'User: $.rhachet{user.name}, Role: $.rhachet{user.details.role}',
|
|
52
|
-
});
|
|
53
|
-
const result = await template.use({ threads });
|
|
54
|
-
expect(result).toBe('User: Jordan, Role: admin');
|
|
55
|
-
});
|
|
56
|
-
});
|
|
57
|
-
});
|
|
58
|
-
(0, test_fns_1.given)('a template that references a missing variable', () => {
|
|
59
|
-
const threads = {
|
|
60
|
-
user: (0, genThread_1.genThread)({ role: 'user', name: 'Sam' }),
|
|
61
|
-
};
|
|
62
|
-
(0, test_fns_1.when)('calling use() with missing $.rhachet{missing}', () => {
|
|
63
|
-
const template = (0, genTemplate_1.genTemplate)({
|
|
64
|
-
ref,
|
|
65
|
-
getVariables: (input) => ({
|
|
66
|
-
name: input.threads.user.context.name,
|
|
67
|
-
}),
|
|
68
|
-
});
|
|
69
|
-
(0, test_fns_1.then)('it throws a missing variable error', async () => {
|
|
70
|
-
await templateArt.set({
|
|
71
|
-
content: 'Hello $.rhachet{name} and $.rhachet{missing}',
|
|
72
|
-
});
|
|
73
|
-
await expect(template.use({ threads })).rejects.toThrow('missing variable for $.rhachet{missing} in template');
|
|
74
|
-
});
|
|
75
|
-
});
|
|
76
|
-
});
|
|
77
|
-
(0, test_fns_1.given)('a non-existent template file', () => {
|
|
78
|
-
const badRef = { uri: __dirname + '/.temp/does-not-exist.md' };
|
|
79
|
-
(0, test_fns_1.when)('calling use() on a template with a missing file', () => {
|
|
80
|
-
const threads = {
|
|
81
|
-
ghost: (0, genThread_1.genThread)({ role: 'ghost' }),
|
|
82
|
-
};
|
|
83
|
-
const template = (0, genTemplate_1.genTemplate)({
|
|
84
|
-
ref: badRef,
|
|
85
|
-
getVariables: () => ({
|
|
86
|
-
hello: 'world',
|
|
87
|
-
}),
|
|
88
|
-
});
|
|
89
|
-
(0, test_fns_1.then)('it throws a file missing error', async () => {
|
|
90
|
-
await expect(template.use({ threads })).rejects.toThrow('template artifact does not exist');
|
|
91
|
-
});
|
|
92
|
-
});
|
|
93
|
-
});
|
|
94
|
-
(0, test_fns_1.given)('an invalid getVariables that references a nonexistent thread role', () => {
|
|
95
|
-
(0, test_fns_1.when)('defining the template', () => {
|
|
96
|
-
(0, test_fns_1.then)('TypeScript throws a compile-time error', () => {
|
|
97
|
-
(0, genTemplate_1.genTemplate)({
|
|
98
|
-
ref,
|
|
99
|
-
getVariables: (input) =>
|
|
100
|
-
// @ts-expect-error - threads.ghost does not exist
|
|
101
|
-
input.threads.ghost.context.name,
|
|
102
|
-
});
|
|
103
|
-
});
|
|
104
|
-
});
|
|
105
|
-
});
|
|
106
|
-
(0, test_fns_1.given)('an invalid getVariables that returns a non-object', () => {
|
|
107
|
-
(0, test_fns_1.when)('defining the template', () => {
|
|
108
|
-
(0, test_fns_1.then)('TypeScript throws a compile-time error', () => {
|
|
109
|
-
(0, genTemplate_1.genTemplate)({
|
|
110
|
-
ref,
|
|
111
|
-
// @ts-expect-error - return must be object-like
|
|
112
|
-
getVariables: () => 'just a string',
|
|
113
|
-
});
|
|
114
|
-
});
|
|
115
|
-
});
|
|
116
|
-
});
|
|
117
|
-
});
|
|
118
|
-
//# sourceMappingURL=genTemplate.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"genTemplate.test.js","sourceRoot":"","sources":["../../../src/logic/template/genTemplate.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const rhachet_artifact_git_1 = require("rhachet-artifact-git");
|
|
4
|
-
const genThread_1 = require("../thread/genThread");
|
|
5
|
-
const genTemplate_1 = require("./genTemplate");
|
|
6
|
-
test('hydrates a real template using thread-derived variables', async () => {
|
|
7
|
-
const ref = { uri: __dirname + '/.temp/useTemplate.example1.md' };
|
|
8
|
-
await (0, rhachet_artifact_git_1.genArtifactGitFile)(ref).set({
|
|
9
|
-
content: 'Hello $.rhachet{name} — today is $.rhachet{meta.day}',
|
|
10
|
-
});
|
|
11
|
-
const threads = {
|
|
12
|
-
person: (0, genThread_1.genThread)({
|
|
13
|
-
role: 'person',
|
|
14
|
-
name: 'Casey',
|
|
15
|
-
meta: { day: 'Monday' },
|
|
16
|
-
}),
|
|
17
|
-
};
|
|
18
|
-
const template = (0, genTemplate_1.genTemplate)({
|
|
19
|
-
ref,
|
|
20
|
-
getVariables: (input) => ({
|
|
21
|
-
name: input.threads.person.context.name,
|
|
22
|
-
meta: input.threads.person.context.meta,
|
|
23
|
-
}),
|
|
24
|
-
});
|
|
25
|
-
const result = await template.use({ threads });
|
|
26
|
-
expect(result).toBe('Hello Casey — today is Monday');
|
|
27
|
-
});
|
|
28
|
-
//# sourceMappingURL=useTemplate.integration.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useTemplate.integration.test.js","sourceRoot":"","sources":["../../../src/logic/template/useTemplate.integration.test.ts"],"names":[],"mappings":";;AAAA,+DAA0D;AAE1D,mDAAgD;AAChD,+CAA4C;AAE5C,IAAI,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;IACzE,MAAM,GAAG,GAAG,EAAE,GAAG,EAAE,SAAS,GAAG,gCAAgC,EAAE,CAAC;IAElE,MAAM,IAAA,yCAAkB,EAAC,GAAG,CAAC,CAAC,GAAG,CAAC;QAChC,OAAO,EAAE,sDAAsD;KAChE,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG;QACd,MAAM,EAAE,IAAA,qBAAS,EAAC;YAChB,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE;SACxB,CAAC;KACH,CAAC;IAEF,MAAM,QAAQ,GAAG,IAAA,yBAAW,EAAC;QAC3B,GAAG;QACH,YAAY,EAAE,CAAC,KAAkC,EAAE,EAAE,CAAC,CAAC;YACrD,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;YACvC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;SACxC,CAAC;KACH,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IAE/C,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;AACvD,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const getStitch_1 = require("./getStitch");
|
|
4
|
-
describe('getStitch', () => {
|
|
5
|
-
const makeStitch = (input) => input;
|
|
6
|
-
it('returns null for empty array', () => {
|
|
7
|
-
const result = (0, getStitch_1.getStitch)({ from: [] });
|
|
8
|
-
expect(result).toBeNull();
|
|
9
|
-
});
|
|
10
|
-
it('returns the last stitch if order is not set and no filter is provided', () => {
|
|
11
|
-
const stitches = [
|
|
12
|
-
makeStitch({ input: 'a', output: 'first' }),
|
|
13
|
-
makeStitch({ input: 'b', output: 'second' }),
|
|
14
|
-
makeStitch({ input: 'c', output: 'third' }),
|
|
15
|
-
];
|
|
16
|
-
const result = (0, getStitch_1.getStitch)({ from: stitches });
|
|
17
|
-
expect(result?.output).toBe('third');
|
|
18
|
-
});
|
|
19
|
-
it('returns the last matching stitch with DESC order and predicate', () => {
|
|
20
|
-
const stitches = [
|
|
21
|
-
makeStitch({ input: 'x', output: { form: 'A', value: 1 } }),
|
|
22
|
-
makeStitch({ input: 'y', output: { form: 'B', value: 2 } }),
|
|
23
|
-
makeStitch({ input: 'z', output: { form: 'A', value: 3 } }),
|
|
24
|
-
];
|
|
25
|
-
const result = (0, getStitch_1.getStitch)({
|
|
26
|
-
from: stitches,
|
|
27
|
-
order: 'DESC',
|
|
28
|
-
where: (s) => s.output.form === 'A',
|
|
29
|
-
});
|
|
30
|
-
expect(result?.output.form).toBe('A');
|
|
31
|
-
expect(result?.output.value).toBe(3); // latest A
|
|
32
|
-
});
|
|
33
|
-
it('returns null if no stitch matches the predicate', () => {
|
|
34
|
-
const stitches = [
|
|
35
|
-
makeStitch({ input: 'x', output: { form: 'X' } }),
|
|
36
|
-
makeStitch({ input: 'y', output: { form: 'Y' } }),
|
|
37
|
-
];
|
|
38
|
-
const result = (0, getStitch_1.getStitch)({
|
|
39
|
-
from: stitches,
|
|
40
|
-
where: (s) => s.output.form === 'Z',
|
|
41
|
-
});
|
|
42
|
-
expect(result).toBeNull();
|
|
43
|
-
});
|
|
44
|
-
it('raises a type error if the predicate type is incorrect', () => {
|
|
45
|
-
const stitches = [
|
|
46
|
-
makeStitch({ input: 'x', output: { form: 'X' } }),
|
|
47
|
-
makeStitch({ input: 'y', output: { yarn: 'Y' } }),
|
|
48
|
-
];
|
|
49
|
-
const result = (0, getStitch_1.getStitch)({
|
|
50
|
-
from: stitches,
|
|
51
|
-
where: (s) => s.output.form,
|
|
52
|
-
});
|
|
53
|
-
// should resolve the type correctly
|
|
54
|
-
expect(result.output.form);
|
|
55
|
-
// @ts-expect-error: Type 'string' is not assignable to type 'number'.
|
|
56
|
-
const check = result.output.form;
|
|
57
|
-
expect(check);
|
|
58
|
-
// @ts-expect-error: Property 'yarn' does not exist on type 'Stitch<{ form: string; }>'.ts(2339)
|
|
59
|
-
expect(result.output.yarn);
|
|
60
|
-
});
|
|
61
|
-
it('raises a type error if the predicate is not a type guard', () => {
|
|
62
|
-
const stitches = [
|
|
63
|
-
makeStitch({ input: 'a', output: 'foo' }),
|
|
64
|
-
makeStitch({ input: 'b', output: 'bar' }),
|
|
65
|
-
];
|
|
66
|
-
(0, getStitch_1.getStitch)({
|
|
67
|
-
from: stitches,
|
|
68
|
-
// @ts-expect-error - predicate must return a type guard, not boolean
|
|
69
|
-
where: (s) => typeof s.output === 'string',
|
|
70
|
-
});
|
|
71
|
-
});
|
|
72
|
-
});
|
|
73
|
-
//# sourceMappingURL=getStitch.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getStitch.test.js","sourceRoot":"","sources":["../../../src/logic/thread/getStitch.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const test_fns_1 = require("test-fns");
|
|
4
|
-
const genContextLogTrail_1 = require("../../../.test/genContextLogTrail");
|
|
5
|
-
const StitchStep_1 = require("../../../domain/objects/StitchStep");
|
|
6
|
-
const genContextStitchTrail_1 = require("../../context/genContextStitchTrail");
|
|
7
|
-
const genThread_1 = require("../../thread/genThread");
|
|
8
|
-
const stitcherReturn42 = new StitchStep_1.StitchStepCompute({
|
|
9
|
-
slug: `return-42`,
|
|
10
|
-
form: 'COMPUTE',
|
|
11
|
-
readme: null,
|
|
12
|
-
stitchee: 'main',
|
|
13
|
-
invoke: () => ({ input: null, output: 42 }),
|
|
14
|
-
});
|
|
15
|
-
const stitcherReturnHello = new StitchStep_1.StitchStepCompute({
|
|
16
|
-
slug: `return-hello`,
|
|
17
|
-
form: 'COMPUTE',
|
|
18
|
-
readme: null,
|
|
19
|
-
stitchee: 'main',
|
|
20
|
-
invoke: () => ({ input: null, output: 'hello' }),
|
|
21
|
-
});
|
|
22
|
-
const stitcherChooseReturn = new StitchStep_1.StitchStepCompute({
|
|
23
|
-
slug: 'choose-return',
|
|
24
|
-
form: 'COMPUTE',
|
|
25
|
-
readme: null,
|
|
26
|
-
stitchee: 'main',
|
|
27
|
-
invoke: () => ({ input: null, output: { choice: { slug: 'return-42' } } }),
|
|
28
|
-
});
|
|
29
|
-
describe('GStitcherInferredFromChoice', () => {
|
|
30
|
-
(0, test_fns_1.given)('a decider and two options with different output types', () => {
|
|
31
|
-
const options = [stitcherReturn42, stitcherReturnHello];
|
|
32
|
-
const decider = stitcherChooseReturn;
|
|
33
|
-
(0, test_fns_1.then)('it should merge threads and context, and infer a union output', () => {
|
|
34
|
-
const threads = {
|
|
35
|
-
main: (0, genThread_1.genThread)({ role: 'main' }),
|
|
36
|
-
};
|
|
37
|
-
expect(threads);
|
|
38
|
-
const context = {
|
|
39
|
-
...(0, genContextLogTrail_1.genContextLogTrail)(),
|
|
40
|
-
...(0, genContextStitchTrail_1.genContextStitchTrail)(),
|
|
41
|
-
};
|
|
42
|
-
expect(context);
|
|
43
|
-
const output1 = 42;
|
|
44
|
-
const output2 = 'hello';
|
|
45
|
-
expect(typeof output1 === 'number' || typeof output1 === 'string').toBe(true);
|
|
46
|
-
expect(typeof output2 === 'number' || typeof output2 === 'string').toBe(true);
|
|
47
|
-
});
|
|
48
|
-
(0, test_fns_1.then)('it should error if threads has unknown keys', () => {
|
|
49
|
-
const badThreads = {
|
|
50
|
-
// @ts-expect-error extra thread "foo"
|
|
51
|
-
foo: (0, genThread_1.genThread)({ role: 'foo' }),
|
|
52
|
-
};
|
|
53
|
-
expect(badThreads);
|
|
54
|
-
});
|
|
55
|
-
(0, test_fns_1.then)('it should error if context is missing required fields', () => {
|
|
56
|
-
// @ts-expect-error missing context
|
|
57
|
-
const badContext = {};
|
|
58
|
-
expect(badContext);
|
|
59
|
-
});
|
|
60
|
-
(0, test_fns_1.then)('it should error if output is not string or number', () => {
|
|
61
|
-
// @ts-expect-error boolean not allowed
|
|
62
|
-
const badOutput = true;
|
|
63
|
-
expect(badOutput);
|
|
64
|
-
});
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
//# sourceMappingURL=GStitcherInferredFromChoice.generic.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GStitcherInferredFromChoice.generic.test.js","sourceRoot":"","sources":["../../../../src/logic/weave/compose/GStitcherInferredFromChoice.generic.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const test_fns_1 = require("test-fns");
|
|
4
|
-
const genContextLogTrail_1 = require("../../../.test/genContextLogTrail");
|
|
5
|
-
const StitchStep_1 = require("../../../domain/objects/StitchStep");
|
|
6
|
-
const genContextStitchTrail_1 = require("../../context/genContextStitchTrail");
|
|
7
|
-
const genThread_1 = require("../../thread/genThread");
|
|
8
|
-
const asStitcher_1 = require("./asStitcher");
|
|
9
|
-
const genStitchRoute_1 = require("./genStitchRoute");
|
|
10
|
-
describe('GStitcherInferredFromCycle', () => {
|
|
11
|
-
(0, test_fns_1.given)('a single compute step as the repeatee', () => {
|
|
12
|
-
const repeatee = new StitchStep_1.StitchStepCompute({
|
|
13
|
-
slug: 'do-one-thing',
|
|
14
|
-
form: 'COMPUTE',
|
|
15
|
-
readme: null,
|
|
16
|
-
stitchee: 'main',
|
|
17
|
-
invoke: () => ({ input: null, output: 'done' }),
|
|
18
|
-
});
|
|
19
|
-
const decider = new StitchStep_1.StitchStepCompute({
|
|
20
|
-
slug: 'decide-again',
|
|
21
|
-
form: 'COMPUTE',
|
|
22
|
-
readme: null,
|
|
23
|
-
stitchee: 'main',
|
|
24
|
-
invoke: () => ({ input: null, output: { choice: 'release' } }),
|
|
25
|
-
});
|
|
26
|
-
(0, test_fns_1.then)('it should merge threads correctly', () => {
|
|
27
|
-
const threads = {
|
|
28
|
-
main: (0, genThread_1.genThread)({ role: 'main' }),
|
|
29
|
-
};
|
|
30
|
-
expect(threads);
|
|
31
|
-
const badThreads = {
|
|
32
|
-
// @ts-expect-error: extra thread
|
|
33
|
-
foo: (0, genThread_1.genThread)({ role: 'foo' }),
|
|
34
|
-
};
|
|
35
|
-
expect(badThreads);
|
|
36
|
-
});
|
|
37
|
-
(0, test_fns_1.then)('it should merge context from both steps', () => {
|
|
38
|
-
const context = {
|
|
39
|
-
foo: 123,
|
|
40
|
-
flag: true,
|
|
41
|
-
...(0, genContextLogTrail_1.genContextLogTrail)(),
|
|
42
|
-
...(0, genContextStitchTrail_1.genContextStitchTrail)(),
|
|
43
|
-
};
|
|
44
|
-
expect(context);
|
|
45
|
-
// @ts-expect-error: missing context key 'foo'
|
|
46
|
-
const invalid = {
|
|
47
|
-
flag: true,
|
|
48
|
-
};
|
|
49
|
-
expect(invalid);
|
|
50
|
-
});
|
|
51
|
-
(0, test_fns_1.then)('it should infer the output from repeatee', () => {
|
|
52
|
-
const result = 'done';
|
|
53
|
-
expect(result);
|
|
54
|
-
// @ts-expect-error: incorrect type
|
|
55
|
-
const invalid = 'not-done';
|
|
56
|
-
expect(invalid);
|
|
57
|
-
});
|
|
58
|
-
});
|
|
59
|
-
(0, test_fns_1.given)('a repeatee route and a decider', () => {
|
|
60
|
-
const stepA = new StitchStep_1.StitchStepCompute({
|
|
61
|
-
slug: 'step-a',
|
|
62
|
-
form: 'COMPUTE',
|
|
63
|
-
readme: null,
|
|
64
|
-
stitchee: 'main',
|
|
65
|
-
invoke: () => ({ input: null, output: 'A' }),
|
|
66
|
-
});
|
|
67
|
-
const stepB = new StitchStep_1.StitchStepCompute({
|
|
68
|
-
slug: 'step-b',
|
|
69
|
-
form: 'COMPUTE',
|
|
70
|
-
readme: null,
|
|
71
|
-
stitchee: 'main',
|
|
72
|
-
invoke: () => ({ input: null, output: 'B' }),
|
|
73
|
-
});
|
|
74
|
-
const repeatee = (0, asStitcher_1.asStitcher)((0, genStitchRoute_1.genStitchRoute)({
|
|
75
|
-
slug: 'route:combo',
|
|
76
|
-
readme: null,
|
|
77
|
-
sequence: [stepA, stepB],
|
|
78
|
-
}));
|
|
79
|
-
const decider = new StitchStep_1.StitchStepCompute({
|
|
80
|
-
slug: 'decide-loop',
|
|
81
|
-
form: 'COMPUTE',
|
|
82
|
-
readme: null,
|
|
83
|
-
stitchee: 'main',
|
|
84
|
-
invoke: () => ({
|
|
85
|
-
input: null,
|
|
86
|
-
output: { choice: 'release' },
|
|
87
|
-
}),
|
|
88
|
-
});
|
|
89
|
-
(0, test_fns_1.then)('it should merge threads correctly', () => {
|
|
90
|
-
const threads = {
|
|
91
|
-
main: (0, genThread_1.genThread)({ role: 'main' }),
|
|
92
|
-
};
|
|
93
|
-
expect(threads);
|
|
94
|
-
const badThreads = {
|
|
95
|
-
// @ts-expect-error: extra thread not allowed
|
|
96
|
-
foo: (0, genThread_1.genThread)({ role: 'foo' }),
|
|
97
|
-
};
|
|
98
|
-
expect(badThreads);
|
|
99
|
-
});
|
|
100
|
-
(0, test_fns_1.then)('it should merge context from both repeatee and decider', () => {
|
|
101
|
-
const context = {
|
|
102
|
-
a: 'alpha',
|
|
103
|
-
b: 123,
|
|
104
|
-
d: new Date(),
|
|
105
|
-
...(0, genContextLogTrail_1.genContextLogTrail)(),
|
|
106
|
-
...(0, genContextStitchTrail_1.genContextStitchTrail)(),
|
|
107
|
-
};
|
|
108
|
-
expect(context);
|
|
109
|
-
// @ts-expect-error: missing 'b'
|
|
110
|
-
const missingContext = {
|
|
111
|
-
a: 'alpha',
|
|
112
|
-
d: new Date(),
|
|
113
|
-
};
|
|
114
|
-
expect(missingContext);
|
|
115
|
-
const badContext = {
|
|
116
|
-
a: 'alpha',
|
|
117
|
-
b: 123,
|
|
118
|
-
// @ts-expect-error: wrong type for 'd'
|
|
119
|
-
d: 'not-a-date',
|
|
120
|
-
};
|
|
121
|
-
expect(badContext);
|
|
122
|
-
});
|
|
123
|
-
(0, test_fns_1.then)('it should infer output from repeatee', () => {
|
|
124
|
-
const output = 'B';
|
|
125
|
-
expect(output);
|
|
126
|
-
// @ts-expect-error: invalid output
|
|
127
|
-
const badOutput = 42;
|
|
128
|
-
expect(badOutput);
|
|
129
|
-
});
|
|
130
|
-
});
|
|
131
|
-
});
|
|
132
|
-
//# sourceMappingURL=GStitcherInferredFromCycle.generic.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GStitcherInferredFromCycle.generic.test.js","sourceRoot":"","sources":["../../../../src/logic/weave/compose/GStitcherInferredFromCycle.generic.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|