Nexus Agent
091fb97291
Push async submit, Chinese 422 field labels, hide server CSV export.
...
Nexus CI/CD / test (push) Waiting to run
Nexus CI/CD / deploy (push) Blocked by required conditions
Nexus Pre-commit Checks / quick-check (push) Waiting to run
Return sync/files immediately with background runner; show loc_zh in validation errors; remove servers toolbar CSV export button.
2026-06-08 23:28:26 +08:00
Nexus Agent
abeab9d3e4
Fix recovery Telegram dedup and unify Beijing time display.
...
Store alert metrics without per-value Redis members to stop duplicate recovery pushes; format all operator-facing timestamps in Asia/Shanghai across Web UI and Telegram.
2026-06-08 23:18:56 +08:00
Nexus Agent
972456a246
feat(agent): 401 停心跳、配置重载后重启与升级双文件下发
...
提取 heartbeat_policy;install/upgrade 同步 heartbeat_policy.py;config reload 恢复心跳协程。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 23:06:09 +08:00
Nexus Agent
69068e2e39
feat(ops): server_batch 回收、sync_logs 清理与 Agent 安装跳过
...
部署对齐三项后端能力:启动/周期收尾僵尸批量任务、30 天推送日志 purge、已安装且版本不低于主站时跳过批量安装 Agent。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 15:23:03 +08:00
Nexus Agent
a401ea5a4d
fix(servers): server_ids 批量上限 2000 并修复列表 422 中文
...
全选 101 台批量操作不再因 max_length=50 被拒;Pydantic 列表 too_long 错误显示完整中文。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 15:08:03 +08:00
Nexus Agent
632891e6e5
fix(settings): 表单校验与 422 中文错误信息
...
v-form 保存前 validate;validation_errors_zh 翻译 Pydantic msg;value 数字 coerce。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 14:52:59 +08:00
Nexus Agent
ff143c286d
fix(settings): 保存设置时将数值字段转为字符串避免 422
...
SettingUpdatePayload.value 要求 str,连接池与告警阈值为 number 输入。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 14:50:10 +08:00
Nexus Agent
85ecd1f54f
fix(servers): 未设路径区表格绑定 sort-by 启用服务端排序
...
未设路径面板缺 v-model:sort-by,列头点击不触发 API;与主表共享 sortBy。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 14:36:21 +08:00
Nexus Agent
05c7aeb702
fix(servers): 未设路径批量检测对话框选中数
...
检测路径与批量改分类确认框按当前区块显示并提交正确 server_ids。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 14:09:50 +08:00
Nexus Agent
d0526c06b7
fix(servers): 展开详情对比度与同步日志仅 1 条
...
展开区灰底可读;行内详情只拉最近一条同步记录,去掉「最近 N 条」文案。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 13:45:13 +08:00
Nexus Agent
fe8b24ca0b
fix(notify): 资源恢复 Telegram 联动 CPU/内存/磁盘开关
...
关闭分项告警后不再推送对应恢复消息;仪表盘移除服务器列表并更新设置页说明。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 13:22:38 +08:00
Nexus Agent
86bc737f4c
fix(dashboard): 修复服务器列表不显示
...
清除 keep-alive 下 loading 卡死;改用 v-card-text 与表格内置 loading,并加 30s 自动刷新。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 13:13:34 +08:00
Nexus Agent
27da842a20
fix: Telegram 开关多 worker 同步与服务器行内详情展开
...
关闭 notify_* 后通过 Redis 广播同步各 worker 内存设置;修复 expanded id 类型不匹配导致点击名称无法展开详情。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 13:05:22 +08:00
Nexus Agent
1e83bb34bd
feat(servers): 未设路径区批量管理与主表齐平
...
独立勾选与全选筛选结果,共用 ServerBatchActionBar;列与批量操作对齐主列表。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 12:55:02 +08:00
Nexus Agent
8c86b50d09
feat(servers): 未设路径区块与行内详情;命令栏恢复单色
...
服务器页拆分未设路径列表、行内展开详情;API target_path_unset 可选过滤。
命令栏取消 Shell 语法彩色,ANSI 仅保留 xterm SSH 输出区。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 12:48:45 +08:00
Nexus Agent
8312a6cf81
fix(terminal): WebSSH xterm SSH 交互区 ANSI 彩色输出
...
PTY 环境变量注入 TERM=xterm-256color,DATA 帧 base64 保 ESC;前端解码写入 xterm;命令栏 Shell 高亮 CSS 与黑屏分离。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 12:35:27 +08:00
Nexus Agent
1d1fb6285b
fix(terminal): 快捷命令栏「管理」改为「断开」
...
底部快捷栏提供断开会话,快捷命令配置仍走系统设置。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 12:14:47 +08:00
Nexus Agent
835ef2c8ea
fix(terminal): WebSSH 固定黑底白字 ANSI 终端配色
...
Nexus CI/CD / test (push) Waiting to run
Nexus CI/CD / deploy (push) Blocked by required conditions
Nexus Pre-commit Checks / quick-check (push) Waiting to run
不再跟随 Vuetify 浅色主题,xterm 始终使用经典黑底白字与 16 色输出。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 12:09:00 +08:00
Nexus Agent
09d4613e46
fix(scripts): script_executions.results 扩 MEDIUMTEXT 并截断落库
...
366 台批量执行 results JSON 超 TEXT 64KB 导致 flush 失败、状态卡在 running。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 11:57:20 +08:00
Nexus Agent
22d5d21c1f
fix(schedules): 单次显示「当天」、收窄重复方式下拉
...
单次执行不再出现「重复方式」;「每天」改为「当天」;循环模式下拉宽度收窄。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 11:49:20 +08:00
Nexus Agent
08a0157c95
feat: 调度表单重构、登录门控、批量任务与页面缓存对齐
...
调度页执行周期可视化/单次执行/分类选机/推送源对齐;登录 IP 门控与无缝导航;
服务器批量后台任务、执行记录、凭据合并、各页激活刷新与错误提示修复。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 11:17:21 +08:00
Nexus Agent
b8425cc059
fix(servers): 状态/心跳/Agent 列 overlay 后排序
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 07:38:28 +08:00
Nexus Agent
b220a5a762
fix(terminal): 移除命令栏冗余按钮,断开遮罩仅覆盖 SSH 区
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 07:30:31 +08:00
Nexus Agent
b011b60f9c
feat(ui): 服务器/脚本/重试队列页面自动刷新
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 07:27:46 +08:00
Nexus Agent
908ae938b5
fix(terminal): 深链 server_id 下命令输入框可用
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 07:24:32 +08:00
Nexus Agent
06af90d35e
feat(scripts): 执行详情服务器名与顶栏居中提示
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 07:20:37 +08:00
Nexus Agent
118ec9f6b0
fix(deploy): Gate 7 仅对比 HEAD~1..HEAD 并跳过 gate_log
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 07:09:46 +08:00
Nexus Agent
0b2d7ac50d
feat(scripts): 异步执行、全局进度看板与完成提示音设置
...
脚本 exec 立即返回 running 并在后台跑批次;/ws/alerts 推送 script_progress/complete;
新增 ScriptRunsPage、Telegram 汇总通知与可配置的浏览器完成提示音。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 07:07:02 +08:00
Nexus Agent
df95a2429f
feat(frontend): 全选筛选结果与脚本失败分组复制
...
服务器列表支持跨页全选当前筛选/分类本组;脚本执行详情按错误类型分组(去动态 IP)并复制失败清单,不做 CSV 导出。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 05:51:11 +08:00
Nexus Agent
5f63fb0a3f
fix(scripts): 执行进度按成功台数计算,失败项快速定位与面板清理
...
progress 改为 success/total(失败不计入分子);脚本库执行详情中文化、失败筛选与终态任务移出批量状态面板。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 05:11:39 +08:00
Nexus Agent
c435413563
feat(servers): 分类筛选/批量改分类、分页中文与列排序,脚本库按分类选机
...
支持 300+ 台服务器按分类浏览与批量管理,修复分页「全部」与排序;门控 Gate3 强制本地 API。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 04:30:24 +08:00
Nexus Agent
c8b0663508
feat: 批量IP添加、脚本库历史、推送权限记录与脚本SSH执行修复
...
Nexus CI/CD / test (push) Waiting to run
Nexus CI/CD / deploy (push) Blocked by required conditions
Nexus Pre-commit Checks / quick-check (push) Waiting to run
批量添加替代CSV并支持去重;脚本库页内嵌执行历史;推送历史记录 rsync 权限策略;
脚本执行不再依赖 Agent 在线;服务器同步日志与相关单测补齐。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 03:15:40 +08:00
Nexus Agent
fb6a4be797
feat(commands): 推送日志第三视图与 CSV 导入模板
...
按对齐计划 Phase1:Commands 页增加推送日志筛选视图;补全 servers_import_template.csv;扩写功能指南 §12.6/12.8/12.10 与 acceptance_catalog。
2026-06-08 02:45:17 +08:00
Nexus Agent
dfb0ea2d8f
fix(frontend): 脚本库与推送调度对齐设计文档
...
修复 ScriptsPage 执行契约(script_id/command、历史过滤、长任务/凭据)及 SchedulesPage 缺失能力(target_path、next_run、push/script、cron/once、sync_mode);后端补迁移与 schedule_runner 传参。
2026-06-08 02:39:18 +08:00
Nexus Agent
f12a0b6a36
fix(sync): rsync 推送后设置远程属主 www 与权限 755
...
推送默认 --chown=www:www --chmod=D755,F755,避免文件落盘为 root。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 02:23:43 +08:00
Nexus Agent
5ed3c28491
fix(sync): 推送异常时落库 failed,修复订正时区与卡住阈值
...
rsync 抛错时 sync_log 不再永久 running;reconcile 兼容 naive UTC。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 02:14:33 +08:00
Nexus Agent
77cd9a5205
fix(docker): 生产镜像安装 rsync 修复文件推送失败
...
容器内缺少 rsync/openssh-client/sshpass,_rsync_push 触发 FileNotFoundError。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 02:10:06 +08:00
Nexus Agent
814262bd83
feat(push): 暂存文件支持批量删除
...
推送页暂存列表增加多选、全选与批量删除确认,复用 local-file-ops 逐条删除。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 02:05:33 +08:00
Nexus Agent
2b016f91af
fix(push): 普通文件上传不限制后缀
...
upload-files 接受任意后缀含 .zip;拖拽/多选统一原样暂存,解压改走「ZIP 解压上传」按钮。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 01:19:20 +08:00
Nexus Agent
217c5d9935
feat(push): 源路径验证、普通文件上传与暂存文件管理
...
补齐 Round4 H5/H6:验证 Nexus 主机源路径、失败批量重试;新增 upload-files 与普通文件多选上传;上传后可浏览/预览/重命名/删除暂存目录内容。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-08 01:14:07 +08:00
Nexus Agent
a225b655d9
feat(frontend): 恢复服务器批量检测路径并修复推送目标路径
...
补回 SPA 迁移丢失的 detect-path 确认框与结果弹窗,推送页留空走各机 target_path,文件页默认 50 条/页。
2026-06-08 00:56:35 +08:00
Nexus Agent
bdb3b3bc34
docs(deploy): 生产对齐部署验证报告与 changelog 补全
...
记录 e5a3f25 部署、前端镜像重建与 Agent 1/1 升级结果。
2026-06-07 23:22:21 +08:00
Nexus Agent
e5a3f2524e
fix(auth): change_password 改密路径 audit_repo 定义顺序
...
部署前补齐门控审计与 Layer3 演练终验记录,消除 ruff F821。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-07 23:11:28 +08:00
Nexus Agent
9337f37da8
fix(files,deploy): 文件上传字段名与 Layer3 巡检脚本
...
后端同时接受 file/files 并支持多文件 SFTP 上传;修复 health_monitor.sh 引号语法使 Layer 3 cron 可运行。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-07 23:00:01 +08:00
Nexus Agent
7ea94a60ab
fix(auth,servers): 修复 refresh 自动登出与服务器状态未知
...
API 返回 status 字段供前端显示在线状态;token_version 为 NULL 时 refresh cookie 含 :None 导致续期 401。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-07 22:53:29 +08:00
Nexus Agent
05006cb5df
feat(auth): refresh token 先 Redis 后 MySQL 双写
...
登录 30 天会话 hash 持久化到 admin_refresh_tokens;启动从 MySQL 回填 Redis,
Redis 重启后会话仍可 refresh。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-07 21:56:56 +08:00
Nexus Agent
69087988b1
fix(auth): 反代后登录白名单读取真实客户端 IP
...
Docker/1Panel 反代时 request.client.host 为 172.18.0.1;可信内网跳读取 X-Real-IP/X-Forwarded-For。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-07 21:50:39 +08:00
Nexus Agent
a14fbb3df3
fix(ssh): 快速添加跳过主机密钥校验并中文化错误
...
凭据轮询在 SSH_STRICT 默认 true 时因 HostKeyNotVerifiable 在认证前失败;
探测始终 known_hosts=None,默认 strict 改为 false,错误信息统一中文。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-07 21:31:38 +08:00
Nexus Agent
ea2507dbc0
feat(telegram): 全部通知改为中文详细说明
...
统一告警/恢复/系统/Layer3/测试消息格式,含来源、影响与建议操作。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-07 21:01:47 +08:00
Nexus Agent
f60a5ea5bc
fix(deploy): health_monitor 剥离 .env 引号以修复 Telegram 404
...
容器 .env 带引号的 Token 导致 sendMessage URL 无效;增加 normalize_env_value
与失败日志。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-07 20:58:02 +08:00