Record source and release ownership, keep source line endings consistent, and exclude local build/config backups from version control. Restore default Next type paths, normalize CI checks across line endings, and use portable Playwright and postbuild entry points on Windows/Linux. Align the stale timeout fixture with the existing production timeout policy. Application runtime files remain identical to production-snapshot-48-20261030. Production build and focused regressions passed; pre-existing full-repository lint findings remain documented instead of relaxing lint rules.
3.7 KiB
源码基线与发布约定
本次生产源码归档
2026 年 10 月 30 日完成只读核对:
- 归档前的
main:e2a8f2dda3f190f78529b4419f295a356476c74b。 - 原主线回退标签:
main-before-production-sync-20261030。 - 生产源码分支:
codex/canvas-image-429-deploy-1001。 - 生产源码提交:
439fd56fe120fdb9f855b50fa4df9ce2e71bb72a。 - 实际运行构建 ID:
QhoygcZ4-x42PwCgCEj1d。 - 生产目录另有 19 个已跟踪文件的修改和 6 个新增源码文件。
这些源码改动按原始内容归档在标签 production-snapshot-48-20261030,
25 个文件均经过 SHA256 校验。原始补丁和文件副本还保存在独立的本地备份中。
环境文件、模型配置备份和历史构建目录未加入源码归档。
源码归档标签表示核对时的服务器源码状态。实际运行的构建单独用构建 ID 标识, 不能仅凭服务器分支名或提交号认定某份构建已经部署。
接手分支 codex/production-48-20261030 在归档后只清理构建目录引用和仓库检查兼容性,
通过 PR 将已审查的生产源码同步回 main。本次源码同步不包含服务器部署或重启。
后续开发与合并
- 从最新
main创建任务分支,使用codex/<任务>命名。 - 每次提交只暂存本次任务明确涉及的文件,检查暂存区差异和凭据。
- 通过 PR 合入
main,记录验证结果;未通过或未执行的检查须写明原因。 - 历史生产、试验和备份分支先保留。确认改动是否已收录后,再单独评审归档。
- 服务器上的临时修复应及时取回源码、审查、提交并合入主线,避免再次形成服务器独有状态。
源码换行由 .gitattributes 固定为 LF,Windows 批处理文件保留 CRLF。
这样源码断言和检查在 Windows、Linux 上读取到相同内容,避免仅因换行差异误报。
构建与发布
- 从
main的确定提交或对应发布标签构建,保留提交号与构建 ID 的对应关系。 - 默认构建目录为
.next;独立发布可设置NEXT_DIST_DIR。 next-env.d.ts和tsconfig.json中不要提交某台服务器历史构建目录的引用。.next-*、模型配置备份、临时目录和备份文件留在运行环境,不纳入版本控制。- 发布前保存可回滚版本,发布后核对实际运行构建、页面和必要业务流程。
- 合并源码与部署是两个操作;部署需要单独明确目标和发布范围。
scripts/storage/ 下的迁移、审计脚本作为维护源码保存。
执行前须检查参数、目标存储和数据库配置;本次归档没有执行任何数据迁移。
验证入口
项目固定使用 pnpm 9.12.3,依赖按锁文件安装。
常规检查入口为 pnpm check:branch、pnpm check:quality 和 pnpm build,
运行环境与路由验收按 PR 模板记录。
pnpm lint 直接使用锁文件中的 Biome 版本执行现有检查,避免包装命令再次调用 npx。
历史 lint 或格式诊断应在 PR 中如实记录,不通过放宽规则或跳过检查掩盖。
Playwright 入口通过 Node 设置测试环境变量,辅助测试额外启用 react-server 模块条件,
可在 Windows 和 Linux 上使用同一条命令。
构建后的公共 source map 清理由 Node 完成,只处理工作区内当前构建目录的 static 文件。
原生 Agent 沙箱测试另外需要对应的运行时和隔离环境,应单独记录是否具备这些条件。
仓库工作流目前均为手动触发。若以后增加自动发布,须明确发布分支、目标环境、 审批和回滚方式,避免普通推送意外触发生产变更。
本次归档保留现有生产行为,历史质量问题和未执行的验收项目在合并 PR 中单独列明。