50 lines
5.3 KiB
Markdown
50 lines
5.3 KiB
Markdown
---
|
||
title: Checkpoint 2026-09-20 02:02:18 UTC [68e7c94d84]
|
||
type: checkpoint
|
||
permalink: main/projects/d44c219a-0b31-4de1-b160-323eb34a4c6a/checkpoint-2026-09-20-02-02-18-utc-68e7c94d84
|
||
stable_id: c3c14f75-1ed4-4e30-91e8-952031f256ba
|
||
scope: project
|
||
project_id: d44c219a-0b31-4de1-b160-323eb34a4c6a
|
||
memory_type: checkpoint
|
||
status: active
|
||
revision: 1
|
||
restored_from_commit: 6a6a895eafcca6052e81a14fca103a42635dd1c2
|
||
created_at: '2026-09-23T15:06:43.056651+00:00'
|
||
updated_at: '2026-09-23T15:06:43.056720+00:00'
|
||
tags:
|
||
- handoff
|
||
- certificate
|
||
- deployment
|
||
- authentication
|
||
---
|
||
|
||
# 证书模板和作者单选实现完成,发布暂因Git认证阻塞
|
||
|
||
## 用户目标和授权
|
||
用户要求清理线上旧升级备份;证书正文默认改为{{作品名称}} {{版本}},系统设置可配置字段模板、帮助点击弹出;作者显示用单选默认存证钱包地址,也可选作品作者姓名。用户明确要求完成后提交推送,再无损更新线上。延续原任务,不应因最新简短确认丢失部署目标。
|
||
|
||
## 已完成
|
||
- dev提交6669722c0081b8fde166556be23cddf69b440c36;本地main已快进同提交,当前停留main,工作区干净。远程dev/main仍c5c0168,尚未推送6669722。
|
||
- packages/shared/src/certificate-text.ts提供默认模板、字段白名单和纯文本渲染;支持作品名称/版本/追溯码/档案编号/作者。版本取作品模板label=版本对应键,实测当前键size。settings新增certificateTextTemplate与certificateAuthorMode默认WALLET,无数据库迁移。
|
||
- 作者选ARTWORK_ARTIST时仅在读取返回的官方证书URL中增加author显示参数,保留address/digest/txHash/原文/时间,空姓名回退钱包。支持已有证书下次查看,不重新生成。已检查官方test和production静态页面支持此参数并浏览器验证黄志伟显示。
|
||
- UI单选、文本多行框和点击才显示帮助已实测保存。测试库模板为默认值,作者选项已恢复WALLET。
|
||
- 全套36组294测试通过;生产builder构建通过;本地测试实物802593007615新出证正文“十二生肖莲花手工杯 一个装”,重复复用;切换作者姓名后仅author参数改变,其余参数与生成时间一致。
|
||
- 清理了上轮服务器/www/upgrade/artveris-c5c0168-20260920/backup约601MB及同轮回滚脚本/PM2临时信息,本机.deploy/production/备份已先核验SHA256且仍保留。未删除线上业务storage/backups和其他项目。
|
||
|
||
## Git阻塞
|
||
push origin dev返回Failed to authenticate user。已先查MemRelay密码库,唯一对应站点OAuth条目“Gitea git.asio.asia OAuth”的access和refresh均过期,API /user返回401,本机credential fill也无可用凭据。不要重复使用旧token。已通过异步问题请用户重新登录Git或更新密码库凭据,尚未收到完成回复。不要输出任何秘密。其他仓库专用账户不能未经确认替代。恢复后fetch比对远端,推送dev/main(如远端变动需正常整合,不force)。用户要求先推送后上线,暂未执行生产切换。
|
||
|
||
## 发布准备(已就绪、线上仍c5c0168)
|
||
- 本机目录.deploy/production-template/,源码快照source、包artveris-upgrade-6669722.tar.gz、manifest、脚本、日志、code-and-config.tar.gz、database-warm.sql.gz。
|
||
- 包SHA256 030b14c1cbe33f35fddcd396c00c88890802512a201328f7912866c1e0ce2c7c,来自已构建artveris-release:template镜像。377文件清单校验通过。
|
||
- 服务器目录/www/upgrade/artveris-6669722-20260920。prepare-release.sh已完成依赖预安装、Prisma generate、sharp/Prisma加载、7条既有迁移checksum验证、热备份代码配置及DB(新一轮备份,约108MB压缩)。本机已下载新备份。所有19 jobs SUCCESS,5701 proofs ONCHAIN。
|
||
- snapshot.cjs、cutover.sh已上传并通过语法验证;本轮脚本从上轮验证流程替换版本号和目录得到,运行前复核。尚未运行launch-cutover.sh(不存在cutover-complete和cutover.pid)。client.cnf是服务器暂存数据库连接文件,0600,正式校验后verify-release.sh会清理。若暂存长期搁置先清理后在切换前安全重建。
|
||
- SSH helper沿用.deploy/production/ssh_task.py(uv run --with paramiko),服务器地址/私钥由用户本会话提供、密码不写记忆。
|
||
|
||
## 继续步骤
|
||
1. 获取用户已恢复的Git认证,fetch、推送dev及main,校验远端一致,最后回dev。
|
||
2. 切换前再次只读核对线上任务(新增证书任务也要确认无处理中)和PM2,必要时重新热备份;执行.deploy/production-template/launch-cutover.sh将服务器cutover.sh后台运行,轮询cutover-status.sh。
|
||
3. 切换脚本会停server,最终DB/媒体一致性备份,交换已安装的新旧代码,migrate无新迁移,snapshot逐表原字段和文件校验,pm2 restart并save。错误自动恢复旧代码,保留数据。
|
||
4. verify-release.sh及final-status.sh验证公网、manifest、PM2和系统数据;新增只读核对模板默认值及作者模式,勿主动调用正式付费出证。
|
||
5. 下载本轮最终DB/媒体/哈希/前后快照,再对照和恢复测试。新备份是否清理应依据用户明确请求范围,用户本次清理指已完成上一轮,可向其报告本轮新备份保留。
|
||
6. 更新本轮报告和MemRelay最终检查点,说明部署真实结果,不声称Git或上线已完成。 |