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
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
b0ae6af3b1
chore: update .gitignore and enhance docstrings across multiple files
...
- Added *.pyc and *.pyo to .gitignore to prevent compiled Python files from being tracked.
- Improved docstrings in various modules, providing clearer descriptions of functions, parameters, and return values to enhance code readability and maintainability.
2026-04-04 01:21:59 +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
3c12fa56eb
refactor: 移除多租户和客户相关代码及功能
...
refactor: 统一状态字段为字符串类型并更新相关组件
refactor: 更新模型基类移除租户和客户相关字段
refactor: 简化数据权限控制逻辑
refactor: 优化类型注解使用Python 3.10+语法
refactor: 清理无用导入和注释
docs: 更新文档移除多租户相关内容
2025-12-01 00:36:05 +08:00
zhangtao
279f547f84
refactor: 重构代码结构并优化命名一致性
...
feat(backend): 新增模块示例和路径配置
fix(backend): 修复菜单模型名称唯一性约束
refactor(backend): 重构日志模块和路径配置
style(backend): 统一API方法命名规范
refactor(frontend): 重构API方法命名规范
fix(frontend): 修复权限校验问题
refactor: 移动定时任务测试文件到正确模块
docs: 更新模板文件路径
refactor: 优化日志记录和错误处理
fix: 修复排序默认值问题
2025-11-19 02:24:16 +08:00
zhangtao
d7e1192cd7
refactor(alembic): 优化迁移脚本生成逻辑并添加模型自动发现
...
添加ImportUtil工具类用于自动发现SQLAlchemy模型
优化alembic迁移脚本生成逻辑,避免空变更生成
修复前端模板中的按钮标签错误
简化revision命令参数
2025-11-08 01:45:25 +08:00