wonder
|
1b06652f17
|
fix: 显式返回exit 0,避免流水线中无法识别脚本已完成的情况
|
2026-05-25 13:01:12 +08:00 |
|
wonder
|
f61508a249
|
docs: 更新架构文档,文件存储切换为七牛云对象存储
- _index.md: 技术栈加入七牛云对象存储
- api.md: 新增素材下载接口,asset URL 改为 CDN URL
- backend.md: 分层结构新增 storage.go,FormatAdapter 职责增加上传
- database.md: 文件存储改为七牛云,配置表新增 GEN2D_QINIU_* 环境变量
|
2026-05-25 12:57:41 +08:00 |
|
wonder
|
30a46ff74b
|
feat: 七牛云存储服务与素材下载接口
- service/storage.go: StorageService 提供 Upload/GetDownloadURL/Delete
- handler/storage.go: GET /api/v1/assets/download 重定向到 CDN URL
- main.go: 注入 StorageService 并注册下载路由
|
2026-05-25 12:57:13 +08:00 |
|
wonder
|
d0937c2c35
|
feat: 添加七牛云 SDK 依赖与 QiniuConfig 配置
- go.mod 新增 github.com/qiniu/go-sdk/v7 v7.26.12
- config.go 新增 QiniuConfig 结构体,绑定 GEN2D_QINIU_* 环境变量
- .env.example 补充七牛云环境变量模板
|
2026-05-25 12:56:58 +08:00 |
|
Gmarker689
|
322e6aecbb
|
feat(generate): 生成管线改为异步,前端接入轮询进度
后端:
- POST /api/v1/generate 改为异步模式,立即返回 taskId
- 管线在后台 goroutine 执行,状态通过 GET /tasks/:taskId 轮询
- 任务状态流转: pending → running → saving → completed/failed
前端:
- generation store: submit 后每 2s 轮询 getTask,完成时自动 getAssets
- GeneratePage: 实时显示轮询状态文本 + 进度条
- ResultPage: 挂载时轮询任务,未完成显示骨架屏+进度,完成自动加载素材
- Types: Task.status 增加 submitted / saving 状态
|
2026-05-25 12:51:49 +08:00 |
|
Gmarker689
|
c4dc7394b1
|
refactor(inference): 统合 image_gen 为 GPT Image 2 异步 API,删除冗余配置
- 删除 gptimage.go,异步逻辑直接内聚到 inference.go
- ImageGenConfig 改为 GPT Image 2 参数:aspect_ratio / x_channel / poll_max_wait / poll_interval
- GenerateImages 流程:submit → poll → download,支持并行多图(spritesheet)
- 移除旧的 OpenAI 兼容同步 API 代码(callImageGenAPI / parseImageResponse 等)
- 统一 env:GEN2D_IMAGE_* 系列,移除 GEN2D_GPT_IMAGE2_* 冗余
|
2026-05-25 12:44:39 +08:00 |
|
Gmarker689
|
d9d3b51262
|
feat(inference): 集成 GPT Image 2 异步文生图 API
- 新增 GptImage2Config 配置(yuntts 等 GPT Image 2 兼容服务)
- 新增 gptimage.go 异步客户端:提交任务 → 轮询状态 → 下载图片
- GenerateImages 优先级调整为:GPT Image 2 > OpenAI 兼容 ImageGen > Mock
- 支持环境变量 GEN2D_GPT_IMAGE2_* 系列配置
|
2026-05-25 12:36:37 +08:00 |
|
Gmarker689
|
74c1725473
|
feat(generate): 图片持久化到本地 generation/ 目录,前端对接真实 API
后端:
- POST /api/v1/generate 接收 projectId,生成 taskId,将图片保存至 generation/{projectId}/{taskId}/
- 新增 GET /api/v1/tasks/:taskId 和 GET /api/v1/tasks/:taskId/assets 查询端点
- 添加 /generation 静态文件服务,前端可通过 URL 直接访问生成的图片
- PipelineInput 增加 ProjectID/TaskID 字段
前端:
- generate.ts 对接真实后端 API,移除 mock 模式
- 401 时不再强制登出跳转,改为抛错由调用方处理
- GeneratePage 加载工程风格,传递 projectId 和完整参数
- generation store 简化为同步 API 模式,移除 WebSocket mock
- ResultPage 使用 getTask/getAssets 按 taskId 查询结果
|
2026-05-25 12:27:07 +08:00 |
|
wonder
|
8d24905a22
|
!31 !30 !29 docs: 提示词优化链路图改为上下排布
Merge pull request !31 from 何朝晖/master
|
2026-05-25 03:45:59 +00:00 |
|
wonder
|
02331f654d
|
!30 !29 docs: 提示词优化链路图改为上下排布
Merge pull request !30 from 何朝晖/develop
|
2026-05-25 03:45:04 +00:00 |
|
wonder
|
a80d1b90e9
|
!29 docs: 提示词优化链路图改为上下排布
Merge pull request !29 from 何朝晖/doc/mermaid-fix
|
2026-05-25 03:41:33 +00:00 |
|
wonder
|
af9d19d22f
|
docs: 提示词优化链路图改为上下排布
|
2026-05-25 11:39:21 +08:00 |
|
wonder
|
d66ac373dd
|
fix: 修正重复的deploy流水线
|
2026-05-25 11:34:47 +08:00 |
|
wonder
|
e4ded604ae
|
!28 !27 docs: README 架构图从 ASCII 替换为 Mermaid
Merge pull request !28 from 何朝晖/develop
|
2026-05-25 03:27:20 +00:00 |
|
wonder
|
d873a777fd
|
!27 docs: README 架构图从 ASCII 替换为 Mermaid
Merge pull request !27 from 何朝晖/doc/README
|
2026-05-25 03:26:33 +00:00 |
|
wonder
|
d0ad68c309
|
CI/CD: 更新部署流水线,仅应用到master分支
|
2026-05-25 03:23:17 +00:00 |
|
wonder
|
97d9c7974c
|
docs: README 架构图从 ASCII 替换为 Mermaid
|
2026-05-25 11:19:47 +08:00 |
|
wonder
|
6932b20152
|
docs: 全面优化 README.md
基于仓库代码与 docs/ 文档综合重写 README:
- 新增特性概览、技术栈表格、架构管线图、风格系统、部署说明
- 补充 Eino / License 徽章,修正版本号
- 配置表默认值与 config.yml 实际值对齐(DeepSeek)
- 项目结构树反映实际目录与关键文件
- API 部分区分已实现与规划中,补充 WebSocket 说明
|
2026-05-25 11:18:23 +08:00 |
|
wonder
|
6254433728
|
CI/CD: 流水线部署自动化
v0.1
|
2026-05-25 02:35:55 +00:00 |
|
Gmarker689
|
6bda5a1f35
|
fix(inference): 修正文生图 API 调用参数,支持动态分辨率
- 去掉 response_format 参数(API 默认返回 URL,自动下载)
- Resolution 参数覆盖 API 调用尺寸(不再仅 mock 路径生效)
- parseImageResponse 改为动态 width/height 入参
- 新增 tools/gentest.go 生成测试脚本
- .gitignore 忽略 test_output/
|
2026-05-25 00:21:16 +08:00 |
|
Gmarker689
|
0a9a923d55
|
feat(inference): 实现文生图与图片编辑 API 调用,新增管线与编辑 HTTP 端点,JWT 认证中间件
- inference.go: GenerateImages 改为 API 优先(callImageGenAPI),无 key 回退 mock;新增 EditImages/callImageEditAPI(multipart 上传编辑);提取 parseImageResponse 共享响应解析
- handler/generate.go: POST /api/v1/generate 触发生成管线,返回 base64 图片
- handler/edit.go: POST /api/v1/images/edit 图片编辑端点
- mildware/auth.go: JWT Bearer token 认证中间件
- main.go: 路由拆分公开/认证组,generate 与 images/edit 需鉴权
|
2026-05-24 22:47:43 +08:00 |
|
wonder
|
0afaf2acbd
|
!26 !25 feat(deploy): 支持通过 .env 文件注入后端环境变量
Merge pull request !26 from 何朝晖/develop
|
2026-05-24 13:41:01 +00:00 |
|
wonder
|
ffed0c1e8c
|
!25 feat(deploy): 支持通过 .env 文件注入后端环境变量
Merge pull request !25 from 何朝晖/hotfix/deploy
|
2026-05-24 13:40:38 +00:00 |
|
wonder
|
2c5f83f64e
|
feat(deploy): 支持通过 .env 文件注入后端环境变量
- docker-compose.yml 添加 env_file 加载 backend/.env
- deploy.sh 自动检测并从 .env.example 复制模板
- .dockerignore 排除 .env 防止密钥泄露到镜像
|
2026-05-24 21:39:49 +08:00 |
|
GYhde
|
5e54591b1f
|
!24 !23 docs(api): 同步 api.md 与后端实际行为
Merge pull request !24 from 何朝晖/develop
|
2026-05-24 13:30:14 +00:00 |
|
GYhde
|
fa93d18e61
|
!23 docs(api): 同步 api.md 与后端实际行为
Merge pull request !23 from 何朝晖/feat/frontend
|
2026-05-24 13:29:12 +00:00 |
|
wonder
|
bc9c511ac3
|
docs(api): 同步 api.md 与后端实际行为
修正认证方式为 Bearer Token(非 Set-Cookie),修正端点路径
为 /auth/*,修正注册字段约束(email 可选、password 6-64、
username 3-32),补充登录响应完整字段。
|
2026-05-24 21:27:26 +08:00 |
|
wonder
|
e880a80c51
|
feat(ux): Toast 通知系统,替换内联错误/成功提示
新增 toast store 和 Toast 组件,风格保存成功/失败显示 toast,
素材生成失败显示 toast,Layout 中全局渲染。
|
2026-05-24 21:26:19 +08:00 |
|
wonder
|
aaf846a60d
|
feat(ux): 空状态组件,替换各页面空白提示
新增 EmptyState 组件,ProjectPage 暂无任务时显示带操作按钮的
友好提示,AssetPreview 暂无素材时显示引导文案。
|
2026-05-24 21:23:02 +08:00 |
|
wonder
|
f063ec564e
|
feat(ux): 骨架屏加载组件与页面入场动画
新增 Skeleton 组件支持 text/card/table 三种变体,替换各页面
"加载中..." 文本为骨架屏,所有页面添加 fadeIn 入场动画。
|
2026-05-24 21:21:52 +08:00 |
|
wonder
|
60c752fad9
|
feat(ux): 素材类型选择器改为图标卡片布局
每个素材类型使用内联 SVG 图标 + 文字垂直排列的卡片式选择器,
选中态高亮边框与背景色。
|
2026-05-24 21:19:44 +08:00 |
|
wonder
|
a7decf86ec
|
feat(ux): 交互元素悬浮/聚焦/按压状态增强
表格行悬浮高亮、StyleSelector 药丸按钮键盘焦点环。
|
2026-05-24 21:17:40 +08:00 |
|
wonder
|
c177cbaf82
|
feat(prompt): AI 提示词优化双栏交互
新增 prompt API 模块调用后端 /api/v1/prompt/optimize,PromptEditor
重构为左右双栏布局支持原始/优化提示词对比编辑,默认开启 AI 优化,
用户可关闭开关或手动编辑优化结果后再提交生成。
|
2026-05-24 21:16:15 +08:00 |
|
wonder
|
eac64105de
|
feat(layout): 认证页面统一导航栏,含主题切换与退出按钮
新增 Layout 组件作为认证路由的公共布局,提供 sticky 导航栏,
移除各页面重复的顶栏代码。
|
2026-05-24 21:12:23 +08:00 |
|
wonder
|
323472ab2b
|
feat(theme): App 初始化时设置 data-theme 属性,首次渲染即为主题
|
2026-05-24 21:09:23 +08:00 |
|
wonder
|
dab9bc9750
|
feat(theme): Zustand 主题 store,localStorage 持久化,默认浅色
|
2026-05-24 21:08:02 +08:00 |
|
wonder
|
6928d9250d
|
feat(theme): CSS 变量重构为暗色/浅色双主题
将 :root 硬编码的深色变量拆分为 [data-theme="light"] 和 [data-theme="dark"]
两套主题块,新增导航栏、骨架屏、Toast 等预留变量,添加页面入场动画。
|
2026-05-24 21:07:29 +08:00 |
|
wonder
|
9e3bb1241e
|
!22 docs: 更新 README 与 API 文档,描述提示词优化链路
Merge pull request !22 from GYhde/feat/promptagent
|
2026-05-24 12:48:32 +00:00 |
|
Gmarker689
|
36a6465f26
|
docs: 更新 README 与 API 文档,描述提示词优化链路
- README 新增提示词优化链路章节(流程图 + 特性 + API 说明)
- docs/api.md 新增提示词优化接口文档与调用链路
- 更新架构描述:PromptBuilder → PromptOptimizer
|
2026-05-24 20:45:24 +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 |
|
Gmarker689
|
788cd021ef
|
feat(prompt-agent): 新增 PromptAgent Eino Chain 调用 LLM 优化提示词
- Eino Chain: formatMetaPrompt → llmRefine → 三段式输出
- callLLMRefine 调用 OpenAI 兼容 Chat Completions API
- 支持 SSE 流式与非流式响应解析
- 无 API key 或调用失败时自动回退模板生成
- 新增完整的单元测试与集成测试(含 mock HTTP server)
|
2026-05-24 20:45:09 +08:00 |
|
Gmarker689
|
ef5ddcfbb5
|
feat(config): 重构配置层为 Viper + YAML + .env 三级加载
- config 改用 Viper 读取 YAML + 绑定环境变量 + godotenv 加载 .env
- 新增 LLM / ImageGen / JWT / Database / Server 分组配置结构
- 新增 backend/.env.example 环境变量模板
- .gitignore 添加 backend/.env 和 backend/main
|
2026-05-24 20:44:53 +08:00 |
|
wonder
|
5f35600190
|
!21 !20 fix(deploy): 修复后端容器 SQLite 数据目录不存在导致 502
Merge pull request !21 from 何朝晖/develop
|
2026-05-24 06:49:22 +00:00 |
|
wonder
|
87258cb3a8
|
!20 fix(deploy): 修复后端容器 SQLite 数据目录不存在导致 502
Merge pull request !20 from 何朝晖/hotfix/deploy
|
2026-05-24 06:48:14 +00:00 |
|
wonder
|
d92ba33846
|
fix(deploy): 修复后端容器 SQLite 数据目录不存在导致 502
运行时阶段缺少 /data 目录,SQLite 初始化失败后端崩溃,nginx 返回 502。
- Dockerfile 添加 mkdir -p /data 和 WORKDIR
- docker-compose 添加 backend-data 卷挂载,确保持久化
|
2026-05-24 14:46:48 +08:00 |
|
wonder
|
812230f850
|
!19 !18 fix(deploy): 修复 Docker 部署两个问题
Merge pull request !19 from 何朝晖/develop
|
2026-05-24 06:37:09 +00:00 |
|
wonder
|
f0bb2b71fa
|
!18 fix(deploy): 修复 Docker 部署两个问题
Merge pull request !18 from 何朝晖/hotfix/deploy
|
2026-05-24 06:36:32 +00:00 |
|
wonder
|
6a88ec0d46
|
fix(deploy): 修复 Docker 部署两个问题
1. 后端 Dockerfile 开启 CGO(go-sqlite3 依赖),安装 gcc/musl-dev
2. nginx 添加 /auth/ 反向代理,修复注册登录 405 错误
|
2026-05-24 14:33:45 +08:00 |
|
wonder
|
7686047a7f
|
!17 !15 feat(auth+db): 实现注册登录核心逻辑,以及自动建表,用户信息落库
Merge pull request !17 from 何朝晖/develop
|
2026-05-24 06:23:11 +00:00 |
|
GYhde
|
e373f39667
|
!16 chore: 更新 .gitignore,忽略前后端构建产物
Merge pull request !16 from 何朝晖/feat/frontend-mvp
|
2026-05-24 06:22:37 +00:00 |
|