netx/netx_api
oliver 1ef43fdcd4 Unify UME World as hex nav with conditional flat world map.
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>
2026-08-07 00:51:08 +08:00
..
cli_templates Improve topology UX, traffic discover logs, and CLI wrap parsing. 2026-08-03 19:24:43 +08:00
config/parsers feat: initialize netx ops tool repository 2026-05-03 23:43:21 +08:00
mcp Add UME TopoNodes/TopologicalLinks daily sync into local tables. 2026-08-06 18:17:45 +08:00
models Unify UME World as hex nav with conditional flat world map. 2026-08-07 00:51:08 +08:00
__init__.py feat(mcp): add netx-mcp package and HTTP stdio MCP 2026-05-30 15:44:32 +08:00
alarms_router.py Split port traffic service and replace deprecated UTC/lifespan APIs. 2026-08-02 17:06:46 +08:00
ap_client.py fix(oclaw-bridge): disable system proxy for localhost health calls 2026-05-09 16:10:34 +08:00
app_shutdown.py Defer canvas edge deletes to Save and cascade orphan Fabric on NE detach. 2026-08-05 22:43:03 +08:00
app_startup.py Add LLDP pause/resume/stop with restart recovery, and localize ops task titles. 2026-08-04 22:23:44 +08:00
audit_async.py Harden runtime budgets: DB pool, CLI concurrency, timeouts, and metrics. 2026-08-02 18:02:43 +08:00
auth_cookies.py Harden auth with revocable sessions, cookies, and single-login default. 2026-08-06 14:13:37 +08:00
auth_deps.py Harden auth with revocable sessions, cookies, and single-login default. 2026-08-06 14:13:37 +08:00
auth_middleware.py Harden auth with revocable sessions, cookies, and single-login default. 2026-08-06 14:13:37 +08:00
auth_passwords.py feat(auth): add local login, audit, API keys, and system admin UI 2026-07-30 02:34:25 +00:00
auth_rate_limit.py Harden auth with revocable sessions, cookies, and single-login default. 2026-08-06 14:13:37 +08:00
auth_router.py Harden auth with revocable sessions, cookies, and single-login default. 2026-08-06 14:13:37 +08:00
auth_schemas.py Harden auth with revocable sessions, cookies, and single-login default. 2026-08-06 14:13:37 +08:00
auth_scopes.py Harden auth scopes, SQL/WebCRT gates, and per-install JWT secrets. 2026-08-02 16:24:34 +08:00
auth_service.py Harden auth with revocable sessions, cookies, and single-login default. 2026-08-06 14:13:37 +08:00
auth_tokens.py Harden auth with revocable sessions, cookies, and single-login default. 2026-08-06 14:13:37 +08:00
cli_budget.py Raise runtime defaults for multi-user shared-server deployments. 2026-08-02 18:11:12 +08:00
cli_resolve.py feat(cli): UME lazy exec via shared profiles and ume_ne_id MCP support 2026-06-26 17:13:49 +08:00
cli_router.py feat(cli): UME lazy exec via shared profiles and ume_ne_id MCP support 2026-06-26 17:13:49 +08:00
cli_schemas.py Open WebCRT New Session setup for LLDP placeholders. 2026-08-05 17:20:26 +08:00
cli_service.py Open WebCRT New Session setup for LLDP placeholders. 2026-08-05 17:20:26 +08:00
cli_timeout.py Harden runtime budgets: DB pool, CLI concurrency, timeouts, and metrics. 2026-08-02 18:02:43 +08:00
cli_wrap.py Improve topology UX, traffic discover logs, and CLI wrap parsing. 2026-08-03 19:24:43 +08:00
collection_job_state.py feat(collect): draft jobs, merged create UI, and unified start 2026-05-28 10:36:47 +08:00
collection_recovery.py feat(ops): add managed NE management and batch CLI collection 2026-05-27 23:34:29 +08:00
collection_router.py Add collect dashboard KPIs and create-job modal. 2026-08-05 14:08:13 +08:00
collection_schemas.py Add collect dashboard KPIs and create-job modal. 2026-08-05 14:08:13 +08:00
collection_service.py Add collect dashboard KPIs and create-job modal. 2026-08-05 14:08:13 +08:00
config.py Wait indefinitely for UME topology dumps while the connection stays up. 2026-08-06 19:04:13 +08:00
config_sync_codec.py Add industrial config sync separate from collection tasks. 2026-07-31 10:25:36 +08:00
config_sync_commands.py Switch CLI parsing to TextFSM and polish topology/workbench UX. 2026-08-02 23:06:40 +08:00
config_sync_common.py Raise runtime defaults for multi-user shared-server deployments. 2026-08-02 18:11:12 +08:00
config_sync_cycles.py Raise runtime defaults for multi-user shared-server deployments. 2026-08-02 18:11:12 +08:00
config_sync_recovery.py Add config-sync cycle retention alongside config history keep. 2026-08-02 03:44:35 +00:00
config_sync_router.py Add config sync cycle stop and surface pause/stop controls in the UI. 2026-07-31 17:04:56 +08:00
config_sync_runner.py Raise runtime defaults for multi-user shared-server deployments. 2026-08-02 18:11:12 +08:00
config_sync_scheduler.py Expose worker scheduler health via heartbeat and isolate WebCRT IO. 2026-08-02 18:37:06 +08:00
config_sync_schemas.py Raise runtime defaults for multi-user shared-server deployments. 2026-08-02 18:11:12 +08:00
config_sync_service.py Split topology classify and config sync services by domain. 2026-08-02 17:21:50 +08:00
config_sync_snapshots.py Split topology classify and config sync services by domain. 2026-08-02 17:21:50 +08:00
db.py Harden runtime budgets: DB pool, CLI concurrency, timeouts, and metrics. 2026-08-02 18:02:43 +08:00
db_storage_metrics.py Show netx database used size on the workbench storage gauge. 2026-08-06 09:36:17 +08:00
device_types.py Add topology-canvas placeholder NE create (source=topology). 2026-08-05 17:42:51 +08:00
fabric_reconcile_scheduler.py Defer canvas edge deletes to Save and cascade orphan Fabric on NE detach. 2026-08-05 22:43:03 +08:00
host_metrics.py Unify dark UI surfaces and add adjustable topology canvas background. 2026-08-04 23:56:18 +08:00
importer.py feat: initialize netx ops tool repository 2026-05-03 23:43:21 +08:00
integrations_router.py Expose worker scheduler health via heartbeat and isolate WebCRT IO. 2026-08-02 18:37:06 +08:00
key_alert_config.py fix(ume): global clear-push setting, schema migration, and help hints 2026-06-22 17:26:49 +08:00
key_alert_forward.py feat(ume): OClaw forwarder runtime task and i18n status codes 2026-06-24 10:29:10 +08:00
key_alert_matcher.py feat(ume): ne_type filter, rule edit, and pager layout 2026-06-23 20:44:33 +08:00
lldp_collect_router.py Add LLDP pause/resume/stop with restart recovery, and localize ops task titles. 2026-08-04 22:23:44 +08:00
lldp_collect_scheduler.py Expose worker scheduler health via heartbeat and isolate WebCRT IO. 2026-08-02 18:37:06 +08:00
lldp_collect_schemas.py Raise runtime defaults for multi-user shared-server deployments. 2026-08-02 18:11:12 +08:00
lldp_collect_service.py Add LLDP pause/resume/stop with restart recovery, and localize ops task titles. 2026-08-04 22:23:44 +08:00
main.py Harden runtime budgets: DB pool, CLI concurrency, timeouts, and metrics. 2026-08-02 18:02:43 +08:00
managed_ne_router.py Remove unused SUPPORTED_DEVICE_TYPES import from managed-ne router. 2026-08-04 14:29:33 +08:00
mcp_server.py feat(mcp): add netx-mcp package and HTTP stdio MCP 2026-05-30 15:44:32 +08:00
metrics_router.py Show netx database used size on the workbench storage gauge. 2026-08-06 09:36:17 +08:00
ne_cli_errors.py Ignore Huawei/ZTE post-login banners when classifying auth failures. 2026-08-02 20:12:03 +08:00
ne_cli_hop.py Split ne_session_factory into templates, CLI hop detection, and connect paths. 2026-08-02 17:15:57 +08:00
ne_collect_runner.py Raise runtime defaults for multi-user shared-server deployments. 2026-08-02 18:11:12 +08:00
ne_collection_paths.py Harden retention under one-click start: UME raw caps and collection TTL. 2026-08-02 18:16:30 +08:00
ne_connect.py Raise runtime defaults for multi-user shared-server deployments. 2026-08-02 18:11:12 +08:00
ne_crypto.py feat(ops): add managed NE management and batch CLI collection 2026-05-27 23:34:29 +08:00
ne_exec.py Split WebCRT and API startup; default collectors to worker process. 2026-08-02 16:50:52 +08:00
ne_exec_guard.py Split WebCRT and API startup; default collectors to worker process. 2026-08-02 16:50:52 +08:00
ne_hop_templates.py Split ne_session_factory into templates, CLI hop detection, and connect paths. 2026-08-02 17:15:57 +08:00
ne_netmiko.py Fix ZTE LLDP Scope table parse and skip discover without vendor. 2026-08-02 23:26:28 +08:00
ne_schemas.py Reuse stored managed-NE credentials when opening WebCRT from topology. 2026-08-04 10:40:22 +08:00
ne_service.py Split UME routes and managed-NE service by domain. 2026-08-02 17:03:42 +08:00
ne_service_common.py Reuse stored managed-NE credentials when opening WebCRT from topology. 2026-08-04 10:40:22 +08:00
ne_service_crud.py Add topology-canvas placeholder NE create (source=topology). 2026-08-05 17:42:51 +08:00
ne_service_import.py Split UME routes and managed-NE service by domain. 2026-08-02 17:03:42 +08:00
ne_service_webcrt.py Add topology-canvas placeholder NE create (source=topology). 2026-08-05 17:42:51 +08:00
ne_session_connect.py Split ne_session_factory into templates, CLI hop detection, and connect paths. 2026-08-02 17:15:57 +08:00
ne_session_factory.py Split ne_session_factory into templates, CLI hop detection, and connect paths. 2026-08-02 17:15:57 +08:00
ntc_parse.py Improve topology UX, traffic discover logs, and CLI wrap parsing. 2026-08-03 19:24:43 +08:00
oclaw_alarm_forwarder.py Map OClaw bridge connect failures to readable fwd status codes. 2026-08-06 15:34:43 +08:00
ops_router.py Add ops task overview, chart ahead window, and WebCRT lifecycle status. 2026-08-02 14:05:59 +08:00
ops_tasks_service.py Add collect dashboard KPIs and create-job modal. 2026-08-05 14:08:13 +08:00
parser_config.py feat: initialize netx ops tool repository 2026-05-03 23:43:21 +08:00
port_traffic_board_service.py Add ops task overview, chart ahead window, and WebCRT lifecycle status. 2026-08-02 14:05:59 +08:00
port_traffic_commands.py Switch CLI parsing to TextFSM and polish topology/workbench UX. 2026-08-02 23:06:40 +08:00
port_traffic_common.py Split port traffic service and replace deprecated UTC/lifespan APIs. 2026-08-02 17:06:46 +08:00
port_traffic_devices.py Improve topology UX, traffic discover logs, and CLI wrap parsing. 2026-08-03 19:24:43 +08:00
port_traffic_migrate.py Fix Alembic brownfield patches aborting the Postgres transaction. 2026-08-02 20:02:07 +08:00
port_traffic_parsers.py Switch CLI parsing to TextFSM and polish topology/workbench UX. 2026-08-02 23:06:40 +08:00
port_traffic_recovery.py Move port traffic to device-centric monitoring with a dedicated wall and collect logs. 2026-08-01 15:45:20 +08:00
port_traffic_router.py Add ops task overview, chart ahead window, and WebCRT lifecycle status. 2026-08-02 14:05:59 +08:00
port_traffic_runner.py Switch CLI parsing to TextFSM and polish topology/workbench UX. 2026-08-02 23:06:40 +08:00
port_traffic_samples.py Split port traffic service and replace deprecated UTC/lifespan APIs. 2026-08-02 17:06:46 +08:00
port_traffic_scheduler.py Adopt production-safe runtime defaults and forwarder retry limits. 2026-08-02 18:08:28 +08:00
port_traffic_schemas.py Improve topology UX, traffic discover logs, and CLI wrap parsing. 2026-08-03 19:24:43 +08:00
port_traffic_service.py Split port traffic service and replace deprecated UTC/lifespan APIs. 2026-08-02 17:06:46 +08:00
runtime_budget.py Start API and collector worker together from one-click scripts. 2026-08-02 18:20:13 +08:00
runtime_task_messages.py Add UME TopoNodes/TopologicalLinks daily sync into local tables. 2026-08-06 18:17:45 +08:00
scheduler_heartbeat.py Defer canvas edge deletes to Save and cascade orphan Fabric on NE detach. 2026-08-05 22:43:03 +08:00
schema_patches.py Unify UME World as hex nav with conditional flat world map. 2026-08-07 00:51:08 +08:00
schemas.py feat: initialize netx ops tool repository 2026-05-03 23:43:21 +08:00
security_bootstrap.py Default UME TLS verify off for lab self-signed certs. 2026-08-06 15:15:48 +08:00
sql_guard.py Harden auth scopes, SQL/WebCRT gates, and per-install JWT secrets. 2026-08-02 16:24:34 +08:00
sql_router.py Harden auth scopes, SQL/WebCRT gates, and per-install JWT secrets. 2026-08-02 16:24:34 +08:00
timeutil.py Split port traffic service and replace deprecated UTC/lifespan APIs. 2026-08-02 17:06:46 +08:00
topology_classify.py Split topology classify and config sync services by domain. 2026-08-02 17:21:50 +08:00
topology_classify_apply.py Split topology classify and config sync services by domain. 2026-08-02 17:21:50 +08:00
topology_classify_common.py Split topology classify and config sync services by domain. 2026-08-02 17:21:50 +08:00
topology_classify_rules.py Split topology classify and config sync services by domain. 2026-08-02 17:21:50 +08:00
topology_classify_slices.py Split topology classify and config sync services by domain. 2026-08-02 17:21:50 +08:00
topology_common.py Split port traffic service and replace deprecated UTC/lifespan APIs. 2026-08-02 17:06:46 +08:00
topology_discover.py Add LLDP pause/resume/stop with restart recovery, and localize ops task titles. 2026-08-04 22:23:44 +08:00
topology_discover_common.py Add topology-canvas placeholder NE create (source=topology). 2026-08-05 17:42:51 +08:00
topology_discover_jobs.py Add LLDP pause/resume/stop with restart recovery, and localize ops task titles. 2026-08-04 22:23:44 +08:00
topology_discover_scan.py Skip LLDP self-loop edges instead of failing the whole discover apply. 2026-08-04 15:44:46 +08:00
topology_fabric.py Harden topology canvas edge delete, discover cancel, and map UX. 2026-08-05 21:23:00 +08:00
topology_fabric_links.py Unify UME World as hex nav with conditional flat world map. 2026-08-07 00:51:08 +08:00
topology_fabric_nodes.py Split topology fabric and views into focused domain modules. 2026-08-02 17:46:16 +08:00
topology_fabric_peers.py Add topology-canvas placeholder NE create (source=topology). 2026-08-05 17:42:51 +08:00
topology_inventory_lifecycle.py Defer canvas edge deletes to Save and cascade orphan Fabric on NE detach. 2026-08-05 22:43:03 +08:00
topology_lldp.py Fix ZTE LLDP Scope table parse and skip discover without vendor. 2026-08-02 23:26:28 +08:00
topology_membership.py Add topology classify inventory, fabric lifecycle, and broader collect targets. 2026-08-02 11:09:58 +08:00
topology_migrate.py Unify UME World as hex nav with conditional flat world map. 2026-08-07 00:51:08 +08:00
topology_region_canvas.py Unify UME World as hex nav with conditional flat world map. 2026-08-07 00:51:08 +08:00
topology_router.py Unify UME World as hex nav with conditional flat world map. 2026-08-07 00:51:08 +08:00
topology_schemas.py Unify UME World as hex nav with conditional flat world map. 2026-08-07 00:51:08 +08:00
topology_service.py Harden topology canvas edge delete, discover cancel, and map UX. 2026-08-05 21:23:00 +08:00
topology_views.py Add topology-canvas placeholder NE create (source=topology). 2026-08-05 17:42:51 +08:00
topology_views_graph.py Unify UME World as hex nav with conditional flat world map. 2026-08-07 00:51:08 +08:00
topology_views_tree.py Unify UME World as hex nav with conditional flat world map. 2026-08-07 00:51:08 +08:00
ume_alarm_apply.py Fix missing imports after UME router split. 2026-08-06 15:29:36 +08:00
ume_alarm_subscription_store.py feat(ume): real-time current alarms via WebSocket subscription 2026-05-22 20:27:43 +08:00
ume_alarm_ws.py Split UME alarm WebSocket consumer into state, log, subscription, and loop modules. 2026-08-02 17:26:40 +08:00
ume_alarm_ws_consumer.py Fix more UME split regressions for sync and alarm WSS. 2026-08-06 15:59:02 +08:00
ume_alarm_ws_log.py Treat UME stream handshake 500 as a lost subscription. 2026-08-06 16:19:14 +08:00
ume_alarm_ws_state.py Split UME alarm WebSocket consumer into state, log, subscription, and loop modules. 2026-08-02 17:26:40 +08:00
ume_alarm_ws_subscription.py Fix UME alarm WSS startup NameError for SessionLocal. 2026-08-05 09:41:36 +08:00
ume_alarms_router.py Fix missing imports after UME router split. 2026-08-06 15:29:36 +08:00
ume_client.py Wait indefinitely for UME topology dumps while the connection stays up. 2026-08-06 19:04:13 +08:00
ume_inventory_router.py Fix missing imports after UME router split. 2026-08-06 15:29:36 +08:00
ume_key_alert_router.py Fix missing imports after UME router split. 2026-08-06 15:29:36 +08:00
ume_port_normalize.py Unify UME World as hex nav with conditional flat world map. 2026-08-07 00:51:08 +08:00
ume_raw.py Harden retention under one-click start: UME raw caps and collection TTL. 2026-08-02 18:16:30 +08:00
ume_router.py Split UME routes and managed-NE service by domain. 2026-08-02 17:03:42 +08:00
ume_runtime.py Fix topology resume so it actually interrupts wait and starts a sync. 2026-08-06 18:54:38 +08:00
ume_support.py Clarify topology schedule: next run is 24h after last real sync end. 2026-08-06 18:59:52 +08:00
ume_sync_common.py Fix more UME split regressions for sync and alarm WSS. 2026-08-06 15:59:02 +08:00
ume_sync_pull.py Harden retention under one-click start: UME raw caps and collection TTL. 2026-08-02 18:16:30 +08:00
ume_sync_router.py Make topology resume kick sync immediately and keep schedule across restarts. 2026-08-06 18:51:44 +08:00
ume_sync_service.py Add UME TopoNodes/TopologicalLinks daily sync into local tables. 2026-08-06 18:17:45 +08:00
ume_sync_topology.py Unify UME World as hex nav with conditional flat world map. 2026-08-07 00:51:08 +08:00
ume_token_router.py Fix missing imports after UME router split. 2026-08-06 15:29:36 +08:00
ume_token_store.py feat(UME): 增加RESTCONF对接与可视化运维页 2026-05-08 01:36:53 +08:00
ume_topology_apply.py Unify UME World as hex nav with conditional flat world map. 2026-08-07 00:51:08 +08:00
ume_topology_flat_coords.py Unify UME World as hex nav with conditional flat world map. 2026-08-07 00:51:08 +08:00
ume_topology_world.py Unify UME World as hex nav with conditional flat world map. 2026-08-07 00:51:08 +08:00
ume_topology_world_graph.py Unify UME World as hex nav with conditional flat world map. 2026-08-07 00:51:08 +08:00
webcrt_channel.py Split UME sync and WebCRT session into focused modules. 2026-08-02 17:12:55 +08:00
webcrt_io.py Expose worker scheduler health via heartbeat and isolate WebCRT IO. 2026-08-02 18:37:06 +08:00
webcrt_router.py Harden auth with revocable sessions, cookies, and single-login default. 2026-08-06 14:13:37 +08:00
webcrt_service.py Harden auth with revocable sessions, cookies, and single-login default. 2026-08-06 14:13:37 +08:00
webcrt_session.py Harden auth with revocable sessions, cookies, and single-login default. 2026-08-06 14:13:37 +08:00
webcrt_session_model.py Harden auth with revocable sessions, cookies, and single-login default. 2026-08-06 14:13:37 +08:00
webcrt_session_registry.py Harden auth with revocable sessions, cookies, and single-login default. 2026-08-06 14:13:37 +08:00
webcrt_sftp.py Expand WebCRT SFTP into a fuller file manager. 2026-08-02 01:33:37 +08:00
webcrt_tickets.py Fix WebCRT sessions killed by StrictMode ws_ticket reuse. 2026-08-02 18:49:29 +08:00
worker.py Defer canvas edge deletes to Save and cascade orphan Fabric on NE detach. 2026-08-05 22:43:03 +08:00