Skip to content

Releases: wb04307201/spring-ai-loom-agent

v1.1.40

Choose a tag to compare

@wb04307201 wb04307201 released this 31 Aug 13:48
ad48249

新功能

  • Capability统一模型(M1-M7):@ToolGroup 注解 + role_tool 表 + 统一 CapabilityService,本地工具与 MCP
    同源渲染;admin bypass 移除,严格 RBAC
  • M6 Universal 工具:6 个工具(file/skill/time/knowledge/subtask/schedule)对所有登录用户默认可见,UI 完全隐藏
    checkbox,LLM 仍可调用
  • Flyway schema 一站式 init:V1.0 + V2.1~V2.4 五份合并为单一 V1.0__init.sql
  • IKnowledgeTool 上线:searchKnowledge(knowledgeId, query, topK?)替代 RetrievalAugmentationAdvisor
  • 文件存储增强:DB 模式 loom_file_content +
    知识库市场三件套(loom_market_knowledge/loom_user_knowledge/loom_role_knowledge)
  • Admin UI:用户列表新增"已分配角色" badge 列;工具面板文案精简;checked + disabled 死锁态修复
  • 测试:新增 26 个测试(CapabilityServiceTest 18 + DefaultRoleServiceErrorMappingTest 8)

部署必读

  1. 新装 admin 必须首次手动授权:admin 不再自动拥有 capability,必须先进 admin 控制台给 wb04307201 分配业务 role
  2. Flyway 升级:已有部署 rm -rf ~/.loom/datasource 重跑,或 flyway baseline -baselineVersion=2.4;不接受就地
    schema 升级
  3. API 4xx 变更(附 P2 修复):
  • PUT /admin/users/{u}/roles 不存在 role → 400 {"error":"角色不存在: xxx"}(原 500)
  • PUT /admin/roles/{code}/tools 不存在 role → 404(原 500)
  • PUT /admin/users/{u}/roles 不存在 user → 400(原 500)
  • body schema 修正:{"roleCodes": [...]} 而非 raw array

修复

  • P0.3.3 user_role.username FK CASCADE
  • B.2.1 role 删除时 cascade 清 user_role/role_mcp/role_tool
  • P3.1 overlong role code/name → 400
  • P2 不存在 user/role → 4xx(TDD + lock-in)
  • syncRoleSkills 移除已删的 m.version 列
  • LastChunkAdvisor 流空 chunk NPE + doFinally 回归修复
  • loom-*-mcp 工具改用 @mcptool + snake_case
  • admin UI 所有 fetch 显式 charset=UTF-8

v1.1.39

Choose a tag to compare

@wb04307201 wb04307201 released this 22 Aug 23:37
296fa62
  1. docs(version): 更新版本号从1.1.38到1.1.39
  2. chore(test): 切换 DashScope API key 到个人 token env 名
  3. style: HTML/CSS/JS DOM-aware 重排为 2 空格缩进 (prettier 3.9.6)
  4. fix(html): index.html 移除 2 处多余
  5. feat(yaml): MCP server 版本用 @project.version@ 资源过滤

v1.1.38

Choose a tag to compare

@wb04307201 wb04307201 released this 11 Aug 13:55
8aa76a2
  1. docs(image): regenerate project-overview-{en,zh}.png — 补 Knowledge 卡 +…
  2. test(chat): 3 个 buildDynamicSystemPrompt 集成测试
  3. chore(release): bump to 1.1.38
  4. docs(skill): 同步 listSkills 移除到 CLAUDE / TOOLS / API
  5. feat(skill): 删除 listSkills 工具 — system prompt 注入全量技能

v1.1.37

Choose a tag to compare

@wb04307201 wb04307201 released this 10 Aug 15:00
cdb20ea

Release Notes — v1.1.37

主题:Market 去审批化 · 历史对话稳定加载 · 管理控制台全面重做


