Commit Graph

777 Commits

Author SHA1 Message Date
kdletters cd14fb7e1f Merge remote-tracking branch 'origin/codex/pingoranginx' 2026-06-19 10:50:09 +08:00
kdletters d9c32261fc 修复拼图生成队列与草稿恢复
补齐拼图队列状态回传,生成页展示排队/运行状态

修复草稿进入时生成中与结果页路由恢复逻辑

避免新增空白关卡立即自动保存并保留编辑弹窗

恢复稳定拼图 profile 缺失时的同源 session 草稿投影

让外部生成 worker/controller 跳过 HTTP 认证快照恢复

补充外部生成 worker 与拼图草稿排障记录
2026-06-19 10:47:56 +08:00
kdletters e3258f6f1d 完善 Pingora 直连切换门禁
新增 Pingora shadow env 回切脚本与对应检查。

补齐直连证据包时间线和 cutoverRunId 审计门禁。

支持 Gitea Host 透传并更新直连多域名文档。

修复百分号编码静态图标路径并补 smoke 覆盖。

更新生产发布与运维护栏对 Pingora 发布包的校验。
2026-06-18 21:10:45 +08:00
kdletters 3c1fd004a7 记录 Pingora 直连窗口准备
补充 dev final-prep 审计结果

记录 direct env 候选与 dry-run runbook

明确 active env 提升前不得执行公网切换
2026-06-18 15:47:53 +08:00
kdletters 7fa1c6d791 记录 Pingora 高端口直连演练
补充 dev 高端口直连真实演练结果

记录临时 systemd 演练与 env source 踩坑

确认公网入口仍由 Nginx 承接
2026-06-18 15:42:38 +08:00
kdletters cd7fca4a4f 修正长期项目记忆入口
AGENTS.md 将复杂任务记忆入口固定到 docs/project-memory

项目基线与踩坑记录同步声明 .hermes 仅保存 Hermes 工具资源

决策记录新增 2026-06-18 长期记忆路径口径并标注旧 .hermes 记录为历史
2026-06-18 15:17:06 +08:00
kdletters e79cc5bd09 纳入 Pingora realpath canary 启停门禁
将 realpath canary 启停烟测纳入 Pingora release readiness 默认门禁

补齐 readiness plan 对 realpath canary toggle 的自检

修正生产健康巡检测试夹具的 worker 实例模拟

同步 Pingora realpath canary 运维文档和项目共享记忆
2026-06-18 15:07:43 +08:00
kdletters 0cc2a79c7b 自动拉起 Pingora shadow 发布服务
让 API deploy 在发布包包含 Pingora 时先校验 shadow systemd 和 env 安全边界

在 shadow 配置安全时自动启动或重启 genarrative-pingora-gateway.service

拒绝 direct-entry capability、公网监听 env,并在 current 切换前失败

补充 production-api-deploy 动态烟测、生产运维护栏和 Pingora 运维文档

在 dev 服务器真实验证 shadow inactive 场景可由发布脚本自动拉起
2026-06-18 14:53:03 +08:00
kdletters 10e559701f 补齐 Pingora runtime-only 彩排门禁
将 current release runtime-only 基础门禁接入直连彩排状态复核

保留 /opt/genarrative/current 调用路径,避免 symlink 展开导致 systemd ExecStart 自审误判

补充 release readiness plan 自测和 Pingora 运维文档

在 dev 服务器真实验证 runtime-only 门禁、Nginx 公网边界、Pingora shadow 和 realpath canary
2026-06-18 14:33:54 +08:00
kdletters 4bca480f3c 补齐 Pingora 直连彩排状态
新增 Pingora 直连彩排状态脚本,核验 health patrol、端口归属、systemd、realpath canary 和 current release 自审

将彩排状态脚本纳入 API release 构建、部署、Jenkins 归档和生产运维护栏

补充 release readiness、current release audit、cutover snapshot 与发布部署检查对彩排脚本的覆盖

更新 Pingora 运维文档和共享记忆,记录 dev health patrol 真实配置漂移与修复方式

在 dev 服务器真实部署验证 Nginx 仍接 80/443、Pingora shadow 与 realpath canary 高端口正常、health patrol 和彩排状态均为 OK
2026-06-18 00:31:42 +08:00
kdletters 123d4ada01 脚本化 Pingora realpath canary 启停
新增 realpath canary 启用和关闭脚本

将脚本纳入 release、deploy、Jenkins 和 current release 自审

补充脚本化 canary 文档和生产运维护栏

增加 realpath canary 启停自测和发布部署护栏
2026-06-17 23:45:58 +08:00
kdletters 93f085f95c 记录 Pingora realpath canary 加载顺序
补充 realpath canary 在 conf.d 中必须晚于 log_format 加载

