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
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
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
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
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
f9934bd4f1
feat(ops-patrol): Layer 3 巡检与 Telegram 配置打通
...
保存 Telegram 时同步至 .env,health_monitor 支持 MySQL 回退,
设置页展示巡检状态,部署时自动安装 cron。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-07 20:17:24 +08:00
Nexus Agent
540a7fce05
fix(settings): Telegram 检测/测试闭环与 8 项告警开关恢复
...
检测与测试前自动持久化 Token/Chat ID;getUpdates 清除 Webhook 并返回具体 API 错误;恢复 NOTIFY 分项开关与免密 reveal。
2026-06-07 19:45:07 +08:00
Nexus Agent
2e911dcca7
fix(frontend): 设置页恢复 IP 白名单订阅 URL 与解析预览
...
补回代理订阅配置 UI,修正 ip-allowlist 保存 payload 为 manual_ips + subscription_url。
2026-06-07 19:34:24 +08:00
Nexus Agent
a5d5518054
fix(frontend): 设置页恢复 Telegram Chat ID 自动检测
...
Vue SPA 迁移遗漏 getUpdates 检测按钮;对接 GET /settings/telegram/chats,并修正 cron 脚本 bash 调用。
2026-06-07 19:31:13 +08:00
Nexus Agent
ac17f91106
docs(audit): 14 页 API 契约审计与凭据轮询 SSOT 收尾
...
记录凭据轮询/pending 契约对照与生产验证,更新功能指南与附录 J,并将 pending 相关类型集中到 api.ts。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-06 23:50:05 +08:00
Nexus Deploy
4ba45abf38
feat(servers): 凭据轮询登录与连接失败列表
...
- 密码/SSH密钥预设增加用户名;快速添加(IP)轮询全部预设尝试 SSH 登录
- 成功入 servers 列表;失败写入 pending_servers 并支持重试/删除
- 新增 credential_poller、try_ssh_login 与 add-by-ip/pending API
2026-06-06 20:08:48 +08:00
Nexus Deploy
b866e944ab
fix: Code Review P0/P1 batches 1-3 and single-operator risk acceptance
...
Apply sync/install/auth/schedule/retry/agent/settings fixes from full
code review; document accepted WS and Agent legacy risks for solo ops.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-04 15:57:49 +08:00
Nexus Deploy
a2ae74d582
release: BUG fixes batch 1-6, full bug scan docs, Ubuntu/Linux dev
...
- Backend: auth refresh reuse, schedule/retry/sync/agent/files fixes
- Frontend: push WS, files ETag browse, vite build assets
- Docs: audit/changelog, production deploy gate, bug scan registry B7-77
- Deploy: deploy-production.sh, prune assets, gate logs
2026-06-04 14:01:14 +08:00
Your Name
4b5602a719
feat(files): fix editor freeze, EOL gates, server form and session UX
...
- FilesPage storeToRefs + remotePath coercion; Monaco preload; list action buttons
- text_io for UTF-8/LF; install/sync EOL; check_shell_eol + check_text_eol gates
- ServerFormDialog, hash login redirect, AppAuth keep-session; design docs and audits
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-03 00:42:55 +08:00
Your Name
9c9c763e9c
fix(credentials): password preset is name+password only, no username field
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-02 16:08:50 +08:00
Your Name
0cc1cc14a4
fix(terminal): restore app-bar top inset so tab bar and xterm are not clipped
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-02 16:02:17 +08:00
Your Name
f078d0e03b
feat(push): localize sync/rsync error messages to Chinese in history and progress
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-02 15:18:01 +08:00
Your Name
524dabcf7f
refactor(editor): P0 — per-tab model, EOL preservation, conflict detection (409)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-02 14:46:49 +08:00
Your Name
0ccd1ba934
fix(files): use proxyRefs for inject context unwrapping
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-02 08:25:25 +08:00
Your Name
a6673157a5
fix(files): unwrap injected refs via reactive context for v-model
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-02 08:23:03 +08:00
Your Name
78798e3630
feat(push): refactor B0-B6, /ws/sync channel, staging cleanup
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-02 08:14:09 +08:00
Your Name
68fdcbae0a
refactor(terminal): split TerminalPage into composables and components (T1-T6)
...
Extract session/WS/xterm logic with markRaw native store, per-session disconnect overlay, shared server picker, and cmd bar via ShellHighlightField expose.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-02 06:44:56 +08:00
Your Name
181560eca2
fix(ui): align servers stat cards with dashboard; improve files browse errors
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-02 06:08:02 +08:00
Your Name
c6f1d73ff5
feat(files): P4 GET browse with ETag and P5 zero-flicker loading
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-02 05:59:55 +08:00
Your Name
6cb591212d
refactor(files): P2 split UI into components with page context inject
...
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
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-02 05:14:13 +08:00
Your Name
7cbddf5d48
refactor(files): P1 split composables, Pinia store, directory cache
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-02 05:05:26 +08:00
Your Name
cb738a8e9a
fix: file manager double browse from v-select init and stale chunks
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-02 04:36:46 +08:00
Your Name
5393252036
fix: eliminate double browse requests in file manager
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-02 04:29:11 +08:00
Your Name
3bc2843642
fix: browse序号保护防止token刷新重试导致的双刷新
2026-06-02 03:48:01 +08:00
Your Name
1d6d26d612
fix: 加载中隐藏空状态提示,消除进目录时的视觉双刷新
2026-06-02 03:19:27 +08:00
Your Name
c65e3ea2a7
fix: 目录双击导致双刷新(e.detail守卫),横幅仅在实际权限错误时显示
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-02 03:07:51 +08:00
Your Name
67dac0168f
feat: 文件管理器复制粘贴守卫、2MB编辑限制、一键配置sudoers、编辑器外观重构
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-02 02:20:22 +08:00
Your Name
57d67c494b
fix: 警告横幅关闭后进子目录不再重新出现,文案简化
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-02 01:51:13 +08:00
Your Name
39a8cf16cf
fix(ui): 调度与重试队列路由导航及前端资源一致性
...
侧栏可滚动与显式导航;懒加载失败提示;getList 兼容分页响应;生产 prune 清理 1065 个过期 chunk。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-01 22:36:08 +08:00
Your Name
b62d4f6f9f
fix(audit): 审计日志操作与目标类型全面中文化
...
补全 action/target 映射表与词段兜底;审计页筛选下拉使用中文标签。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-01 22:18:42 +08:00
Your Name
44c19f329a
fix(terminal): Ctrl+D 快捷键文案改为退出
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-01 22:13:54 +08:00
Your Name
9e924562d2
fix(terminal): 右下角快捷键与右键菜单中文化并放大
...
快捷键区改为中文大按钮;工具栏字号/回滚/全屏中文化;右键菜单加大并在命令栏拦截英文系统菜单。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-01 22:00:49 +08:00
Your Name
e3eb0e65a5
fix(ui): 仪表盘/审计/调度/重试修复与终端快捷命令改版
...
统一终端页与全局侧栏菜单;快捷命令仅在终端执行,增删改排序迁入系统设置;命令输入区加高与 Enter/Shift+Enter 行为;后端自定义命令优先与 reorder API。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-01 21:56:07 +08:00
Your Name
d93c518a14
feat(files): POSIX paths, elevation, recursive chmod, access hints and docs
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-01 19:54:18 +08:00
Your Name
1cfac23c01
feat: terminal ANSI colors and enhanced shell syntax highlighting
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-01 15:49:27 +08:00
Your Name
799140f6c4
feat: terminal SPA layout, route sync, and WebSocket URL helper
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-01 15:41:59 +08:00
Your Name
8935081ac5
feat: full-site acceptance automation and health/detail fix
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-01 15:22:42 +08:00
Your Name
ab431028c1
fix: 服务器页批量选择绑定 Vuetify4 modelValue
...
v-model:selected 无法同步勾选状态;生产已部署 ServersPage-CGp8DUVa.js 并验证「已选择 2 台服务器」。
2026-06-01 14:54:39 +08:00
Your Name
8311821590
fix: 全量修复批量选择、JWT 60min、script-callback 认证与心跳数据流
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-01 12:17:47 +08:00
Your Name
6183047fd6
fix: 全站 bug 审查修复 (前端9项 + 后端5项)
...
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
前端修复:
- P0: App.vue http 未导入导致全局搜索崩溃
- P1: TOTP 登录流程断裂 (TotpRequiredError 非 ApiError 子类)
- P1: ServersPage 编辑服务器 domain 被端口字符串污染
- P1: PushPage Set[0] 无效 → values().next().value
- P1: SettingsPage API 返回字符串未转数字
- P2: api/index.ts getList 重复定义移除
- P2: LoginPage 锁定倒计时 now ref + watch 更新
- P2: TerminalPage 路径验证正则放松 (允许空格/中文)
- P2: useWebSocket CONNECTING/CLOSING 状态关闭旧连接
后端修复:
- P1: websocket.py redis.keys() → scan_iter() 避免阻塞
- P1: auth_service.py TTL 仅在 key 无 TTL 时设置
- P1: servers.py 批量操作加 asyncio.Lock 避免并发 session commit
- P2: settings.py asyncio.get_event_loop() → get_running_loop()
- P2: settings.py datetime.utcfromtimestamp() → datetime.fromtimestamp(tz=utc)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-01 11:24:55 +08:00
Your Name
2d00d6a8eb
fix: 登录页居中布局 + 删除Logo区域
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-05-31 23:30:12 +08:00