From 0e0dd81b56c3cdb27708bf8b48b4f7538304bc4e Mon Sep 17 00:00:00 2001
From: Adam Hathcock <adamhathcock@users.noreply.github.com>
Date: Tue, 10 Dec 2024 11:49:53 +0000
Subject: [PATCH] Fix sending caching (#441)

* Fix upload speed calculation

* Better progress for humans?

* format

* add percentage to caching

* Update SDK
---
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 34 +++++-----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 32 +++++-----
 .../packages.lock.json                        | 64 +++++++++----------
 .../Speckle.Connectors.DUI/packages.lock.json | 28 ++++----
 Directory.Packages.props                      |  6 +-
 .../Operations/PassthroughProgress.cs         |  3 +-
 .../Operations/SendProgress.cs                | 31 +++++++--
 .../packages.lock.json                        | 22 +++----
 .../packages.lock.json                        | 28 ++++----
 .../packages.lock.json                        | 24 +++----
 .../packages.lock.json                        | 22 +++----
 52 files changed, 755 insertions(+), 733 deletions(-)

diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json
index 9c5177e82..78d954e1d 100644
--- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json
+++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json
@@ -231,9 +231,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -241,8 +241,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -267,7 +267,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.DependencyInjection": {
@@ -299,18 +299,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -320,14 +320,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json
index 4e0d2fecc..6cc25c64d 100644
--- a/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json
+++ b/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json
@@ -264,9 +264,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -274,8 +274,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -300,7 +300,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.DependencyInjection": {
@@ -338,18 +338,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -359,14 +359,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json
index 6bea0f16c..995d61cbf 100644
--- a/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json
+++ b/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json
@@ -264,9 +264,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -274,8 +274,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -300,7 +300,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.DependencyInjection": {
@@ -338,18 +338,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -359,14 +359,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json
index c37b62260..6d513f273 100644
--- a/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json
+++ b/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json
@@ -264,9 +264,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -274,8 +274,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -301,7 +301,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.DependencyInjection": {
@@ -339,18 +339,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -360,14 +360,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json
index 84e23624d..c31d4a4f6 100644
--- a/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json
+++ b/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json
@@ -220,9 +220,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -230,8 +230,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -257,7 +257,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.DependencyInjection": {
@@ -295,18 +295,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.CSharp": "4.7.0",
@@ -315,14 +315,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json
index 5a0c9ccc1..8e8e13ed7 100644
--- a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json
+++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json
@@ -273,9 +273,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -283,8 +283,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -310,7 +310,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.DependencyInjection": {
@@ -348,18 +348,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -369,14 +369,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json
index 3cf41afbe..e08323488 100644
--- a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json
+++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json
@@ -273,9 +273,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -283,8 +283,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -310,7 +310,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.DependencyInjection": {
@@ -348,18 +348,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -369,14 +369,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json
index 5ed956987..ca1a818b2 100644
--- a/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json
+++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json
@@ -273,9 +273,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -283,8 +283,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -310,7 +310,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.DependencyInjection": {
@@ -348,18 +348,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -369,14 +369,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json
index b4aa974c1..1ba588437 100644
--- a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json
+++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json
@@ -229,9 +229,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -239,8 +239,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -267,7 +267,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.DependencyInjection": {
@@ -305,18 +305,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.CSharp": "4.7.0",
@@ -325,14 +325,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json b/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json
index 7548f5443..6eef77a9d 100644
--- a/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json
+++ b/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json
@@ -264,9 +264,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -274,8 +274,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -293,7 +293,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "speckle.converters.etabs21": {
@@ -337,18 +337,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -358,14 +358,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json b/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json
index 6283ce4f2..cb0f76690 100644
--- a/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json
+++ b/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json
@@ -220,9 +220,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -230,8 +230,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -249,7 +249,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "speckle.converters.etabs22": {
@@ -293,18 +293,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.CSharp": "4.7.0",
@@ -313,14 +313,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json
index 68c09caf1..57445baec 100644
--- a/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json
+++ b/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json
@@ -292,9 +292,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -302,8 +302,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -314,7 +314,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "speckle.converters.revit2022": {
@@ -353,11 +353,11 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Revit.API": {
@@ -368,9 +368,9 @@
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -380,14 +380,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json
index af05de868..b644f0b09 100644
--- a/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json
+++ b/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json
@@ -292,9 +292,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -302,8 +302,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -314,7 +314,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "speckle.converters.revit2023": {
@@ -353,11 +353,11 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Revit.API": {
@@ -368,9 +368,9 @@
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -380,14 +380,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json
index b80f643fc..b10bc6cfd 100644
--- a/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json
+++ b/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json
@@ -292,9 +292,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -302,8 +302,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -314,7 +314,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "speckle.converters.revit2024": {
@@ -353,11 +353,11 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Revit.API": {
@@ -368,9 +368,9 @@
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -380,14 +380,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json
index c55e25b6a..c4e0125fb 100644
--- a/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json
+++ b/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json
@@ -242,9 +242,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -252,8 +252,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -271,7 +271,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "speckle.converters.revit2025": {
@@ -316,11 +316,11 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Revit.API": {
@@ -331,9 +331,9 @@
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.CSharp": "4.7.0",
@@ -342,14 +342,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json b/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json
index f9d121b9b..ce02c9862 100644
--- a/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json
+++ b/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json
@@ -273,9 +273,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -283,8 +283,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -302,7 +302,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "speckle.converters.rhino7": {
@@ -347,18 +347,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -368,14 +368,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json b/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json
index 57bf5af68..499b39e3f 100644
--- a/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json
+++ b/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json
@@ -273,9 +273,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -283,8 +283,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -302,7 +302,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "speckle.converters.rhino8": {
@@ -347,18 +347,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -368,14 +368,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json b/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json
index 12e93a40a..c43aa3769 100644
--- a/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json
+++ b/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json
@@ -35,11 +35,11 @@
       },
       "Speckle.Objects": {
         "type": "Direct",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Tekla.Structures.Dialog": {
@@ -332,9 +332,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -342,8 +342,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -369,7 +369,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.DependencyInjection": {
@@ -407,9 +407,9 @@
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -419,14 +419,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json b/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json
index f75a45001..84655113a 100644
--- a/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json
+++ b/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json
@@ -35,11 +35,11 @@
       },
       "Speckle.Objects": {
         "type": "Direct",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Tekla.Structures.Dialog": {
@@ -413,9 +413,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -423,8 +423,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -450,7 +450,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.DependencyInjection": {
@@ -488,9 +488,9 @@
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -500,14 +500,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/packages.lock.json b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/packages.lock.json
index 26a8743f5..ccec23f11 100644
--- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/packages.lock.json
+++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/packages.lock.json
@@ -224,7 +224,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.Logging": {
@@ -247,18 +247,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -268,14 +268,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Converters/Autocad/Speckle.Converters.Autocad2022/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2022/packages.lock.json
index 8367dc5c4..6c0d90adc 100644
--- a/Converters/Autocad/Speckle.Converters.Autocad2022/packages.lock.json
+++ b/Converters/Autocad/Speckle.Converters.Autocad2022/packages.lock.json
@@ -263,7 +263,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.Logging": {
@@ -286,18 +286,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -307,14 +307,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Converters/Autocad/Speckle.Converters.Autocad2023/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2023/packages.lock.json
index 83a83957e..b681d682a 100644
--- a/Converters/Autocad/Speckle.Converters.Autocad2023/packages.lock.json
+++ b/Converters/Autocad/Speckle.Converters.Autocad2023/packages.lock.json
@@ -263,7 +263,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.Logging": {
@@ -286,18 +286,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -307,14 +307,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json
index cc4be330b..9cba989ea 100644
--- a/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json
+++ b/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json
@@ -264,9 +264,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -274,8 +274,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -293,7 +293,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.DependencyInjection": {
@@ -331,18 +331,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -352,14 +352,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json
index ad28fba0c..dc2676151 100644
--- a/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json
+++ b/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json
@@ -220,9 +220,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -230,8 +230,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -249,7 +249,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.DependencyInjection": {
@@ -287,18 +287,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.CSharp": "4.7.0",
@@ -307,14 +307,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Converters/CSi/Speckle.Converters.ETABS21/packages.lock.json b/Converters/CSi/Speckle.Converters.ETABS21/packages.lock.json
index 3707bbc91..a22df02c0 100644
--- a/Converters/CSi/Speckle.Converters.ETABS21/packages.lock.json
+++ b/Converters/CSi/Speckle.Converters.ETABS21/packages.lock.json
@@ -263,7 +263,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.Logging": {
@@ -286,18 +286,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -307,14 +307,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Converters/CSi/Speckle.Converters.ETABS22/packages.lock.json b/Converters/CSi/Speckle.Converters.ETABS22/packages.lock.json
index de21c81dd..dd55690be 100644
--- a/Converters/CSi/Speckle.Converters.ETABS22/packages.lock.json
+++ b/Converters/CSi/Speckle.Converters.ETABS22/packages.lock.json
@@ -219,7 +219,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.Logging": {
@@ -242,18 +242,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.CSharp": "4.7.0",
@@ -262,14 +262,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json
index 2f330ad28..1b1d68508 100644
--- a/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json
+++ b/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json
@@ -272,7 +272,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.Logging": {
@@ -295,18 +295,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -316,14 +316,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json
index 9d109318c..0f451752f 100644
--- a/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json
+++ b/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json
@@ -272,7 +272,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.Logging": {
@@ -295,18 +295,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -316,14 +316,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2024/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2024/packages.lock.json
index d3740c2ed..e4d0b915f 100644
--- a/Converters/Civil3d/Speckle.Converters.Civil3d2024/packages.lock.json
+++ b/Converters/Civil3d/Speckle.Converters.Civil3d2024/packages.lock.json
@@ -272,7 +272,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.Logging": {
@@ -295,18 +295,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -316,14 +316,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json
index 50b73b981..1fc92d6c5 100644
--- a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json
+++ b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json
@@ -229,9 +229,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -239,8 +239,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -258,7 +258,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.DependencyInjection": {
@@ -296,18 +296,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.CSharp": "4.7.0",
@@ -316,14 +316,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/Converters/Revit/Speckle.Converters.Revit2022.Tests/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2022.Tests/packages.lock.json
index be32f52bb..06b4b80fb 100644
--- a/Converters/Revit/Speckle.Converters.Revit2022.Tests/packages.lock.json
+++ b/Converters/Revit/Speckle.Converters.Revit2022.Tests/packages.lock.json
@@ -345,7 +345,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "speckle.testing": {
@@ -375,18 +375,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.CSharp": "4.7.0",
@@ -395,14 +395,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Converters/Revit/Speckle.Converters.Revit2022/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2022/packages.lock.json
index b8266e8ab..92e373869 100644
--- a/Converters/Revit/Speckle.Converters.Revit2022/packages.lock.json
+++ b/Converters/Revit/Speckle.Converters.Revit2022/packages.lock.json
@@ -263,7 +263,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.Logging": {
@@ -286,18 +286,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -307,14 +307,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Converters/Revit/Speckle.Converters.Revit2023.Tests/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2023.Tests/packages.lock.json
index 140feb200..6bf34129a 100644
--- a/Converters/Revit/Speckle.Converters.Revit2023.Tests/packages.lock.json
+++ b/Converters/Revit/Speckle.Converters.Revit2023.Tests/packages.lock.json
@@ -345,7 +345,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "speckle.testing": {
@@ -375,18 +375,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.CSharp": "4.7.0",
@@ -395,14 +395,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Converters/Revit/Speckle.Converters.Revit2023/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2023/packages.lock.json
index 567074907..c12e2585f 100644
--- a/Converters/Revit/Speckle.Converters.Revit2023/packages.lock.json
+++ b/Converters/Revit/Speckle.Converters.Revit2023/packages.lock.json
@@ -263,7 +263,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.Logging": {
@@ -286,18 +286,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -307,14 +307,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Converters/Revit/Speckle.Converters.Revit2024.Tests/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2024.Tests/packages.lock.json
index b17b2765c..c6abb8a6b 100644
--- a/Converters/Revit/Speckle.Converters.Revit2024.Tests/packages.lock.json
+++ b/Converters/Revit/Speckle.Converters.Revit2024.Tests/packages.lock.json
@@ -345,7 +345,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "speckle.testing": {
@@ -375,18 +375,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.CSharp": "4.7.0",
@@ -395,14 +395,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Converters/Revit/Speckle.Converters.Revit2024/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2024/packages.lock.json
index a9f46b591..4d139958a 100644
--- a/Converters/Revit/Speckle.Converters.Revit2024/packages.lock.json
+++ b/Converters/Revit/Speckle.Converters.Revit2024/packages.lock.json
@@ -263,7 +263,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.Logging": {
@@ -286,18 +286,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -307,14 +307,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Converters/Revit/Speckle.Converters.Revit2025/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2025/packages.lock.json
index a731c57d4..03fa0df3d 100644
--- a/Converters/Revit/Speckle.Converters.Revit2025/packages.lock.json
+++ b/Converters/Revit/Speckle.Converters.Revit2025/packages.lock.json
@@ -219,7 +219,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.Logging": {
@@ -242,18 +242,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.CSharp": "4.7.0",
@@ -262,14 +262,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Converters/Rhino/Speckle.Converters.Rhino7.Tests/packages.lock.json b/Converters/Rhino/Speckle.Converters.Rhino7.Tests/packages.lock.json
index 2f47ccfb0..32d575aae 100644
--- a/Converters/Rhino/Speckle.Converters.Rhino7.Tests/packages.lock.json
+++ b/Converters/Rhino/Speckle.Converters.Rhino7.Tests/packages.lock.json
@@ -345,7 +345,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "speckle.testing": {
@@ -375,18 +375,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.CSharp": "4.7.0",
@@ -395,14 +395,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Converters/Rhino/Speckle.Converters.Rhino7/packages.lock.json b/Converters/Rhino/Speckle.Converters.Rhino7/packages.lock.json
index 81b5bd880..b7b100405 100644
--- a/Converters/Rhino/Speckle.Converters.Rhino7/packages.lock.json
+++ b/Converters/Rhino/Speckle.Converters.Rhino7/packages.lock.json
@@ -263,7 +263,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.Logging": {
@@ -286,18 +286,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -307,14 +307,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Converters/Rhino/Speckle.Converters.Rhino8/packages.lock.json b/Converters/Rhino/Speckle.Converters.Rhino8/packages.lock.json
index fa376b964..3566a50a1 100644
--- a/Converters/Rhino/Speckle.Converters.Rhino8/packages.lock.json
+++ b/Converters/Rhino/Speckle.Converters.Rhino8/packages.lock.json
@@ -263,7 +263,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.Logging": {
@@ -286,18 +286,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -307,14 +307,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Converters/Tekla/Speckle.Converter.Tekla2023/packages.lock.json b/Converters/Tekla/Speckle.Converter.Tekla2023/packages.lock.json
index 718bd355b..23c4ba1be 100644
--- a/Converters/Tekla/Speckle.Converter.Tekla2023/packages.lock.json
+++ b/Converters/Tekla/Speckle.Converter.Tekla2023/packages.lock.json
@@ -300,7 +300,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.Logging": {
@@ -323,18 +323,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -344,14 +344,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "Tekla.Structures.Dialog": {
         "type": "CentralTransitive",
diff --git a/Converters/Tekla/Speckle.Converter.Tekla2024/packages.lock.json b/Converters/Tekla/Speckle.Converter.Tekla2024/packages.lock.json
index 52889bf7a..0dc8fe3d0 100644
--- a/Converters/Tekla/Speckle.Converter.Tekla2024/packages.lock.json
+++ b/Converters/Tekla/Speckle.Converter.Tekla2024/packages.lock.json
@@ -341,7 +341,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "Microsoft.Extensions.Logging": {
@@ -364,18 +364,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -385,14 +385,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "Tekla.Structures.Plugins": {
         "type": "CentralTransitive",
diff --git a/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json b/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json
index cacf7b836..1a64112ac 100644
--- a/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json
+++ b/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json
@@ -324,9 +324,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -334,8 +334,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -378,18 +378,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.CSharp": "4.7.0",
@@ -398,14 +398,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json b/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json
index a52c125c5..4d26b85ef 100644
--- a/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json
+++ b/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json
@@ -264,9 +264,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -274,8 +274,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -311,18 +311,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -332,14 +332,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
@@ -572,9 +572,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.dui": {
@@ -582,8 +582,8 @@
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
           "Speckle.Connectors.Common": "[1.0.0, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )",
           "System.Threading.Tasks.Dataflow": "[6.0.0, )"
         }
       },
@@ -619,18 +619,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -640,14 +640,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "CentralTransitive",
diff --git a/DUI3/Speckle.Connectors.DUI/packages.lock.json b/DUI3/Speckle.Connectors.DUI/packages.lock.json
index 4618df241..637b3aa88 100644
--- a/DUI3/Speckle.Connectors.DUI/packages.lock.json
+++ b/DUI3/Speckle.Connectors.DUI/packages.lock.json
@@ -50,9 +50,9 @@
       },
       "Speckle.Sdk": {
         "type": "Direct",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -62,14 +62,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "Direct",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "System.Threading.Tasks.Dataflow": {
         "type": "Direct",
@@ -320,9 +320,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.logging": {
@@ -351,11 +351,11 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       }
     }
diff --git a/Directory.Packages.props b/Directory.Packages.props
index 094d92c7d..a4a851429 100644
--- a/Directory.Packages.props
+++ b/Directory.Packages.props
@@ -40,9 +40,9 @@
     <PackageVersion Include="Speckle.Revit2023.Fakes" Version="0.3.1" />
     <PackageVersion Include="Speckle.Revit2024.Fakes" Version="0.3.1" />
     <PackageVersion Include="Speckle.Rhino7.Fakes" Version="0.3.1" />
-    <PackageVersion Include="Speckle.Objects" Version="3.1.0-dev.212" />
-    <PackageVersion Include="Speckle.Sdk" Version="3.1.0-dev.212" />
-    <PackageVersion Include="Speckle.Sdk.Dependencies" Version="3.1.0-dev.212" />
+    <PackageVersion Include="Speckle.Objects" Version="3.1.0-dev.215" />
+    <PackageVersion Include="Speckle.Sdk" Version="3.1.0-dev.215" />
+    <PackageVersion Include="Speckle.Sdk.Dependencies" Version="3.1.0-dev.215" />
     <PackageVersion Include="SimpleExec" Version="12.0.0" />
     <PackageVersion Include="System.Threading.Tasks.Dataflow" Version="6.0.0" />
     <GlobalPackageReference Include="PolySharp" Version="1.14.1" />
diff --git a/Sdk/Speckle.Connectors.Common/Operations/PassthroughProgress.cs b/Sdk/Speckle.Connectors.Common/Operations/PassthroughProgress.cs
index 265c9554d..9c639e996 100644
--- a/Sdk/Speckle.Connectors.Common/Operations/PassthroughProgress.cs
+++ b/Sdk/Speckle.Connectors.Common/Operations/PassthroughProgress.cs
@@ -2,6 +2,7 @@
 
 namespace Speckle.Connectors.Common.Operations;
 
+//this aggregates speed across all SDK uploads and passes it to the main thread
 public class PassthroughProgress : IProgress<ProgressArgs>
 {
   private readonly Action<ProgressArgs> _progressCallback;
@@ -18,7 +19,7 @@ public PassthroughProgress(Action<ProgressArgs> progressCallback)
 
   public void Report(ProgressArgs value)
   {
-    if (value.ProgressEvent == ProgressEvent.DownloadBytes)
+    if (value.ProgressEvent == ProgressEvent.DownloadBytes || value.ProgressEvent == ProgressEvent.UploadBytes)
     {
       long totalBytes;
       lock (_totals)
diff --git a/Sdk/Speckle.Connectors.Common/Operations/SendProgress.cs b/Sdk/Speckle.Connectors.Common/Operations/SendProgress.cs
index 82aaaf8c4..018db248e 100644
--- a/Sdk/Speckle.Connectors.Common/Operations/SendProgress.cs
+++ b/Sdk/Speckle.Connectors.Common/Operations/SendProgress.cs
@@ -7,12 +7,24 @@ namespace Speckle.Connectors.Common.Operations;
 public class SendProgress(IProgressDisplayManager progressDisplayManager) : ISendProgress
 {
   private string? _previousSpeed;
+  private bool _serializeIsDone;
+  private long _serialized;
+  private long _total;
 
   public void Begin() => progressDisplayManager.Begin();
 
   public void Report(IProgress<CardProgress> onOperationProgressed, ProgressArgs args)
   {
-    if (args.ProgressEvent == ProgressEvent.UploadBytes)
+    if (args.ProgressEvent == ProgressEvent.FromCacheOrSerialized)
+    {
+      _serialized = args.Count;
+      _serializeIsDone = args.Count >= args.Total;
+    }
+    else if (args.ProgressEvent == ProgressEvent.FindingChildren)
+    {
+      _total = args.Count;
+    }
+    else if (args.ProgressEvent == ProgressEvent.UploadBytes)
     {
       switch (args.ProgressEvent)
       {
@@ -29,15 +41,24 @@ public void Report(IProgress<CardProgress> onOperationProgressed, ProgressArgs a
     switch (args.ProgressEvent)
     {
       case ProgressEvent.CachedToLocal:
-        onOperationProgressed.Report(new($"Caching... ({args.Count} total objects)", null));
+        if (!_serializeIsDone)
+        {
+          return;
+        }
+        onOperationProgressed.Report(
+          new($"Caching... ({args.Count} objects)", progressDisplayManager.CalculatePercentage(args))
+        );
         break;
       case ProgressEvent.UploadBytes:
+        if (!_serializeIsDone)
+        {
+          return;
+        }
         onOperationProgressed.Report(new($"Uploading... ({_previousSpeed})", null));
         break;
       case ProgressEvent.FromCacheOrSerialized:
-        onOperationProgressed.Report(
-          new("Loading cache and Serializing...", progressDisplayManager.CalculatePercentage(args))
-        );
+        var message = $"Serializing... ({_serialized} / {_total} found objects)";
+        onOperationProgressed.Report(new(message, progressDisplayManager.CalculatePercentage(args)));
         break;
     }
   }
diff --git a/Sdk/Speckle.Connectors.Common/packages.lock.json b/Sdk/Speckle.Connectors.Common/packages.lock.json
index 95149e8b0..4127134bc 100644
--- a/Sdk/Speckle.Connectors.Common/packages.lock.json
+++ b/Sdk/Speckle.Connectors.Common/packages.lock.json
@@ -53,18 +53,18 @@
       },
       "Speckle.Objects": {
         "type": "Direct",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "Direct",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -74,14 +74,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "Direct",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       },
       "GraphQL.Client": {
         "type": "Transitive",
diff --git a/Sdk/Speckle.Connectors.Tests/packages.lock.json b/Sdk/Speckle.Connectors.Tests/packages.lock.json
index 01a369322..d7c63c194 100644
--- a/Sdk/Speckle.Connectors.Tests/packages.lock.json
+++ b/Sdk/Speckle.Connectors.Tests/packages.lock.json
@@ -324,9 +324,9 @@
         "dependencies": {
           "Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
           "Speckle.Connectors.Logging": "[1.0.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )",
-          "Speckle.Sdk": "[3.1.0-dev.212, )",
-          "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )",
+          "Speckle.Sdk": "[3.1.0-dev.215, )",
+          "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )"
         }
       },
       "speckle.connectors.logging": {
@@ -368,18 +368,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.CSharp": "4.7.0",
@@ -388,14 +388,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Sdk/Speckle.Converters.Common.Tests/packages.lock.json b/Sdk/Speckle.Converters.Common.Tests/packages.lock.json
index 66f496a9f..11bcb27fa 100644
--- a/Sdk/Speckle.Converters.Common.Tests/packages.lock.json
+++ b/Sdk/Speckle.Converters.Common.Tests/packages.lock.json
@@ -332,7 +332,7 @@
         "type": "Project",
         "dependencies": {
           "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
-          "Speckle.Objects": "[3.1.0-dev.212, )"
+          "Speckle.Objects": "[3.1.0-dev.215, )"
         }
       },
       "speckle.testing": {
@@ -362,18 +362,18 @@
       },
       "Speckle.Objects": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.CSharp": "4.7.0",
@@ -382,14 +382,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }
diff --git a/Sdk/Speckle.Converters.Common/packages.lock.json b/Sdk/Speckle.Converters.Common/packages.lock.json
index ef729906c..b810e91df 100644
--- a/Sdk/Speckle.Converters.Common/packages.lock.json
+++ b/Sdk/Speckle.Converters.Common/packages.lock.json
@@ -50,11 +50,11 @@
       },
       "Speckle.Objects": {
         "type": "Direct",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==",
         "dependencies": {
-          "Speckle.Sdk": "3.1.0-dev.212"
+          "Speckle.Sdk": "3.1.0-dev.215"
         }
       },
       "GraphQL.Client": {
@@ -309,9 +309,9 @@
       },
       "Speckle.Sdk": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==",
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==",
         "dependencies": {
           "GraphQL.Client": "6.0.0",
           "Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -321,14 +321,14 @@
           "Microsoft.Extensions.Logging": "2.2.0",
           "Speckle.DoubleNumerics": "4.0.1",
           "Speckle.Newtonsoft.Json": "13.0.2",
-          "Speckle.Sdk.Dependencies": "3.1.0-dev.212"
+          "Speckle.Sdk.Dependencies": "3.1.0-dev.215"
         }
       },
       "Speckle.Sdk.Dependencies": {
         "type": "CentralTransitive",
-        "requested": "[3.1.0-dev.212, )",
-        "resolved": "3.1.0-dev.212",
-        "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA=="
+        "requested": "[3.1.0-dev.215, )",
+        "resolved": "3.1.0-dev.215",
+        "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg=="
       }
     }
   }