🚀 Features

  • V5.4 P13-P22 — Skill / Knowledge Market 去审批(submit 直接 APPROVED),admin union view 移除,pull 拒绝覆盖自建,删除/下架 UX 完整,role-kb/skill 自动同步,移除 version 字段。所有 Flyway 迁移合并到 V1.0__init.sql
  • Skill Picker/ 触发 slash picker + 标签条 UI;picker 选中 skill 全文强注入 system promptcreateOrUpdateSkill 工具 + POST /skill/upsert
  • 管理控制台重做 — conversation.html V4.0 全量对话流(块布局 + 思考折叠 + 工具调用可视化 + 轮次分隔);user.html 5 列布局 + 搜索 / 排序 / 筛选 + 用量 bar chart
  • V5.4 P1-P12 稳定性 — 自定义 LastChunkMessageChatMemoryAdvisor,统一 tool_call_log 入口,历史对话长上下文修复(JdbcTemplate 直写),logicalSort SYSTEM 事件,TOOL 行去重,跨异步线程 conversationId 传递
  • Usage 合并 — V5.0/V5.1 合并到 V4.0(loom_chat_usage / loom_chat_reasoning

🐛 Bug Fixes

P0: SSE 流式响应恢复 · MCP name/ 路由 404
P1: currentIsAdmin RBAC · 长上下文丢失 · tool_call_log 多写去重 · logicalSort 丢 SYSTEM 事件
P2: 市场 Tab 无反应 · slash picker 事件委托 · final review 3 项 · toast CSS · 上游异常中文映射 · MCP SDK 超时 · thinking 持久化 · sidebar 加载态 · bing-search 描述合并

🧪 Tests

  • 5 个高风险类单元测试(LastChunkAdvisor / LoggingToolCallback / JdbcToolCallLogRepository / DefaultSkillRoleAdmin / SyncMcp)
  • 36 个 B1-B5 单测
  • V5.4 P12 E2E 9/10 通过(T9a 确认为测试 harness bug)
  • 全功能 572 个测试 100% 通过(单测 495 + API 54 + E2E 23)
  • E24 + E25 skill picker 两条路径补测

⚠️ Upgrade

  • 全新库V1.0 → V1.1 → V2.0 一次跑通
  • 历史库:V12-V17 旧版本号已从磁盘移除,需全新库或 flyway baseline(本地 rm -rf ~/.loom/datasource
  • 破坏性变更market_skill.version 列已移除;loom_chat_token_usage 已合并到 loom_chat_usage / loom_chat_reasoning

📝 Docs

CLAUDE.md · README.md 截图刷新 · TOOLS.md 同步 · 新增 skill picker 设计 + 实施计划 · 替换 6 张 chrome 截图


Tag: v1.1.37

v1.1.36

Choose a tag to compare

@wb04307201 wb04307201 released this 31 Jul 12:26
f79bc90
  • 知识市场 — 完整的市场工作流(提交→审批→订阅)+ 角色授权
  • 🆕 工具化 RAG — IKnowledgeTool 替代旧 Advisor,会话级知识库选择
  • 🆕 子任务 & 定时 — LLM 可调用 + 持久化 + 会话级面板
  • 🐛 45 项修复 — RBAC、MCP、认证、安全、UI 全面加固
  • 99/99 E2E — 15 项全量回归测试通过

v1.1.35

Choose a tag to compare

@wb04307201 wb04307201 released this 26 Jul 14:27
06b6821

feat: 新增子任务管理工具并修复定时任务越权问题

  • 新增 ISubTaskTool 3个管理方法:
      * list_sub_tasks() - 列出当前会话运行中的子任务
      * cancel_sub_task(subTaskId) - 取消当前会话的子任务
      * get_sub_task_history(limit) - 获取当前会话的子任务历史
      所有新工具按 (username, conversationId) 严格隔离,防止跨会话越权

  • 修复 DefaultScheduleTool.listSchedules 越权问题:
      原实现只按 username 过滤,会列出同用户所有会话的定时任务
      新实现按 (username, conversationId) 精确前缀过滤

  • 新增 8 个测试用例,全部 322 个测试通过

  • 更新文档:TOOLS.md/zh-CN、README.md/zh-CN、CLAUDE.md、project-overview-image/README.md

v1.1.34

Choose a tag to compare

@wb04307201 wb04307201 released this 24 Jul 13:53
610e9fa
  • 子任务系统:Executor / Tool / Registry / conversation-scoped cancel + 级联删除 + 历史持久化
  • 定时任务系统:flex-schedule 接入 → loom 自管 H2 + 启动恢复(10m/72h/strict)
  • DB V2.0:合并 V12-V17,新增多表 + conversation 侧边栏三列
  • 前端 operations-console:子任务 / 定时面板同族重设计
  • RBAC 强化:SubTask / File / MCP 按 username scope;拒带 dash 用户名
  • 安全修复:Markdown sanitize + innerHTML 清理 + MCP 选择持久化
  • MCP admin 修复:4xx 状态码 + clear 语义 + NPE + 保存竞态
  • 业务修复:删 KB 清 chat 绑定 / sidebar 重命名 / 附件静默丢图
  • 配置硬编码修复:子任务 / 定时面板上限提示读真实值
  • 存储统一:~/.loom/ 单根,datasource/jvector/file/knowledge/compile
  • 回归测试:15 Task 设计 + 报告,99/99 E2E pass
  • 升级:flex-schedule 1.0 → 1.2.2(BUG-14)
  • 依赖:test 加 actuator;删未用 eventsource-parser
  • 仓库清理:删 superpowers 文档/45MB 截图/52MB worktree + gitignore
  • 文档同步:CLAUDE.md / README / project-overview-image skill 18 轮变更

v1.1.33

Choose a tag to compare

@wb04307201 wb04307201 released this 12 Jul 15:09
79eec9e
  1. docs: 文档审计 + 全量修复(11 项)
  2. feat(skill): 用 wan2.7-image 重新生成项目概览图
  3. config(core): 切换到阿里云通义千问模型配置

v1.1.32

Choose a tag to compare

@wb04307201 wb04307201 released this 07 Jul 14:13
e19cf3e

chore(version): 更新项目版本号至 1.1.32 并调整配置

  • 将 API 文档中的版本号从 1.1.31 更新为 1.1.32
  • 更新各 MCP 模块 application.yml 中的版本号至 1.1.32
  • 修改主 pom.xml 中 Spring Boot 版本至 3.5.16 和 Spring AI 版本至 1.1.8
  • 调整测试模块配置,将 DashScope 替换为 OpenAI 配置
  • 更新 README 中的依赖版本号至 1.1.32
  • 重构 LoomAgentConfiguration 中的导入顺序并优化代码结构
  • 添加聊天响应过滤以避免空结果处理异常

v1.1.31

Choose a tag to compare

@wb04307201 wb04307201 released this 24 Jun 22:19
e1df699

refactor(core): 优化Tika工具使用并升级版本

  • 将Tika实例统一到TikaUtils工具类中进行共享
  • 修改DefaultChat中文档解析逻辑以使用共享Tika实例
  • 更新DefaultFileTool中MIME类型检测为共享实例方式
  • 移除直接创建Tika实例的代码,改为使用TikaUtils.TIKA
  • 升级项目整体版本从1.1.30到1.1.31
  • 更新file-view依赖版本至1.4.2-sb3