147 Commits

Author SHA1 Message Date
augushong
76b23d4c70 refactor(timer): 使用 CurlMultiHandler 替代 Workerman,统一为非阻塞模式
- 删除 runParallel() 方法和所有 Workerman 引用(死代码)
- 重写 runLoop() 为 Guzzle CurlMultiHandler 非阻塞事件循环
- 新增 pending 数组追踪进行中的请求,handler.tick() 非阻塞推进
- 自适应 sleep 策略(有任务 50ms,空闲 200ms)
- 简化 config/timer.php:移除 mode,适配 Guzzle 参数
- 更新 SKILL.md:移除 parallel 描述,修正 --quit 文档 bug
- 验证发现:--quiet 是 ThinkPHP 全局选项,不需要在 configure() 注册
- 验证发现:方法名不能用 run(),与 ThinkPHP Command::run() 签名冲突
2026-06-02 21:19:53 +08:00
augushong
c4fbd60bbc fix(timer): 修正定时器参数拼写 quit -> quiet(静默模式) 2026-06-02 20:09:37 +08:00
augushong
288724efc8 chore: 发布 v2.2.8 2026-06-01 23:15:18 +08:00
augushong
f5db5abb17 chore: bump version to v2.2.7 2026-06-01 22:46:18 +08:00
augushong
4e3de27c51 chore: bump version to v2.2.6 2026-06-01 21:52:57 +08:00
augushong
8c766d7e07 chore: bump version to v2.2.5 2026-05-27 21:54:50 +08:00
augushong
ceed8d3e71 feat(stack): CLI handleUse() 增加 skipped_files 和 deleted_files 展示 2026-05-27 21:42:52 +08:00
augushong
c7cfa40539 chore: bump version to v2.2.4 2026-05-27 20:52:13 +08:00
augushong
7ecbd03730 chore: bump version to v2.2.3
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-27 20:24:23 +08:00
augushong
a9810516c1 chore(release): 发布 v2.2.2 2026-05-26 21:40:45 +08:00
augushong
3f8f79b445 feat(update): 新增 --keep-repo 参数,dry-run 模式下保留上游克隆目录便于对比 2026-05-26 21:38:16 +08:00
augushong
58d87d9980 docs(VersionBase): update usage comment of version command
fix the outdated description of the version command usage steps
2026-05-26 21:01:49 +08:00
augushong
fce0b1cf0a chore: bump version to v2.2.1 2026-05-26 20:48:53 +08:00
augushong
8e8c56ab53 chore: bump version to v2.2.0 and update full changelog
更新了版本号到v2.2.0,补充完整的版本更新说明,包含新功能、修复项、文档更新、重构、性能优化和其他变更内容
2026-05-26 20:34:57 +08:00
augushong
e005c9a3a2 docs(version): 补充 admin:version 命令的发布流程注释与帮助说明 2026-05-26 20:11:06 +08:00
augushong
a47bbb2c6a fix(timer): 自动记录执行日志并捕获结果
Add execute() wrapper in TimerControllerBase that wraps do() with logStart/logEnd, captures return value to result field. Change site URL routing from /do to /execute with task_name injection. Add result field to system_timer_log scheme.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-26 18:33:45 +08:00
augushong
e1bf94a55e feat(timer): 新增日志每日自动清理定时任务
- New LogClean timer controller (site type, frequency 86400s)
- run_type defaults to auto, only one node cleans per day
- Cleans system_timer_log records older than 30 days
2026-05-26 18:33:45 +08:00
augushong
fd89a60425 fix(timer): 修复 F2 代码质量问题
- HostServiceBase: move Log::error before throw so it actually executes
- TimerBase: remove empty comment block
2026-05-26 18:33:44 +08:00
augushong
25fab093fa feat(timer): 新增 run_type 调度、host_id 投递和日志清理
T7: TimerBase shouldExecuteTask() - main/auto/all/manual/disabled modes
    with two-phase DB row lock for auto mode
T8: TimerControllerBase - host_id param, logStart/logEnd methods
    TimerServiceBase - inject host_id into site URLs
T9: TimerLogClean command - php think admin:timer:log:clean --days=30
2026-05-26 18:33:42 +08:00
augushong
abeac2c3cb feat(timer): 新增配置同步到数据库及主节点选举
T5: TimerServiceBase.syncConfigToDatabase() - syncs task config to DB
T6: HostServiceBase - auto master election, stale node detection,
    getMasterNode/setMasterNode methods
