🐛 fix(mcp): 补齐 PostgreSQL 时间类型别名映射 - #170
Merged
ZhaoXingPeng merged 2 commits intoSep 9, 2026
Merged
Conversation
Owner
Author
实现完成(2026-09-09)当前结论Issue #169 的配置缺口已修复。MCP 旧 YAML 映射现在覆盖 PostgreSQL 变更与设计取舍
验证与证据
兼容性与下一步
|
Owner
Author
验证完成(2026-09-09)当前结论完整单元测试和静态检查均通过。回归覆盖 MCP 类型映射函数的三个 PostgreSQL 别名,并保留既有完整时区名称、UUID、JSONB 断言;未运行真实 PostgreSQL 或 CI,因此不扩大验证结论。 变更与设计取舍
验证与证据
兼容性与下一步
|
ZhaoXingPeng
force-pushed
the
fix/169-postgresql-type-aliases
branch
from
September 8, 2026 19:28
46760b9 to
369cf94
Compare
Owner
Author
提交校正(2026-09-09)为满足 changed-file Ruff format gate,新增断言的换行在未合并提交中完成一次 amend;当前唯一提交为 |
* 🐛 fix(codegen): 补齐自增主键模板上下文标记 * 🐛 fix(generator): 修正遗留实体上下文自增标志 (#174) * 🐛 fix(generator): 修正遗留实体上下文自增标志 * 🐛 fix(generator): 保留 Java 属性名内部大小写 (#176) * 🐛 fix(generator): 保留 Java 属性名内部大小写 * 🐛 fix(template): 仅为自增主键启用 generated keys (#178) * 🐛 fix(template): 仅为自增主键启用 generated keys * 🐛 fix(codegen): 统一主键列表与列上下文 (#180) * 🐛 fix(codegen): 统一主键列表与列上下文 * 🐛 fix(mcp): 统一描述与代码生成类型映射 (#182) * 🐛 fix(mcp): 统一描述与代码生成类型映射 * 🐛 fix(codegen): 统一旧入口方言表名发现 (#184) * 🐛 fix(codegen): 统一旧入口方言表名发现 * ♻️ refactor(codegen): 复用统一表名元数据合同 (#186) * ♻️ refactor(codegen): 复用统一表名元数据合同 * 🐛 fix(codegen): 补齐批量分析表名上下文 (#188) * 🐛 fix(codegen): 补齐批量分析表名上下文 * 🐛 fix(database): 持久化 SQLite execute_query 写入 (#190) * 🐛 fix(database): 持久化 SQLite execute_query 写入 * 🐛 fix(governance): 对齐工具注册表数据库能力 (#192) * 🐛 fix(governance): 对齐工具注册表数据库能力 * 🔒 security(mcp-apps): 收紧代码 diff 路径边界 (#194) * 🔒 security(mcp-apps): 收紧代码 diff 路径边界 * 🐛 fix(codegen): 对齐生成文件写入统计与结果状态 (#196) * 🐛 fix(codegen): 对齐生成文件写入统计与结果状态 * ✨ feat(codegen): 统一 DTO 与 VO 生成选项合同 (#198) * ✨ feat(codegen): 统一 DTO 与 VO 生成选项合同 * 📚 docs(governance): 固化 GitHub 元数据正文门禁 (#200) * 📚 docs(governance): 固化 GitHub 元数据正文门禁 * 🐛 fix(database): 回滚失败 SQLite 查询事务 (#202) * 🐛 fix(database): 回滚失败 SQLite 查询事务 * 🐛 fix(schema): 规范图算法重复表输入 (#204) * 🐛 fix(schema): 规范图算法重复表输入 * 🐛 fix(dependencies): 隔离版本分析状态 (#206) * 🐛 fix(dependencies): 隔离版本分析状态 * 🐛 fix(cli): 统一解析 MCP 响应 (#208) * 🐛 fix(cli): 统一解析 MCP 响应 * ✨ feat(connection): 增加 MCP 连接释放工具 (#210) * ✨ feat(connection): 增加 MCP 连接释放工具 * ⚡ perf(mcp): 隔离同步数据库调用与事件循环 (#212)
ZhaoXingPeng
added a commit
that referenced
this pull request
Sep 9, 2026
* 🐛 fix(codegen): 统一分析结果与模板导入映射 * 🐛 fix(mcp): 补齐 PostgreSQL 时间类型别名映射 (#170) * 🐛 fix(mcp): 补齐 PostgreSQL 时间类型别名映射 * 🐛 fix(codegen): 补齐自增主键模板上下文标记 (#172) * 🐛 fix(codegen): 补齐自增主键模板上下文标记 * 🐛 fix(generator): 修正遗留实体上下文自增标志 (#174) * 🐛 fix(generator): 修正遗留实体上下文自增标志 * 🐛 fix(generator): 保留 Java 属性名内部大小写 (#176) * 🐛 fix(generator): 保留 Java 属性名内部大小写 * 🐛 fix(template): 仅为自增主键启用 generated keys (#178) * 🐛 fix(template): 仅为自增主键启用 generated keys * 🐛 fix(codegen): 统一主键列表与列上下文 (#180) * 🐛 fix(codegen): 统一主键列表与列上下文 * 🐛 fix(mcp): 统一描述与代码生成类型映射 (#182) * 🐛 fix(mcp): 统一描述与代码生成类型映射 * 🐛 fix(codegen): 统一旧入口方言表名发现 (#184) * 🐛 fix(codegen): 统一旧入口方言表名发现 * ♻️ refactor(codegen): 复用统一表名元数据合同 (#186) * ♻️ refactor(codegen): 复用统一表名元数据合同 * 🐛 fix(codegen): 补齐批量分析表名上下文 (#188) * 🐛 fix(codegen): 补齐批量分析表名上下文 * 🐛 fix(database): 持久化 SQLite execute_query 写入 (#190) * 🐛 fix(database): 持久化 SQLite execute_query 写入 * 🐛 fix(governance): 对齐工具注册表数据库能力 (#192) * 🐛 fix(governance): 对齐工具注册表数据库能力 * 🔒 security(mcp-apps): 收紧代码 diff 路径边界 (#194) * 🔒 security(mcp-apps): 收紧代码 diff 路径边界 * 🐛 fix(codegen): 对齐生成文件写入统计与结果状态 (#196) * 🐛 fix(codegen): 对齐生成文件写入统计与结果状态 * ✨ feat(codegen): 统一 DTO 与 VO 生成选项合同 (#198) * ✨ feat(codegen): 统一 DTO 与 VO 生成选项合同 * 📚 docs(governance): 固化 GitHub 元数据正文门禁 (#200) * 📚 docs(governance): 固化 GitHub 元数据正文门禁 * 🐛 fix(database): 回滚失败 SQLite 查询事务 (#202) * 🐛 fix(database): 回滚失败 SQLite 查询事务 * 🐛 fix(schema): 规范图算法重复表输入 (#204) * 🐛 fix(schema): 规范图算法重复表输入 * 🐛 fix(dependencies): 隔离版本分析状态 (#206) * 🐛 fix(dependencies): 隔离版本分析状态 * 🐛 fix(cli): 统一解析 MCP 响应 (#208) * 🐛 fix(cli): 统一解析 MCP 响应 * ✨ feat(connection): 增加 MCP 连接释放工具 (#210) * ✨ feat(connection): 增加 MCP 连接释放工具 * ⚡ perf(mcp): 隔离同步数据库调用与事件循环 (#212)
ZhaoXingPeng
added a commit
that referenced
this pull request
Sep 9, 2026
* 🐛 fix(codegen): 规范无前缀模板输出路径 * 🐛 fix(codegen): 统一分析结果与模板导入映射 (#168) * 🐛 fix(codegen): 统一分析结果与模板导入映射 * 🐛 fix(mcp): 补齐 PostgreSQL 时间类型别名映射 (#170) * 🐛 fix(mcp): 补齐 PostgreSQL 时间类型别名映射 * 🐛 fix(codegen): 补齐自增主键模板上下文标记 (#172) * 🐛 fix(codegen): 补齐自增主键模板上下文标记 * 🐛 fix(generator): 修正遗留实体上下文自增标志 (#174) * 🐛 fix(generator): 修正遗留实体上下文自增标志 * 🐛 fix(generator): 保留 Java 属性名内部大小写 (#176) * 🐛 fix(generator): 保留 Java 属性名内部大小写 * 🐛 fix(template): 仅为自增主键启用 generated keys (#178) * 🐛 fix(template): 仅为自增主键启用 generated keys * 🐛 fix(codegen): 统一主键列表与列上下文 (#180) * 🐛 fix(codegen): 统一主键列表与列上下文 * 🐛 fix(mcp): 统一描述与代码生成类型映射 (#182) * 🐛 fix(mcp): 统一描述与代码生成类型映射 * 🐛 fix(codegen): 统一旧入口方言表名发现 (#184) * 🐛 fix(codegen): 统一旧入口方言表名发现 * ♻️ refactor(codegen): 复用统一表名元数据合同 (#186) * ♻️ refactor(codegen): 复用统一表名元数据合同 * 🐛 fix(codegen): 补齐批量分析表名上下文 (#188) * 🐛 fix(codegen): 补齐批量分析表名上下文 * 🐛 fix(database): 持久化 SQLite execute_query 写入 (#190) * 🐛 fix(database): 持久化 SQLite execute_query 写入 * 🐛 fix(governance): 对齐工具注册表数据库能力 (#192) * 🐛 fix(governance): 对齐工具注册表数据库能力 * 🔒 security(mcp-apps): 收紧代码 diff 路径边界 (#194) * 🔒 security(mcp-apps): 收紧代码 diff 路径边界 * 🐛 fix(codegen): 对齐生成文件写入统计与结果状态 (#196) * 🐛 fix(codegen): 对齐生成文件写入统计与结果状态 * ✨ feat(codegen): 统一 DTO 与 VO 生成选项合同 (#198) * ✨ feat(codegen): 统一 DTO 与 VO 生成选项合同 * 📚 docs(governance): 固化 GitHub 元数据正文门禁 (#200) * 📚 docs(governance): 固化 GitHub 元数据正文门禁 * 🐛 fix(database): 回滚失败 SQLite 查询事务 (#202) * 🐛 fix(database): 回滚失败 SQLite 查询事务 * 🐛 fix(schema): 规范图算法重复表输入 (#204) * 🐛 fix(schema): 规范图算法重复表输入 * 🐛 fix(dependencies): 隔离版本分析状态 (#206) * 🐛 fix(dependencies): 隔离版本分析状态 * 🐛 fix(cli): 统一解析 MCP 响应 (#208) * 🐛 fix(cli): 统一解析 MCP 响应 * ✨ feat(connection): 增加 MCP 连接释放工具 (#210) * ✨ feat(connection): 增加 MCP 连接释放工具 * ⚡ perf(mcp): 隔离同步数据库调用与事件循环 (#212)
ZhaoXingPeng
added a commit
that referenced
this pull request
Sep 9, 2026
* 🐛 fix(codegen): 规范无前缀模板输出路径 * 🐛 fix(codegen): 统一分析结果与模板导入映射 (#168) * 🐛 fix(codegen): 统一分析结果与模板导入映射 * 🐛 fix(mcp): 补齐 PostgreSQL 时间类型别名映射 (#170) * 🐛 fix(mcp): 补齐 PostgreSQL 时间类型别名映射 * 🐛 fix(codegen): 补齐自增主键模板上下文标记 (#172) * 🐛 fix(codegen): 补齐自增主键模板上下文标记 * 🐛 fix(generator): 修正遗留实体上下文自增标志 (#174) * 🐛 fix(generator): 修正遗留实体上下文自增标志 * 🐛 fix(generator): 保留 Java 属性名内部大小写 (#176) * 🐛 fix(generator): 保留 Java 属性名内部大小写 * 🐛 fix(template): 仅为自增主键启用 generated keys (#178) * 🐛 fix(template): 仅为自增主键启用 generated keys * 🐛 fix(codegen): 统一主键列表与列上下文 (#180) * 🐛 fix(codegen): 统一主键列表与列上下文 * 🐛 fix(mcp): 统一描述与代码生成类型映射 (#182) * 🐛 fix(mcp): 统一描述与代码生成类型映射 * 🐛 fix(codegen): 统一旧入口方言表名发现 (#184) * 🐛 fix(codegen): 统一旧入口方言表名发现 * ♻️ refactor(codegen): 复用统一表名元数据合同 (#186) * ♻️ refactor(codegen): 复用统一表名元数据合同 * 🐛 fix(codegen): 补齐批量分析表名上下文 (#188) * 🐛 fix(codegen): 补齐批量分析表名上下文 * 🐛 fix(database): 持久化 SQLite execute_query 写入 (#190) * 🐛 fix(database): 持久化 SQLite execute_query 写入 * 🐛 fix(governance): 对齐工具注册表数据库能力 (#192) * 🐛 fix(governance): 对齐工具注册表数据库能力 * 🔒 security(mcp-apps): 收紧代码 diff 路径边界 (#194) * 🔒 security(mcp-apps): 收紧代码 diff 路径边界 * 🐛 fix(codegen): 对齐生成文件写入统计与结果状态 (#196) * 🐛 fix(codegen): 对齐生成文件写入统计与结果状态 * ✨ feat(codegen): 统一 DTO 与 VO 生成选项合同 (#198) * ✨ feat(codegen): 统一 DTO 与 VO 生成选项合同 * 📚 docs(governance): 固化 GitHub 元数据正文门禁 (#200) * 📚 docs(governance): 固化 GitHub 元数据正文门禁 * 🐛 fix(database): 回滚失败 SQLite 查询事务 (#202) * 🐛 fix(database): 回滚失败 SQLite 查询事务 * 🐛 fix(schema): 规范图算法重复表输入 (#204) * 🐛 fix(schema): 规范图算法重复表输入 * 🐛 fix(dependencies): 隔离版本分析状态 (#206) * 🐛 fix(dependencies): 隔离版本分析状态 * 🐛 fix(cli): 统一解析 MCP 响应 (#208) * 🐛 fix(cli): 统一解析 MCP 响应 * ✨ feat(connection): 增加 MCP 连接释放工具 (#210) * ✨ feat(connection): 增加 MCP 连接释放工具 * ⚡ perf(mcp): 隔离同步数据库调用与事件循环 (#212)
ZhaoXingPeng
added a commit
that referenced
this pull request
Sep 9, 2026
* 🐛 fix(mcp): 收口全部 MCP 响应 JSON 序列化 * 🐛 fix(codegen): 规范无前缀模板输出路径 (#166) * 🐛 fix(codegen): 规范无前缀模板输出路径 * 🐛 fix(codegen): 统一分析结果与模板导入映射 (#168) * 🐛 fix(codegen): 统一分析结果与模板导入映射 * 🐛 fix(mcp): 补齐 PostgreSQL 时间类型别名映射 (#170) * 🐛 fix(mcp): 补齐 PostgreSQL 时间类型别名映射 * 🐛 fix(codegen): 补齐自增主键模板上下文标记 (#172) * 🐛 fix(codegen): 补齐自增主键模板上下文标记 * 🐛 fix(generator): 修正遗留实体上下文自增标志 (#174) * 🐛 fix(generator): 修正遗留实体上下文自增标志 * 🐛 fix(generator): 保留 Java 属性名内部大小写 (#176) * 🐛 fix(generator): 保留 Java 属性名内部大小写 * 🐛 fix(template): 仅为自增主键启用 generated keys (#178) * 🐛 fix(template): 仅为自增主键启用 generated keys * 🐛 fix(codegen): 统一主键列表与列上下文 (#180) * 🐛 fix(codegen): 统一主键列表与列上下文 * 🐛 fix(mcp): 统一描述与代码生成类型映射 (#182) * 🐛 fix(mcp): 统一描述与代码生成类型映射 * 🐛 fix(codegen): 统一旧入口方言表名发现 (#184) * 🐛 fix(codegen): 统一旧入口方言表名发现 * ♻️ refactor(codegen): 复用统一表名元数据合同 (#186) * ♻️ refactor(codegen): 复用统一表名元数据合同 * 🐛 fix(codegen): 补齐批量分析表名上下文 (#188) * 🐛 fix(codegen): 补齐批量分析表名上下文 * 🐛 fix(database): 持久化 SQLite execute_query 写入 (#190) * 🐛 fix(database): 持久化 SQLite execute_query 写入 * 🐛 fix(governance): 对齐工具注册表数据库能力 (#192) * 🐛 fix(governance): 对齐工具注册表数据库能力 * 🔒 security(mcp-apps): 收紧代码 diff 路径边界 (#194) * 🔒 security(mcp-apps): 收紧代码 diff 路径边界 * 🐛 fix(codegen): 对齐生成文件写入统计与结果状态 (#196) * 🐛 fix(codegen): 对齐生成文件写入统计与结果状态 * ✨ feat(codegen): 统一 DTO 与 VO 生成选项合同 (#198) * ✨ feat(codegen): 统一 DTO 与 VO 生成选项合同 * 📚 docs(governance): 固化 GitHub 元数据正文门禁 (#200) * 📚 docs(governance): 固化 GitHub 元数据正文门禁 * 🐛 fix(database): 回滚失败 SQLite 查询事务 (#202) * 🐛 fix(database): 回滚失败 SQLite 查询事务 * 🐛 fix(schema): 规范图算法重复表输入 (#204) * 🐛 fix(schema): 规范图算法重复表输入 * 🐛 fix(dependencies): 隔离版本分析状态 (#206) * 🐛 fix(dependencies): 隔离版本分析状态 * 🐛 fix(cli): 统一解析 MCP 响应 (#208) * 🐛 fix(cli): 统一解析 MCP 响应 * ✨ feat(connection): 增加 MCP 连接释放工具 (#210) * ✨ feat(connection): 增加 MCP 连接释放工具 * ⚡ perf(mcp): 隔离同步数据库调用与事件循环 (#212)
4 tasks
ZhaoXingPeng
added a commit
that referenced
this pull request
Sep 9, 2026
* 🐛 fix(mcp): 收口全部 MCP 响应 JSON 序列化 * 🐛 fix(codegen): 规范无前缀模板输出路径 (#166) * 🐛 fix(codegen): 规范无前缀模板输出路径 * 🐛 fix(codegen): 统一分析结果与模板导入映射 (#168) * 🐛 fix(codegen): 统一分析结果与模板导入映射 * 🐛 fix(mcp): 补齐 PostgreSQL 时间类型别名映射 (#170) * 🐛 fix(mcp): 补齐 PostgreSQL 时间类型别名映射 * 🐛 fix(codegen): 补齐自增主键模板上下文标记 (#172) * 🐛 fix(codegen): 补齐自增主键模板上下文标记 * 🐛 fix(generator): 修正遗留实体上下文自增标志 (#174) * 🐛 fix(generator): 修正遗留实体上下文自增标志 * 🐛 fix(generator): 保留 Java 属性名内部大小写 (#176) * 🐛 fix(generator): 保留 Java 属性名内部大小写 * 🐛 fix(template): 仅为自增主键启用 generated keys (#178) * 🐛 fix(template): 仅为自增主键启用 generated keys * 🐛 fix(codegen): 统一主键列表与列上下文 (#180) * 🐛 fix(codegen): 统一主键列表与列上下文 * 🐛 fix(mcp): 统一描述与代码生成类型映射 (#182) * 🐛 fix(mcp): 统一描述与代码生成类型映射 * 🐛 fix(codegen): 统一旧入口方言表名发现 (#184) * 🐛 fix(codegen): 统一旧入口方言表名发现 * ♻️ refactor(codegen): 复用统一表名元数据合同 (#186) * ♻️ refactor(codegen): 复用统一表名元数据合同 * 🐛 fix(codegen): 补齐批量分析表名上下文 (#188) * 🐛 fix(codegen): 补齐批量分析表名上下文 * 🐛 fix(database): 持久化 SQLite execute_query 写入 (#190) * 🐛 fix(database): 持久化 SQLite execute_query 写入 * 🐛 fix(governance): 对齐工具注册表数据库能力 (#192) * 🐛 fix(governance): 对齐工具注册表数据库能力 * 🔒 security(mcp-apps): 收紧代码 diff 路径边界 (#194) * 🔒 security(mcp-apps): 收紧代码 diff 路径边界 * 🐛 fix(codegen): 对齐生成文件写入统计与结果状态 (#196) * 🐛 fix(codegen): 对齐生成文件写入统计与结果状态 * ✨ feat(codegen): 统一 DTO 与 VO 生成选项合同 (#198) * ✨ feat(codegen): 统一 DTO 与 VO 生成选项合同 * 📚 docs(governance): 固化 GitHub 元数据正文门禁 (#200) * 📚 docs(governance): 固化 GitHub 元数据正文门禁 * 🐛 fix(database): 回滚失败 SQLite 查询事务 (#202) * 🐛 fix(database): 回滚失败 SQLite 查询事务 * 🐛 fix(schema): 规范图算法重复表输入 (#204) * 🐛 fix(schema): 规范图算法重复表输入 * 🐛 fix(dependencies): 隔离版本分析状态 (#206) * 🐛 fix(dependencies): 隔离版本分析状态 * 🐛 fix(cli): 统一解析 MCP 响应 (#208) * 🐛 fix(cli): 统一解析 MCP 响应 * ✨ feat(connection): 增加 MCP 连接释放工具 (#210) * ✨ feat(connection): 增加 MCP 连接释放工具 * ⚡ perf(mcp): 隔离同步数据库调用与事件循环 (#212)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
关联 Issue
Closes #169
背景(Situation)
db_table_describe(include_java_types=true)使用 MCP 侧的 YAML 类型映射解析 PostgreSQLformat_type()返回的完整类型名。生成器方言已支持TIME WITHOUT TIME ZONE、TIMESTAMP WITHOUT TIME ZONE和TIMESTAMPTZ,但 MCP 配置只覆盖短名称或带时区完整名称,导致同一数据库列在描述响应中返回Object,并遗漏java.timeimport。任务(Task)
补齐 PostgreSQL 时间类型别名,使 MCP 描述结果与 PostgreSQL 类型语义一致,同时保持现有 UUID、JSONB 和完整时区名称的返回值不变。
行动(Action)
369cf94default_type_mapping.yaml的 PostgreSQLdatetime节点增加:TIME_WITHOUT_TIME_ZONE->LocalTimeTIMESTAMP_WITHOUT_TIME_ZONE->LocalDateTimeTIMESTAMPTZ->OffsetDateTimeDialectAdapter或 UUID 既有语义,不修改 SQL、输入 schema 和真实数据库连接逻辑。验证(Verification)
环境:Windows,仓库
.venv,Python 3.10.1,pytest 9.0.3,Ruff 来自.venv。未运行真实 PostgreSQL/Testcontainers、Java/Maven 或 CI;这些不属于本次提交前的本地验证范围。
实验与证据(Evidence)
固定输入直接调用
_get_java_type_mapping(DatabaseType.POSTGRESQL, type_name),覆盖 PostgreSQL catalog/format_type()可能返回的三个别名:修复前这三项均会落到
Object/空 imports;当前结果与PostgreSQLDialect的类型语义一致。未据此宣称性能提升或生产数据库覆盖。兼容性、风险与回滚
java.time类型。369cf94即可,无数据库或配置迁移。fix/167-codegen-imports,仅包含本主题一个新增提交;待前置代码生成 PR 按顺序合并后再回到main。