netx/scripts
oliver f301544b99 Optimize topology canvas per the 2026-10-12 plan.
Save path: one atomic POST /views/{id}/commit (edges, ports, styles, node
add/remove, positions) replaces the multi-request save. Edge styles and
manual-edge port edits now go through dirty/undo/save instead of writing
immediately; non-manual edge ports are read-only.

Data safety: UI saves no longer clear MCP node locks or freeze the device
name into the placement label (label_override + omit-means-keep semantics,
also applied to the MCP positions tool). Adding NEs/neighbors with unsaved
edits now saves first instead of silently dropping them. Positions no longer
bypass membership caps, except persisting synthesized child-region icons.

Fixes found in acceptance: nodes added in the same commit kept (40,40)
under autoflush=False; edits on edges deleted in the same save 404'd the
whole save; box-selection drags and arrow-key moves were not marked dirty;
large canvases far from the origin opened blank and locate did nothing
because fitView waits for measurement that onlyRenderVisibleElements never
does (now fitBounds from known geometry).

Also: batch N+1 lookups in graph/positions, deterministic truncation,
outside-peer scan excludes internal edges, split TopologyPage into hooks,
fix flaky UME/LLDP port test, add scripts/topology_clear_frozen_labels.py.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 22:11:22 +08:00
..
_analyze_topo_layout.py Unify UME World as hex nav with conditional flat world map. 2026-08-07 00:51:08 +08:00
_import_ume_csv_snapshot.py Unify UME World as hex nav with conditional flat world map. 2026-08-07 00:51:08 +08:00
_run_ume_apply.py Unify UME World as hex nav with conditional flat world map. 2026-08-07 00:51:08 +08:00
bench_webcrt.py Speed up WebCRT and record audited commands from the device echo. 2026-10-12 07:34:30 +08:00
e2e_webcrt_audit_r1.py Add WebCRT R1 audit e2e helper that reads credentials from the environment. 2026-09-02 22:02:52 +08:00
e2e_webcrt_input_scenarios.py Speed up WebCRT and record audited commands from the device echo. 2026-10-12 07:34:30 +08:00
fake_ssh_device.py Speed up WebCRT and record audited commands from the device echo. 2026-10-12 07:34:30 +08:00
init_pg.ps1 Fix Windows PowerShell parsing on Server 2012: UTF-8 BOM scripts. 2026-10-07 10:53:29 +08:00
load_smoke.py Add HTTP concurrency smoke probe for running netx API. 2026-08-02 18:25:27 +08:00
reset_db.py feat: initialize netx ops tool repository 2026-05-03 23:43:21 +08:00
start_netx.ps1 Fix portable Python: ship python/runtime and relink .venv on install (0.4.6). 2026-10-07 15:48:57 +08:00
start_netx.sh Scale biz_state collects with dedicated workers and non-blocking UI poll. 2026-09-22 17:00:37 +08:00
stop_netx.ps1 Fix Windows install start: writable runtime logs and robust Postgres bootstrap. 2026-10-07 11:22:01 +08:00
stop_netx.sh Scale biz_state collects with dedicated workers and non-blocking UI poll. 2026-09-22 17:00:37 +08:00
topology_clear_frozen_labels.py Optimize topology canvas per the 2026-10-12 plan. 2026-10-12 22:11:22 +08:00