记录 dev realpath canary current release 真实验收结果

新增生产运维护栏防止加载顺序说明丢失
2026-06-17 23:21:56 +08:00
kdletters 75b85ee5a9 修正 Pingora 高端口重定向验收
direct live 支持独立 redirect base URL 预期

release readiness 和切换证据链透传 redirect base URL

直连启用脚本透传高端口 rehearsal 参数

补充 direct live guard、运维门禁和文档示例
2026-06-17 23:00:28 +08:00
kdletters 057522fc2e 补齐 Pingora TLS 证书同步
新增 Pingora TLS 证书同步脚本,默认 dry-run,apply 时原子复制证书到私有目录并复核服务用户可读。

将证书同步脚本纳入 API release 构建、部署复制和 current release 自审清单。

补充发布包、deploy、自审和脚本自身门禁,覆盖缺失脚本、symlink 目标与权限边界。

更新 Pingora env 示例、运维文档和项目踩坑记录,明确不要放宽 Let’s Encrypt 原路径权限。
2026-06-17 22:40:05 +08:00
kdletters 206ea48878 记录 Pingora dev 正式发布验收
补充 dev API release 正式路径部署证据

记录 current release 自审、runtime-only 门禁和 shadow WSS 验收结果

明确公网入口仍由 Nginx 承接且临时发布包已清理
2026-06-17 22:15:15 +08:00
kdletters 68bf3b698a 补齐 API 发布 checksum 入包
部署脚本将 api-server 与 Pingora checksum 一起复制到 current release

部署自测覆盖 current release checksum 自审依赖

同步 Pingora 正式发布链路文档和共享排障记忆
2026-06-17 22:09:03 +08:00
kdletters e5713944f3 记录 Pingora 真实路径 canary 验收
记录 dev 真实路径 canary 的 live smoke 和 WSS 验收

记录 Nginx 与 Pingora access log 真实路径对账结果

记录恢复 Nginx 配置并释放 18083 端口
2026-06-17 21:52:49 +08:00
kdletters 55df19da9f 记录 Pingora dev 阶段验收
记录 dev 持久 shadow service 真实链路验收结果

记录 dev Nginx 前缀 canary 验收和恢复状态

补充 canary 前必须先完成持久 shadow 验收的口径
2026-06-17 21:48:26 +08:00
kdletters c3f7d1f222 修正 Pingora 直连验收口径
允许 direct live 接受 SpacetimeDB identity 的 405 真实响应

同步 Nginx README 与 Pingora 试点文档的直连验收说明

在 dev 服务器用真实 API、SpacetimeDB 和静态目录完成 shadow 验收
2026-06-17 21:25:36 +08:00
kdletters 27912fd020 合并 master 到 Pingora 网关分支
保留 Pingora 网关发布与巡检能力

合入外部生成 worker 与 controller 运维链路

对齐 SpacetimeDB 2.5.0 依赖锁定

更新项目共享记忆与生产运维文档
2026-06-17 21:05:57 +08:00
kdletters 9eb4937afb 补充Pingora真实上游Docker验收
为 Docker canary 增加真实 api-server 与 SpacetimeDB 上游参数

允许 canary live 接受真实 SpacetimeDB identity GET 的 405 语义

同步运维文档记录真实上游 Docker 验收命令
2026-06-17 20:44:44 +08:00
kdletters a7711d2dc3 引入Pingora独立网关正式化链路
新增 pingora-gateway 独立二进制 crate,覆盖路由、静态资源、压缩、接流保护、TLS 直连和访问日志能力。

新增 Nginx canary、realpath canary、direct preflight、direct live、direct enable 和 rollback 脚本。

新增 Pingora 切流证据包、命令证据、manifest 验真、根目录总审计和 release readiness 聚合门禁。

完善 API release、Jenkins、systemd、health patrol、生产部署和发布包自包含校验。

更新 Pingora 试点文档、Nginx README 与 Hermes 共享记忆。
2026-06-17 20:16:51 +08:00
kdletters 2dcdd90c37 Merge branch 'codex/rag' 2026-06-16 16:10:33 +08:00
kdletters 15a527d7f4 整理项目记忆与Agent RAG入口
迁移项目共享记忆到 docs/project-memory,保留 .hermes 仅作为工具目录

新增 Agent 本地 RAG 索引与上下文包检索脚本

记录 RAG 依赖只安装到 .rag/runtime 并加入忽略规则

同步文档与检查脚本中的项目记忆路径
2026-06-16 16:06:54 +08:00
kdletters 767da0164a 修复隐藏拼图作品进入通关推荐
收口拼图公开消费路径的 Published + visible 判断

