Commit Graph

62 Commits

Author SHA1 Message Date
kdletters e3258f6f1d 完善 Pingora 直连切换门禁
新增 Pingora shadow env 回切脚本与对应检查。

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

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

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

更新生产发布与运维护栏对 Pingora 发布包的校验。
2026-06-18 21:10:45 +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 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 68bf3b698a 补齐 API 发布 checksum 入包
部署脚本将 api-server 与 Pingora checksum 一起复制到 current release

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

同步 Pingora 正式发布链路文档和共享排障记忆
2026-06-17 22:09:03 +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 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 2251fa2f8e 补齐外部生成服务OpenSSL路径
为worker与controller systemd单元补齐LD_LIBRARY_PATH

避免服务器动态链接OpenSSL失败
2026-06-12 15:24:11 +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 f7ca9d0672 新增 Pingora 独立网关试点
新增 pingora-gateway 独立二进制 crate,复刻当前 Nginx 核心路由口径

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

补充 Pingora 影子网关运维文档、环境变量示例和 Hermes 决策记录
2026-06-11 16:51:28 +08:00
kdletters 31ad55b0cf 合并 master 并保留外部生成 worker 模式
合入 master 的生产健康巡检、JumpHop 和 SpacetimeDB 更新
保留外部生成 worker、队列/内联模式与 lease guard 口径
合并 Server-Provision 工具复用、health patrol 和外部生成 worker systemd 配置
补齐 SpacetimeDB 生成绑定并通过本地检查
2026-06-10 21:26:53 +08:00
kdletters 9db467d23f 补充 release SpacetimeDB 健康检查与巡检防回退
增加 SpacetimeDB 阶段化健康检查与 /readyz 阶段输出
记录 procedure/reducer/read 失败的阶段和耗时
补充 release 健康巡检 systemd timer 与生产 ops 预检
同步 API 构建部署、provision 脚本和运维文档
2026-06-10 11:35:39 +08:00
kdletters 4f86c1a75b 合并 master 并保留外部生成 worker 模式
合入 master 的拼消消、微信能力、OpenSSL 3.2 和 SpacetimeDB 2.4.1 更新
保留外部内容生成 queue/inline、worker lease 与动态扩缩容口径
补齐拼图后台图片生成队列轮询和运行态返回恢复
同步容器、生产运维和 Hermes 共享记忆中的 worker 文档
2026-06-09 16:55:32 +08:00
kdletters 568509027c 修复冷备份后 API 恢复
备份脚本支持冷备份后重启依赖服务

生产备份与发布脚本恢复 genarrative-api 服务

api-server 启动恢复 SpacetimeDB 超时后持续重试

同步更新后端与运维文档口径
2026-06-09 12:35:38 +08:00
kdletters ff2ed5a59d 升级 SpacetimeDB 到 2.4.1
更新 server-rs SpacetimeDB crate 锁定版本与 Cargo.lock。

刷新 spacetime-client 生成绑定到 2.4.1。

同步 dev 脚本、容器、Jenkins 和运维文档中的 STDB 版本。

