1"@effect/platform/HttpApiMiddleware#HttpApiMiddleware":
2 replacement: "effect/http-api/HttpApiMiddleware#HttpApiMiddleware"
3 note: "The model remains but now wraps the response effect and carries provided services, an error schema, and required services."
4"@effect/platform/HttpApiMiddleware#HttpApiMiddleware.Any":
5 replacement: "effect/http-api/HttpApiMiddleware#AnyService"
6 note: "Renamed widened middleware service-key shape."
7"@effect/platform/HttpApiMiddleware#HttpApiMiddleware.AnyId":
8 replacement: "effect/http-api/HttpApiMiddleware#AnyId"
9 note: "Same name; metadata now includes provided and required services, error schema, client error, and client requirement."
10"@effect/platform/HttpApiMiddleware#HttpApiMiddleware.Error":
11 replacement: "effect/http-api/HttpApiMiddleware#Error"
12 note: "Same name and now derives the decoded type from the configured error schema."
13"@effect/platform/HttpApiMiddleware#HttpApiMiddleware.ErrorContext":
14 replacement: "effect/http-api/HttpApiMiddleware#ErrorServicesEncode / ErrorServicesDecode"
15 note: "The single schema context split into server encoding and client decoding services."
16"@effect/platform/HttpApiMiddleware#HttpApiMiddleware.Only":
17 replacement: "Extract<R, HttpApiMiddleware.AnyId>"
18 note: "The helper was removed because middleware IDs are explicit; use Extract when the direct filter is still needed."
19"@effect/platform/HttpApiMiddleware#HttpApiMiddleware.Provides":
20 replacement: "effect/http-api/HttpApiMiddleware#Provides"
21 note: "Same name and reads the expanded v4 middleware ID metadata."
22"@effect/platform/HttpApiMiddleware#SecurityTypeId":
23 replacement: "none"
24 note: "The marker is private; use HttpApiMiddleware.isSecurity."
25"@effect/platform/HttpApiMiddleware#Tag":
26 replacement: "effect/http-api/HttpApiMiddleware#Service"
27 note: "Renamed and redesigned; use error, requires, provides, clientError, and requiredForClient configuration."
28"@effect/platform/HttpApiMiddleware#TagClass":
29 replacement: "effect/http-api/HttpApiMiddleware#ServiceClass"
30 note: "Renamed class type with the new two-stage type configuration and wrapping service shape."
31"@effect/platform/HttpApiMiddleware#TagClass.BaseSecurity":
32 replacement: "effect/http-api/HttpApiMiddleware#ServiceClass"
33 note: "Security is conditional metadata on ServiceClass; there is no separate public base interface."
34"@effect/platform/HttpApiMiddleware#TagClass.Failure":
35 replacement: "effect/http-api/HttpApiMiddleware#Error"
36 note: "failure terminology became error; apply the extractor to the middleware ID."
37"@effect/platform/HttpApiMiddleware#TagClass.FailureContext":
38 replacement: "effect/http-api/HttpApiMiddleware#ErrorServicesEncode / ErrorServicesDecode"
39 note: "Failure schema services split by server encoding and client decoding direction."
40"@effect/platform/HttpApiMiddleware#TagClass.FailureSchema":
41 replacement: "effect/http-api/HttpApiMiddleware#ErrorSchema"
42 note: "Renamed and applied to the middleware ID rather than constructor options."
43"@effect/platform/HttpApiMiddleware#TagClass.FailureService":
44 replacement: "effect/http-api/HttpApiMiddleware#Error"
45 note: "Use the decoded error extractor; optional middleware fallback was removed."
46"@effect/platform/HttpApiMiddleware#TagClass.Optional":
47 replacement: "none"
48 note: "Optional declaration and fallback-on-failure behavior were removed; model fallback in the wrapping middleware."
49"@effect/platform/HttpApiMiddleware#TagClass.Provides":
50 replacement: "effect/http-api/HttpApiMiddleware#Provides"
51 note: "Moved to the module level and applied to the middleware ID."
52"@effect/platform/HttpApiMiddleware#TagClassAny":
53 replacement: "effect/http-api/HttpApiMiddleware#AnyService"
54 note: "Renamed widened service-key type."
55"@effect/platform/HttpApiMiddleware#TagClassSecurityAny":
56 replacement: "effect/http-api/HttpApiMiddleware#AnyServiceSecurity"
57 note: "Renamed widened security service-key type."
58"@effect/platform/HttpApiMiddleware#TypeId":
59 replacement: "none"
60 note: "The marker is private; use public guards and type extractors."