diff --git a/package-lock.json b/package-lock.json
index bebf6b4..03069dd 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -5,12 +5,12 @@
   "packages": {
     "": {
       "dependencies": {
-        "@effect/platform": "^0.49.3",
+        "@effect/platform": "^0.53.0",
         "@effect/schema": "^0.66.1",
         "@js-temporal/polyfill": "^0.4.4",
         "chalk": "^5.3.0",
         "doi-regex": "^0.1.13",
-        "effect": "3.0.1",
+        "effect": "3.1.2",
         "ioredis": "^5.3.2",
         "orcid-utils": "^1.2.2"
       },
@@ -329,26 +329,25 @@
       }
     },
     "node_modules/@effect/platform": {
-      "version": "0.49.3",
-      "resolved": "https://registry.npmjs.org/@effect/platform/-/platform-0.49.3.tgz",
-      "integrity": "sha512-bPHBFK8ydy5DywKLjWwpHiL4veH1fIR7ksplczgxEAd5fAvydnRcoXtmyiFQXlgihIoIhHMHPep6r4VoZToPiA==",
+      "version": "0.53.0",
+      "resolved": "https://registry.npmjs.org/@effect/platform/-/platform-0.53.0.tgz",
+      "integrity": "sha512-qPwqsDfjtsfH65AXckDUfXuS8c3OVku1EBop2PKIT+ef288pydrkVP4SC2RNp6yRCdjs0fmtNaWf9GZLSMe0EQ==",
       "dependencies": {
-        "find-my-way-ts": "^0.1.1",
-        "isows": "^1.0.4",
-        "multipasta": "^0.2.0",
+        "find-my-way-ts": "^0.1.2",
+        "multipasta": "^0.2.1",
         "path-browserify": "^1.0.1"
       },
       "peerDependencies": {
-        "@effect/schema": "^0.66.1",
-        "effect": "3.0.1"
+        "@effect/schema": "^0.66.14",
+        "effect": "3.1.2"
       }
     },
     "node_modules/@effect/schema": {
-      "version": "0.66.1",
-      "resolved": "https://registry.npmjs.org/@effect/schema/-/schema-0.66.1.tgz",
-      "integrity": "sha512-SvBlCMfVeavB4kOQGwFzvqdvSI8uXBpbvsB/xHoDJy4+xD/nrbZBjaH1Dn/U+1Or0s9duNPazNACJw1netQ4Xg==",
+      "version": "0.66.14",
+      "resolved": "https://registry.npmjs.org/@effect/schema/-/schema-0.66.14.tgz",
+      "integrity": "sha512-2Yc6gnXpcMmwQnbU2JUwDl0ckeOJmFZzteXn2jjVWuNi9PGv+jp2yK7jxv0pALcieuYwdR5tKkCRI7STuhEwfg==",
       "peerDependencies": {
-        "effect": "3.0.1",
+        "effect": "3.1.2",
         "fast-check": "^3.13.2"
       }
     },
@@ -2025,9 +2024,9 @@
       }
     },
     "node_modules/effect": {
-      "version": "3.0.1",
-      "resolved": "https://registry.npmjs.org/effect/-/effect-3.0.1.tgz",
-      "integrity": "sha512-xAwL1mVVHuTxcGCTfJWi5OOZfw3sMtPc2UdaOnj3NWWAAh2hUr46ZE9WMdZtpbsgL4xYENy+De/TbhF1ThCkcg=="
+      "version": "3.1.2",
+      "resolved": "https://registry.npmjs.org/effect/-/effect-3.1.2.tgz",
+      "integrity": "sha512-XakSWck6w6ROqKyEys0tKE9K6Gx2p8W/09u2ZTEZZrneO5Z3QEdPhXzWTyC73kD5zUvfJinZLVIas8I1xoHaTg=="
     },
     "node_modules/enhanced-resolve": {
       "version": "5.15.0",
@@ -2717,9 +2716,9 @@
       }
     },
     "node_modules/find-my-way-ts": {
-      "version": "0.1.1",
-      "resolved": "https://registry.npmjs.org/find-my-way-ts/-/find-my-way-ts-0.1.1.tgz",
-      "integrity": "sha512-nXUdq29JRQ1tYa1/n+DHTVChMARJHz+gi7sDZibwQukzHP7Hrr6s+sxKbaIM8xB3LzhSBJy5yLb0JhIUmHmOiA==",
+      "version": "0.1.2",
+      "resolved": "https://registry.npmjs.org/find-my-way-ts/-/find-my-way-ts-0.1.2.tgz",
+      "integrity": "sha512-AWsH49RGcyayzzxSAkwQKC1bToY5ForAfNreix88slo7wijg1wwTtCPvUUoVm/qhIY3UVSHBKApw8mOGPxsvSg==",
       "dependencies": {
         "fast-querystring": "^1.0.0"
       }
@@ -3422,20 +3421,6 @@
       "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
       "dev": true
     },
