# Changelog: 1.21.0

Moves the SDK from the Effect 4 beta to the Effect 4 release candidate. The
public API of `@v-office/sdk-core` is unchanged: every exported service,
schema, error class and capability keeps its name and shape. What changes is
the Effect the SDK is built on. Consumers that import `effect` directly must
move to the release candidate as well.

## Changed

- `effect` is now `4.0.0-rc.115` (was `4.0.0-beta.85`). Effect's interfaces are
  presumed final from the release candidate on; this is the last planned
  sweeping dependency move before Effect 4 stable.
- Internally the SDK follows the renames the release candidate made:
  `Schema.TaggedErrorClass` is `Schema.TaggedError`,
  `SchemaTransformation.transformOrFail` is `SchemaTransformation.transformEffect`,
  and the transient GraphQL retry schedule combines its parts with
  `Schedule.max` instead of the removed `Schedule.both`. None of these are
  visible in the SDK's exports.
- Schema decoding failures wrapped in `CoreSDKError.cause` no longer repeat the
  rejected input in their message (Effect removed the `actual` fields from
  schema issues). The message still names the expected type and path.

## Unchanged

- Every exported symbol of 1.20.0; the declaration file exposes the same
  490 names.
- The `CoreSDKError` shape (`source`, `operation`, `message`, `cause`).
