# chore\(refs\): sync Effect reference to rc.112 · PR \#10653 · pingdotgg/t3code

[View on GitCafe](https://git.cafe/pingdotgg/t3code/pull/10653)

Repository: [pingdotgg/t3code](https://git.cafe/pingdotgg/t3code)

Visibility: public

State: merged

Source repository: pingdotgg/t3code

Source branch: t3code/bump-effect-reference

Target branch: t3code/bump-effect-alchemy

Head commit: 98eb810ae28492f415c105d3786c475d22922a04

[Discussion and reviews](https://git.cafe/pingdotgg/t3code/pull/10653)

[Commits](https://git.cafe/pingdotgg/t3code/pull/10653/commits?format=markdown)

[Files changed](https://git.cafe/pingdotgg/t3code/pull/10653/diffs?format=markdown)

## Description

---

Refreshes `.repos/effect-smol` to the exact [`effect@4.0.0-rc.112` release](https://github.com/Effect-TS/effect/releases/tag/effect%404.0.0-rc.112), matching the dependency upgrade below this PR. This layer contains only upstream reference files.

The subtree sync helper could not find historical subtree metadata after earlier squashed merges. Imported the tagged Git tree directly and verified that the resulting directory tree hash equals upstream [2600f62](https://github.com/Effect-TS/effect/commit/2600f62f4532026928454dcea8d1c48557b3f942). No hand edits or runtime imports from the reference repository.

Model: GPT-6. Harness: Codex.


<!-- Macroscope's pull request summary starts here -->
<!-- Macroscope will only edit the content between these invisible markers, and the markers themselves will not be visible in the GitHub rendered markdown. -->
<!-- If you delete either of the start / end markers from your PR's description, Macroscope will append its summary at the bottom of the description. -->
> [!NOTE]
> ### Sync Effect reference to rc.112 with new `doctest`, `api-diff`, and `platform-deno` packages
> - Adds the `@effect/doctest` package for extracting and running inline documentation tests, the `@effect/api-diff` CLI tool for comparing TypeScript APIs across Git refs, and the `@effect/platform-deno` package providing Deno-native platform services (crypto, filesystem, path, socket server, terminal, worker, stdio)
> - Migrates error schema classes from `Schema.ErrorClass`/`Schema.TaggedErrorClass` to `Schema.Error`/`Schema.TaggedError` across worker, socket, terminal, HTTP, and Redis modules
> - Restructures platform packages from `platform-node`/`platform-browser`/`platform-bun` to `platform/node`/`platform/browser`/`platform/bun` directory layout and updates workspace, tsconfig, and Deno references accordingly
> - Fixes core runtime bugs: `RcRef.getState` now rechecks state after serialization and closes the temporary scope on failure; `ScopedRef.set` closes the new scope when the old scope close fails; `SynchronizedRef.getAndUpdateSome` targets the backing `Ref`; `Scheduler.MixedScheduler` uses a cancellable microtask in sync mode; `Schema.makeEffect` no longer wraps parser failures through a removed conversion
> - Hardens HTTP modules: cookie validation with dedicated syntax rules, `HttpBody.file`/`fileFromInfo` report partial-range content length, `HttpServerResponse` explicit headers override body-derived headers, `HttpClientResponse.schemaJson` accepts JSON reviver options, and a new `MultipartParser` public API replaces the `Multipasta` re-export
> - Improves SQL clients: SQLite Node/Bun clients add configurable `busyTimeout` (default 5s) and `BEGIN IMMEDIATE`; MSSQL defaults to encrypted connections with certificate validation; ClickHouse client is scope-managed and classifies JSON parse failures as `SqlError`
> - Fixes `ResourceRef` to preserve acquisition failure causes so later `await` calls fail instead of hanging; `OtlpMetrics` snapshots now use per-snapshot candidate state and commit only newer sequences
> - Risk: `Toolkit.WithHandler` handlers now receive encoded tool parameters (`Tool.ParametersEncoded`) instead of decoded parameters — existing handler implementations need updating. Internal schema report API and `SchemaError` namespace export are removed from `effect/src/index.ts`. Several packages block the `./index` subpath export. Platform package paths changed; out-of-tree consumers referencing old paths need updating.
>
> <!-- Macroscope's review summary starts here -->
>
> <sup><a href="https://app.macroscope.com">Macroscope</a> summarized 98eb810.</sup>
> <!-- Macroscope's review summary ends here -->
>
<!-- Macroscope's pull request summary ends here -->