拦截隐藏拼图的公开详情、互动和正式运行态入口

补充隐藏拼图推荐候选回归测试

更新后端契约文档和团队踩坑记录
2026-06-15 22:42:38 +08:00
kdletters a51e63415f 收口生成队列与图片预览
将外部生成队列概览移到我的页签展示

移除生成页和进度页中的队列概览区域

新增全屏黑底图片预览器并支持缩放和边界拖拽

补充队列概览和图片预览的聚焦测试

同步更新玩法链路、运维、UI Kit 和团队共享记忆文档
2026-06-13 22:25:22 +08:00
kdletters 38babc592d Merge remote-tracking branch 'origin/master'
# Conflicts:
#	scripts/jenkins-server-provision.sh
2026-06-13 16:03:14 +08:00
kdletters 660abff773 升级SpacetimeDB到2.5.0
将SpacetimeDB相关Rust依赖精确锁定到2.5.0

同步本地CLI校验、生成绑定、容器与服务器provision默认版本

在文档和团队共享记忆中补充版本不匹配先升级再重试提醒

补齐拼消消生成中状态常量以恢复模块生成
2026-06-13 15:44:35 +08:00
kdletters cd49cb0106 修复otelcol无限重启 2026-06-12 23:42:23 +08:00
kdletters 951caac32d 扩展外部生成Worker队列
新增外部生成队列概览和单任务状态契约

将跳一跳、拼消消、敲木鱼图片生成动作接入worker队列

前端生成等待页展示当前任务和队列数量

更新外部生成worker运维文档和团队决策记录
2026-06-12 23:15:55 +08:00
kdletters 3bccfd1a83 Merge remote-tracking branch 'origin/master' into codex/external-generation-worker-scaling 2026-06-12 16:11:12 +08:00
kdletters fe30396544 合并泥点弹窗透明修复
# Conflicts:
#	src/components/common/PublishShareModal.test.tsx
#	src/components/common/PublishShareModal.tsx
#	src/index.test.ts
2026-06-12 15:35:19 +08:00
kdletters 4a6c126366 完善外部生成Worker动态扩缩容
新增外部生成controller进程角色与systemd服务

补齐队列统计procedure与spacetime-client绑定

更新生产部署脚本、健康巡检和server provision的worker/controller口径

新增容器worker smoke脚本并同步运维文档与团队记忆
2026-06-12 15:21:35 +08:00
kdletters 69815d918a 合并最新 origin/master
补合 master 最新小程序分享、开发脚本与 server-manager-panel 更新

保留外部生成 worker 分支已有改动,继续本地合并不推送
2026-06-11 23:14:26 +08:00
kdletters f87ae3f915 合并 origin/master
合入 master 的钱包退款 outbox、拼图后台编译互斥与公开链路更新

保留当前分支外部生成 worker 队列语义,并对齐拼图首图 claim 释放顺序
2026-06-11 23:06:41 +08:00
kdletters cfc0c0eadf 合入最新 master
合并 origin/master 并保留平台入口运行态与推荐链路语义
修正合并后基于 tab 语义变化的前端断言
2026-06-11 22:59:35 +08:00
kdletters 21add3dcbc Merge remote-tracking branch 'origin/master' 2026-06-11 22:51:26 +08:00
kdletters 1dd58a3d66 合并分享链路重构到主分支
合入通用作品分享卡片与小程序直达路径
合入推荐页当前作品系统分享参数同步
合入小程序九宫切图与相关测试

# Conflicts:
#	.hermes/shared-memory/decision-log.md
#	docs/【开发运维】本地开发验证与生产运维-2026-05-15.md
#	docs/【玩法创作】平台入口与玩法链路-2026-05-15.md
#	src/components/custom-world-home/CustomWorldCreationHub.tsx
#	src/components/platform-entry/PlatformEntryFlowShellImpl.test.ts
#	src/components/platform-entry/PlatformEntryFlowShellImpl.tsx
#	src/components/rpg-entry/RpgEntryHomeView.tsx
2026-06-11 22:50:32 +08:00
kdletters 9d1dd493a6 继续收口拼图运行态阻断层
新增拼图下一关阻断层薄壳并接入 PlatformEntryFlowShellImpl
补充 PlatformUiKit 收口文档与共享决策记录
2026-06-11 22:45:02 +08:00
kdletters b54cbafc54 新增本地服务器管理面板
新增 egui 服务器管理面板并支持 SSH alias 多服务器巡检

接入硬件状态、服务状态、HTTP 探测和生产巡检状态展示

