Mapped interfaces are the expect set and must appear after cutover; unmapped same-name down/up is anomaly. Success presets no longer treat bare unchanged as green.
Co-authored-by: Cursor <cursoragent@cursor.com>
Derive fail from missing+mismatch only, recompute pass rate accordingly, and put check-item count on one row aligned with fail/success/%.
Co-authored-by: Cursor <cursoragent@cursor.com>
Treat missing+mismatch as fail, match as success, and added as a special filter; show three right-aligned sheet badges.
Co-authored-by: Cursor <cursoragent@cursor.com>
Fill started_at from batch lists, show compact times, and right-align color-only -/+~/ = counts per sheet.
Co-authored-by: Cursor <cursoragent@cursor.com>
Drop the batch-run label, resolve NE from job tasks, and slim left-nav badges to pass or non-zero fail counts only.
Co-authored-by: Cursor <cursoragent@cursor.com>
Keep device and collect time beside export actions; drop the run verdict row and show miss/extra/mismatch/match badges on each left-nav check item.
Co-authored-by: Cursor <cursoragent@cursor.com>
Enrich run detail with before/after NE labels, and keep present-side values readable for added/removed rows instead of striking them out.
Co-authored-by: Cursor <cursoragent@cursor.com>
Make field purpose visible in the sticky table header so reviewers can tell identity vs check vs context at a glance.
Co-authored-by: Cursor <cursoragent@cursor.com>
Key stays single-value; other fields always render a paired 前/后 cell so cutover diffs are readable at a glance.
Co-authored-by: Cursor <cursoragent@cursor.com>
Refresh left-nav/main chrome, unify list status chips across network pages, and merge UME token with alarm subscription into one top card.
Co-authored-by: Cursor <cursoragent@cursor.com>
Key alerts now deliver only via the DSH hub; Modal Body no longer flex-shrinks the rules rows to empty.
Co-authored-by: Cursor <cursoragent@cursor.com>
Pull top-5 matches from UME inventory, expand the list in-flow under the input, and auto-scroll the modal to keep results visible.
Co-authored-by: Cursor <cursoragent@cursor.com>
Drop fabric reconcile as redundant with topology, open the traffic wall from the sched card, and surface scheduler tick ages in metrics types.
Co-authored-by: Cursor <cursoragent@cursor.com>
Checkpoint before workbench facade redesign: list defaults, API key quota, toast portal, topology canvas editor toolbar with More menu, and trusted-proxy client IP for sessions.
Co-authored-by: Cursor <cursoragent@cursor.com>
Make session lifecycle and typed CLI lines searchable in audit_log with password redaction, and surface summaries plus device filters in the ops UI.
Co-authored-by: Cursor <cursoragent@cursor.com>
Show connect/alarm/level on the canvas with display toggles, refresh overlay fields even on dirty edits, fix connect-test dots and create-place messaging, and deep-link node alarms into the network alarms page.
Co-authored-by: Cursor <cursoragent@cursor.com>
Topology MCP adds pull/compact/bundle/suggest-hubs with a no-template skill path; API gains fabric level and NE collection policy; web list pages get paging and denser collect/network workflows.
Co-authored-by: Cursor <cursoragent@cursor.com>
Flatten nested toolbar boxes, add a resizable sidebar and selective off-map NE add, and make fullscreen floats/minimap follow canvas background.
Co-authored-by: Cursor <cursoragent@cursor.com>
Pass view kind into membership so metro maps are not capped at core=80, add region-scoped neighbor projection, and align UI/tests with one physical canvas per region.
Co-authored-by: Cursor <cursoragent@cursor.com>
Defer topology xyflow and WebCRT xterm until needed, calm idle polling, bake login earth brightness, and let AI alert rules scroll as one natural panel.
Co-authored-by: Cursor <cursoragent@cursor.com>
Keep the hidden system root built-in; speed tree bootstrap, unblock new-root UI, and soften query/Suspense refetch jank.
Co-authored-by: Cursor <cursoragent@cursor.com>
Keep visited regions when panning, prefetch detail on search locate with a gold flashing target highlight, and shrink default NE icons so dense UME layouts stay readable.
Co-authored-by: Cursor <cursoragent@cursor.com>
Top-level folders are nav-only with a unique system root map; UI drops custom/extra L2 creates. Batched dock-to-Fabric apply avoids PG lock OOM so World NEs can render, with subtree region counts restored.
Co-authored-by: Cursor <cursoragent@cursor.com>
Seed a unique L2 World canvas under the UME World container, show the flat map only when nested regions have NEs, pack blocks without overlap, allow drag overrides on the world map while forbidding direct NE adds, and hide the world-map truncation banner.
Co-authored-by: Cursor <cursoragent@cursor.com>
Keep connect/delete/move as dirty local edits until Save, use straight edges again, and drop Visio side handles so lines attach at the NE center like discovered links.
Co-authored-by: Cursor <cursoragent@cursor.com>
Project-neighbors supports dry_run for local dirty canvas; Save flushes adds. Connect mode uses drag-from side anchors with smoothstep elbows instead of click-click.
Co-authored-by: Cursor <cursoragent@cursor.com>
Align collection tasks with LLDP/config-sync chrome, and refresh active-task overview when jobs change.
Co-authored-by: Cursor <cursoragent@cursor.com>