Commit Graph

51 Commits

Author SHA1 Message Date
kdletters 46baebbc10 清理过期测试与门禁
Project CI / Repository checks (push) Successful in 3m8s
Project CI / Frontend tests (push) Successful in 3m26s
Project CI / Backend tests (push) Successful in 3m58s
Project CI / Native shell tests (push) Successful in 15m16s
删除退役内容校验、视觉小说墓碑脚本和旧玩法门禁文档

移除死别名与退役分支触发并同步当前文档入口

为Gitea和Jenkins补齐可信SpacetimeDB schema比较基线

补充workflow、schema和生产运维防回归测试
2026-08-21 12:20:43 +08:00
k88936 8abeb333bb 统一画布快速编辑白名单与入口行为 (#140)
Project CI / Repository checks (push) Successful in 56s
Project CI / Frontend tests (push) Successful in 4m1s
Project CI / Backend tests (push) Successful in 4m26s
Project CI / Native shell tests (push) Successful in 15m12s
- 使用白名单控制快速编辑功能的显示

- 同步浮动工具栏、右键菜单、打开入口和提交门禁
- 禁用角色动作序列帧(整体)、音频和单个图标(explain: backend reject)的快速编辑

- 把快速编辑api改为只接受resource Id | asset Id,删除 image_src 参数, 以保证校验

其中包含生产数据迁移。迁移用于清理历史普通图片错误持久化的 assetKind="image",覆盖 asset → project-resource → showcase → canvas 四个作用域,并包含 operator 鉴权、分批 dry-run、批次 SHA-256 绑定 apply、active 结构化画
  > 布迁移摘要同步及最终零残留复核。

---------

Co-authored-by: kdletters <kdletters@qq.com>
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/140
Co-authored-by: 王德宇 <kvtodev@outlook.com>
Co-committed-by: 王德宇 <kvtodev@outlook.com>
2026-08-12 14:46:24 +08:00
kdletters 6b1dfc77d9 修复Jenkins跨任务产物复制权限
Project CI / Repository checks (push) Successful in 45s
Project CI / Frontend tests (push) Successful in 3m6s
Project CI / Backend tests (push) Successful in 3m31s
Project CI / Native shell tests (push) Has been cancelled
为Stdb、API、Web与数据库导出任务精确授权产物消费者
增加Copy Artifact Production模式权限静态门禁
补充跨任务产物复制排障与生效流程文档
2026-08-08 16:09:54 +08:00
k88936 a03f13d0a5 Fix/动作 前端展示下载+后端数据结构+精选 的问题 (#117)
Project CI / Repository checks (push) Successful in 1m28s
Project CI / Frontend tests (push) Successful in 3m19s
Project CI / Backend tests (push) Successful in 4m3s
Project CI / Native shell tests (push) Successful in 13m58s
原问题

```
历史角色动作是一个兼容例外:
后端允许它没有 editor_project_resource 资源行,只要布局自身保存了完整图片序列帧。
```

- 把生成动作的原视频asstetkind改为 video, 只把图片序列作为action
- db asset新增字段image_sequence_frames_json image_seq_duration_ms等, (原来动作的这些数据存在generation-input中,并不合适)
修改了externaljob,把这部分数据正确填写到数据库中。
- 为避免到处fallback,做了数据库迁移, 脚本: `scripts/spacetime-normalize-editor-character-actions.mjs`   手动进行过画布+素材库中动作序列帧+原始视频 迁移的测试

- 移除preview_video_path字段,  reason:
>preview video
    → separate resource/asset with assetKind="video"
  final transparent action
    → assetKind="character-animation"
    → source_resource_id points to the preview-video resource
    → image_sequence_frames_json contains the actual playable result
>
> So preview_video_path on the final action duplicates the source video resource’s image_src.
- 移除每个frame的index字段 原因: 这个只用于后端内部处理时有一个并发请求, 每个赋一个index方便收集, 后续没有再用到,且与数组本身重复

- 清除副产品preview video的generation_input_json,  因为会影响改造功能, 迁移后预览视频不提供改造(参数), 只有序列帧动作有改造

仍存在的共性问题: #134

- 导出:
下载改为完整序列帧, 封面不再作为fallback, 部分帧读取失败时行为:仍生成 ZIP,并记录失败帧, 不变

画布放置:
before:
![shotmd-1785207959-compressed.webp](/attachments/e56454f0-49a3-4a8a-951f-c21960975f99)
after:
![shotmd-1785231365-compressed.webp](/attachments/886f07df-c25b-4ecc-acc9-160e1795a991)
精选模块: 主页展示, 审核部分UI:
![shotmd-1785500046-compressed.webp](/attachments/9ec3b679-0045-494a-9f20-134f7e73fecf)
![shotmd-1785499780-compressed.webp](/attachments/42396e63-5f26-4853-a367-0f3c15111add)
这两处序列帧们的加载设计为惰式的, 只有hover和单独preview才会全部加载

Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/117
Reviewed-by: 段舒康 <kdletters@qq.com>
Co-authored-by: 王德宇 <kvtodev@outlook.com>
Co-committed-by: 王德宇 <kvtodev@outlook.com>
2026-08-06 16:57:38 +08:00
kdletters b49bf9c984 结构化图片画布持久化并补充历史资源修复
将旧布局上限统一提升至2MiB并接入revision CAS保存
新增画布图层、生成对话框和迁移状态结构化存储
新增migration operator保护的回填、激活和回滚脚本
新增历史图片映射及音频资源恢复的定向dry-run/apply流程
补齐前端保存队列、OpenAPI、Bindings、发布归档与回归测试
2026-07-20 20:45:15 +08:00
kdletters 387a1c26e3 完成全量检查整改
清理已跟踪原始日志与个人本地配置
修复前后端有效门禁、测试和构建问题
补齐生产 Jenkins、SpacetimeDB 本地命令与文档约束
收紧图片编辑器状态、附件与媒体引用测试
排除已下线旧创作入口测试并清理 warning
2026-07-17 16:56:46 +08:00
kdletters 271b153308 统一Rust格式化工具链与构建门禁
固定Rust 1.96.0与rustfmt格式配置

接入本地lint、Codex提交前检查和Jenkins构建门禁

提交server-rs全workspace一次性格式化基线

同步开发运维文档与production-ops防回退检查
2026-07-15 21:06:05 +08:00
kdletters c8dd6cbd33 统一 Jenkins 本机 Git 源
将生产流水线 Git checkout 地址统一为 127.0.0.1:2222
数据库导入导出改由 Built-In Node 准备并传递脚本
新增 Git 源与目标节点边界的生产运维门禁
同步生产运维文档和项目共享记忆
2026-07-14 22:03:32 +08:00
kdletters d756e8e04b 补齐Jenkins凭据与维护后台通道
固化三个Stdb流水线的Secret File凭据默认值
将04:00开发服定时发布默认切换为normal
显式关闭三个下游Build Job的自动发布
允许内网来源在维护模式下访问后台完整链路
保持公网后台与普通业务路由的维护阻断
补齐Nginx、Pingora回归门禁与运维文档
2026-07-11 17:40:37 +08:00
kdletters 324f99efdf 修复外部生成任务大载荷导致的内存膨胀
阻止图片编辑器将 Data URL 和超限 JSON 写入生成任务,复用 objectKey 等轻量引用
新增外部生成任务摘要投影与分批 payload 压缩回填流程,避免正式列表读取大字段
收紧 SpacetimeDB 发布为永不删数据并移除 Jenkins 普通清库入口,补齐维护窗口门禁
更新生成绑定、运维文档和回归测试,并完成生产数据副本迁移与压缩验证
2026-07-11 13:55:05 +08:00
kdletters 187d7735b9 修复编辑器定价持久化与资源预览
将模型定价改为 SpacetimeDB 强类型持久化并兼容旧配置种子迁移
修复快速编辑支付弹窗期间框选显示和交互冻结
补齐后台图片放大以及视频音频资源预览
收紧主站和 External 资源换签授权并记录管理员跨用户审计
固化外部生成入队价格、attempt 钱包结算和最终 lease 失败收口
加固运行时身份轮换、bootstrap secret 与生产构建发布门禁
同步生成绑定、定向测试、运维脚本和项目文档
2026-07-10 18:28:06 +08:00
kdletters 2be7eab8a7 改用 SSH 访问 Jenkins Git 源
将生产构建和导入导出流水线的主 Git 源改为内网 SSH 地址。

统一使用 genarrative-local-gitea-ssh 凭据完成 GitSCM checkout 和脚本加深 fetch。

移除常规流水线对 genarrative-station HTTP Git 源和 HTTP 凭据的默认依赖。

同步生产运维文档和项目共享记忆。
2026-06-19 21:48:54 +08:00
kdletters f233212ed6 修复 Jenkins 内部 Git checkout 鉴权
为生产构建和导入导出流水线的 GitSCM checkout 增加 Jenkins 凭据。

保留 genarrative-station HTTP 主源,并增加本地 Gitea SSH 凭据备用源。

让 jenkins-checkout-source.sh 可复用已鉴权的浅克隆结果。

同步生产运维文档和项目共享记忆。
2026-06-19 21:38:07 +08:00
kdletters 58290f9ffa 统一 Jenkins 流水线 Git 源
将生产构建与数据库流水线的源码 checkout 切到 genarrative-station。

移除旧公网 Git fallback,主地址失败时直接失败。

同步生产运维文档和项目记忆中的流水线 Git 源口径。
2026-06-19 21:14:55 +08:00
kdletters 585a5638db 收口发布流水线脚本归档
让 API、Web、Stdb 构建流水线归档对应部署脚本。

让部署发布流水线只复制上游构建产物,不再在目标机器 checkout Git。

同步运维文档和团队共享流程口径。
2026-06-09 17:57:26 +08:00
kdletters 4ed9711b76 优化 Stdb 模块构建缓存
将 production-stdb-module-build 的 Cargo 与 sccache 目录迁移到稳定缓存根。

补充生产运维文档,说明 GENARRATIVE_STDB_CACHE_ROOT 覆盖口径。
2026-06-09 17:40:11 +08:00
kdletters 6cd554473b chore: unify production pipelines on linux 2026-06-01 06:05:19 +00:00
kdletters 4c10c181e3 fix(jenkins): escape powershell variables in bat wrapper 2026-05-18 20:14:52 +08:00
kdletters 774b46b868 fix(jenkins): preserve powershell script encoding 2026-05-18 20:06:58 +08:00
kdletters ddc061bb6f fix(jenkins): reuse stdb scm checkout 2026-05-18 15:30:01 +08:00
kdletters 9cd685c3eb fix(jenkins): invoke windows powershell explicitly 2026-05-18 13:06:21 +08:00
kdletters c9a4176a41 fix(jenkins): bound production git fetch refspec 2026-05-15 02:41:09 +08:00
kdletters 49468441bc fix(jenkins): use git domain for scm remotes
CI / verify (push) Has been cancelled
2026-05-13 17:17:55 +08:00
kdletters e390b72a0c Guard optional Jenkins vars in database import and export
CI / verify (push) Has been cancelled
2026-05-08 23:26:14 +08:00
kdletters cf9fb5ac40 Add bootstrap secret flow to production Stdb builds
CI / verify (push) Has been cancelled
2026-05-08 22:58:09 +08:00
JenkenB abf1f1ebea 1 2026-05-08 11:44:42 +08:00
kdletters df80876f60 Consolidate workspace deps and migrate sha1 to sha2
CI / verify (push) Has been cancelled
2026-05-07 21:11:14 +08:00
kdletters ca394766d1 ci: align stdb archive build name
CI / verify (push) Has been cancelled
2026-05-06 16:33:43 +08:00
kdletters e9dfcda418 ci: fix git bash path literals
CI / verify (push) Has been cancelled
2026-05-06 16:05:31 +08:00
kdletters b27424105d ci: run stdb build with git bash
CI / verify (push) Has been cancelled
2026-05-06 16:02:05 +08:00
kdletters 7364d0f2d3 ci: fix stdb path normalization regex
CI / verify (push) Has been cancelled
2026-05-06 15:55:03 +08:00
kdletters b25b14a329 ci: use msys paths for stdb cargo env
CI / verify (push) Has been cancelled
2026-05-06 15:49:45 +08:00
kdletters 950a785213 ci: avoid cygpath in stdb windows bash
CI / verify (push) Has been cancelled
2026-05-06 15:38:31 +08:00
kdletters 95a2adbdc0 ci: remove stdb release build name parameter
CI / verify (push) Has been cancelled
2026-05-06 15:23:43 +08:00
kdletters ceea868478 ci: quote stdb bash build version
CI / verify (push) Has been cancelled
2026-05-06 15:19:19 +08:00
kdletters bc0ebe3c25 ci: pass stdb cargo env into bash
CI / verify (push) Has been cancelled
2026-05-06 15:16:14 +08:00
kdletters 3ccbe6fe77 ci: fix stdb production build env
CI / verify (push) Has been cancelled
2026-05-06 14:51:23 +08:00
kdletters d31a28178e ci: shallow clone production Jenkins checkouts
CI / verify (push) Has been cancelled
2026-05-06 14:23:48 +08:00
kdletters 96e1d7c4fb ci: split production build Jenkins nodes
CI / verify (push) Has been cancelled
2026-05-06 14:06:12 +08:00
kdletters 813dbf1fdd Persist notification recipients in Jenkins credentials 2026-05-02 22:47:55 +08:00
kdletters 39b1141287 Add production email notification pipeline 2026-05-02 22:35:36 +08:00
kdletters ace13c7047 Install production build toolchain in provision 2026-05-02 22:10:01 +08:00
kdletters 73d5ef40ed Isolate Jenkins cargo environment 2026-05-02 21:56:07 +08:00
kdletters e61b1a1586 Split production cargo caches by component 2026-05-02 21:18:59 +08:00
kdletters d48916157b Make production builds bootstrap agent dependencies 2026-05-02 20:42:47 +08:00
kdletters 64fda2a677 Handle empty commit hash in Jenkins checkout 2026-05-02 20:01:35 +08:00
kdletters 0c9e58b75a Enable Jenkins global timestamps for production pipelines 2026-05-02 19:43:17 +08:00
kdletters 06d6f7716e Use compatible timestamp wrapper in Jenkins pipelines 2026-05-02 19:34:11 +08:00
kdletters 23cb37c18a Revert "Remove unsupported Jenkins timestamp option"
This reverts commit ae33f10f17.
2026-05-02 19:29:58 +08:00
kdletters ae33f10f17 Remove unsupported Jenkins timestamp option 2026-05-02 19:28:07 +08:00