netx/netx_api
oliver c20a731f72 List aux under every export item; dedupe only in flat summary.
Shared aux CLIs (e.g. running-config bgp) now repeat per monitoring section; the trailing unique list still collapses duplicates.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-22 14:34:19 +08:00
..
biz_migration Fix empty BGP route false positives and add batch alias UX. 2026-09-22 10:58:57 +08:00
biz_state List aux under every export item; dedupe only in flat summary. 2026-09-22 14:34:19 +08:00
cli_templates Fix empty BGP route false positives and add batch alias UX. 2026-09-22 10:58:57 +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 Fix empty BGP route false positives and add batch alias UX. 2026-09-22 10:58:57 +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 Add biz_state monitoring with shared LLDP parse and batch collect. 2026-09-17 16:17:04 +08:00
app_startup.py Add opt-in per-NE CLI exec_policy for MCP/API exec. 2026-09-22 09:27:40 +08:00
audit_async.py Audit only intentional auth actions, not automatic 401/403 gates. 2026-09-01 21:51:59 +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 Polish HeroUI chrome, topology toolbar, and session client IP. 2026-09-12 15:10:57 +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 Polish HeroUI chrome, topology toolbar, and session client IP. 2026-09-12 15:10:57 +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 Persist cutover evidence cards with device-raw A/B keys for board and AI. 2026-09-19 22:48:37 +08:00
auth_service.py Polish HeroUI chrome, topology toolbar, and session client IP. 2026-09-12 15:10:57 +08:00
auth_tokens.py Harden auth with revocable sessions, cookies, and single-login default. 2026-08-06 14:13:37 +08:00
biz_migration_router.py Persist cutover evidence cards with device-raw A/B keys for board and AI. 2026-09-19 22:48:37 +08:00
biz_state_router.py Export collect commands with aux by default again. 2026-09-22 14:22:46 +08:00
biz_state_scheduler.py Decouple cutover HF from portrait and tighten ops UI. 2026-09-19 21:11:31 +08:00
cli_budget.py Raise runtime defaults for multi-user shared-server deployments. 2026-08-02 18:11:12 +08:00
cli_creds.py Skip CLI startup when device credentials are incomplete. 2026-08-11 15:11:59 +08:00
cli_resolve.py Add opt-in per-NE CLI exec_policy for MCP/API exec. 2026-09-22 09:27:40 +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 Add explicit Huawei hop system-view option and startup column safety-net. 2026-08-28 23:58:05 +08:00
cli_service.py Add explicit Huawei hop system-view option and startup column safety-net. 2026-08-28 23:58:05 +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
client_ip.py Polish HeroUI chrome, topology toolbar, and session client IP. 2026-09-12 15:10:57 +08:00
collection_job_state.py Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +08:00
collection_policy.py Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +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 Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +08:00
collection_schemas.py Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +08:00
collection_service.py Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +08:00
config.py Add opt-in per-NE CLI exec_policy for MCP/API exec. 2026-09-22 09:27:40 +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 Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +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 Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +08:00
config_sync_runner.py Disable target paging after hop login and keep CLI echo on timeouts. 2026-08-29 12:30:33 +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
dsh_alarm_hub.py Show DSH alarm hub multi-subscriber status instead of OClaw single link. 2026-09-10 16:57:42 +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 Remove legacy OClaw alarm WSS and fix key-alert rules table layout. 2026-09-15 23:10:26 +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 Remove legacy OClaw alarm WSS and fix key-alert rules table layout. 2026-09-15 23:10:26 +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 Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +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 Add LLDP collect retry for failed and weak-evidence NEs. 2026-08-11 11:25:57 +08:00
lldp_collect_service.py Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +08:00
lldp_shared.py Add biz_state monitoring with shared LLDP parse and batch collect. 2026-09-17 16:17:04 +08:00
main.py Add cutover migration monitor and day-based batch retention. 2026-09-18 16:43:26 +08:00
managed_ne_router.py Add opt-in per-NE CLI exec_policy for MCP/API exec. 2026-09-22 09:27:40 +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 Remove legacy OClaw alarm WSS and fix key-alert rules table layout. 2026-09-15 23:10:26 +08:00
ne_cli_errors.py Fix ZTE hop false auth rejects by treating CLI prompt as success. 2026-08-31 10:46:16 +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 Fix empty Cisco IOSv CLI output and harden Windows stop/start. 2026-09-05 03:31:09 +08:00
ne_collect_scheduler.py Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +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 Add topology NE create/connect flows and trim connect-test logs. 2026-09-01 20:37:42 +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 Add opt-in per-NE CLI exec_policy for MCP/API exec. 2026-09-22 09:27:40 +08:00
ne_exec_guard.py Add opt-in per-NE CLI exec_policy for MCP/API exec. 2026-09-22 09:27:40 +08:00
ne_hop_templates.py Support bastion hop hosts as FQDN and pasted OpenSSH destinations. 2026-08-11 17:36:45 +08:00
ne_netmiko.py Fix empty Cisco IOSv CLI output and harden Windows stop/start. 2026-09-05 03:31:09 +08:00
ne_schemas.py Add opt-in per-NE CLI exec_policy for MCP/API exec. 2026-09-22 09:27:40 +08:00
ne_service.py Support bastion hop hosts as FQDN and pasted OpenSSH destinations. 2026-08-11 17:36:45 +08:00
ne_service_common.py Add opt-in per-NE CLI exec_policy for MCP/API exec. 2026-09-22 09:27:40 +08:00
ne_service_crud.py Add opt-in per-NE CLI exec_policy for MCP/API exec. 2026-09-22 09:27:40 +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 Fix ZTE hop false auth rejects by treating CLI prompt as success. 2026-08-31 10:46:16 +08:00
ne_session_factory.py Support bastion hop hosts as FQDN and pasted OpenSSH destinations. 2026-08-11 17:36:45 +08:00
ntc_parse.py Add TextFSM rule tables as dual input to biz-state parsers. 2026-09-17 22:18:21 +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 Remove legacy OClaw alarm WSS and fix key-alert rules table layout. 2026-09-15 23:10:26 +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 Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +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 Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +08:00
port_traffic_runner.py Disable target paging after hop login and keep CLI echo on timeouts. 2026-08-29 12:30:33 +08:00
port_traffic_samples.py Define port traffic samples logger used by retention purge. 2026-09-16 10:22:34 +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 Remove legacy OClaw alarm WSS and fix key-alert rules table layout. 2026-09-15 23:10:26 +08:00
scheduler_heartbeat.py Add biz_state monitoring with shared LLDP parse and batch collect. 2026-09-17 16:17:04 +08:00
schema_patches.py Add opt-in per-NE CLI exec_policy for MCP/API exec. 2026-09-22 09:27:40 +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 Fix fabric path search, read scope, orbit total ranking, and edge menu clamp. 2026-08-10 21:31:50 +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 Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +08:00
topology_classify_common.py Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +08:00
topology_classify_rules.py Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +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 Prefer vendor label for LLDP command when it conflicts with device_type. 2026-08-29 00:24:06 +08:00
topology_discover_jobs.py Add LLDP collect retry for failed and weak-evidence NEs. 2026-08-11 11:25:57 +08:00
topology_discover_scan.py Add biz_state monitoring with shared LLDP parse and batch collect. 2026-09-17 16:17:04 +08:00
topology_fabric.py add topology tool 2026-08-10 20:29:05 +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 Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +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_level.py Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +08:00
topology_lldp.py Harden ZTE biz-state parsers and default | one-line collect CLIs. 2026-09-20 14:49:41 +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 Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +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 Ship gated eye polish, fabric levels, and collection UI refresh. 2026-08-12 16:13:05 +08:00
topology_schemas.py Add topology situational overlays and harden live sync. 2026-09-01 21:13:15 +08:00
topology_service.py Fix fabric path search, read scope, orbit total ranking, and edge menu clamp. 2026-08-10 21:31:50 +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 Add topology situational overlays and harden live sync. 2026-09-01 21:13:15 +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 Remove legacy OClaw alarm WSS and fix key-alert rules table layout. 2026-09-15 23:10:26 +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 Remove legacy OClaw alarm WSS and fix key-alert rules table layout. 2026-09-15 23:10:26 +08:00
ume_key_alert_router.py Remove legacy OClaw alarm WSS and fix key-alert rules table layout. 2026-09-15 23:10:26 +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 Add biz_state monitoring with shared LLDP parse and batch collect. 2026-09-17 16:17:04 +08:00
ume_support.py Remove legacy OClaw alarm WSS and fix key-alert rules table layout. 2026-09-15 23:10:26 +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 Remove legacy OClaw alarm WSS and fix key-alert rules table layout. 2026-09-15 23:10:26 +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 Remove legacy OClaw alarm WSS and fix key-alert rules table layout. 2026-09-15 23:10:26 +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 Fix log audit record bug 2026-09-03 14:19:51 +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 Polish HeroUI chrome, topology toolbar, and session client IP. 2026-09-12 15:10:57 +08:00
webcrt_service.py Fix Huawei WebCRT hop login echo doubling and safer Change-now handling. 2026-08-28 23:34:15 +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 WebCRT Enter audit so logged commands match the visible line. 2026-09-02 22:01:28 +08:00
webcrt_session_registry.py Record WebCRT device login/commands and NE exec in operation audit. 2026-09-01 21:36:44 +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