Validate before submission rather than allowing CODES to fail at startup. - [ ] Switch names unique within a topology. - [ ] Link source and target both exist; no self-links; no duplicate directed link (`A→B` twice). - [ ] `terminals` >= 0; bandwidths and `switch_buffer` positive. - [ ] Reachability: every terminal pair that traffic can be generated between must have a next hop (see `compute_routes()`). - [ ] Raise errors on the form, not as a failed run.
Validate before submission rather than allowing CODES to fail at startup.
A→Btwice).terminals>= 0; bandwidths andswitch_bufferpositive.compute_routes()).