kdletters
071faa482c
统一 Rust 与 TypeScript 格式化门禁
...
纳入 AGC Cargo workspace 的统一 rustfmt 检查与格式化入口
完成项目 TypeScript/Prettier 与 Rust 全量格式化
修复 Pingora expected executable 门禁的空白敏感误报
同步开发运维文档与 AGC skill pack 格式化忽略规则
2026-09-01 16:28:34 +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:

after:

精选模块: 主页展示, 审核部分UI:


这两处序列帧们的加载设计为惰式的, 只有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
k88936
6ee33dc561
fix: 首页「最近项目」缩略图与退出前视角不一致,出现偏移或裁切 ( #111 )
...
Project CI / Repository checks (push) Successful in 1m4s
Project CI / Frontend tests (push) Successful in 2m9s
Project CI / Native shell tests (push) Successful in 2m38s
Project CI / Backend tests (push) Successful in 3m23s
- 封面使用真实画布尺寸及最终 viewport.x/y/scale。
- 320×240 封面改为居中 cover 裁切,不再从左上角取景。
- 正确绘制画布背景色。
in canva:


in home:


因为原本的布局持久化可能有一些bug,改动不相关,所以我回退到最开始的一版:
- 不额外监听画布尺寸变化,给最小尺寸兜底,(大了比小了好)
- 封面不要求强一致性,生成/上传时机仍然按照原来随布局持久化
优化了封面生成:
- 改用webp格式
- 尽量利用图片缓存
最终生成封面从700ms加速到150ms以内, 加上必须的上传和确认150ms 和 布局持久化的时间相差不多,不是特别离谱的手速都能保证两者一致
---------
Co-authored-by: kdletters <kdletters@qq.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/111
Co-authored-by: 王德宇 <kvtodev@outlook.com >
Co-committed-by: 王德宇 <kvtodev@outlook.com >
2026-07-29 16:09:30 +08:00
lhk229
a2ee879fc8
添加gfilter专用worker ( #103 )
...
Project CI / Repository checks (push) Successful in 1m3s
Project CI / Frontend tests (push) Successful in 2m0s
Project CI / Native shell tests (push) Successful in 2m26s
Project CI / Backend tests (push) Successful in 3m1s
Co-authored-by: kdletters <kdletters@qq.com >
Reviewed-on: https://git.genarrative.world/git/GenarrativeAI/Genarrative/pulls/103
Co-authored-by: Linghong <ink29535@proton.me >
Co-committed-by: Linghong <ink29535@proton.me >
2026-07-23 18:06:29 +08:00
kdletters
387a1c26e3
完成全量检查整改
...
清理已跟踪原始日志与个人本地配置
修复前后端有效门禁、测试和构建问题
补齐生产 Jenkins、SpacetimeDB 本地命令与文档约束
收紧图片编辑器状态、附件与媒体引用测试
排除已下线旧创作入口测试并清理 warning
2026-07-17 16:56:46 +08:00
kdletters
f5ede50ba9
瘦身画板媒体保存链路
...
改造画板项目保存响应为轻量 ack
统一生成上传媒体以 objectKey 持久化
补齐素材库缩略图换签与本地轻量缓存
刷新生成后泥点余额并补充回归测试
2026-06-23 17:21:55 +08:00
kdletters
4821fb90df
Merge branch 'codex/editor-asset-metadata-migration' into codex/editor-asset-library
...
# Conflicts:
# docs/project-memory/shared-memory/decision-log.md
# server-rs/crates/api-server/src/editor_project.rs
# src/components/image-editor/ImageCanvasEditorModel.ts
# src/components/image-editor/ImageCanvasEditorView.test-utils.ts
# src/components/image-editor/ImageCanvasEditorView.tsx
# src/components/image-editor/useImageCanvasGenerationSubmissionWorkflow.ts
# src/services/image-editor/editorProjectClient.test.ts
2026-06-19 16:55:41 +08:00
kdletters
870d723eaf
修复画板音视频素材保存
...
生成视频持久化到 OSS 并回传 objectKey 与 assetObjectId
生成音频透传 OSS 对象身份并支持保存到素材库
普通素材上传支持 MP3 和 MP4 直传 OSS 后确认资产对象
素材库和画布恢复音频视频媒体类型与图层播放
更新画板音视频素材保存相关文档与测试
2026-06-19 15:11:42 +08:00
kdletters
76445da9b4
迁移画布素材生成元数据
...
扩展 editor_project_resource 和 editor_asset 保存素材类别与生成输入快照
调整前端资源与素材读写链路并停止把素材元数据写入新 layout
在服务端保存 layout 时回填并清洗旧图层元数据
更新图片画布契约文档、共享决策和相关测试期望
2026-06-19 15:11:32 +08:00
JenkenB
097170836d
Add UI-design asset extraction & spritesheet support
...
Introduce a new UI design asset extraction flow: add POST /api/editor/ui-designs/assets/extractions handler that always uses gpt-image-2 with the fixed prompt "提取画面中的所有独立并整理成spritesheet"; parse Data URL references, call OpenAI image edits, return a spritesheet and sliced icon assets. Increase request body limit for image Data URLs and wire the route with bearer auth. Add platform-image slicing: slice_generated_icon_spritesheet_all_by_connected_components (with auto-naming "素材 1..N", foreground estimation and heuristics) and export it. Add Rust tests for the handler, prompt constant, and slicing behavior. Update frontend client and integration tests to call the new extractEditorUiDesignAssets API and verify spritesheet + icon layers are added to the canvas and persisted. Update multiple docs to describe the extraction UI, toolbar placement, and related audio/playback pitfalls. Minor related updates: toolbar button ordering and audio duration / signed read-url notes.
2026-06-19 10:09:19 +08:00
kdletters
f6e272e612
拆分编辑器素材集成测试
...
新增编辑器测试共享工具
迁出素材库和上传集成用例
保留主编辑器集成测试关键链路
更新 TRACKING.md 记录第三十九阶段验证
2026-06-17 18:45:48 +08:00