1effect/Effect#acquireReleaseInterruptible:
2 replacement: "Effect.acquireRelease"
3 note: "Pass `{ interruptible: true }` in the options object. Adapt arguments and imports to the v4 API."
4effect/Effect#Adapter:
5 replacement: "none"
6 note: "The generator adapter type was removed; yield Effect values directly inside `Effect.gen`. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
7effect/Effect#All:
8 replacement: "Effect.All"
9 note: "Still exported in v4; update call sites for the revised signature, options, and channel inference."
10effect/Effect#All.ExtractMode:
11 replacement: "Effect.All.Return"
12 note: "The `either` extraction helper was removed; use `mode: \"result\"` and the v4 return helper. Adapt arguments and imports to the v4 API."
13effect/Effect#allowInterrupt:
14 replacement: "Effect.yieldNow"
15 note: "Yield to the scheduler to create an interruptible checkpoint. Adapt arguments and imports to the v4 API."
16effect/Effect#allSuccesses:
17 replacement: "Effect.all"
18 note: "Run with `{ mode: \"result\" }`, then retain `Result.Success` values. Adapt arguments and imports to the v4 API."
19effect/Effect#allWith:
20 replacement: "Effect.all"
21 note: "Wrap `Effect.all(values, options)` in a lambda when a data-last combinator is needed. Adapt arguments and imports to the v4 API."
22effect/Effect#annotateLogs:
23 include: true
24 replacement: "Effect.annotateLogs"
25 note: "Still exported in v4; update call sites for the revised signature, options, and channel inference."
26effect/Effect#ap:
27 replacement: "Effect.zipWith"
28 note: "Zip the function effect and value effect, then apply the function in the combiner. Adapt arguments and imports to the v4 API."
29effect/Effect#asSomeError:
30 replacement: "Effect.mapError"
31 note: "Map errors with `Option.some`. Adapt arguments and imports to the v4 API."
32effect/Effect#async:
33 replacement: "Effect.callback"
34 note: "Use the renamed callback constructor. Adapt arguments and imports to the v4 API."
35effect/Effect#asyncEffect:
36 replacement: "Effect.callback"
37 note: "The callback registration may return an Effect cleanup action in v4. Adapt arguments and imports to the v4 API."
38effect/Effect#bindAll:
39 replacement: "Effect.bind + Effect.all"
40 note: "Bind the result of `Effect.all` explicitly in the do-notation pipeline. Adapt arguments and imports to the v4 API."
41effect/Effect#blocked:
42 replacement: "none"
43 note: "The request-runtime blocked constructor is internal; express work with `Effect.request` and a `RequestResolver`. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
44effect/Effect#Blocked:
45 replacement: "none"
46 note: "The request-runtime blocked model is internal; use public `Request` and `RequestResolver` APIs. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
47effect/Effect#cachedFunction:
48 replacement: "none"
49 note: "The function memoizer was removed; use `Cache` for keyed effectful caching. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
50effect/Effect#cacheRequestResult:
51 replacement: "none"
52 note: "Direct request-cache mutation was removed; configure request resolution through `RequestResolver`. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
53effect/Effect#catch:
54 replacement: "Effect.catch"
55 note: "Still exported in v4; update call sites for the revised signature, options, and channel inference."
56effect/Effect#catchAll:
57 replacement: "Effect.catch"
58 note: "Use the shortened v4 error-handler name. Adapt arguments and imports to the v4 API."
59effect/Effect#catchAllCause:
60 replacement: "Effect.catchCause"
61 note: "Use the shortened v4 cause-handler name. Adapt arguments and imports to the v4 API."
62effect/Effect#catchAllDefect:
63 replacement: "Effect.catchDefect"
64 note: "Use the shortened v4 defect-handler name. Adapt arguments and imports to the v4 API."
65effect/Effect#catchSome:
66 replacement: "Effect.catchFilter"
67 note: "Replace the Option-returning partial function with a `Filter` and handler. Adapt arguments and imports to the v4 API."
68effect/Effect#catchSomeCause:
69 replacement: "Effect.catchCauseFilter"
70 note: "Replace the Option-returning partial function with a cause `Filter` and handler. Adapt arguments and imports to the v4 API."
71effect/Effect#catchSomeDefect:
72 replacement: "none"
73 note: "Use `Effect.catchDefect` and branch explicitly, re-dying for unmatched defects. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
74effect/Effect#cause:
75 replacement: "Effect.exit"
76 note: "Inspect `Exit.Failure.cause`; v4 no longer exposes an Effect-only cause extractor. Adapt arguments and imports to the v4 API."
77effect/Effect#checkInterruptible:
78 replacement: "none"
79 note: "Interruptibility introspection was removed; structure the region explicitly with `Effect.interruptible` or `Effect.uninterruptible`. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
80effect/Effect#clock:
81 replacement: "Clock.Clock"
82 note: "Services are Effects in v4; yield or compose `Clock.Clock` directly. Adapt imports to the v4 API."
83effect/Effect#configProviderWith:
84 replacement: "ConfigProvider.ConfigProvider.use"
85 note: "Use the ConfigProvider reference's `.use` helper to invoke the effectful callback. Adapt arguments and imports to the v4 API."
86effect/Effect#console:
87 replacement: "Console.Console"
88 note: "Services are Effects in v4; yield or compose `Console.Console` directly. Adapt imports to the v4 API."
89effect/Effect#consoleWith:
90 replacement: "Console.Console.use"
91 note: "Use the Console reference's `.use` helper to invoke the effectful callback. Adapt arguments and imports to the v4 API."
92effect/Effect#contextWithEffect:
93 replacement: "Effect.contextWith"
94 note: "`contextWith` accepts an effectful callback in v4. Adapt arguments and imports to the v4 API."
95effect/Effect#currentPropagatedSpan:
96 replacement: "Effect.currentParentSpan"
97 note: "Use the current parent span representation. Adapt arguments and imports to the v4 API."
98effect/Effect#custom:
99 replacement: "none"
100 note: "The low-level custom instruction constructor was removed; use public constructors such as `Effect.sync`, `Effect.suspend`, or `Effect.callback`. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
101effect/Effect#daemonChildren:
102 replacement: "Effect.awaitAllChildren"
103 note: "Use structured child-fiber waiting, or fork explicitly with `Effect.forkDetach` when detachment is intended. Adapt arguments and imports to the v4 API."
104effect/Effect#descriptor:
105 replacement: "Effect.fiberId"
106 note: "The full fiber descriptor was removed; retrieve the current numeric fiber id. Adapt arguments and imports to the v4 API."
107effect/Effect#descriptorWith:
108 replacement: "Effect.fiberId + Effect.flatMap"
109 note: "Read the current fiber id and invoke the callback explicitly. Adapt arguments and imports to the v4 API."
110effect/Effect#dieMessage:
111 replacement: "Effect.die"
112 note: "Construct the desired defect explicitly and pass it to `Effect.die`. Adapt arguments and imports to the v4 API."
113effect/Effect#dieSync:
114 replacement: "Effect.suspend + Effect.die"
115 note: "Evaluate the lazy defect inside `Effect.suspend`. Adapt arguments and imports to the v4 API."
116effect/Effect#diffFiberRefs:
117 replacement: "none"
118 note: "The public FiberRefs diff API was removed; model fiber-local state with context references and scoped `Effect.provideService`. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
119effect/Effect#disconnect:
120 replacement: "Effect.forkDetach"
121 note: "Fork explicitly and decide how to await or interrupt the detached Fiber. Adapt arguments and imports to the v4 API."
122effect/Effect#dropUntil:
123 replacement: "none"
124 note: "Use an explicit `Effect.gen` loop for an effectful stopping predicate. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
125effect/Effect#dropWhile:
126 replacement: "none"
127 note: "Use an explicit `Effect.gen` loop, or `Array.dropWhile` when the predicate is pure. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
128effect/Effect#Effect:
129 replacement: "Effect.Effect"
130 note: "Still exported in v4; update call sites for the revised signature, options, and channel inference."
131effect/Effect#Effect.AsEffect:
132 replacement: "Effect.Effect"
133 note: "Use the Effect type directly and extract channels with `Effect.Success`, `Effect.Error`, and `Effect.Services`. Adapt arguments and imports to the v4 API."
134effect/Effect#Effect.Context:
135 replacement: "Effect.Services"
136 note: "Use the renamed type-level extractor for required services. Adapt arguments and imports to the v4 API."
137effect/Effect#Effect.VarianceStruct:
138 replacement: "Effect.Variance"
139 note: "Use the v4 variance interface. Adapt arguments and imports to the v4 API."
140effect/Effect#EffectGenerator:
141 replacement: "Effect.EffectIterator"
142 note: "Use the v4 iterator type used by generator delegation. Adapt arguments and imports to the v4 API."
143effect/Effect#EffectTypeId:
144 replacement: "Effect.TypeId"
145 note: "Use the v4 type-level Effect identifier. Adapt arguments and imports to the v4 API."
146effect/Effect#EffectUnify:
147 replacement: "Effect.EffectUnify"
148 note: "Still exported in v4; update call sites for the revised signature, options, and channel inference."
149effect/Effect#EffectUnifyIgnore:
150 replacement: "none"
151 note: "The internal unification-ignore helper is no longer public; rely on v4 Effect inference. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
152effect/Effect#either:
153 replacement: "Effect.result"
154 note: "V4 represents typed success/failure as `Result` instead of `Either`. Adapt arguments and imports to the v4 API."
155effect/Effect#ensureErrorType:
156 replacement: "Effect.satisfiesErrorType"
157 note: "Use the renamed compile-time channel constraint. Adapt arguments and imports to the v4 API."
158effect/Effect#ensureRequirementsType:
159 replacement: "Effect.satisfiesServicesType"
160 note: "Use the renamed compile-time services constraint. Adapt arguments and imports to the v4 API."
161effect/Effect#ensureSuccessType:
162 replacement: "Effect.satisfiesSuccessType"
163 note: "Use the renamed compile-time channel constraint. Adapt arguments and imports to the v4 API."
164effect/Effect#ensuringChild:
165 replacement: "Effect.ensuring + Fiber APIs"
166 note: "Track the child Fiber explicitly and run the finalizer with `Effect.ensuring`. Adapt arguments and imports to the v4 API."
167effect/Effect#ensuringChildren:
168 replacement: "Effect.awaitAllChildren + Effect.ensuring"
169 note: "Use structured child waiting and an explicit finalizer. Adapt arguments and imports to the v4 API."
170effect/Effect#every:
171 replacement: "Effect.forEach"
172 note: "Evaluate predicates with `Effect.forEach`, then test the resulting booleans with `Array.every`. Adapt arguments and imports to the v4 API."
173effect/Effect#exists:
174 replacement: "Effect.findFirst"
175 note: "Find the first value satisfying the effectful predicate and test the returned Option. Adapt arguments and imports to the v4 API."
176effect/Effect#fiberIdWith:
177 replacement: "Effect.fiberId + Effect.flatMap"
178 note: "Read the numeric fiber id and invoke the callback explicitly. Adapt arguments and imports to the v4 API."
179effect/Effect#filterEffectOrElse:
180 replacement: "Effect.flatMap"
181 note: "Evaluate the effectful predicate and branch to `Effect.succeed` or the fallback. Adapt arguments and imports to the v4 API."
182effect/Effect#filterEffectOrFail:
183 replacement: "Effect.flatMap"
184 note: "Evaluate the effectful predicate and branch to `Effect.succeed` or `Effect.fail`. Adapt arguments and imports to the v4 API."
185effect/Effect#filterOrDie:
186 replacement: "Effect.filterOrFail + Effect.orDie"
187 note: "Filter with a typed failure, then convert it to a defect. Adapt arguments and imports to the v4 API."
188effect/Effect#filterOrDieMessage:
189 replacement: "Effect.filterOrFail + Effect.orDie"
190 note: "Create the message-bearing error in `filterOrFail`, then convert it to a defect. Adapt arguments and imports to the v4 API."
191effect/Effect#finalizersMask:
192 replacement: "none"
193 note: "Configurable finalizer execution strategies were removed; register ordered finalizers explicitly in a Scope. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
194effect/Effect#flipWith:
195 replacement: "Effect.flip"
196 note: "Flip, apply the transformation, then flip the resulting Effect back. Adapt arguments and imports to the v4 API."
197effect/Effect#fn:
198 replacement: "Effect.fn"
199 note: "Still exported in v4; update call sites for the revised signature, options, and channel inference."
200effect/Effect#fn.Gen:
201 replacement: "Effect.fn.Return"
202 note: "Use the v4 generator-return helper type. Adapt arguments and imports to the v4 API."
203effect/Effect#fn.NonGen:
204 replacement: "Effect.fn.Untraced"
205 note: "Use the v4 function helper type for non-generator wrapping. Adapt arguments and imports to the v4 API."
206effect/Effect#fork:
207 replacement: "Effect.forkChild"
208 note: "Use the renamed structured child-fiber combinator. Adapt arguments and imports to the v4 API."
209effect/Effect#forkAll:
210 replacement: "Effect.forEach + Effect.forkChild"
211 note: "Fork each effect explicitly, or prefer a higher-level concurrent combinator. Adapt arguments and imports to the v4 API."
212effect/Effect#forkDaemon:
213 replacement: "Effect.forkDetach"
214 note: "Use the renamed detached-fiber combinator. Adapt arguments and imports to the v4 API."
215effect/Effect#forkWithErrorHandler:
216 replacement: "Effect.forkChild + Fiber.await"
217 note: "Fork explicitly and observe the Fiber result to handle errors. Adapt arguments and imports to the v4 API."
218effect/Effect#fromFiber:
219 replacement: "Fiber.join"
220 note: "Join the Fiber to obtain an Effect of its result. Adapt arguments and imports to the v4 API."
221effect/Effect#fromFiberEffect:
222 replacement: "Effect.flatMap + Fiber.join"
223 note: "FlatMap the effectful Fiber and join it. Adapt arguments and imports to the v4 API."
224effect/Effect#fromNullable:
225 replacement: "Effect.fromOption + Option.fromNullable"
226 note: "Convert the nullable value to Option, then lift it into Effect. Adapt arguments and imports to the v4 API."
227effect/Effect#functionWithSpan:
228 replacement: "Effect.withSpan"
229 note: "Wrap the function body with a span whose name/options are derived from its arguments. Adapt arguments and imports to the v4 API."
230effect/Effect#FunctionWithSpanOptions:
231 replacement: "Tracer.SpanOptions"
232 note: "Use the v4 tracing options type when wrapping functions with `Effect.withSpan`. Adapt arguments and imports to the v4 API."
233effect/Effect#gen:
234 replacement: "Effect.gen"
235 note: "Still exported in v4; update call sites for the revised signature, options, and channel inference."
236effect/Effect#getFiberRefs:
237 replacement: "none"
238 note: "The FiberRefs collection is no longer public; access individual context references through Effect services. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
239effect/Effect#getRuntimeFlags:
240 replacement: "none"
241 note: "RuntimeFlags are no longer a public Effect service; use supported high-level runtime options. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
242effect/Effect#if:
243 replacement: "Effect.suspend"
244 note: "Select the branch lazily with a JavaScript conditional inside `Effect.suspend`. Adapt arguments and imports to the v4 API."
245effect/Effect#ignoreLogged:
246 replacement: "Effect.ignore"
247 note: "Pass `{ log: true }` to the consolidated ignore combinator. Adapt arguments and imports to the v4 API."
248effect/Effect#inheritFiberRefs:
249 replacement: "none"
250 note: "Bulk FiberRef inheritance was removed; propagate required context references explicitly. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
251effect/Effect#interruptWith:
252 replacement: "Effect.interrupt"
253 note: "V4 interruption uses the current fiber identity; remove the explicit FiberId argument. Adapt arguments and imports to the v4 API."
254effect/Effect#intoDeferred:
255 replacement: "Deferred.into"
256 note: "Use the Deferred module combinator. Adapt arguments and imports to the v4 API."
257effect/Effect#iterate:
258 replacement: "none"
259 note: "Use an explicit stateful `Effect.gen` loop; v4 removed the Effect-specific loop helper. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
260effect/Effect#labelMetrics:
261 replacement: "Metric.withAttributes"
262 note: "Convert labels to metric attributes and scope them around the Effect. Adapt arguments and imports to the v4 API."
263effect/Effect#labelMetricsScoped:
264 replacement: "Metric.withAttributes"
265 note: "Apply metric attributes to the scoped Effect rather than mutating scoped labels. Adapt arguments and imports to the v4 API."
266effect/Effect#LatchUnify:
267 replacement: "Latch.Latch"
268 note: "Latch moved to the standalone `effect/Latch` module; rely on normal v4 inference. Adapt arguments and imports to the v4 API."
269effect/Effect#LatchUnifyIgnore:
270 replacement: "none"
271 note: "The internal Latch unification helper was removed; use `Latch.Latch` directly. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
272effect/Effect#let:
273 replacement: "Effect.let"
274 note: "Still exported in v4; update call sites for the revised signature, options, and channel inference."
275effect/Effect#liftPredicate:
276 replacement: "Effect.filterOrFail"
277 note: "Lift the input with `Effect.succeed` and apply `filterOrFail`. Adapt arguments and imports to the v4 API."
278effect/Effect#linkSpanCurrent:
279 replacement: "Effect.linkSpans"
280 note: "Use the v4 span-link combinator. Adapt arguments and imports to the v4 API."
281effect/Effect#locally:
282 replacement: "Effect.provideService"
283 note: "FiberRef values are context references in v4; provide the reference for the Effect lifetime. Adapt arguments and imports to the v4 API."
284effect/Effect#locallyScoped:
285 replacement: "Effect.provideService"
286 note: "Provide the context reference around the scoped Effect. Adapt arguments and imports to the v4 API."
287effect/Effect#locallyScopedWith:
288 replacement: "Effect.updateServiceScoped"
289 note: "Context references replace FiberRefs in v4; update the reference for the current scope. Adapt arguments and imports to the v4 API."
290effect/Effect#locallyWith:
291 replacement: "Effect.updateService"
292 note: "Context references replace FiberRefs in v4; update the reference around the target Effect. Adapt arguments and imports to the v4 API."
293effect/Effect#logAnnotations:
294 replacement: "References.CurrentLogAnnotations"
295 note: "Context references are Effects in v4; yield or compose `References.CurrentLogAnnotations` directly. Adapt imports to the v4 API."
296effect/Effect#loop:
297 replacement: "none"
298 note: "Use an explicit `Effect.gen` loop and collect results when needed. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
299effect/Effect#makeLatch:
300 replacement: "Latch.make"
301 note: "Latch constructors moved to `effect/Latch`. Adapt arguments and imports to the v4 API."
302effect/Effect#makeSemaphore:
303 replacement: "Semaphore.make"
304 note: "Semaphore constructors moved to `effect/Semaphore`. Adapt arguments and imports to the v4 API."
305effect/Effect#mapAccum:
306 replacement: "Effect.reduce"
307 note: "Carry `[state, output]` through an effectful reduction. Adapt arguments and imports to the v4 API."
308effect/Effect#mapErrorCause:
309 replacement: "Effect.catchCause + Effect.failCause"
310 note: "Transform the Cause in a cause handler and fail with the mapped Cause. Adapt arguments and imports to the v4 API."
311effect/Effect#mapInputContext:
312 replacement: "Effect.contextWith + Effect.provide"
313 note: "Build the required context from the incoming context and provide it explicitly. Adapt arguments and imports to the v4 API."
314effect/Effect#merge:
315 replacement: "Effect.catch"
316 note: "Recover each typed error with `Effect.succeed` so both channels become success values. Adapt arguments and imports to the v4 API."
317effect/Effect#mergeAll:
318 replacement: "Effect.reduce"
319 note: "Reduce the input effects with an effectful accumulator. Adapt arguments and imports to the v4 API."
320effect/Effect#metricLabels:
321 replacement: "Metric.CurrentMetricAttributes"
322 note: "Context references are Effects in v4; yield or compose `Metric.CurrentMetricAttributes` directly. Adapt imports to the v4 API."
323effect/Effect#negate:
324 replacement: "Effect.map"
325 note: "Map the boolean result with logical negation. Adapt arguments and imports to the v4 API."
326effect/Effect#none:
327 replacement: "Effect.flatMap + Option.match"
328 note: "Fail for `Some` and succeed with void for `None`. Adapt arguments and imports to the v4 API."
329effect/Effect#once:
330 replacement: "Effect.cached"
331 note: "Create the cached Effect once, then execute the returned Effect repeatedly. Adapt arguments and imports to the v4 API."
332effect/Effect#optionFromOptional:
333 replacement: "Effect.catchTag"
334 note: "Map success to `Option.some` and recover `NoSuchElementError` with `Option.none`. Adapt arguments and imports to the v4 API."
335effect/Effect#orDieWith:
336 replacement: "Effect.mapError + Effect.orDie"
337 note: "Map the typed error to the desired defect, then convert failures to defects. Adapt arguments and imports to the v4 API."
338effect/Effect#orElse:
339 replacement: "Effect.catch"
340 note: "Ignore the caught error and evaluate the fallback Effect. Adapt arguments and imports to the v4 API."
341effect/Effect#orElseFail:
342 replacement: "Effect.mapError"
343 note: "Replace every typed error with the lazily produced failure value. Adapt arguments and imports to the v4 API."
344effect/Effect#parallelErrors:
345 replacement: "Effect.all"
346 note: "Use `{ mode: \"result\", concurrency: \"unbounded\" }` and collect failures explicitly. Adapt arguments and imports to the v4 API."
347effect/Effect#parallelFinalizers:
348 replacement: "none"
349 note: "Parallel finalizer strategy mutation was removed; fork independent cleanup explicitly when ordering is irrelevant. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
350effect/Effect#partition:
351 include: true
352 replacement: "Effect.partition"
353 note: "The tuple is now [passes, fails], the reverse of v3 [failures, successes]. Every effect still runs, and the outer effect does not fail."
354effect/Effect#patchFiberRefs:
355 replacement: "none"
356 note: "Bulk FiberRefs patching was removed; update individual context references with `Effect.updateService`. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
357effect/Effect#patchRuntimeFlags:
358 replacement: "none"
359 note: "RuntimeFlags patching was removed from the public API; use supported high-level runtime options. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
360effect/Effect#Permit:
361 replacement: "Semaphore.Semaphore"
362 note: "Use the standalone Semaphore API and its `withPermit` / `withPermits` methods. Adapt arguments and imports to the v4 API."
363effect/Effect#raceWith:
364 replacement: "Effect.raceFirst + Fiber APIs"
365 note: "Use `raceFirst` for first completion, or fork both effects and inspect their Exits for custom finishers. Adapt arguments and imports to the v4 API."
366effect/Effect#random:
367 replacement: "Random.Random"
368 note: "Services are Effects in v4; yield or compose `Random.Random` directly. Adapt imports to the v4 API."
369effect/Effect#randomWith:
370 replacement: "Random.Random.use"
371 note: "Use the Random reference's `.use` helper to invoke the effectful callback. Prefer module-level Random operations when possible."
372effect/Effect#reduceEffect:
373 replacement: "Effect.flatMap + Effect.reduce"
374 note: "Evaluate the initial Effect, then reduce the remaining effects. Adapt arguments and imports to the v4 API."
375effect/Effect#reduceRight:
376 replacement: "Effect.reduce"
377 note: "Reverse the input first, then perform the effectful reduction. Adapt arguments and imports to the v4 API."
378effect/Effect#reduceWhile:
379 replacement: "none"
380 note: "Use an explicit `Effect.gen` loop that checks the accumulator before each step. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
381effect/Effect#Repeat:
382 replacement: "Effect.Repeat"
383 note: "Still exported in v4; update call sites for the revised signature, options, and channel inference."
384effect/Effect#Repeat.Options:
385 replacement: "Effect.Repeat.Options"
386 note: "Still exported in v4; update call sites for the revised signature, options, and channel inference."
387effect/Effect#repeatN:
388 replacement: "Effect.repeat"
389 note: "Pass `{ times: n }` to the consolidated repeat combinator. Adapt arguments and imports to the v4 API."
390effect/Effect#Retry:
391 replacement: "Effect.Retry"
392 note: "Still exported in v4; update call sites for the revised signature, options, and channel inference."
393effect/Effect#Retry.Options:
394 replacement: "Effect.Retry.Options"
395 note: "Still exported in v4; update call sites for the revised signature, options, and channel inference."
396effect/Effect#runRequestBlock:
397 replacement: "none"
398 note: "The request-runtime block runner is internal; submit requests with `Effect.request`. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
399effect/Effect#runtime:
400 replacement: "Effect.context + Effect.runForkWith"
401 note: "Capture services as a Context and use the corresponding `run*With` function. Adapt arguments and imports to the v4 API."
402effect/Effect#scheduleForked:
403 replacement: "Effect.schedule + Effect.forkScoped"
404 note: "Schedule the Effect, then fork it in the current Scope. Adapt arguments and imports to the v4 API."
405effect/Effect#scopeWith:
406 replacement: "Effect.scopedWith"
407 note: "Use the renamed scoped callback combinator. Adapt arguments and imports to the v4 API."
408effect/Effect#sequentialFinalizers:
409 replacement: "none"
410 note: "Sequential reverse-order finalization is the normal Scope behavior; remove this wrapper. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
411effect/Effect#Service:
412 replacement: "Context.Service"
413 note: "Replace the `effect` constructor option with `make`. V4 does not generate a `Default` layer or wire `dependencies`; define a `Layer.effect` and provide its dependencies explicitly."
414effect/Effect#Service.AllowedType:
415 replacement: "Context.Service"
416 note: "Service type machinery moved to `Context.Service`; do not reference its internal helper types. Adapt arguments and imports to the v4 API."
417effect/Effect#Service.Class:
418 replacement: "Context.Service"
419 note: "Service classes are now defined with `Context.Service`. Adapt arguments and imports to the v4 API."
420effect/Effect#Service.HasArguments:
421 replacement: "Context.Service"
422 note: "Service constructor typing is handled by `Context.Service`. Adapt arguments and imports to the v4 API."
423effect/Effect#Service.MakeAccessors:
424 replacement: "Context.Service"
425 note: "Use the generated `.use` helper instead of v3 accessor type machinery. Adapt arguments and imports to the v4 API."
426effect/Effect#Service.MakeArguments:
427 replacement: "Context.Service"
428 note: "Pass a `make` Effect in the v4 `Context.Service` options. Adapt arguments and imports to the v4 API."
429effect/Effect#Service.MakeContext:
430 replacement: "Context.Service"
431 note: "Service context typing is inferred by `Context.Service`. Adapt arguments and imports to the v4 API."
432effect/Effect#Service.MakeDeps:
433 replacement: "Layer.provide"
434 note: "Compose service dependencies explicitly with Layers. Adapt arguments and imports to the v4 API."
435effect/Effect#Service.MakeDepsE:
436 replacement: "Layer.Error"
437 note: "Use Layer channel extractors rather than Service internals. Adapt arguments and imports to the v4 API."
438effect/Effect#Service.MakeDepsIn:
439 replacement: "Layer.Services"
440 note: "Use Layer channel extractors rather than Service internals. Adapt arguments and imports to the v4 API."
441effect/Effect#Service.MakeDepsOut:
442 replacement: "Layer.Success"
443 note: "Use Layer channel extractors rather than Service internals. Adapt arguments and imports to the v4 API."
444effect/Effect#Service.MakeError:
445 replacement: "Layer.Error"
446 note: "Use the Layer error-channel extractor. Adapt arguments and imports to the v4 API."
447effect/Effect#Service.MakeService:
448 replacement: "Context.Service"
449 note: "The service shape is inferred by `Context.Service`. Adapt arguments and imports to the v4 API."
450effect/Effect#Service.ProhibitedType:
451 replacement: "Context.Service"
452 note: "Do not reference the removed internal validation type. Adapt arguments and imports to the v4 API."
453effect/Effect#serviceConstants:
454 replacement: "Context.Service.use"
455 note: "Expose constants from the service explicitly or through the generated `use` helper. Adapt arguments and imports to the v4 API."
456effect/Effect#serviceFunction:
457 replacement: "Context.Service.use"
458 note: "Use the service class `.use` helper to build an accessor function. Adapt arguments and imports to the v4 API."
459effect/Effect#serviceFunctionEffect:
460 replacement: "Context.Service.use"
461 note: "Use the service class `.use` helper for effect-returning methods. Adapt arguments and imports to the v4 API."
462effect/Effect#serviceFunctions:
463 replacement: "Context.Service.use"
464 note: "Define explicit service accessors with the generated `.use` helper. Adapt arguments and imports to the v4 API."
465effect/Effect#serviceMembers:
466 replacement: "Context.Service.use"
467 note: "Define explicit service accessors with the generated `.use` helper. Adapt arguments and imports to the v4 API."
468effect/Effect#serviceOptional:
469 replacement: "service"
470 note: "Services are Effects in v4; yield or compose the service key directly. Use `Effect.serviceOption` only when absence is expected."
471effect/Effect#setFiberRefs:
472 replacement: "none"
473 note: "Bulk FiberRefs replacement was removed; provide individual context references. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
474effect/Effect#step:
475 replacement: "none"
476 note: "The low-level Effect stepping API was removed from the public surface. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
477effect/Effect#summarized:
478 replacement: "Effect.gen"
479 note: "Run the summary Effect before and after the target Effect and combine the two measurements explicitly. Adapt arguments and imports to the v4 API."
480effect/Effect#supervised:
481 replacement: "FiberSet"
482 note: "Track explicitly forked Fibers in a scoped `FiberSet` instead of installing a runtime Supervisor. Adapt arguments and imports to the v4 API."
483effect/Effect#Tag:
484 replacement: "Context.Service"
485 note: "Define services with `Context.Service`; use the generated `.use` helper for accessors. Adapt arguments and imports to the v4 API."
486effect/Effect#Tag.AllowedType:
487 replacement: "Context.Service"
488 note: "Tag validation internals were removed; use `Context.Service` directly. Adapt arguments and imports to the v4 API."
489effect/Effect#Tag.ProhibitedType:
490 replacement: "Context.Service"
491 note: "Tag validation internals were removed; use `Context.Service` directly. Adapt arguments and imports to the v4 API."
492effect/Effect#Tag.Proxy:
493 replacement: "Context.Service.use"
494 note: "Replace proxy accessors with the generated `.use` helper. Adapt arguments and imports to the v4 API."
495effect/Effect#tagMetrics:
496 replacement: "Metric.withAttributes"
497 note: "Convert key/value tags to metric attributes. Adapt arguments and imports to the v4 API."
498effect/Effect#tagMetricsScoped:
499 replacement: "Metric.withAttributes"
500 note: "Apply attributes around the scoped Effect. Adapt arguments and imports to the v4 API."
501effect/Effect#takeUntil:
502 replacement: "none"
503 note: "Use an explicit `Effect.gen` loop for an effectful stopping predicate. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
504effect/Effect#takeWhile:
505 replacement: "none"
506 note: "Use an explicit `Effect.gen` loop, or `Array.takeWhile` when the predicate is pure. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
507effect/Effect#tapBoth:
508 replacement: "Effect.tapError + Effect.tap"
509 note: "Tap the failure path first, then tap successful values. Adapt arguments and imports to the v4 API."
510effect/Effect#tapErrorCause:
511 replacement: "Effect.tapCause"
512 note: "Use the shortened v4 cause-tap name. Adapt arguments and imports to the v4 API."
513effect/Effect#timedWith:
514 replacement: "Effect.gen"
515 note: "Read the supplied clock Effect before and after the target and compute the Duration explicitly. Adapt arguments and imports to the v4 API."
516effect/Effect#timeoutFail:
517 replacement: "Effect.timeoutOrElse"
518 note: "Use `Effect.fail(onTimeout())` as the timeout fallback. Adapt arguments and imports to the v4 API."
519effect/Effect#timeoutFailCause:
520 replacement: "Effect.timeoutOrElse"
521 note: "Use `Effect.failCause(onTimeout())` as the timeout fallback. Adapt arguments and imports to the v4 API."
522effect/Effect#timeoutTo:
523 replacement: "Effect.timeoutOrElse + Effect.map"
524 note: "Map successful values first and use the timeout fallback for `onTimeout`. Adapt arguments and imports to the v4 API."
525effect/Effect#tracerWith:
526 replacement: "Tracer.Tracer.use"
527 note: "Use the Tracer reference's `.use` helper to invoke the effectful callback. Adapt arguments and imports to the v4 API."
528effect/Effect#transplant:
529 replacement: "none"
530 note: "Fiber scope grafting was removed; use structured concurrency with `forkChild`, `forkScoped`, or `forkIn`. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
531effect/Effect#transposeMapOption:
532 replacement: "Option.match"
533 note: "Return `Effect.succeedNone` for None and map the Effect result to Some. Adapt arguments and imports to the v4 API."
534effect/Effect#try:
535 replacement: "Effect.try"
536 note: "Use the callback overload for Cause.UnknownError, or the object overload with try and catch to map failures to a custom error. The callback-only overload does not accept a custom error type parameter."
537effect/Effect#tryMap:
538 replacement: "Effect.flatMap + Effect.try"
539 note: "FlatMap the source value into the v4 synchronous try constructor. Adapt arguments and imports to the v4 API."
540effect/Effect#tryMapPromise:
541 replacement: "Effect.flatMap + Effect.tryPromise"
542 note: "FlatMap the source value into the v4 Promise try constructor. Adapt arguments and imports to the v4 API."
543effect/Effect#unless:
544 replacement: "Effect.suspend"
545 note: "Select `Effect.void` or the target Effect with a negated lazy condition. Adapt arguments and imports to the v4 API."
546effect/Effect#unlessEffect:
547 replacement: "Effect.when"
548 note: "Negate the effectful boolean condition, then use the consolidated `when`. Adapt arguments and imports to the v4 API."
549effect/Effect#unsafeMakeLatch:
550 replacement: "Latch.makeUnsafe"
551 note: "The unsafe constructor moved to `effect/Latch`. Adapt arguments and imports to the v4 API."
552effect/Effect#unsafeMakeSemaphore:
553 replacement: "Semaphore.makeUnsafe"
554 note: "The unsafe constructor moved to `effect/Semaphore`. Adapt arguments and imports to the v4 API."
555effect/Effect#unsandbox:
556 replacement: "Effect.catch + Effect.failCause"
557 note: "Treat the sandboxed Cause as an error and fail with that Cause. Adapt arguments and imports to the v4 API."
558effect/Effect#updateFiberRefs:
559 replacement: "none"
560 note: "Bulk FiberRefs updates were removed; update individual context references with `Effect.updateService`. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
561effect/Effect#using:
562 replacement: "Effect.scoped + Effect.flatMap"
563 note: "Acquire inside a fresh Scope, run the use Effect, and close the Scope afterward. Adapt arguments and imports to the v4 API."
564effect/Effect#validateAll:
565 replacement: "Effect.validate"
566 note: "Use the consolidated collection validation combinator. Adapt arguments and imports to the v4 API."
567effect/Effect#validateFirst:
568 replacement: "Effect.firstSuccessOf"
569 note: "Map inputs to validation effects and select the first success; handle accumulated diagnostics explicitly if required. Adapt arguments and imports to the v4 API."
570effect/Effect#validateWith:
571 replacement: "Effect.zipWith"
572 note: "Zip and combine the Effects; use `mode: \"result\"` when both failures must be retained. Adapt arguments and imports to the v4 API."
573effect/Effect#whenEffect:
574 replacement: "Effect.when"
575 note: "The v4 `when` combinator accepts an effectful boolean condition directly. Adapt arguments and imports to the v4 API."
576effect/Effect#whenFiberRef:
577 replacement: "reference.use + Effect.when"
578 note: "Use the Context.Reference `.use` helper to inspect the value, test it, and branch explicitly. Adapt arguments and imports to the v4 API."
579effect/Effect#whenLogLevel:
580 replacement: "none"
581 note: "Log-level conditional execution was removed; configure Logger filtering and guard optional work explicitly. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
582effect/Effect#whenRef:
583 replacement: "Ref.get + Effect.flatMap"
584 note: "Read the Ref, test it, and branch explicitly. Adapt arguments and imports to the v4 API."
585effect/Effect#withClock:
586 replacement: "Effect.provideService"
587 note: "Provide `Clock.Clock` for the target Effect. Adapt arguments and imports to the v4 API."
588effect/Effect#withClockScoped:
589 replacement: "Effect.provideService"
590 note: "Provide `Clock.Clock` around the scoped Effect. Adapt arguments and imports to the v4 API."
591effect/Effect#withConcurrency:
592 replacement: "none"
593 note: "Ambient concurrency was removed; pass `concurrency` directly to `Effect.all`, `Effect.forEach`, and related combinators. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
594effect/Effect#withConfigProvider:
595 replacement: "Effect.provideService"
596 note: "Provide `ConfigProvider.ConfigProvider` for the target Effect. Adapt arguments and imports to the v4 API."
597effect/Effect#withConfigProviderScoped:
598 replacement: "Effect.provideService"
599 note: "Provide the ConfigProvider around the scoped Effect. Adapt arguments and imports to the v4 API."
600effect/Effect#withConsole:
601 replacement: "Effect.provideService"
602 note: "Provide `Console.Console` for the target Effect. Adapt arguments and imports to the v4 API."
603effect/Effect#withConsoleScoped:
604 replacement: "Effect.provideService"
605 note: "Provide the Console service around the scoped Effect. Adapt arguments and imports to the v4 API."
606effect/Effect#withEarlyRelease:
607 replacement: "Scope.make + Scope.close"
608 note: "Create a Scope explicitly, provide it to acquisition, and retain a close action. Adapt arguments and imports to the v4 API."
609effect/Effect#withFiberRuntime:
610 replacement: "none"
611 note: "Direct FiberRuntime access was removed; use public Effect, Fiber, and Context operations. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
612effect/Effect#withLogSpan:
613 include: true
614 replacement: "Effect.withLogSpan"
615 note: "Still exported in v4; update call sites for the revised signature, options, and channel inference."
616effect/Effect#withMaxOpsBeforeYield:
617 replacement: "none"
618 note: "The scheduler operation budget is no longer configurable through Effect. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
619effect/Effect#withMetric:
620 replacement: "Effect.tap + Metric.update"
621 note: "Update the Metric explicitly from the Effect success value. Adapt arguments and imports to the v4 API."
622effect/Effect#withRandom:
623 replacement: "Effect.provideService"
624 note: "Provide `Random.Random` for the target Effect. Adapt arguments and imports to the v4 API."
625effect/Effect#withRandomFixed:
626 replacement: "Effect.provideService"
627 note: "Provide a custom deterministic `Random.Random` implementation. Adapt arguments and imports to the v4 API."
628effect/Effect#withRandomScoped:
629 replacement: "Effect.provideService"
630 note: "Provide the Random service around the scoped Effect. Adapt arguments and imports to the v4 API."
631effect/Effect#withRequestBatching:
632 replacement: "none"
633 note: "Ambient request batching configuration was removed; configure batching in the `RequestResolver`. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
634effect/Effect#withRequestCache:
635 replacement: "none"
636 note: "Ambient request-cache replacement was removed; model keyed caching explicitly with `Cache`. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
637effect/Effect#withRequestCaching:
638 replacement: "none"
639 note: "Ambient request caching was removed; configure resolution or use `Cache` explicitly. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
640effect/Effect#withRuntimeFlagsPatch:
641 replacement: "none"
642 note: "RuntimeFlags patching was removed from the public API. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
643effect/Effect#withRuntimeFlagsPatchScoped:
644 replacement: "none"
645 note: "Scoped RuntimeFlags patching was removed from the public API. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
646effect/Effect#withScheduler:
647 replacement: "none"
648 note: "Ambient scheduler replacement was removed; use supported runtime run options or explicit scheduling combinators. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
649effect/Effect#withSchedulingPriority:
650 replacement: "none"
651 note: "Ambient fiber scheduling priority was removed from the public API. No direct public replacement exists in v4; rewrite the call site around the stated v4 primitive."
652effect/Effect#withTracerScoped:
653 replacement: "Effect.provideService"
654 note: "Provide the Tracer service around the scoped Effect. Adapt arguments and imports to the v4 API."
655effect/Effect#withUnhandledErrorLogLevel:
656 replacement: "Effect.ignore"
657 note: "Handle or explicitly ignore child-fiber failures, selecting the desired log behavior at the boundary. Adapt arguments and imports to the v4 API."
658effect/Effect#zipLeft:
659 replacement: "Effect.zip + Effect.map"
660 note: "Zip the Effects and select the first tuple element. Adapt arguments and imports to the v4 API."
661effect/Effect#zipRight:
662 replacement: "Effect.andThen"
663 note: "Sequence the Effects and retain the second result. Adapt arguments and imports to the v4 API."
664"effect/Effect#repeatOrElse":
665 replacement: "Effect.repeatOrElse"
666 note: "The fallback receives Option<Schedule.Metadata<B, A>> instead of Option<B>. Read metadata.output for the previous schedule output and metadata.attempt for the attempt count. The error also includes schedule failures."
667"effect/Effect#tryPromise":
668 replacement: "Effect.tryPromise"
669 note: "Use the callback overload for Cause.UnknownError, or the object overload with try and catch to map failures to a custom error. The callback-only overload does not accept a custom error type parameter."