netx/netx_api
oliver 75d03f5f9b Raise physical canvas capacity and keep region==canvas rules consistent.
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>
2026-08-09 23:23:09 +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 Ensure topo_folder.external_ref exists on API startup. 2026-08-07 10:09:02 +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 Ensure topo_folder.external_ref exists on API startup. 2026-08-07 10:09:02 +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 Fix world-map zoom-out starfield, tree search canvas hits, and sidebar scroll. 2026-08-07 14:23:21 +08:00
topology_common.py Harden topology tree against bad view filters and allow deleting UME World. 2026-08-07 09:58:20 +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 Harden UME/LLDP link ports and canvas styles around UME authority. 2026-08-07 16:33:25 +08:00
topology_discover_scan.py Harden UME/LLDP link ports and canvas styles around UME authority. 2026-08-07 16:33:25 +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 Harden UME/LLDP link ports and canvas styles around UME authority. 2026-08-07 16:33:25 +08:00
topology_fabric_nodes.py Add Google-Earth style world-map LOD with 1:1 coords and sticky tiles. 2026-08-07 03:57:24 +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 Raise physical canvas capacity and keep region==canvas rules consistent. 2026-08-09 23:23:09 +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 Render world map overview as a screen-space starfield and rename it to 世界地图. 2026-08-07 11:02:23 +08:00
topology_router.py Harden topology tree against bad view filters and allow deleting UME World. 2026-08-07 09:58:20 +08:00
topology_schemas.py Raise physical canvas capacity and keep region==canvas rules consistent. 2026-08-09 23:23:09 +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 Raise physical canvas capacity and keep region==canvas rules consistent. 2026-08-09 23:23:09 +08:00
topology_views_tree.py Raise physical canvas capacity and keep region==canvas rules consistent. 2026-08-09 23:23:09 +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 Harden UME/LLDP link ports and canvas styles around UME authority. 2026-08-07 16:33:25 +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 Heal UME dock-to-Fabric gaps: partial jobs, startup apply, and one-click UI. 2026-08-07 10:33:25 +08:00
ume_support.py Heal UME dock-to-Fabric gaps: partial jobs, startup apply, and one-click UI. 2026-08-07 10:33:25 +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 Heal UME dock-to-Fabric gaps: partial jobs, startup apply, and one-click UI. 2026-08-07 10:33:25 +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 Heal UME dock-to-Fabric gaps: partial jobs, startup apply, and one-click UI. 2026-08-07 10:33:25 +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 Harden UME/LLDP link ports and canvas styles around UME authority. 2026-08-07 16:33:25 +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 Protect root maps and auto world map; only sub-regions are deletable. 2026-08-07 14:41:06 +08:00
ume_topology_world_graph.py Render world map overview as a screen-space starfield and rename it to 世界地图. 2026-08-07 11:02:23 +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