MCPcopy
hub / github.com/anomalyco/opencode / countedResponsesLayer

Function countedResponsesLayer

packages/llm/test/executor.test.ts:41–60  ·  view source on GitHub ↗
(attempts: Ref.Ref<number>, responses: ReadonlyArray<Response>)

Source from the content-addressed store, hash-verified

39 )
40
41const countedResponsesLayer = (attempts: Ref.Ref<number>, responses: ReadonlyArray<Response>) =>
42 RequestExecutor.layer.pipe(
43 Layer.provide(
44 Layer.unwrap(
45 Effect.gen(function* () {
46 const cursor = yield* Ref.make(0)
47 return Layer.succeed(
48 HttpClient.HttpClient,
49 HttpClient.make((request) =>
50 Effect.gen(function* () {
51 yield* Ref.update(attempts, (value) => value + 1)
52 const index = yield* Ref.getAndUpdate(cursor, (value) => value + 1)
53 return HttpClientResponse.fromWeb(request, responses[index] ?? responses[responses.length - 1])
54 }),
55 ),
56 )
57 }),
58 ),
59 ),
60 )
61
62const randomMidpoint = {
63 nextDoubleUnsafe: () => 0.5,

Callers 1

executor.test.tsFile · 0.85

Calls 2

updateMethod · 0.65
makeMethod · 0.45

Tested by

no test coverage detected