-    "node_modules/isows": {
-      "version": "1.0.4",
-      "resolved": "https://registry.npmjs.org/isows/-/isows-1.0.4.tgz",
-      "integrity": "sha512-hEzjY+x9u9hPmBom9IIAqdJCwNLax+xrPb51vEPpERoFlIxgmZcHzsT5jKG06nvInKOBGvReAVz80Umed5CczQ==",
-      "funding": [
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/wagmi-dev"
-        }
-      ],
-      "peerDependencies": {
-        "ws": "*"
-      }
-    },
     "node_modules/javascript-natural-sort": {
       "version": "0.7.1",
       "resolved": "https://registry.npmjs.org/javascript-natural-sort/-/javascript-natural-sort-0.7.1.tgz",
@@ -3700,9 +3685,9 @@
       "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
     },
     "node_modules/multipasta": {
-      "version": "0.2.0",
-      "resolved": "https://registry.npmjs.org/multipasta/-/multipasta-0.2.0.tgz",
-      "integrity": "sha512-MNAym1D9GTpY0/CKYJFDmaJ3TfhblfsQyyipCCSsgasMZCAyR2fCNDJhR7lACfJ0YMwQSDi5RHeIdJcsze6WMg=="
+      "version": "0.2.1",
+      "resolved": "https://registry.npmjs.org/multipasta/-/multipasta-0.2.1.tgz",
+      "integrity": "sha512-0NR15o5iewJFMsZ4jN6cztCd4izTLZPyHUfBrakbg/x70B8zplPE6qumbs+A7LmhGtQMzpN/K8MOOdifMgAKFA=="
     },
     "node_modules/mvdan-sh": {
       "version": "0.10.1",
@@ -5517,27 +5502,6 @@
       "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
       "dev": true
     },
-    "node_modules/ws": {
-      "version": "8.16.0",
-      "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz",
-      "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==",
-      "peer": true,
-      "engines": {
-        "node": ">=10.0.0"
-      },
-      "peerDependencies": {
-        "bufferutil": "^4.0.1",
-        "utf-8-validate": ">=5.0.2"
-      },
-      "peerDependenciesMeta": {
-        "bufferutil": {
-          "optional": true
-        },
-        "utf-8-validate": {
-          "optional": true
-        }
-      }
-    },
     "node_modules/yallist": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
diff --git a/package.json b/package.json
index 7451907..dc62045 100644
--- a/package.json
+++ b/package.json
@@ -28,12 +28,12 @@
     "vitest": "^1.5.0"
   },
   "dependencies": {
-    "@effect/platform": "^0.49.3",
+    "@effect/platform": "^0.53.0",
     "@effect/schema": "^0.66.1",
     "@js-temporal/polyfill": "^0.4.4",
     "chalk": "^5.3.0",
     "doi-regex": "^0.1.13",
-    "effect": "3.0.1",
+    "effect": "3.1.2",
     "ioredis": "^5.3.2",
     "orcid-utils": "^1.2.2"
   }