zhangtao
644d262cad
refactor(backend): 错误码收敛为单一事实来源,统一异常写法
...
错误码(t16)
- HTTP 语义只由 core/exceptions.py 的 RET.code → fastapi.status 映射决定;
映射表显式登记 -1→400 与全部「数值即 HTTP 状态」的 RET 成员,_DEFAULT_BUSINESS_STATUS
降为「新增码忘登记」的安全网
- 移除冗余 status_code:131 处调用点改为纯 code 表达;security.py/dependencies.py
的 status_code=401/403 去除(映射表已给);get_or_404 → code=RET.NOT_FOUND.code
- 新增静态护栏(AST):app/ 下除 exceptions.py 外不得出现 status_code 传参,
路由装饰器 201 白名单显式放行并断言白名单非空
异常写法统一(t19)
- 删除 CustomException.internal 及 132 处包装:意外异常直接冒泡,由全局
@app.exception_handler(Exception) 统一映射 5xx + 通用文案 + 日志;
需要运维上下文处改为 logger.exception("<业务动作>失败") + raise
- 构造器不再接受 status_code 参数(属性保留,由 code 派生)→ 结构上杜绝第二来源
- 修复 6 处「宽泛 except 把 400 包成 500」的语义反转(补 except CustomException: raise),
并加 AST 护栏防止回潮
- 全局 SQLAlchemyError:非完整性错误由 400 改为 503(连接类)/500(其它),
不再把驱动原文/异常类型拼进客户端 msg;顺带修掉不存在的
status.HTTP_403_SERVICE_UNAVAILABLE 常量(命中即 AttributeError→500)
验证:pytest 97 passed / ruff 全绿;AST 审计残留 0;护栏红绿测试通过;
线上实测验证码过期仍 400 并保留业务文案、无令牌 401。
2026-10-04 05:44:21 +08:00
zhangtao
07fa789d2e
fix(backend): 安全默认值、异常语义、代码生成注入面与定时任务内置处理器
...
本批为 t10 → t13 → t15 三轮实现 + 一轮复核驳回整改的最终形态(pytest 83 passed / ruff clean,
已部署并线上验证)。
异常语义
- CustomException 默认状态码 500 → 400(约 433 处裸调用不再被计为服务端故障),
且「包装底层异常」的 130 处显式恢复 500;get_or_404 → 404;响应体结构不变
代码生成注入面(复核 blocker F1,二次修复)
- column_type 不再做字符串拼接:改为常量白名单派生(类型名 ∈ DB_TO_SQLALCHEMY ∪ {Boolean},
长度仅取数字/正则捕获),彻底移除 split("(")[1]
- 列类型加形状白名单;字符串/注释/文档字符串用 \uXXXX,标识符过 safe_ident(含 Python/JS 关键字),
.vue 文本与静态属性改 HTML 实体
- 落盘闸门由 ast.parse 升级为 assert_python_structure(语法 + 顶层语句白名单 + 与哨兵骨架逐节点比对)
与 assert_text_structure(.vue/.ts/.toml 行结构);U+2028/2029 与 C1 控制符纳入转义
安全默认值
- 生产 CORS 不再回落 ["*"](未配置即拒绝跨域,可选 CORS_STRICT_STARTUP 直接启动失败)
- OAUTH_ALLOWED_HOSTS 不再默认 "*";新增 ALLOW_LOCALHOST_HOSTS 控制 Host 校验范围
- ALLOWED_HOSTS 收窄为按配置派生;健康检查暴露 code_exec_enabled / cors_origins_configured
定时任务
- SCHEDULER_ALLOW_CODE_EXEC 默认 False;新增 builtin:<模块名>[.<函数名>] 内置处理器路线(不经 exec)
- 判定收敛到 describe_schedulability;列表返回 schedulable / unschedulable_reason;
启动 reconcile 与状态查询对「已启用但不可调度」打 WARN(去重、恢复后清除)
- 加固:内置处理器必须在本模块内定义或经 HANDLERS 声明,拒绝模块内导入的外部对象(复核 R1)
- 顺带修复:_WARNED_UNSCHEDULABLE 的 set.pop TypeError、job.next_run_time 缺失导致的列表 500
测试:新增 tests/test_generator_template_safety.py、test_security_defaults.py、
test_scheduler_schedulability.py(含恶意载荷、闸门红绿、静态护栏)
2026-10-04 05:12:32 +08:00
zhangtao
d470c7eb1f
refactor(backend): 调整模块结构、调度器逻辑与健康检查路由
2026-09-06 00:54:24 +08:00
zhangtao
3f472d1e89
refactor: 重构存储与工作流模块,调整目录结构与初始化逻辑
...
1. 迁移存储模块功能到工作流模块,合并冗余代码
2. 调整环境配置加载路径与初始化脚本目录
3. 更新文档与前端组件代码适配重构
4. 新增工作流相关CRUD、模型与迁移文件
5. 移除过期模块与冗余代码,优化日志配置
2026-09-03 21:55:31 +08:00
zhangtao
53c8f67bd5
refactor: 移除多租户相关逻辑并清理冗余代码
...
本次提交完成以下主要变更:
1. 删除所有租户相关的初始化数据、配置和工具代码
2. 移除TicketModel的租户关联字段与校验逻辑
3. 重构菜单表名与关联外键,统一为sys_前缀
4. 为岗位、部门、工作流等模型添加唯一约束
5. 调整导入顺序与冗余代码,优化代码结构
6. 移除支付、PDF生成相关的依赖与工具类
7. 简化OpenAPI文档标签配置
8. 清理无效的枚举与冗余导入
2026-07-17 01:07:17 +08:00
zhangtao
cf88ab8897
refactor: 整合仪表盘功能到监控模块,清理冗余代码
...
- 移除原监控仪表盘独立模块,将相关功能合并到在线监控模块
- 重构租户配置字段名,统一使用logo_url和name替代tenant_logo/tenant_name
- 优化搜索工具函数,移除重复导入
- 调整参数配置模型字段长度限制,移除config_value的max_length约束
- 清理冗余的常量定义和导入语句
- 修复批量状态设置接口的redis依赖注入
- 增强OAuth登录安全性,添加租户默认归属和state一次性消费
- 优化资源目录缓存逻辑,减少重复计算
- 新增API Token模块基础框架
- 完善用户token版本管理,支持主动失效JWT
- 调整AI模型配置缓存过期时间
- 修复菜单类型字段索引,提升查询性能
- 简化前端刷新token调用逻辑
- 新增滑块验证完成接口和忘记密码验证码校验
- 调整系统配置默认值,添加操作日志保留天数和接口白名单配置
- 限制Mock支付回调仅在开发环境可用
- 重构websocket认证方式,支持更安全的subprotocol传参
2026-07-13 01:14:20 +08:00
zhangtao
6a5f8cf0dd
refactor: 完成项目大规模重构与功能优化
...
这是一次综合性的项目迭代,包含以下核心变更:
1. **目录与模块重构**
- 调整工作流节点类型模块目录结构,迁移节点类型相关代码
- 重命名platform模块为system模块,更新插件配置信息
- 重构代码生成模块导入路径
2. **数据库与CRUD优化**
- 统一所有CRUD类构造函数,新增数据库会话参数
- 修复权限过滤器数据库会话使用问题
- 更新模板生成器的CRUD代码模板
3. **认证与安全改进**
- 重构JWT密钥配置,移除默认密钥强制要求环境变量
- 重命名密码工具类,统一密码加密校验逻辑
- 优化OAuth认证流程,修复匿名认证使用问题
4. **前端与静态资源**
- 重构前端挂载逻辑,增加目录存在性校验
- 使用标准StaticFiles替换自定义前端挂载实现
5. **工具类与依赖更新**
- 修复导入工具的表名重复检测逻辑
- 优化限流回调代码,移除冗余依赖
- 更新用户、租户等模块的响应模型字段
6. **数据与配置修正**
- 修复系统版本数据字段命名不统一问题
- 简化枚举类校验逻辑,移除冗余注释
- 修复测试用例中的密码工具类导入错误
2026-07-11 13:03:28 +08:00
zhangtao
5ff72b086f
refactor: 重构项目模块结构与代码细节优化
...
1. 调整后端模块路由与插件文件结构,迁移部分模块代码至api/v1目录
2. 优化代码注释格式与文档字符串,简化冗余代码
3. 添加监控仪表盘、工单评论等新模块功能
4. 修复前端部分组件交互逻辑与类型定义
5. 清理冗余的初始化数据与废弃配置文件
6. 新增租户注册表单字段与国际化支持
7. 优化HTTP请求拦截器与快捷键功能
2026-07-10 00:18:11 +08:00
zhangtao
a86233d6c2
refactor: 完成项目整体架构升级与依赖优化
...
此提交包含多项核心优化:
1. 依赖库升级:更新FastAPI、替换fastapi-limiter为slowapi,更换MySQL驱动为aiomysql,重构缓存系统使用fastapi-cache2-fork
2. 代码重构:移除自定义缓存工具,统一使用fastapi-cache2;重构请求限流逻辑,修复操作日志记录开关逻辑
3. 接口规范:统一将Depends分页/查询参数改为Query注解,补全File上传依赖注解
4. 前端优化:调整登录滑块进度条颜色、移除冗余demo页面样式类
5. 日志优化:重构日志配置,使用time.perf_counter替代time.time统计耗时
6. 测试优化:移除冗余的限流mock配置,改用官方限流方案
7. 模板优化:更新vue代码生成模板,移除冗余导入并优化组件使用
8. 导入功能优化:移除pandas依赖,使用Excel工具类重构文件导入逻辑
2026-07-01 00:35:28 +08:00
zhangtao
7d2367e34e
refactor: 统一项目代码风格并修复多处类型与调用问题
...
本次提交包含多项优化:
1. 移除大量冗余的文件头注释与过时的from __future__导入
2. 将CRUD的list方法统一重命名为get_list保持接口一致
3. 修复前后端状态字段类型不匹配问题,将string类型status改为number
4. 修正前端文案错别字,将"代办事项"修正为标准写法
5. 更新sqlalchemy版本并调整依赖配置
6. 新增缓存工具类替代fastapi-cache2,重构缓存调用逻辑
7. 新增开源授权函生成相关工具与数据库字段支持
8. 为多个业务模块添加防重复提交loading状态
9. 修复邮件模型的外键关联缺失问题
10. 优化pdf生成工具的导入时机与文档注释
2026-06-21 17:34:11 +08:00
zhangtao
211fddd6e0
refactor: 完成项目大规模代码重构与依赖清理
...
这是一次综合性的重构更新,包含以下主要变更:
1. 升级Python版本到3.12,更新依赖配置
2. 替换旧的.j2模板为.jinja2格式,新增代码生成模板
3. 重构权限过滤策略,更新权限枚举与模型配置
4. 移除Prefect依赖,替换为自研拓扑并行执行引擎
5. 重构认证与上下文管理,拆分租户/请求上下文
6. 简化响应模型、CRUD与服务层代码
7. 清理废弃的支付网关模块,重构订单定时任务
8. 更新在线用户、监控等模块的接口与路由
9. 优化邮件模板与工具类,新增邮件模板文件
10. 修复数据库会话配置与类型提示
2026-06-21 06:02:05 +08:00
zhangtao
4e2b668d7b
chore: 批量优化项目代码,修复多处细节问题
...
本次提交包含多项优化和修复:
1. 修复CRUD初始化参数传递、搜索参数处理逻辑
2. 更新环境配置中的大模型相关参数
3. 重构部分服务方法命名,统一代码风格
4. 新增多个枚举类型,补充模型关联关系和加载选项
5. 优化查询参数类实现,完善字段校验逻辑
6. 调整Pydantic模型字段注释和类型定义
7. 简化并移除冗余的CRUD方法实现
8. 新增超级管理员权限装饰器
9. 修复邮件日志模型的租户关联和字段定义
2026-06-20 23:37:58 +08:00
zhangtao
73f2823692
refactor: 大规模代码整理与功能优化
...
1. 重构后端API路由、CRUD与模块结构,整合日志管理,移除废弃demo代码
2. 优化前端组件类型定义、样式与路由配置,修复权限判断逻辑
3. 调整默认排序规则、滚动条样式与工具类函数,更新依赖与配置文件
4. 修复多处类型不匹配与默认值问题,完善表单与菜单验证逻辑
2026-06-17 01:56:31 +08:00
zhangtao
53d2a9d13e
chore: cleanup old frontend code and update project configs
...
This commit removes the deprecated frontend/web-old directory, updates various project configuration files including tsconfig, vite config, environment variables, and backend data models. It also fixes several API paths, adds tenant awareness to multiple models, and makes minor UI adjustments.
2026-05-27 01:12:03 +08:00
zhangtao
1d54dca76c
style: 统一代码格式和字符串引号使用
...
refactor: 优化代码结构和可读性
feat: 添加http_limit模块实现请求限制功能
fix: 修复异步任务中使用time.sleep的问题
chore: 更新依赖项并添加pytest测试框架
docs: 更新项目描述信息
perf: 优化Redis序列化方式使用JSON替代pickle
test: 添加测试相关配置和依赖
2026-01-17 20:07:25 +08:00
zhangtao
d50dd9dd1e
style: 移除Python文件中的编码声明并优化代码格式
...
refactor: 重构前端组件和样式,添加AI助手功能
docs: 更新README文档,添加ruff代码检查说明
feat: 新增AI助手相关API和前端组件
chore: 更新.gitignore文件,添加ruff缓存配置
fix: 修复前端布局和设置相关的问题
perf: 优化代码结构和性能,移除冗余代码
test: 更新测试文件,移除编码声明
build: 更新依赖版本,调整requirements.txt
2026-01-16 01:13:59 +08:00
zhangtao
59c1ce1104
fix: 统一状态检查逻辑并增强任务日志记录
...
修复多处状态检查不一致的问题,统一使用字符串"0"和"1"表示状态
增强任务调度器的日志记录功能,提供更详细的执行信息
修正前端任务状态显示标签样式和文案
更新Cron表达式解析逻辑以兼容APScheduler
2026-01-13 23:18:57 +08:00
zhangtao
646cbd6e60
refactor(backend): 重构项目结构,将模块代码移动到plugin目录
...
feat(backend): 添加数据库表创建和删除工具函数
fix(backend): 修复日志输出和Redis连接提示信息
style(frontend): 调整导航栏头像大小
perf(backend): 优化系统配置和字典数据缓存逻辑
chore(backend): 更新模板文件路径配置
2026-01-12 01:14:06 +08:00