--- title: Checkpoint 2026-09-19 18:15:58 UTC [450bee174b] type: checkpoint permalink: main/projects/d44c219a-0b31-4de1-b160-323eb34a4c6a/checkpoint-2026-09-19-18-15-58-utc-450bee174b stable_id: 24b96a5f-3fbb-4d4c-a586-fd30d177d2ba 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:33.021160+00:00' updated_at: '2026-09-23T15:06:33.021231+00:00' tags: - handoff - certificate - hot-reload - verified --- # 消费者按需出证及本地开发六项调整完成 ## 当前状态 - E:/code/artveris,本地dev与origin/dev均为c5c0168,工作区干净。提交c486499为开发热更新及本地URL,c5c0168为出证弹窗、按钮和文本。均已推送https://git.asio.asia/nixevol/Artveris.git;未合并main,未更新线上宝塔/PM2。 - 本地Compose项目artveris-local运行中,API/MySQL/Redis健康,Nginx入口http://127.0.0.1:18080。四个服务restart=no,不开机自启。代码挂载到开发镜像artveris-dev:local,普通源码修改不需要重建容器。 ## 做了什么与原因 - 查看存证、查看证书去箭头,证书按钮margin-left:auto靠右。明确ONCHAIN、有txHash、天河链时才显示。未上链不显示;预览模式不发起出证。 - 使用原页原生dialog显示三阶段进度:正在调取存证数据/获取存证证书/正在打开存证证书。先GET本地缓存,NONE或UNKNOWN才POST申请/恢复,其他处理中状态仅查询,成功后同页跳官方证书地址。关闭弹窗只停止前端等待,不重复生成;删除了旧独立Certificate等待页。 - 新证据文本为作品名称+真实换行+追溯码;保存官方URL,不保存图片。官方页面把换行折成空格,用户明确接受,既有证据不自动改写或重生成。 - 本地导入的clientBaseUrl曾指向线上。configuration新增仅development且显式ARTVERIS_DEV_ORIGIN有效的覆盖,SettingsService统一用于后台列表、导出/二维码、短链、设置页;生产不受影响。 - Dockerfile.dev保留Linux依赖,挂载API/admin/client/shared源码;dev.mjs监督共享包tsc watch、Nest watch、两个Vite进程,Nginx代理HMR WebSocket。Windows使用轮询。补充procps解决Nest CLI缺ps时遗留旧进程占端口的问题。 - 此前已按用户要求去掉每日出证上限和总开关,保留每实物一次生成、未知结果仅查询、数据库CAS/租约。测试链V2发行operateId不能直接出V3证书,需独立文本存证;该事实已单独写入MemRelay。 ## 验证 - API 35组/288用例通过,前后台构建通过。新增覆盖本地URL覆盖与生产配置恢复、证据文本精简和换行保留。 - 实测后台追溯码列表URL与/t短链均使用127.0.0.1:18080/trace。单独验证production忽略开发覆盖。 - 前端DOM临时标记无需刷新自动出现,后端健康响应临时字段加入和撤销均自动重载,容器ID及StartedAt不变;验证标记和当前任务临时脚本已清理。 - 新实物259394001444在免费测试链经弹窗成功出证并自动跳转,证据严格等于作品名称+换行+短码,URL保留%0A。未上链实物402300000502无查看证书按钮。普通访问不自动生成。 - 日志位于已忽略的.deploy/local/six-changes-tests.log及six-changes-front-build.log,运行配置和数据不提交Git。 ## 接手说明 - 启动:docker compose --env-file .deploy/local/.env -f docker/compose.local.yml up -d;停止同前缀stop。依赖/锁文件/Dockerfile变化才up -d --build;schema/迁移变化restart api会重新生成Prisma并迁移。不要在watch同一容器运行生产build写dist。 - docs/本地Docker测试环境.md、docs/消费者按需存证证书.md已经同步运行说明。不要再创建本地aidocs记忆;使用MemRelay。 - 测试凭据来源为密码库“artveris · 天河链测试环境凭据”,生产API域名在本地容器映射到loopback防误调用。生产业务记录已复制为本地测试数据,链上旧生产交易不会因此变成测试链交易;新测试证书为独立测试V3记录。 - 无当前六项功能未完成代码。官方证书换行显示为其样式限制,用户接受。等待用户本地体验反馈,未经明确安排不部署线上。