B-39: 数据库持久化与不可变导入

- 版本化 SQLite 迁移(向前/回滚)与连接助手。
- 导入管线:上传文件按 SHA-256 内容哈希不可变保存,文件/行/批次
  幂等;重复上传返回 duplicate 并复用已有批次,不产生第二份事实。
- 每条规范化源行反查文件、工作表、原始行号与模板版本。
- 解析失败保留 exception/failed 批次与诊断,不产生已确认交易。
- 决策记录见 docs/decisions/002-persistence.md。
This commit is contained in:
腾讯WorkBuddy
2026-08-16 01:48:53 +08:00
parent c292fb791d
commit 763a940683
7 changed files with 994 additions and 0 deletions
+1
View File
@@ -190,6 +190,7 @@ def _parse_sheet(source: Path, sheet: RawSheet) -> StatementBatch:
else None,
transactions=tuple(transactions),
warnings=tuple(warnings),
template_version=template.version,
)