补充 dev 脚本版本校验测试,兼容 Cargo 精确版本要求。
2026-06-08 00:47:24 +08:00
kdletters 4bb6d0bd1e feat: add inline external generation mode 2026-06-07 00:56:53 +08:00
kdletters 5a6d69bebe fix: provision OpenSSL 3.2 runtime 2026-06-05 19:45:23 +08:00
kdletters 853d1db618 fix: make container worker validation reproducible 2026-06-05 19:01:25 +08:00
kdletters 8d54ea3374 feat: workerize external generation 2026-06-05 17:29:08 +08:00
kdletters e5592304a5 feat: add graceful api shutdown readiness 2026-06-05 11:44:27 +08:00
kdletters dd2f301771 merge origin/master into codex/wechat-mini-program-virtual-payment 2026-05-31 23:00:43 +08:00
kdletters 3db956ec81 feat: add wechat mini program virtual payment 2026-05-31 22:44:22 +08:00
kdletters 40ef89aeb5 chore: upgrade spacetimedb and stabilize dev startup 2026-05-29 21:02:54 +00:00
kdletters 232114495f Merge branch 'master' into codex/auth-spacetime-fail-closed 2026-05-27 21:03:16 +08:00
kdletters 418fcb0548 Fail closed when SpacetimeDB auth restore is unavailable 2026-05-27 20:58:37 +08:00
kdletters 5a8a856265 feat: automate database OSS backups 2026-05-27 19:33:05 +08:00
kdletters cc23b6020d feat(api-server): audit external api failures 2026-05-21 16:34:56 +08:00
kdletters c9b3468b29 Merge branch 'codex/container-simulate'
# Conflicts:
#	.hermes/shared-memory/decision-log.md
#	server-rs/crates/api-server/src/puzzle.rs
#	server-rs/crates/spacetime-client/src/mapper.rs
2026-05-19 10:07:45 +08:00
kdletters f557bc3f06 feat: add grafana cloud collector switch for container loadtest 2026-05-19 08:45:59 +08:00
kdletters f6292c3ad5 feat(api-server): default otlp and async tracking outbox 2026-05-19 07:33:44 +08:00
kdletters a0979138b1 feat: install brotli modules in server provision 2026-05-19 07:05:58 +08:00
kdletters fa43410c8c perf(deploy): tune gallery load shedding for release 2026-05-19 05:03:23 +08:00
kdletters 05a0f34722 perf(api-server): batch route tracking through local outbox 2026-05-19 01:47:13 +08:00
kdletters 8038b6a6ee perf(api-server): tune gallery load shedding 2026-05-19 01:00:33 +08:00
kdletters 3eb292b403 feat(deploy): prepare offline provision tools and container loadtest 2026-05-18 16:58:48 +08:00
kdletters 4f6c97ae92 Merge branch 'codex/cache-view-procedure-hotpaths' 2026-05-17 21:18:07 +08:00
kdletters 5a4a8a4892 feat(api-server): add container loadtest observability 2026-05-17 20:52:15 +08:00
kdletters 7b74d129a5 Merge remote-tracking branch 'origin/codex/send-sms' 2026-05-17 05:04:59 +08:00
kdletters 02271e6c73 feat(api-server): add request backpressure controls 2026-05-17 04:56:45 +08:00
kdletters 0305b79440 chore: add loadtest observability setup 2026-05-16 22:44:30 +08:00
kdletters c3ad28577c fix(auth): send sms verify codes via aliyun 2026-05-16 22:33:29 +08:00
JenkenB 74fd9a33ac Increase VectorEngine timeouts and add image UI
Add VectorEngine image generation config and raise request timeouts (env + scripts) from 180000 to 1000000ms. Introduce a reusable CreativeImageInputPanel component with tests and wire up mobile keyboard-focus helpers; update generation views and related tests (CustomWorldGenerationView, BarkBattle editor, Match3D, Puzzle flows). Improve API error handling / VectorEngine request guidance (packages/shared http.ts and docs), and apply multiple backend/frontend fixes for puzzle/match3d/prompt handling. Also include extensive docs and decision-log updates describing UI/UX decisions and verification steps.
2026-05-15 02:40:59 +08:00
JenkenB 548db78ca7 Update Match3D/image-generation docs & code
Adds/updates documentation, assets and implementation for Match3D and puzzle image generation workflows. Key changes: decision logs and pitfalls updated to prefer VectorEngine Gemini for Match3D material sheets and to require edits (multipart) for 1:1 container reference images; guidance added for when to use APIMart vs VectorEngine. .env.example clarified APIMart/Responses config. Many new public assets and PPT visuals added. Code changes across frontend and backend: updated shared contracts, server-rs match3d/puzzle/image-generation handlers, VectorEngine/OpenAI image generation clients, and multiple React components/tests to handle UI/background/container image signing, edits workflow, and puzzle UI background resolution. Added src/services/puzzle-runtime/puzzleUiBackgroundSource.ts and related test updates. Includes notes about multipart HTTP/1.1 requirement and test/verification commands in docs.
2026-05-14 20:34:45 +08:00
JenkenB 2dc9d752e4 1 2026-05-14 13:40:50 +08:00