- model_configs 加 deleted_at(gorm 软删),List/Get 自动过滤, GetAny/Unscoped 用于复活与孤儿清理路径 - 渠道同步/删渠道/管理端删除模型的孤儿清理全部走软删 - 导入时若命中软删行:UpdateAny + deleted_at=NULL 复活, generation_count 与原定价保留(vivid a42f32c 同语义) - provider 时代残留仍物理删除(DeleteHard),不留软删垃圾 - OrphanModelIDs 跳过已软删行,避免重复清扫 - btn-primary 禁用态改浅灰填充(vivid d636105) 核对过已等价的:vivid 僵尸任务兜底(我们的 ResumeStaleJob+ PurgeStale+MarkRefunded 同语义)、产物 MIME 魔数嗅探、 retention 按创建时间、渠道同步弹窗(开关+别名)均已覆盖。 Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
image2api frontend
Vue 3 + Vite frontend for image2api: user-facing generation UI (playground,
gallery, docs, billing) plus the admin console (channels, models, users,
orders, logs, config).
Develop
npm install
npm run dev # http://localhost:5173
The dev server proxies /admin, /health, /images, /v1 to the backend.
Start the Go backend separately (see backend/README.md).
# from ../backend
go build -o bin/api ./cmd/api && ./bin/api # http://127.0.0.1:6666