Fix attachment overshoot and semantic trace port geometry

This commit is contained in:
2026-09-22 18:13:07 -07:00
parent 79cc9d5551
commit 3aa80de89c
11 changed files with 348 additions and 18 deletions
+12 -3
View File
@@ -96,8 +96,12 @@ fn restore_serialization_skips(context: Context, fields: &mut Map<String, Value>
Context::Diagram => {
if let Some(routes) = fields.get_mut("routes").and_then(Value::as_array_mut) {
for route in routes.iter_mut().filter_map(Value::as_object_mut) {
route.entry("source_attachment".to_owned()).or_insert(Value::Null);
route.entry("target_attachment".to_owned()).or_insert(Value::Null);
route
.entry("source_attachment".to_owned())
.or_insert(Value::Null);
route
.entry("target_attachment".to_owned())
.or_insert(Value::Null);
}
}
}
@@ -252,7 +256,12 @@ fn compact_nested(context: Context, fields: &mut Map<String, Value>) {
if let Some(routes) = fields.get_mut("routes").and_then(Value::as_array_mut) {
for route in routes {
if let Some(route) = route.as_object_mut() {
omit_defaults(route, &object(json!({"waypoints": [], "label": null, "source_attachment": null, "target_attachment": null})));
omit_defaults(
route,
&object(
json!({"waypoints": [], "label": null, "source_attachment": null, "target_attachment": null}),
),
);
}
}
}