zcbot/web
caoqianming e87daa7c89 feat(tasks): 任务软删除(留对话轨迹做语料 + 可恢复)+ bump 0.17.0
DELETE /v1/tasks/{id} 从硬删(DELETE + CASCADE + rmdir)改为软删(置 deleted_at),
messages/usage_events 及工作目录文件全部保留,留作训练语料且可恢复;新增
POST /v1/tasks/{id}/restore;list_tasks/list_folders 计数过滤 deleted_at IS NULL;
delete_file 顶层目录 409 引用检查排除软删 task(避免"任务删了文件夹却删不掉")。
0010 migration 加 tasks.deleted_at(additive 可空,存量行自动视为未删)。
推翻 DESIGN 原 hard-cascade 决策;文件归档方案(restic 备份 + DB 事件日志)写入 DESIGN 待办。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-17 16:37:47 +08:00
..
static feat(media): seedream i2i 改图 + 前端 paste 路径注入 + bump 0.15.0 2026-06-16 16:18:18 +08:00
__init__.py core(§7 Phase G G1): Web UI 脚手架 + cli.py web 子命令 2026-05-14 13:37:54 +08:00
admin.py feat(admin): 后台目录导航 + 按模型/各用户用量时间筛选排序 + 存储分页 + 导出 PDF + bump 0.11.0 2026-06-12 10:44:47 +08:00
app.py feat(tasks): 任务软删除(留对话轨迹做语料 + 可恢复)+ bump 0.17.0 2026-06-17 16:37:47 +08:00
auth.py feat(admin): 角色化管理后台 + 分页各用户用量 + bump 0.9.0 2026-06-12 10:02:20 +08:00
broker.py feat(ops): 并发/线程池轻量监控 + 接管默认 executor 2026-06-11 11:09:44 +08:00
pptx_render.py feat(preview): pptx 在线预览 —— LibreOffice→PDF + 复用 PDF iframe(DESIGN §8.3 Stage 1) 2026-06-09 13:04:02 +08:00
sinks.py core(0004): 删 runs / usage_events 表 + cancel/SSE 改 task-level 2026-05-18 11:05:35 +08:00
static_files.py Disable static asset caching 2026-06-08 09:16:31 +08:00