Files
Nexus/docs/project/AI-HANDOFF-2026-06-01-files.md
T

2.4 KiB
Raw Blame History

文件管理(#/files)— AI 接续备忘

日期: 2026-06-01
用户确认: 「好 你自己记住」— 本地改动尚未 git commit;生产已用 SCP/tar 部署,与仓库可能不一致。


1. 生产状态(api.synaglobal.vip

状态
前端 web/app/ 已 tar+scpprune 后 restart nexus
后端 sync_v2.pyschemas.pyremote_path_validation.py 曾 SCP 到服务器
健康 /healthok
验证 用户需 Ctrl+Shift+R 强刷 #/files

下一任部署优先git push + 服务器 git pull + supervisorctl restart nexus,避免仅 SCP 漂移。


2. 本会话已完成功能

模块 说明
browse 契约 items + fileBrowse.ts
页面迭代 下载、预览、路由 query、拖拽上传、symlink
300KB 预加载 filePreload.ts
编辑器 FileEditorWorkbench.vue 分屏+多标签+状态栏(非默认全屏)
v2 补齐 目录树、新建文件、压缩/解压、排序、扩展名筛选、快捷键
剪贴板 POST /sync/file-clipboard + Ctrl+C/X/V

3. 待入库(git status 快照 2026-06-01

修改FilesPage.vuesync_v2.pyschemas.pyMonacoEditor.vueapi/index.tstypes/api.ts

新增FileEditorWorkbench.vueFileDirectoryTree.vueuseFilesClipboard.tsuseFilesHotkeys.tsfilePreload.tsfileSort.tsremote_path_validation.pytests/test_remote_path_validation.py、多篇 docs/changelog/2026-06-01-files-*.md 与设计文档

用户未要求 commit 时:不要擅自 git commit;用户说「好」= 同意记住此状态,下次可代其提交。


4. 关键 API

  • POST /api/sync/browse
  • POST /api/sync/read-filemax_size 建议 307200
  • POST /api/sync/write-file
  • POST /api/sync/file-clipboardmode: copy | move
  • POST /api/sync/compress / decompress

5. 未做 / 否决

  • v2 设计中的跨目录 剪贴板到不同服务器(前端已拦)
  • 公网 8601、嵌入式 Monaco 全站预加载(见项目 SSOT 否决项)

6. 相关 changelog(按主题)

  • 2026-06-01-files-browse-fix.md
  • 2026-06-01-files-page-iteration.md
  • 2026-06-01-files-300k-preload.md
  • 2026-06-01-files-monaco-editor-fix.md
  • 2026-06-01-files-editor-panel.md
  • 2026-06-01-files-v2-complete.md
  • 2026-06-01-files-clipboard-transfer.md