Losita
|
66c06eed0a
|
Version: 0.9.45.dev.260427
后端:
1. execute 主链路重构为“上下文工具域 + 主动优化候选闭环”——移除 order_guard,粗排后默认进入主动微调,先诊断再从后端候选中选择 move/swap,避免 LLM 自由全局乱搜
2. 工具体系升级为动态注入协议——新增 context_tools_add / remove、工具域与二级包映射、主动优化白名单;schedule / taskclass / web 工具按域按包暴露,msg0 规则包与 execute 上下文同步重写
3. analyze_health 升级为主动优化唯一裁判入口——补齐 rhythm / tightness / profile / feasibility 指标、候选扫描与复诊打分、停滞信号、forced imperfection 判定,并把连续优化状态写回运行态
4. 任务类能力并入新 Agent 执行链——新增 upsert_task_class 写工具与启动注入事务写入;任务类模型补充学科画像与整天屏蔽配置,粗排支持 excluded_days_of_week,steady 策略改为基于目标位置/单日负载/分散度/缓冲的候选打分
5. 运行态与路由补齐优化模式语义——新增 active tool domain/packs、pending context hook、active optimize only、taskclass 写入回盘快照;区分 first_full / global_reopt / local_adjust,并完善首次粗排后默认 refine 的判定
前端:
6. 助手时间线渲染细化——推理内容改为独立 reasoning block,支持与工具/状态/正文按时序交错展示,自动收口折叠,修正 confirm reject 恢复动作
仓库:
7. newAgent 文档整体迁入 docs/backend,补充主动优化执行规划与顺序约束拆解文档,删除旧调试日志文件
PS:这次科研了2天,总算是有些进展了——LLM永远只适合做选择题、判断题,不适合做开放创新题。
|
2026-04-27 01:09:37 +08:00 |
|
Losita
|
d3cec2a5b9
|
Version: 0.7.0.dev.260319
✨ feat(agent): 新增智能排程 Agent 全链路 + ReAct 精排引擎
🏗️ 智能排程 Graph 编排(阶段 1 基础链路)
- 新增 scheduleplan 包:state / tool / prompt / nodes / runner / graph 六件套
- 实现 plan → preview → materialize → apply → reflect → finalize 完整图编排
- 通过函数注入解耦 agent 层与 service 层,避免循环依赖
- 路由层新增 schedule_plan 动作,复用现有 SSE + 持久化链路
🧠 ReAct 精排引擎(阶段 1.5 语义化微调)
- 粗排后构建"混合日程"(既有课程 + 建议任务),统一为 HybridScheduleEntry
- LLM 开启深度思考,通过 Swap / Move / TimeAvailable / GetAvailableSlots 四个 Tool 在内存中优化任务时间
- reasoning_content 实时流式推送前端,用户可见 AI 思考过程
- 精排结果仅预览不落库,向后兼容(未注入依赖时走原有 materialize 路径)
📝 文档
- 新增 ReAct 精排引擎决策记录
⚠️ 已知问题:深度思考模式耗时较长,超时策略待优化
|
2026-03-19 23:18:56 +08:00 |
|
LoveLosita
|
fca4004024
|
Version: 0.3.9.dev.260226
fix: 🐛 修复智能排程接口任务块信息缺失与数据插入错误
* 修复智能排程接口返回的任务块信息缺失问题,确保任务数据完整返回
* 修复 `UserInsertTaskItemRequestToModel` DTO 函数未填入起始时间字段的问题,解决多个接口插入数据时出现 500 错误
* 错误源自上次更新“获取最近完成动态任务接口”时,未同步更改数据库字段对应逻辑
* 将智能排程接口的 `ctx` 超时恢复为 1 秒,优化接口响应性能
feat: 🎯 新增正式应用日程接口
* 新增正式应用日程接口,并完成功能测试,确保业务流程无异常
|
2026-02-26 20:07:55 +08:00 |
|
LoveLosita
|
f934668838
|
Version: 0.3.6.dev.260223
feat: 🚀 新增智能编排日程接口与算法模块
* 新增智能编排日程接口,实现自动生成周维度课程安排
* 抽离核心算法至 `Logic` 包,统一存放调度与排课相关算法逻辑,优化项目结构分层
* 大多数用例测试通过,当前存在少量边界用例下“排课时间是否充足”的误判问题
* 返回的周视图数据在极端场景下存在数量偏差,待进一步完善边界控制
fix: 🐛 修复批量导入课程接口 500 错误
* 修复批量导入课程接口中未在 `event` 结构体填写时间字段的问题
* 解决因时间字段为空导致的服务端 500 错误,保证数据完整性
refactor: ♻️ 新增入参校验逻辑保障调度稳定性
* 在添加任务类时新增入参校验逻辑
* 避免非法数据进入调度流程,确保自动编排日程接口执行稳定
docs: 📚 更新 README 智能编排算法说明
* 补充智能编排日程算法的设计思路与实现说明
undo: ⚠️ 追加导入课程后缓存未自动失效
* 追加导入课程后未自动删除对应周安排缓存,存在数据不一致风险
* 当前未能稳定复现,计划后续定位缓存失效时序与触发条件问题
|
2026-02-23 21:49:46 +08:00 |
|
LoveLosita
|
dad1eade93
|
Version: 0.3.2.dev.260214
feat: ⏳ 新增获取当前正在进行的任务接口并完成测试
- 若当前为上课时间,返回当前任务 📚
- 若当前为下课/空闲时间,返回下一个任务 ➡️
- 若存在嵌入任务,支持嵌套返回结构 🧩
- 接口已测试通过 🧪
docs: 📝 小幅更新 README
fix: 🐛 修复获取最近已完成任务列表接口的遗漏问题
- 修复无法获取嵌入在课程中的任务问题 🔧
fix: 🐛 修复删除日程接口的字段遗漏问题
- 若删除的是单独任务块,补充删除 task_item 表的 embedded_time 字段
- 避免数据残留与状态异常 ✅
|
2026-02-14 21:46:02 +08:00 |
|
LoveLosita
|
63500b3b2a
|
Version: 0.3.0.dev.260212
refactor: ♻️ 基于 gorm 钩子实现自动缓存失效机制,再也不用牵一发而动全身写删缓存逻辑了~
- 通过 gorm hook 监听 MySQL 数据变更 🧩
- 自动删除对应表相关缓存,实现缓存失效自动化 🔄
- 移除原本写在 sv 层的手动删缓存逻辑 🧹
- 解耦业务逻辑与缓存控制,结构更加清晰 ✅
fix: 🐛 修复将任务类加入日程接口的时间字段遗漏问题
- 由于前版本 MySQL 表结构更新
- 漏写插入起始时间字段逻辑,导致500报错,现已补充 ⏱️
fix: 🐛 修复获取最近已完成任务列表接口的多个问题
- 移除不应存在的幂等键 🔁
- 修复“一个event输出多次”的问题(原因出自 dto 转换函数) 🔧
undo: ⚠️ 删除任务类接口未处理已安排任务块的解除逻辑
- 当前删除任务类时,未解除已被安排的任务块
- 该逻辑存在缺陷,计划在后续版本内修复 🛠️
|
2026-02-12 21:34:01 +08:00 |
|
LoveLosita
|
e5a4114202
|
Version: 0.2.5.dev.260211
feat: 🗑️ 新增删除任务类接口并实现级联删除
- 通过 task_class 与 task_item 两张表建立级联关系 🔗
- 删除 task_class 时自动删除关联的 task_item
- 保证数据一致性,避免产生孤立数据 ✅
|
2026-02-11 18:44:13 +08:00 |
|
LoveLosita
|
a2da9a2aa4
|
Version: 0.2.4.dev.260211
perf: 🚀 为获取任务队列中的任务与今日日程一览接口新增缓存
- 为获取任务队列中的任务接口增加缓存机制 ⚡
- 为今日日程一览接口增加缓存机制 📅
- 提升接口访问性能与响应速度 ✅
|
2026-02-11 17:31:12 +08:00 |
|
LoveLosita
|
0bc06963ee
|
Version: 0.2.2.dev.260210
feat: 🗑️ 新增删除任务块接口
- 实现 schedules、schedule_events 与 task_items 三表的联动删除
- 保证数据一致性,避免遗留脏数据 ✅
|
2026-02-10 22:05:59 +08:00 |
|
LoveLosita
|
d5f0b8da63
|
Version: 0.2.1.dev.260210
feat: 🚦 新增基于 Redis 令牌桶的限流中间件
- 使用 Redis 实现令牌桶算法进行限流 🪣
- 覆盖除登录、注册、刷新 token 以外的所有接口 🔒
fix: 🐛 修复任务块添加到日程接口可修改已安排任务时间的问题
- 禁止通过该接口直接修改已安排任务块的时间
- 修正不合理的业务逻辑,保证数据一致性 ✅
|
2026-02-10 20:52:06 +08:00 |
|
LoveLosita
|
75a44f2edd
|
Version: 0.1.2.dev.260207
feat: ⚠️ 批量导入课程接口支持冲突预检测与冲突提示
- 批量导入课程接口支持预先检测冲突
- 返回并展示具体发生冲突的课程信息 📚💥
- 补全此前规划的冲突提示功能(把大饼补上了 🍞)
refactor: 🧱 使用工作单元模式管理 dao 层事务
- 引入工作单元模式(Unit of Work)统一管理 dao 层
- 新建全局事务,使跨 repo 的 gorm 事务管理更加方便 🔁
fix: 🐛 修复将任务块添加进日程接口的多个问题
- 修复核心逻辑 bug(费了老大劲 😵💫)
- 补充并覆盖该接口的多种异常与错误场景测试 🧪
|
2026-02-07 22:08:13 +08:00 |
|
LoveLosita
|
f4bea0576c
|
feat: 🗓️ 新增任务块排期能力并完善课程与日程模型
Version: 0.1.1.dev.260207
- 新增并测试通过将任务块排进日程接口 ✅
- 批量导入课程接口增加单双周功能,支持只在单双周上课的课程 📚
- 任务块时间定位逻辑调整为「第几周-周几」模式 🧭
refactor: 🔨 重构时间与日程数据结构
- 完成绝对日期与相对时间的转换逻辑 🔄
- 后续可根据需求灵活决定时间的传入与输出类型
- 再次重构 schedule 表单结构
- 拆分为 schedule_event(单)与 schedule(多)
- 建立前者对后者的一对多关系 🧩
fix: 🐛 大幅调整表结构与业务逻辑,修复大量历史遗留 bug 🔥
|
2026-02-07 16:33:30 +08:00 |
|
LoveLosita
|
1bcbd41bec
|
Version:0.0.7.dev.260204
feat: ✅ 新增获取完整任务类与修改任务类接口并完成测试
- 新增获取完整任务类接口 📋
- 实现创建任务类的逆向数据转换函数 🔄
- 工程量较大,涉及完整数据结构还原 🏗️
- 新增修改任务类接口 ✏️
- 调整 service 层 AddOrUpdateTaskClass 函数逻辑
- 复用创建任务类的大部分实现,并通过 method 区分创建/更新操作 ♻️
- 更新 dao 层操作逻辑 🗄️
- 增加防止越权修改其它用户任务类的机制 🔒
- 两个接口代码量巨大,但均已测试通过 🧪💪
|
2026-02-04 22:08:58 +08:00 |
|
LoveLosita
|
eb521a4c35
|
Version:0.0.6.dev.260204
feat: 🏗️ 在 sv/dao 层引入 ctx 支持链路追踪与超时控制(预留扩展)
- 架构改造:在 sv 与 dao 层统一引入 ctx 🧩
- 为后续链路追踪、超时控制等能力提供支持 ⏱️(未来开发)
perf: 🚀 为获取任务类列表接口引入 Redis 缓存并保证一致性
- 获取任务类列表接口新增 Redis 缓存提升访问速度 ⚡
- 通过新增任务类时主动删除缓存,确保主从一致性 ✅
- 防止缓存与数据库列表不一致问题 🛡️
|
2026-02-04 20:17:52 +08:00 |
|
LoveLosita
|
af8e8bd804
|
Version:0.0.5.dev.260204
feat: 🏗️ 完成任务分类创建与列表查询接口并通过测试
- 历经复杂嵌套逻辑处理 🌀
- 实现创建任务分类接口 ✅
- 实现获取任务分类列表接口 📋
- 接口测试全部通过 🧪
perf: 🚀 下个版本将为任务分类列表接口加入 Redis 缓存以提升查询速度 ⚡
|
2026-02-04 19:26:22 +08:00 |
|