耗子 and Claude Opus 5
fe7cce6201
refactor: 对齐 libtnb/chi-skeleton 最新脚手架
...
- 依赖注入换到 libtnb/wire v0.3.0,各层包导出 Module 并逐类型 Export,
wire.Struct 改用 Struct[T](),cleanup 签名改为 func() error
- 测试断言换到 libtnb/assert 的 must/check,20 个 testify suite 拆成标准测试函数
- mock 改用 matryer 模板输出到 internal/mocks,wire 走 go.mod tool 指令,
mockery 用 go run 调用,避免它的依赖树污染 go.mod
- 引入 .golangci.yml 并修完全部告警,darwin 与 linux 双平台 0 issues
- 工作流改用 go-version-file、govulncheck 官方 action,
wire 校验移入 test.yml,mockery 由自动提交改为 PR 校验
顺带修复:pkg/db 四处漏查 rows.Err()(DatabaseExists 查询出错会被当成库不存在)、
websitestat 负值转 uint64 污染流量统计、pty 终端尺寸超 uint16 截断、
文件权限位超 32 位静默截断、面板与 ACME challenge 服务器缺 ReadHeaderTimeout、
GetDefault 丢失操作人、三处对结构体值恒成立的假断言、两处带空格而失效的 nolint
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-14 23:36:21 +08:00
耗子
dac99e9e00
chore: 清理代码
2026-08-15 07:58:26 +08:00
耗子
255cb98d9d
perf: 优化监控与辅助数据库存储
2026-08-14 18:57:07 +08:00
耗子
ea22c2f0a7
refactor(di): restore compile-time Wire injection
...
Replace the samber/do runtime container with explicit constructor dependencies and generated Wire graphs for ace and cli. Keep CLI application loading isolated and verify generated files in CI.
2026-07-27 02:54:44 +08:00
耗子 and Claude Opus 4.8
cbed8e4797
refactor(job): 定时任务改为声明式贡献,测试脱离环境变量
...
- 每个任务合并为单个 NewXxx(i do.Injector) (Job, error) 构造函数,
直接返回声明式 Job{Spec, Task},删除 JobFn 闭包与 Register 包装层
- 调度器改为 registry.Collect[job.Job] 统一装配,与路由贡献模型对称
- InitGlobal 导出并读取 conf.App.Root(默认 /opt/ace),
返回 error 不再 Fatalf,修复原先无视配置 root 字段的硬编码
- 容器装配测试改用内存配置 + do.OverrideValue 注入,
不再依赖磁盘配置与 PANEL_CONFIG 环境变量(原测试实际会失败)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-09 22:31:56 +08:00
耗子 and Claude Opus 4.8
443516a2cf
refactor!: 迁移至 samber/do 依赖注入与三层架构
...
依赖注入:
- 移除 google/wire(含 wire.go/wire_gen.go 与全部 ProviderSet),
改用 samber/do v2 单注入器 + 双入口惰性构建
- 贡献模型替代命令式注册:路由 routes:、命令 commands:、
任务 jobs: 前缀经 internal/registry 收集与校验
- 构造函数统一 func NewXxx(i do.Injector) (T, error)
三层架构:
- 补全用例层:每个 biz.XxxRepo 配 XxxUsecase,
service/command/job 表现层只依赖用例,不再直接引用仓储
路由与文档:
- route/http.go 按域拆为声明式 Endpoint 贡献,
Endpoint 承载登录白名单与端点限流语义
- 调试模式下提供 OpenAPI 3.1 文档:/openapi.json 与 /docs(Scalar),
从 validate 标签生成
目录与依赖:
- internal/http/{middleware,request,rule} 拍平至 internal/*
- CLI 命令拆至 internal/command
- 日志轮转 timberjack 换为 libtnb/logrotate
- 升级 validator/cron/sessions/gormstore/sqlite/securecookie
- 数据库迁移保持 gormigrate 不变
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-09 21:54:22 +08:00
耗子 and Claude Opus 4.7
c41dab89f8
refactor: 替换 robfig/cron/v3 为 libtnb/cron
...
robfig/cron 已停止维护,迁移到 libtnb/cron(零三方依赖,API 设计更现代)
主要变更:
- pkg/cron/logger.go 删除,libtnb/cron 直接吃 *slog.Logger
- bootstrap.NewCron 用 wrap.Recover() / wrap.SkipIfRunning() 替代旧 cron.Recover / SkipIfStillRunning
- app.Ace.Run 处理 c.Start() error 返回值;c.Stop(ctx) 接受 context
- 6 个 job (Monitoring/FirewallScan/CertRenew/PanelTask/WebsiteStat/WebsiteExpire) 的 Run 签名从 () 改为 (context.Context) error
- jobs.Register 用 c.Add 替代 c.AddJob
- 重新生成 wire 代码
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-08 18:55:39 +08:00
耗子
d8515f9883
feat: 监控采集间隔支持设置
2026-02-27 00:11:07 +08:00
半岛的蒟蒻bddjr
e947259b86
fix: go.mod module github.com/acepanel/panel/v3 ( #1423 )
2026-02-25 18:07:00 +08:00
耗子
c56b4e00d9
feat: 监控添加Top进程记录
2026-02-10 21:55:11 +08:00
f2e41a3364
feat: 添加操作日志记录功能和前端日志查看页面 ( #1227 )
...
* Initial plan
* feat: 添加操作日志记录功能和前端日志查看页面
Co-authored-by: devhaozi <115467771+devhaozi@users.noreply.github.com >
* fix: 修复 HttpLog 中 IP 字符串处理的类型安全问题
Co-authored-by: devhaozi <115467771+devhaozi@users.noreply.github.com >
* fix: lint
* feat: 完善面板内日志记录,添加网站/数据库/项目/计划任务/备份CRUD日志
Co-authored-by: devhaozi <115467771+devhaozi@users.noreply.github.com >
* feat: 完善更多模块的日志记录(证书/SSH/Webhook/用户/设置/安全)
Co-authored-by: devhaozi <115467771+devhaozi@users.noreply.github.com >
* fix: 改进cert_dns删除方法,在删除前获取实体信息用于日志记录
Co-authored-by: devhaozi <115467771+devhaozi@users.noreply.github.com >
* fix: lint
* feat: 从session获取操作员ID并在前端显示用户名
Co-authored-by: devhaozi <115467771+devhaozi@users.noreply.github.com >
* fix: lint
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: devhaozi <115467771+devhaozi@users.noreply.github.com >
Co-authored-by: 耗子 <haozi@loli.email >
2026-01-12 23:31:22 +08:00
耗子
5ee35cbd30
refactor: rename module
2025-09-18 23:24:03 +08:00
耗子
5584cc18cb
refactor: 重命名项目
2025-07-23 04:50:25 +08:00
耗子
47fbbe7134
feat: 修改自动任务日志描述
2025-01-02 18:11:18 +08:00
耗子
8b0e7bcaa9
refactor: 新年快乐
2025-01-01 15:33:47 +08:00
耗子
a64660d0cb
refactor: 应用支持依赖注入
2024-12-16 02:01:31 +08:00
耗子
1fdc86cc0a
fix: lint
2024-12-15 23:31:08 +08:00
耗子
cd1d7c9757
refactor: 初步实现依赖注入
2024-12-15 23:01:17 +08:00
耗子
44c370a119
feat( #305 ): 使用slog记录所有日志
2024-10-28 20:18:25 +08:00
耗子
56ae7ebfa0
feat: 支持上传本地证书
2024-10-27 02:35:04 +08:00
耗子
c80c22c133
refactor: 仪表盘实时数据接口
2024-10-16 17:04:34 +08:00
耗子
cdeaf9f48f
feat: 完善验证器
2024-10-16 04:09:59 +08:00
耗子
ff3b755faa
feat: 补全更多cli命令
2024-10-12 12:59:58 +08:00
耗子
96d7e14631
feat: 添加计划任务
2024-10-12 02:25:41 +08:00