This commit is contained in:
mr
2026-06-04 13:36:55 +02:00
parent d9723e6431
commit 5be3c0a10a
+7 -2
View File
@@ -1657,14 +1657,19 @@ func (w *Workflow) validateDynamicFilters() []IntegrityViolation {
} }
// validateAnchorOutputs mirrors oc-front's anchor-on-non-storage check: // validateAnchorOutputs mirrors oc-front's anchor-on-non-storage check:
// the §oc:access§ magic value must only appear as an output of a storage // the §oc:access§ magic value must only appear as an output of a storage,
// (or dynamic-storage) element. // dynamic-storage, or compute node that has an active embedded storage selected.
func (w *Workflow) validateAnchorOutputs() []IntegrityViolation { func (w *Workflow) validateAnchorOutputs() []IntegrityViolation {
var violations []IntegrityViolation var violations []IntegrityViolation
for id, item := range w.Graph.Items { for id, item := range w.Graph.Items {
if w.Graph.IsStorage(item) || (w.Graph.IsDynamic(item) && item.Dynamic.Type == tools.STORAGE_RESOURCE) { if w.Graph.IsStorage(item) || (w.Graph.IsDynamic(item) && item.Dynamic.Type == tools.STORAGE_RESOURCE) {
continue continue
} }
if w.Graph.IsCompute(item) {
if _, ok := w.SelectedEmbeddedStorages[id]; ok {
continue
}
}
for _, p := range w.Outputs[id] { for _, p := range w.Outputs[id] {
if p.Value == ocAnchorAccess { if p.Value == ocAnchorAccess {
violations = append(violations, IntegrityViolation{ violations = append(violations, IntegrityViolation{