chiyi
90a34276ef
fix(canvas): 单画质档位时误显示'没有可用模型'警告
2026-10-12 14:13:06 +08:00
chiyi
cbdde40172
feat(canvas): 输入框支持画质/张数选择,多张并发生成
2026-10-12 14:09:42 +08:00
chiyi
2137f9565b
feat(canvas): 生成面板改为底部居中大输入框,参考图改为上传式
2026-10-12 14:06:04 +08:00
chiyi
23bef52290
fix(canvas): 弯折点仅选中线时显示
2026-10-12 14:01:50 +08:00
chiyi
ec5dd9adf7
fix(canvas): 节点间连线去重并放大弯折点
2026-10-12 13:59:11 +08:00
chiyi
256eeb3234
fix(images): 私有图片支持 Bearer 鉴权,画布节点改为带鉴权 blob 加载
2026-10-12 13:54:34 +08:00
chiyi
c559e712b6
fix(canvas): 连接点外置、拖线平滑跟手、图片失败显示状态码
2026-10-12 13:42:26 +08:00
chiyi
c429209e50
feat(canvas): 连线自动绕开节点并支持拖拽弯折
2026-10-12 13:35:40 +08:00
chiyi
5a0cbeb429
fix(canvas): 连线改用主题色并修复图片回退
2026-10-12 13:30:12 +08:00
chiyi
2e5a1e2e72
fix(canvas): 放宽待连线取消方式
2026-10-12 13:22:52 +08:00
chiyi and Devin
9e69dbfc70
feat(canvas): 四向点选连线并统一 10% 缩放步进
...
为所有画布节点显示四向连接点,点击起点与终点连线并保存端点方向;滚轮、按钮与快捷键按 10% 递增。
Generated with [Devin](https://devin.ai )
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-12 12:44:26 +08:00
chiyi and Devin
0631849c36
fix(canvas): 修复生成节点状态更新及参考图请求
...
保留选中参考图,按模型传递分辨率,让生成节点响应成功或失败状态并显示原因。
Generated with [Devin](https://devin.ai )
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-12 12:24:28 +08:00
chiyi and Devin
6354e629ad
fix(canvas): 避免离开画布时后续页面无法挂载
...
画布根节点使用 Teleport,绕开 out-in 过渡以确保返回工作台正常渲染。
Generated with [Devin](https://devin.ai )
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-12 12:05:25 +08:00
chiyi and Devin
067ee50fb7
fix(canvas): 网格点改用 --fg 混合,修复换肤后不可见
...
Generated with [Devin](https://devin.ai )
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-12 11:25:43 +08:00
chiyi and Devin
91e6881623
style(ui): 全站 Memphis 换肤为玻璃拟态+极光渐变
...
设计 token 与中央类名保持不变,重写视觉:磨砂玻璃卡片、
紫→青渐变按钮、柔光阴影、发丝边框;emoji 图标换 SVG;
登录/支付/公告弹窗改为随主题的玻璃卡片。
Generated with [Devin](https://devin.ai )
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-12 11:05:11 +08:00
chiyi and Devin
27d58cfb5d
feat(canvas): 画布 Memphis 化并补全编辑功能
...
- 后端新增 POST /admin/api/my-images 上传接口:图片存入用户
owner 目录并生成缩略图,复用 /images 服务与 my-images picker
- 本地图片三种入画布路径:上传按钮 / 拖入舞台(落点即拖放
位置) / Ctrl+V 粘贴
- 节点选中后显示悬浮工具条(预览/复制/置顶/删除)与右下角
缩放手柄;图片等比缩放,便签自由缩放;Ctrl+D 复制选中(含
相互连线);双击空白建笔记;按 1 / ⤢ 按钮适应全部内容
- 整套画布 UI 换 Memphis:纸张底+墨点网格、黑边硬影节点、
黄色贴纸便签、橙色连线/选中态、虚线框选、顶栏/生成面板/
预览灯箱/图片选择器全部换墨边 chunky 样式,随站点明暗主题
Generated with [Devin](https://devin.ai )
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-08 17:45:41 +08:00
chiyi and Devin
d0506b0d2e
style(logo): 去掉 V 字,改为光圈+播放三角标
...
光圈内放播放三角(呼应图像+视频),快门点改黄色墨边小圆,
整体更几何、更贴合 Memphis 风格。
Generated with [Devin](https://devin.ai )
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-08 17:26:49 +08:00
chiyi and Devin
602664c122
style(ui): 全站清除紫色系,统一 Memphis 蜡笔配色
...
- Logo 渐变从粉紫改为橙/粉/蓝蜡笔色,快门圆点改橙色
- 批量替换 accent:violet→orange、fuchsia→rose、indigo→sky、purple→orange,
十六进制与 rgb 字面量同步换算为 Tailwind 对应色
- 修复类名合并冲突:管理员筛选 pill 改 fp-orange、会员号改 fp-pink(新增),
style.css 中去重 fp-rose/fp-orange 并补 fp-pink 的浅色模式变体
- 选区色、标签输入框、筛选 pill、图表、滑块等所有紫色残留全部归位
Generated with [Devin](https://devin.ai )
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-08 17:15:17 +08:00
chiyi and Devin
b39173643d
style(ui): 移除吉祥物插画,前台 hero 改为 Memphis 装饰元素
...
- 首页 hero 去掉 Mascot,换成漂浮的蜡笔色墨边方块(float/wiggle/bounce 动画)
- KPI 卡片轮流使用黄/粉/蓝/薄荷平涂色,能力卡图标、模型卡光晕统一 Memphis 调色
- 画廊跑马灯加粗黑上下边;About 页 hero 改为色块拼贴,文案不再以"薇薇"自称
- 空状态统一用旋转的 .empty-badge 黄色星标替代吉祥物
- 邀请页顶部卡片改为 ink-card + 蜡笔色统计块 + 橙色复制按钮
- 删除 Mascot.vue
Generated with [Devin](https://devin.ai )
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-08 17:09:11 +08:00
chiyi and Devin
313d54a5ec
style(ui): 换用 Memphis/neo-brutalism 视觉风格
...
参考 skills.yangsir.net:粗墨描边 + 硬偏移投影 + 平涂蜡笔色(橙/黄/粉/蓝/薄荷),
替换原二次元粉紫渐变体系。设计令牌集中在 style.css 的 --ink/--shadow-ink/
--m-* 变量,共享组件 .card/.btn-*/.field 与新工具类 (.memphis-dots/.ink-card/
.memphis-press) 使全站统一;暗色模式反转为浅色描边版本。
Generated with [Devin](https://devin.ai )
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-08 16:58:14 +08:00
chiyi
4fb7fc9204
feat: sync all features to image2api
2026-08-15 23:00:30 +08:00
chiyi
5403acc4c9
leonardo: get-session 按 cookie 串行,避免并发刷新令牌被判重用
2026-08-10 20:18:32 +08:00
chiyi
15602b8033
leonardo: 把 cross-origin-cookie 401 判为会话被吊销
2026-08-10 19:38:58 +08:00
chiyi
b488142495
fix(leonardo): 参考图走 uploadInitImage 永久桶;音频参考需搭配图/视频参考
2026-08-10 11:14:15 +08:00
chiyi
52f9ec967c
fix(leonardo): get-session 返回 null 时重试 3 次再判 cookie 失效
...
预热成功后的 200 null 之前第一次就 break 并直接 ErrAuth;同样的响应也可能是某个出口 IP 被挑战页静默降级,改成最多 3 次(第 2、3 次走代理换 IP)都拿不到 accessToken 才算死号。
2026-08-10 09:15:07 +08:00
chiyi
265ff1dd5d
feat(leonardo): session keepalive 独立成 1 分钟循环,并记录续期/失败计数
...
maintenance 的一次 tick 可能跑几十分钟(光 adobe cookie profile 就 219 个),挂在里面会把 5 分钟的保活拉长成 tick 的实际耗时。
2026-08-10 09:15:07 +08:00
chiyi
a9daad2fda
feat(leonardo): 每5分钟按库内时间戳续一次 session 并写回轮换 cookie
2026-08-09 21:27:41 +08:00
chiyi
cfb7bcebc9
fix(frontend): 视频模型参考图/媒体上限按 preset 展示,文档页加定价列
...
模型管理与文档页改为读 /video-presets 的 max_images/max_videos/max_audios,去掉写死的图片/视频/音频上限与重复的参考资产总数;文档表新增定价列,model/类型/定价 三列不换行。
2026-08-09 21:02:18 +08:00
chiyi
84a2eac64f
style(playground): 结果区最多展示 12 个
2026-08-09 14:49:33 +08:00
chiyi
beadc29b45
style(playground): 结果区大屏改为一行 4 张
2026-08-09 13:40:08 +08:00
chiyi
4c5b932e81
fix(adobe): 媒体分类接口抓不到参考图的 400 归为临时错误,自动换号重试
2026-08-09 13:40:08 +08:00
chiyi
eee8698f46
fix(leonardo): get-session 改直连并先做 cross-origin-cookie 预热,429 才退回代理
2026-08-09 13:40:07 +08:00
chiyi
8f3cb25c25
fix(leonardo): get-session 走代理并重试 10 次,绕过 Vercel 人机校验的偶发放行
2026-08-09 03:06:24 +08:00
chiyi
6190f814d9
fix(leonardo): 连续 3 次鉴权失败才判死,get-session 补齐浏览器头并保护 session_data
2026-08-09 02:17:01 +08:00
chiyi
6ae88725df
fix(events): 视频 pending 用 30 分钟单独期限,避免出片前被判死退款
2026-08-09 02:16:56 +08:00
chiyi
4a184112ee
fix(ui): 积分价格保留两位小数,不再四舍五入成整数
2026-08-08 22:29:21 +08:00
chiyi
4c0706fa91
feat(models): minimax-h3 改按秒计价,按秒计价改为目录驱动
2026-08-08 22:20:40 +08:00
chiyi
6d17caaf80
feat(leonardo): 接入视频通道并新增 seedance-2.0/minimax-h3 模型
2026-08-08 21:55:33 +08:00
chiyi
6ba80f5109
tweak(video): 视频渲染预算拉到 30 分钟
2026-08-08 11:16:56 +08:00
chiyi
ebcf3c5779
feat(grok): 视频改走 Grok Console 并新增图片模型
...
- grok 视频/图片统一走 console.x.ai:sso 换 DPoP 短期 token,绕开 grok.com 的 statsig 反爬
- 新增 grok-image:不带参考图走 /v1/images/generations,带图自动走 quality 上游 + /v1/images/edits
- grok 额度改本地写死 图5/视频2,成功各扣一次,两份归零直接判死,无恢复时间
- 视频渲染预算统一 20 分钟(adobe/runway/grok/custom)
- 删除参考图人脸打码(facemask + onnxruntime 依赖 + 前台开关)
2026-08-08 11:15:42 +08:00
chiyi
554dea6252
feat(facemask): 黑丝网眼加粗并给 Seedance 提示词追加忽略网格说明
2026-08-07 14:30:43 +08:00
chiyi
d275a97946
tweak(facemask): 黑丝网眼间距放宽
2026-08-07 13:41:07 +08:00
chiyi
3d6fd4bd4a
feat(facemask): 参考图人脸统一改为黑丝网眼打码
2026-08-07 13:16:52 +08:00
chiyi
2e3a4e9d3f
feat: seedance参考图人脸打码(YuNet+切块旋转/白点阵) + VIP零额度降级 + veo3.1 1080p + CGO Dockerfile
2026-08-07 10:08:24 +08:00
chiyi
f76ecd5769
feat: 二次元前端改版 + 后端账号plan探测/调度修复
2026-08-06 10:11:05 +08:00
chiyi
7f4701d362
feat: veo3.1 拆分 fast/standard, seedance双模型, per_second定价, 子号过滤, 随机种子, UI优化
2026-08-03 20:27:20 +08:00
chiyi
e90aeecea3
fix(adobe): nano-banana modelVersion 修正 + 移除 runway 死代码
2026-08-02 23:35:50 +08:00
chiyi
5b81de5269
feat: 导入账号界面添加Adobe号购买联系方式 QQ432539
2026-08-02 20:57:13 +08:00
chiyi
4987717d23
feat: Adobe积分号不锁定额度 + Nano Banana双通道 + 前端显示额度
...
- Adobe不再区分视频/图片额度,移除ImageLimited/VideoLimited限制
- Adobe积分号quota耗尽不锁定(status不改为quota),只记录失败用于轮转
- Nano Banana 2/Pro 保留Runway通道,新增nano-banana-2/nano-banana-pro走Adobe
- Adobe模型重命名: runway-nano-banana-2, runway-nano-banana-pro
- 前端管理后台Adobe账号显示积分余额(之前固定显示—)
- README更新模型列表
2026-08-02 20:09:03 +08:00
chiyi
359d95b8c1
chore: ignore backend/cmd/test*/ directories
2026-08-02 00:08:11 +08:00
chiyi
cd0b7090f2
refactor(adobe): switch to express.adobe.com origin, remove ErrAuthPermanent, simplify ARP session/PID
2026-08-02 00:07:17 +08:00
chiyi
0a1811b254
优化408
2026-08-01 14:44:05 +08:00
chiyi
e2540dc2a3
优化408
2026-08-01 12:58:13 +08:00
chiyi
110edc9b81
更新adobe 优化408
2026-08-01 01:49:05 +08:00
chiyi
a1514b5f82
更新408
2026-07-31 23:47:17 +08:00
chiyi
613ab04802
修复chatgpt
2026-07-29 21:39:22 +08:00
chiyi
c30155b001
adobe openai更新
2026-07-29 21:15:37 +08:00
chiyi
9a032c6107
更新易支付
2026-07-28 18:31:52 +08:00
chiyi
95535f02f8
更新邮箱tag颜色
2026-07-20 23:07:21 +08:00
chiyi
b0cd4a8b33
参考图适配
2026-07-19 11:34:14 +08:00
chiyi
50060f9180
去掉oss保存
2026-07-19 11:23:48 +08:00
chiyi
c3f82168b6
grok更新
2026-07-18 15:24:16 +08:00
chiyi
b6e8445d95
修复grok
2026-07-17 21:45:31 +08:00
chiyi
86559eb7fc
grok fix: statsig signer chunk locate regex include ~ (0~4v1h2zpw7n0.js); fixes locateSignerChunk not found -> conversations/new 403 anti-bot
2026-07-16 09:37:27 +08:00
chiyi
60be9201e5
支持远程url吗
2026-07-16 00:50:27 +08:00
chiyi
7a781fecfc
更新runway
2026-07-14 22:44:18 +08:00
chiyi
4a1b91b759
更新订单管理记录更多事情
2026-07-14 12:40:44 +08:00
chiyi
86658e98a1
更新grok
2026-07-13 21:08:30 +08:00
chiyi
0822628bfc
更新grok算法
2026-07-13 10:14:52 +08:00
chiyi
62595de79f
更新省流
2026-07-13 00:06:29 +08:00
chiyi
40cc67d354
更新grok协议
2026-07-12 22:59:52 +08:00
chiyi and Claude Opus 4.8
cd3f98bd61
grok修复: x-statsig-id 改用 goja 跑原版签名器, 自愈跨 reship
...
手抄的字节算法每次 grok 换 web build 就失效(403 anti-bot), 天天死。
改为内嵌 goja 执行 grok 自己的签名器 chunk + 合成 DOM/WAAPI 垫片, 由 grok
自己的代码做所有随 build 轮换的字节索引/曲线选择, 我们只提供稳定的浏览器原语。
- statsig_engine.go: goja 引擎池 + 构建无关地自动定位当前签名器 chunk
- statsig_shim.js(//go:embed): document/getComputedStyle(WAAPI 采样)/
crypto.subtle/TextEncoder/base64 垫片 + Turbopack bootstrap
- client.go: statsigID 优先走引擎, 任何失败回退旧静态算法; ensureChallenge
捕获 seed+curves 并按 reship(chunk 列表变化)重建引擎池
- 旧静态 computeStatsigTail 降级为兜底; 其离线回归测试改 Skip(ground truth
无法离线重生), 新增 40 并发签名测试
已验证: 动态定位当前 build → conversations/new 返回 200 + conversationId。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-11 05:41:38 +01:00
chiyi
4c060729b9
grok修复
2026-07-10 15:33:01 +08:00
chiyi
3a2c9710c3
更新runway 2api风控
2026-07-10 13:25:42 +08:00
chiyi
8d792e66e0
加回 nano-banana-2 与 nano-banana-pro 并存
2026-07-10 12:02:14 +08:00
chiyi
2afb4e7857
nano-banana-2 升级为 nano-banana-pro (workflow_gemini_image / gemini-3-pro-image-preview, 支持 2K/4K)
2026-07-10 11:19:51 +08:00
chiyi
a636f79cd8
更新
2026-07-10 10:59:14 +08:00
chiyi
6350df7c03
更新md
2026-07-10 08:30:28 +08:00
chiyi
ec3b17c55a
颜色统一
2026-07-10 00:30:44 +08:00
chiyi
788c97d9d5
ai去特征展示
2026-07-10 00:23:14 +08:00
chiyi
6a3588b35b
ai去特征增加开关
2026-07-10 00:13:09 +08:00
chiyi
6d6bd2a638
增加ai去特征
2026-07-09 23:48:58 +08:00
chiyi
21cca6513b
更新下载超时延长
2026-07-09 19:38:30 +08:00
chiyi
bfd8c2acd5
Merge branch 'fix/grok-statsig-header-refresh'
2026-07-09 19:25:30 +08:00
chiyi
65ca95a736
Merge branch 'devin/1783580774-grok-statsig-selfheal'
2026-07-09 19:25:03 +08:00
chiyi
0612e83081
Merge branch 'devin/1783582849-image-cookie-rolling'
2026-07-09 19:24:37 +08:00
chiyi
81c040cb0b
优化上游错误重试
2026-07-09 17:45:31 +08:00
chiyi
33b5fc3b0e
fix(runway): retry the /v1/tasks submit on transient errors
...
A dropped proxy connection (EOF) or 5xx on the task-create failed the whole generation. submitTask now retries transient (ErrTemporaryUpstream) submits up to 3x with backoff, honoring ctx. Applies to both Nano Banana image and Gen-4 video. Validated: 10/10 4K images (19-24MB PNG each) generated across 10 accounts.
2026-07-09 17:06:43 +08:00
chiyi
cc6a2b1c54
fix(runway): raise the tls-client timeout so large artifact downloads don't cancel
...
Runway (Nano Banana 2) used a 30s whole-request timeout that includes reading the response body, so downloading a rendered image/video artifact off a slow CDN aborted with 'request canceled (Client.Timeout or context cancellation while reading body)'. Raised to 300s; genCtx still bounds the overall generation.
2026-07-09 16:55:02 +08:00
chiyi
fba6772584
fix(imagine,krea,leonardo): poll for the full genCtx budget instead of a short hardcoded cap
...
imagine/krea capped polling at 4min and leonardo at 5min while the caller's genCtx budget is 8min, so slow-but-valid generations were killed early with 'generation timed out'. Now the poll deadline tracks ctx.Deadline() minus 60s download headroom (fallback to the old fixed cap if ctx has no deadline). chatgpt already ties its budget to the deadline (pollBudget) and runway/grok honor ctx, so no change needed there.
2026-07-09 16:52:16 +08:00
chiyi
5198b08bdf
fix(adobe): poll until the genCtx deadline instead of a shorter hardcoded cap
...
pollImage/pollVideo capped themselves at 3min/10min while the caller's genCtx budget is 8min (image) / 12min (video), so slow-but-valid generations were killed early with 'adobe generation timed out'. Now the loop honors ctx.Err() and uses the full budget.
2026-07-09 16:49:21 +08:00
chiyi
622bc9ba9a
feat(providers): account calls (auth/refresh/credits) egress on the local IP
...
Now only the generate/video submit uses proxy.url; cookie-exchange/login, token refresh, credit-balance and project/session bootstrap all go direct. Also splits adobe GenerateVideo (submit=proxy, poll/download=local). Verified live: adobe gpt 1K cookie-exchange via local IP, submit 23.244.30.102 (proxy) vs local 76.209.9.65, 2.0MB PNG. Build+vet pass.
2026-07-09 16:36:04 +08:00
chiyi
2987053b10
feat(grok): account calls (credits/subscription/session) egress on the local IP
...
Only the conversations/new generate submit still uses proxy.url; FetchCreditsBalance, FetchSubscription and FetchSession now go direct.
2026-07-09 16:32:21 +08:00
chiyi
57e3ee4cef
feat(grok): route only the conversations/new submit through the proxy
...
Reference-frame upload, the mp4 download and OpenAsset (/content) streaming now egress on the local IP; only the generate submit uses proxy.url. Verified live: submit egress 98.97.26.37 (proxy) vs upload/download 76.209.9.65 (local), 3.47MB video generated OK.
2026-07-09 16:26:18 +08:00
chiyi
6c2a942a88
feat(providers): route only the generate submit through the proxy
...
Extends the adobe split to leonardo, krea, imagine, runway (image+video) and chatgpt: reference-image upload, polling and result download egress on the local IP; only the generate/task-create submit uses proxy.url. chatgpt keeps its anti-bot-guarded submit+upload phase on the proxy and moves only the existing second (poll/resolve/download) session to local. custom is already direct. Build+vet pass; adobe verified live, the other providers are code-complete but not yet live-tested (no dev accounts).
2026-07-09 16:21:31 +08:00
chiyi
db3219416e
feat(adobe): route only the image-generate submit through the proxy
...
Reference-image upload, job polling and result download now run on the local IP; only the generate submit egresses via proxy.url. Verified live: submit egress 74.244.159.228 (proxy) vs upload/poll/download 76.209.9.65 (local), 1K adobe gpt image generated OK.
2026-07-09 16:08:33 +08:00
chiyi
a414385802
fix(auth): roll session cookie Max-Age on each authed request
...
The server session slides its TTL on use but the browser cookie's Max-Age was frozen at login, so it lapsed mid-session and broke cookie-only auth (private image <img>/download loads returned 401) while the SPA still looked logged in via its Bearer token. Re-issue the cookie with a fresh Max-Age whenever an authenticated request carried it.
2026-07-09 15:40:54 +08:00
chiyi
48cfbff592
fix(grok): self-heal x-statsig-id from live homepage seed+curves
...
Derive the 49-byte header seed and the salt F per-session from the grok homepage (browser-free tls-client GET), instead of hardcoding constants that go stale on every grok web rebuild (403 anti-bot). F is reproduced natively in Go (curve keyframe sampling: cubic-bezier easing, color lerp, rotation matrix, JS-exact number->hex). Static constants remain as env-overridable fallback. Adds offline regression test against server-verified ground-truth triples.
2026-07-09 15:07:12 +08:00
chiyi
f3803d01cf
更新adobe协议
2026-07-08 20:17:33 +08:00
chiyi
98b5f5a5c3
chatgot更新换号重试
2026-07-08 13:13:25 +08:00