migration: establish exact preserved app baseline
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
# 切片00:原样可运行副本
|
||||
|
||||
## 范围
|
||||
|
||||
- 原版基线:`41329943c4878fc09ed82ec376eb93ab151e4092`
|
||||
- 目标目录:`app/`
|
||||
- 数据库:使用SQLite在线备份生成`app/data/review.db`,不写原版数据库。
|
||||
- 排除:冻结的`next/`、密钥、正式数据库、日志、缓存、构建产物。
|
||||
|
||||
## 自动证据
|
||||
|
||||
| 检查 | 结果 |
|
||||
|---|---|
|
||||
| 原版与目标源文件SHA-256 | 628项一致,0项差异 |
|
||||
| Python测试 | 231项通过 |
|
||||
| Playwright测试 | 45项通过 |
|
||||
| 数据库结构 | 36张表一致 |
|
||||
| 数据库行数 | 2,830,708行一致 |
|
||||
| SQLite完整性 | `ok` |
|
||||
| 真实服务 | `http://127.0.0.1:8785/api/health`返回`ok` |
|
||||
| 真实登录 | 管理员账号登录成功,默认进入情绪周期 |
|
||||
|
||||
## 视觉证据
|
||||
|
||||
- `app-exact-light-1920x1080.png`
|
||||
- `app-exact-dark-1920x1080.png`
|
||||
- `app-exact-light-390x844.png`
|
||||
- `app-exact-dark-390x844.png`
|
||||
|
||||
四个视口均使用真实服务、数据库副本和原版前端资产。1920与390宽度下没有页面横向溢出。
|
||||
|
||||
## 结论
|
||||
|
||||
`app/`当前是原版的可独立运行副本,不包含来自`next/`的产品实现,也尚未进行业务拆分。
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 117 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 35 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 104 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 34 KiB |
@@ -1,17 +1,18 @@
|
||||
{
|
||||
"schema_version": 1,
|
||||
"updated_at": "2026-07-30T22:51:21+08:00",
|
||||
"status": "preparation",
|
||||
"updated_at": "2026-07-30T23:55:00+08:00",
|
||||
"status": "active",
|
||||
"migration_mode": "behavior_preserving_source_migration",
|
||||
"source_of_truth": "current_original_webapp_runtime_and_source",
|
||||
"source_root": ".",
|
||||
"target_root": null,
|
||||
"target_root": "app",
|
||||
"failed_roots": [
|
||||
"next"
|
||||
],
|
||||
"current_slice": null,
|
||||
"last_completed_slice": "slice-00-exact-runtime-copy",
|
||||
"last_checkpoint": "xiaobai-preservation-migration-charter-20260730",
|
||||
"next_action": "inventory_original_assets_and_propose_target_structure_before_copying_code",
|
||||
"next_action": "commit_and_push_slice-00_then_begin_startup_http_account_migration",
|
||||
"authoritative_documents": [
|
||||
"AGENTS.md",
|
||||
"docs/migration/原版保真迁移总纲.md",
|
||||
@@ -27,9 +28,11 @@
|
||||
"keep_original_runtime_available",
|
||||
"do_not_delete_uncertain_code"
|
||||
],
|
||||
"open_decisions": [
|
||||
"target_directory_name",
|
||||
"target_directory_structure",
|
||||
"migration_slice_order"
|
||||
]
|
||||
"approved_decisions": {
|
||||
"target_directory_name": "app",
|
||||
"target_directory_structure": "approved_2026-07-30",
|
||||
"migration_slice_order": "approved_2026-07-30",
|
||||
"execution_mode": "autonomous_until_complete"
|
||||
},
|
||||
"open_decisions": []
|
||||
}
|
||||
|
||||
+29
-10
@@ -1,6 +1,6 @@
|
||||
# 小白复盘保真迁移账本
|
||||
|
||||
> 当前状态:准备期,尚未开始业务代码迁移
|
||||
> 当前状态:正式迁移,切片00“原样可运行副本”已完成
|
||||
|
||||
本账本是上下文恢复和人工审计的连续记录。任何迁移提交必须在同一提交中更新本文件及
|
||||
`保真迁移状态.json`。
|
||||
@@ -9,8 +9,9 @@
|
||||
|
||||
- 原版根目录是唯一产品和视觉基线。
|
||||
- `next/`已被用户否决并冻结,不进入后续迁移。
|
||||
- 新目标目录尚未命名或建立。
|
||||
- 新目标目录由用户批准为`app/`,最终作为正式程序目录。
|
||||
- 后续采用原代码保真式迁移,不重新实现,不更换技术栈。
|
||||
- 2026-07-30用户授权在既定约束内自主完成全部迁移,阶段性差异仍必须阻断后续切片。
|
||||
|
||||
## 当前检查点
|
||||
|
||||
@@ -18,6 +19,7 @@
|
||||
|---|---|---|---|
|
||||
| 2026-07-30 | `xiaobai-next-rejected-20260730` | 冻结失败的`next/`实现 | 禁止部署或继续开发 |
|
||||
| 2026-07-30 | `xiaobai-preservation-migration-charter-20260730` | 建立保真迁移总纲、状态和恢复协议 | 尚未开始新迁移 |
|
||||
| 2026-07-30 | `41329943c4878fc09ed82ec376eb93ab151e4092` | 完成只读资产清查并由用户批准`app/`结构 | 开始切片00 |
|
||||
|
||||
## 资产处置登记
|
||||
|
||||
@@ -25,14 +27,28 @@
|
||||
|
||||
| 原位置/符号 | 类型 | 消费者 | 处置 | 新位置 | 等价证据 | 状态 |
|
||||
|---|---|---|---|---|---|---|
|
||||
| 待清查 | - | - | 待定 | - | - | 未开始 |
|
||||
| 原版运行源文件(排除`next/`、日志、缓存、构建产物和正式数据库) | 运行资产 | 全站 | 原样保留后逐项移动 | `app/` | 388项受控资产哈希一致;231项Python与45项Playwright测试通过 | 已复制 |
|
||||
| `next/` | 失败实现 | 无正式消费者 | 原样保留但禁止迁移 | - | 用户冻结决定 | 已冻结 |
|
||||
| `demo_data.py` | 疑似旧兼容代码 | 未发现运行导入 | 待定 | 待删隔离账本 | 静态扫描不足以授权删除 | 保留 |
|
||||
| `static/heaven-loading.js` | 疑似旧动画 | 当前页面加载`heaven-loading-v2.js` | 待定 | 待删隔离账本 | 仍需动画运行覆盖 | 保留 |
|
||||
| `commonReviewColumns`等5个前端函数 | 疑似无引用符号 | 未发现静态调用 | 待定 | 待删隔离账本 | 仍需动态注册与浏览器覆盖 | 保留 |
|
||||
| `wencai_saved_queries`及其方法 | 历史兼容数据 | 当前无前端入口 | 待定 | 数据库兼容区 | 不允许在迁移期破坏旧库 | 保留 |
|
||||
| 现有7层CSS | 视觉运行资产 | 全部页面和主题 | 原样保留后逐页归档 | `app/frontend/` | 必须通过截图与计算样式差分 | 保留 |
|
||||
|
||||
处置只允许:`原样保留`、`移动`、`合并重复`、`待定`、`确认废弃`。
|
||||
|
||||
## 切片记录
|
||||
|
||||
每个切片记录以下内容:原版基线、复制范围、必要路径调整、差异测试、人工验收、未关闭问题和回档提交。
|
||||
当前没有进行中的切片。
|
||||
已完成切片:`slice-00-exact-runtime-copy`。
|
||||
|
||||
- 原版基线:提交`41329943c4878fc09ed82ec376eb93ab151e4092`。
|
||||
- 复制范围:确认参与运行、测试、部署和维护的原版文件;排除`next/`和运行产物。
|
||||
- 允许改动:新目录中的路径配置、测试根目录和端口;不得改业务实现。
|
||||
- 验收:新目录独立启动,231项Python测试、45项Playwright测试、数据库副本和静态资产哈希验证。
|
||||
- 回档:本切片建立独立Git提交并推送Gitea。
|
||||
- 完整证据:`docs/migration/evidence/slice-00/README.md`。
|
||||
- 资产清单:`docs/migration/原版资产清单.json`,388项,0项哈希差异。
|
||||
|
||||
## 决策记录
|
||||
|
||||
@@ -41,12 +57,15 @@
|
||||
| 2026-07-30 | 原版运行行为优先,规格书只用于盘点 | 防止再次依据文字重新开发 |
|
||||
| 2026-07-30 | 不使用`next/`作为后续迁移起点 | 用户确认其视觉、布局和基础功能不可用 |
|
||||
| 2026-07-30 | 目标结构确认前不创建业务目录 | 防止目录先行后再次补写功能 |
|
||||
| 2026-07-30 | 目标目录确定为`app/` | 使用长期正式名称,不再建立新的版本式重写目录 |
|
||||
| 2026-07-30 | 先建立原样可运行副本,再迁移目录职责 | 保证整理的是原件,而不是依据规格书重新实现 |
|
||||
| 2026-07-30 | 不确定代码进入待删账本并延迟试删 | 删除必须能够单独回档并经自动与人工验收 |
|
||||
|
||||
## 恢复工作检查
|
||||
|
||||
- [ ] 已阅读`AGENTS.md`与保真迁移总纲。
|
||||
- [ ] 已读取状态JSON和本账本最后一项。
|
||||
- [ ] 已确认Git工作区和基线提交。
|
||||
- [ ] 已确认没有修改`next/`或正式数据。
|
||||
- [ ] 已说明当前切片及新旧等价证据。
|
||||
- [ ] 已在编辑前确认没有未关闭差异。
|
||||
- [x] 已阅读`AGENTS.md`与保真迁移总纲。
|
||||
- [x] 已读取状态JSON和本账本最后一项。
|
||||
- [x] 已确认Git工作区和基线提交。
|
||||
- [x] 已确认没有修改`next/`或正式数据。
|
||||
- [x] 已说明当前切片及新旧等价证据。
|
||||
- [x] 已在编辑前确认没有未关闭差异。
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# 小白复盘原版保真迁移总纲
|
||||
|
||||
> 状态:准备期
|
||||
> 状态:正式迁移
|
||||
> 建立日期:2026-07-30
|
||||
> 迁移性质:保行为、保视觉、保数据语义的源代码整理
|
||||
|
||||
## 1. 唯一目标
|
||||
|
||||
以当前可运行原版`webapp`为唯一母版,在尚未命名的新目录中建立更容易检索、理解和人工维护的
|
||||
以当前可运行原版`webapp`为唯一母版,在用户批准的`app/`目录中建立更容易检索、理解和人工维护的
|
||||
代码结构。迁移后的系统必须继续使用原版已经验收的功能、视觉、布局、动画、计算逻辑和交互,
|
||||
不得依据说明文字重新开发一个相似产品。
|
||||
|
||||
@@ -123,6 +123,6 @@
|
||||
## 10. 当前边界
|
||||
|
||||
- `next/`已失败冻结,不是迁移起点。
|
||||
- 当前尚未确定新目录名称、目标目录结构和迁移阶段。
|
||||
- 在完成原版资产清查和用户确认总体方案前,不开始复制业务代码。
|
||||
- 新目录名称、目标结构和迁移顺序已于2026-07-30获得用户确认。
|
||||
- 第一切片必须先建立原样可运行副本,不允许直接开始重新实现或视觉重构。
|
||||
- 原版保持唯一可运行产品,不执行Docker切换或数据清理。
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user