增加受控 systemd 启动关闭重启操作和中文字体注入

补充本地服务器面板技术方案与团队共享记忆
2026-06-11 22:33:05 +08:00
kdletters ed2c386603 继续收口账号与运行态弹窗壳层
账号设置弹窗复用认证壳层并保留 direct mode 唯一 dialog 语义

拼图运行态新增本地弹窗壳层收口确认设置退出失败和通关结算

抓大鹅与跳一跳结算弹窗提取本地结算结构并补测试

拼图 onboarding 登录保存覆盖层迁入 UnifiedModal

更新 PlatformUiKit 收口文档和 Hermes 决策记录
2026-06-11 21:53:10 +08:00
kdletters c5763fdf25 重构作品分享链路
统一发布分享弹窗为作品分享卡片

支持下载分享卡与小程序九宫切图保存

小程序复制链接改为可直达作品详情的 web-view 路径

修复本地 dev Rust 构建绕过损坏 sccache

补充分享链路与 dev 启动文档和测试
2026-06-11 21:32:29 +08:00
kdletters 59facaf14b 继续收口认证入口弹窗壳层
新增 PlatformAuthModalShell 统一认证白底弹窗壳层

登录入口和邀请码弹窗复用共享认证壳层

补充认证壳层和 AuthGate 接入测试

同步 PlatformUiKit 文档和 Hermes 决策记录
2026-06-11 18:09:54 +08:00
kdletters 291ab06a5b 继续收口视觉小说素材选择弹窗
视觉小说素材选择弹窗复用 PlatformToolModalShell

保留上传、AI生成、历史素材读取和选择回调

补充测试断言共享白底工具弹窗壳层

同步 PlatformUiKit 文档和 Hermes 决策记录
2026-06-11 17:22:29 +08:00
kdletters 9b40f6b453 继续收口方洞图片槽弹窗壳层
方洞结果页图片槽弹窗复用 PlatformToolModalShell

保留上传、AI生成和历史素材选择业务语义

补充组件测试断言共享白底工具弹窗壳层

同步 PlatformUiKit 文档和 Hermes 决策记录
2026-06-11 17:08:22 +08:00
kdletters f7ca9d0672 新增 Pingora 独立网关试点
新增 pingora-gateway 独立二进制 crate,复刻当前 Nginx 核心路由口径

接入 Pingora 依赖、workspace 成员和锁文件

补充 Pingora 影子网关运维文档、环境变量示例和 Hermes 决策记录
2026-06-11 16:51:28 +08:00
kdletters a20d7b1655 继续收口RPG发布检查弹窗壳层
RPG结果页发布检查弹窗复用 PlatformToolModalShell

保留发布检查、封面预览和发布动作业务语义

补充组件测试断言共享白底工具弹窗壳层

同步 PlatformUiKit 文档和 Hermes 决策记录
2026-06-11 16:51:25 +08:00
kdletters ffcffef6d2 继续收口工具弹窗与分段切换预设
新增 PlatformToolModalShell 承接白底工具弹窗壳层和固定可访问名称

新增 PlatformSegmentedTabPresets 沉淀频道下划线、创作 pill rail 与二列 option segment

迁移拼图、抓大鹅、历史素材弹窗和首页 / 作品架 / 充值切换的重复组件写法

同步 PlatformUiKit 文档和 Hermes 决策记录
2026-06-11 16:32:56 +08:00
kdletters f8a80cd795 修复资产计费边界风险
资产生成预扣费改为 fail-closed,避免钱包异常时继续调用外部生成

新增钱包退款 outbox,退款失败时本地落盘并后台重放

拼图首图后台任务改用 SpacetimeDB claim 表实现跨实例互斥

计费 ledger id 统一绑定 request_id,并让前端重试复用 x-request-id

同步 SpacetimeDB bindings、后端架构文档和 Hermes 决策记录
2026-06-11 15:55:23 +08:00
kdletters 077b139e80 修复 SpacetimeDB 连接池请求取消后槽位泄漏导致池耗尽
- spacetime-client:PooledConnectionLease 增加 Drop 兜底,请求 future 被取消时也复位槽位并归还连接与 permit
- spacetime-client:槽位改为 AtomicBool 占用标记 + Mutex 连接存放,acquire 改为 CAS 抢占,删除可能永久空转的扫描循环
- spacetime-client:release_connection 与取消路径统一走租约 Drop 归还逻辑
- spacetime-client:新增 dropped_lease_releases_slot_and_permit 等单元测试复现并锁定该故障机制
- docs:新增 SpacetimeDB 连接池租约 Drop 兜底与取消安全文档记录根因、复现与验收
2026-06-11 13:52:20 +08:00