Commit Graph

6 Commits

Author SHA1 Message Date
Gmarker689 96ac56cb4e fix: 修复管线context取消、添加FIFO任务队列、移除重复提示词优化
三个修复:
1. runPipelineBg 改用 context.Background(),避免 HTTP 响应返回后
   Gin 取消 request context 导致后台管线静默失败
2. 新增 TaskQueue FIFO 串行队列,任务提交后进入 pending 状态排队,
   按提交顺序逐个执行,前端轮询显示排队中
3. promptOptimizerNode 移除 RunPromptAgent 调用,提示词优化仅由
   前端在提交前通过 /api/v1/prompt/optimize 执行一次,管线内只做
   风格合并和技术参数追加
2026-05-25 19:10:46 +08:00
Gmarker689 d5e2d7fa53 feat: FormatAdapter 接入 splitsprite+gifmaker 管线
- FormatAdapter: 精灵表模式(单图)自动调用 splitsprite.Process 拆分帧
- 拆分后每帧编码为独立 PNG Asset,Metadata 包含 GIFPreview 字节
- 多图/非精灵表模式保持原样透传
- AssetParams 新增 GridRows/GridCols 覆盖投影检测
- AssetMetadata 新增 GIFPreview 字段
2026-05-25 18:01:51 +08:00
Gmarker689 5d5fe60426 feat: 管线四阶段进度上报 + 图片预览 + Vite 代理
后端:
- pipeline.go: ProgressReporter 回调类型 + WithProgressReporter 注入 context
- nodes.go: 各节点 pre/post handler 调用 reportProgress() 上报阶段进度
- generate.go: TaskResponse 新增 stage 字段,runPipelineBg 注入进度回调

前端:
- vite.config.ts: 添加 /generation 代理到后端静态文件服务
- generation.ts: 轮询读取 stage 字段,暴露 stage/retryCount/rejectReason
- GeneratePage.tsx: ProgressBar 接收真实管线阶段数据
2026-05-25 14:26:26 +08:00
Gmarker689 ecb74a2aed feat: 异步生成管线 + 前端轮询 + 图片编辑 + JWT 中间件
后端:
- 异步生成: POST /api/v1/generate 立即返回 taskId,后台执行管线
- 任务轮询: GET /api/v1/tasks/:id + GET /api/v1/tasks/:id/assets
- 图片保存: 生成图片写入 ../generation/{projectId}/{taskId}/,静态服务
- 图片编辑: POST /api/v1/images/edit (multipart/form-data)
- JWT 中间件: mildware/auth.go 保护生成/编辑端点
- config.yml 清空敏感默认值,交由 .env 控制
- ImageGenConfig 新增 Quality 字段

前端:
- api/generate.ts: 对接真实 API (submitGenerate + poll getTask/getAssets)
- api/types.ts: 新增 GenerateResponse, AssetsResponse, Task 类型
- stores/generation.ts: 异步提交→轮询进度→获取素材→完成
- stores/task.ts: 默认分辨率 256→1024
- GenerateForm: 分辨率范围 1024-1536
- GeneratePage: 显示状态文本,完成后可查看结果/继续生成
- ResultPage: 从 store 读取,下载功能实现
2026-05-25 14:08:08 +08:00
Gmarker689 9ca1e65221 feat(pipeline): PromptOptimizer 集成到生成管线,新增优化 API
- PipelineInput 新增 Tags/UserNote 字段
- 管线重构为: START → PromptOptimizer → AssetGenerator → QualitySupervisor → FormatAdapter
- promptOptimizerNode: 有标签调用 PromptAgent,无标签补技术参数,合并风格与重试信息
- PromptBuilder 移除,提示词构建逻辑并入 PromptOptimizer
- 新增 POST /api/v1/prompt/optimize 接口
- main.go 注入 LLM/ImageGen 配置,注册 prompt 路由
- inference.go 新增 InitImageGenConfig 注入
2026-05-24 20:45:18 +08:00
wonder 9be4b16bdc feat: 引入 Eino 框架,实现四阶段生成管线
基于 compose.Graph 编排 PromptBuilder → AssetGenerator → QualitySupervisor → FormatAdapter,
含质检重试分支(最多 3 次)和降级输出。推理层提供 mock 模式,可替换为真实 API。
2026-05-24 13:21:11 +08:00