From 37d0922fd3d74c58efde9e8bea903c950ac0ec21 Mon Sep 17 00:00:00 2001 From: Brent Schroeter Date: Tue, 7 Oct 2025 06:23:50 +0000 Subject: [PATCH] allow empty values to be provided to insert for system cols --- .../src/routes/relations_single/insert_handler.rs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/interim-server/src/routes/relations_single/insert_handler.rs b/interim-server/src/routes/relations_single/insert_handler.rs index 9148284..48c08b1 100644 --- a/interim-server/src/routes/relations_single/insert_handler.rs +++ b/interim-server/src/routes/relations_single/insert_handler.rs @@ -81,7 +81,15 @@ pub(super) async fn post( let col_names: Vec = form.keys().cloned().collect(); // Prevent users from modifying Phonograph metadata columns. - if col_names.iter().any(|col| col.starts_with('_')) { + if form.iter().any(|(col, values)| { + col.starts_with('_') + && values.iter().any(|value| { + serde_json::from_str::(value) + .ok() + .map(|value| !value.is_none()) + .unwrap_or(false) + }) + }) { return Err(forbidden!("access denied to update system metadata column")); }