2026-05-26 18:33:41 +08:00
augushong
2e3fac93f0 feat(update): 注册冲突策略和输出范围选项 2026-05-25 22:41:08 +08:00
augushong
a17ba88068 feat(update): 新增 --dry-run 预览模式 2026-05-25 21:35:47 +08:00
augushong
9a3442d7f5 feat: 更新版本至 v2.1.4 并同步更新日志
- 新增支持更新到 ulthon_admin 的 master 分支功能
- 修复目录忽略逻辑的前缀匹配误命中问题
- 更新 source 目录结构及相关文档说明
- 优化持续集成配置,避免覆盖现有 .env 文件
- 从 Git 跟踪中移除 .sisyphus 目录
2026-05-07 23:00:49 +08:00
augushong
37c8142721 feat(update): 支持更新到 ulthon_admin 的 master 分支
新增 `--update-master` 选项,允许用户选择更新到远程仓库的 master 分支,而非默认的最新标签版本。这为需要最新开发版代码的场景提供了灵活性。
2026-05-07 22:59:19 +08:00
augushong
11101e338d chore: 发布新版本 2026-05-06 20:08:27 +08:00
augushong
8b0a59c880 chore: 发布新版本 2026-05-06 19:08:28 +08:00
augushong
b44fcfd86c feat(stack): 新增 stack 模式管理功能
- 新增 `php think admin:stack:mode` 命令,支持 list/use/current/rollback 操作
- 新增 StackModeService 服务,负责模式切换、备份与回滚逻辑
- 在 source/stack/ 目录下添加 default、full、base-build 三种模式的配置文件
- 更新 UlthonAdminService 以注册新的命令行工具
2026-04-24 23:20:13 +08:00
augushong
c0d3acbd4d chore: 发布新版本 2026-03-27 20:23:42 +08:00
augushong
ce27837614 fix: 支持解析带括号的提交类型格式
更新正则表达式以匹配 type(scope): message 格式,确保版本日志能正确分组包含可选作用域的提交信息。
2026-03-27 20:21:40 +08:00
augushong
86705364fe chore: 发布新版本 2026-03-26 20:27:14 +08:00
augushong
8cc08bcb8c feat: 发布智能体版 2026-03-26 20:22:34 +08:00
augushong
b6b690edb3 feat(tools/db): 在表结构描述中显示表注释 2026-02-01 00:22:51 +08:00
augushong
0fad2b7e10 docs: 更新项目文档中的框架版本信息 2026-01-28 20:36:15 +08:00
augushong
e8f58ef322 feat(command): 新增数据库调试命令行工具集 2026-01-26 23:10:10 +08:00
augushong
148f8b7a6f docs(command): 添加tools命令命名规范文档 2026-01-26 23:09:45 +08:00
augushong
ee40374732 feat(scheme): 增强 Scheme 与数据库同步机制并添加严格校验 2026-01-12 12:37:37 +08:00
augushong
23826cd06e refactor(scheme): 优化数据库同步逻辑并增加备份表检查 2026-01-09 22:26:34 +08:00
augushong
ec757f2e9f feat(同步命令): 添加忽略表功能并优化表名处理 2026-01-09 22:09:56 +08:00
augushong
4f689d9881 fix(命令): 忽略备份表以避免在生成方案时包含它们 2026-01-09 21:37:21 +08:00
augushong
8de6b99bb3 feat(scheme): 新增数据库表结构同步方案 2026-01-09 21:08:51 +08:00
augushong
ae40f99866 chore: 修改版本号 2025-10-09 23:23:28 +08:00
augushong
a96d5c0d6b chore: 发布新版本 2025-10-09 23:14:13 +08:00
augushong
cca7dba632 feat: 优化迁移文件路径命令,直接使用sql功能; 2025-08-31 11:33:45 +08:00
augushong
dea794d058 feat: 增加call类型的定时任务; 2025-08-24 14:00:20 +08:00
augushong
a9d1429000 feat: 增加内置节点注册任务;优化定时器代码结构; 2025-08-23 23:22:52 +08:00
augushong
716e56b8dc feat: 优化定时任务输出 2025-08-23 23:07:55 +08:00
augushong
cc5a4e4502 chore: 发布新版本 2025-05-07 17:27:34 +08:00
augushong
d2e4acef05 chore: 发布新版本 2025-05-07 15:19:20 +08:00
augushong
22a37d1bea refactor: 优化代码结构 2025-03-29 10:40:27 +08:00
augushong
389a5b3f3c feat: 完善生成说明文件的代码结构和生成效果 2025-03-29 10:35:18 +08:00