Commit Graph
37 Commits
Author SHA1 Message Date
SmartUp Developer 6906c3b998 feat: support Grok platform account imports 2026-07-12 13:16:29 +08:00
SmartUp Developer 40e75c0b51 fix: stream long-running website operations 2026-07-12 12:07:47 +08:00
SmartUp Developer a62ee00115 Improve abnormal account cleanup 2026-07-06 13:48:41 +08:00
SmartUp Developer c26bdb766c Refine orphaned key status labels 2026-07-06 11:19:51 +08:00
SmartUp Developer f659cc53a4 Localize key status labels 2026-07-06 11:02:51 +08:00
SmartUp Developer 5a20e792fe Add SmartUp account pool parameter configuration 2026-07-04 11:59:21 +08:00
SmartUp Developer 0cce5d53fe Improve website groups loading state 2026-07-04 00:25:01 +08:00
SmartUp Developer fdbcca4d95 fix: delay binding.percent update until remote sync succeeds and update UI labels to 自动保底盈利 2026-07-02 21:27:52 +08:00
SmartUp Developer 0e77de31ae feat: implement automatic margin pricing and margin reverse engineering in sync 2026-07-02 21:22:37 +08:00
SmartUp Developer 8746068cd4 feat: implement priority_weighted_plus_percent pricing algorithm 2026-07-02 20:23:20 +08:00
SmartUp Developer c20c9cfd26 fix: add stream close check, recover regression test assertions, and secure credentials type check 2026-07-02 19:18:10 +08:00
SmartUp Developer ece11d66e6 feat: sync upstream models with real-time streaming updates 2026-07-02 18:11:55 +08:00
liumangmang 63cbdf4dca feat: 实现一键同步网站账号上游模型功能 2026-07-02 15:43:00 +08:00
liumangmang 608ef00920 feat: 实现设置账号并发数功能(支持 bulk-update 与 fallback 逐个更新) 2026-07-02 09:48:59 +08:00
liumangmang 536c0aa3d4 feat: 实现清理失效账号安全方案(包含预览、SSE测试、安全删除以及本地标记清空) 2026-07-02 00:19:26 +08:00
liumangmang 3172ab18bf fix: 修改目标分组名称后自动同步更新本地绑定表中的名称缓存,并为前端更新分组 URL 中的 groupId 进行 Url 编码 2026-07-01 17:55:53 +08:00
liumangmang 8c2f1c13bb feat: 支持网站目标分组轻量管理(新增、编辑、描述展示),不修改和不提交倍率 2026-07-01 17:47:36 +08:00
liumangmang e5d7af8906 feat: 网站分组列表默认按倍率从小到大(升序)排序 2026-07-01 17:22:19 +08:00
liumangmang 650451c123 fix: 引入 normalizeRateBound 标准化倍率空输入,解决输入清空后过滤失效的问题 2026-07-01 17:14:28 +08:00
liumangmang 04d719b417 feat: 选择上游分组弹窗支持倍率范围(大于等于/小于等于)筛选 2026-07-01 17:06:18 +08:00
liumangmang f9b5a03330 fix: 缩小选择分组弹窗的搜索范围至分组自身信息,更新输入占位提示文案 2026-07-01 16:31:40 +08:00
liumangmang 7c7942c83b fix: 解决选择框异常压缩、新增绑定自动选择首个分组、以及弹窗自适应2K显示器比例 2026-07-01 16:13:05 +08:00
liumangmang 962614500c refactor: 隔离 Websites.vue 全局样式,仅对 Element Plus 壳层节点应用非 scoped 样式以防污染其他页面 2026-07-01 15:52:48 +08:00
liumangmang 71e0fe40a9 refactor: 按照新版 ui_redesign_prototype.html 重构新增绑定抽屉和选择上游分组弹窗 2026-07-01 15:47:51 +08:00
liumangmang 756d6e1083 style: 移除 Websites.vue 中所有尾部多余空格 2026-07-01 15:16:07 +08:00
liumangmang 02e41fa80e feat: 监听上游分组改用专用弹窗选择器,支持搜索、多选及已选Tag展示 2026-07-01 15:11:53 +08:00
liumangmang 397a14c978 feat(website): 支持基于现有绑定一键整理分组,支持账号校验补齐、自愈重建与缺失 Key 提示 (含异常保守跳过及名称层级匹配) 2026-07-01 11:21:20 +08:00
liumangmang efd0a88249 perf(import): 优化账号导入弹窗为秒开体验并支持批量回查校验 2026-07-01 10:00:40 +08:00
SmartUp Developer b866b387e0 feat: sync upstream keys and reorder priorities 2026-06-03 17:03:11 +08:00
liumangmang bea4344bb3 fix: reconcile upstream keys on list/generate/import to prevent stale key imports
- Extract reconcile_upstream_keys() to website_sync.py (shared scheduler + on-demand)
- Add reconcile_upstream_keys_full() for on-demand reconciliation at three entry points:
  list_generated_keys, generate_keys_by_groups, import_upstream_keys_as_accounts
- Safe on failure: active_group_ids=None / remote_key_ids=None skip cleanup
- Support custom managed_prefix via _fetch_remote_managed_key_ids() helper
- Exclude orphaned keys from frontend importable list
- Remove hardcoded search='SmartUp' from scheduler path
2026-06-01 11:29:37 +08:00
liumangmang 518e3e8efc feat: add one-click sync for website group bindings 2026-06-01 09:06:01 +08:00
liumangmang c5778bb3e7 feat: persist browser sessions and update admin workflows 2026-05-29 16:00:43 +08:00
SmartUp Developer 3a31d185a4 fix: reuse upstream keys for account import 2026-05-24 23:18:40 +08:00
liumangmang 6044b00685 feat: 上游 Key 唯一化、分组导入跳过、账号导入平台识别&远端校验&base_url 注入
- 上游 Key 命名改为 {prefix}-{upstream.id}-{safe_group_name}-{group_id}
- 唯一约束 (upstream_id, group_id, managed_prefix) 加 managed_prefix 列
- 上游检测成功时同步 Key 状态,远端已删/分组已删自动清理
- 重复分组导入跳过,目标网站已存在同名分组返回 exists
- 账号导入平台自动识别(auto/manual 模式)
- 全选可导入 Key 按钮 + 目标分组自动匹配
- 导入幂等:已导入过的 Key 校验远端账号,不存在则重建
- 新增同步接口 POST /sync-imported-upstream-keys
- account_exists() 通过拉取账号列表判断,避免 404 误判
- credentials.base_url 注入来源上游地址,避免 401
- 前端导入弹窗自动同步+刷新按钮+并发/优先级设置
- 新增 12 个测试覆盖同步、幂等、远端删除、校验失败路径
2026-05-21 01:16:39 +08:00
liumangmang 6cc797f915 feat: remote browser login persistence + balance display + UI consistency
- Retain login state in remote browser profiles (don't delete on disconnect)
- Add GET /api/browser-sessions/{id}/clipboard for clipboard sync
- Add POST /api/browser-sessions/{id}/autofill-login for manual credential fill
- Add DELETE /api/browser-sessions/profiles/{custom_page_id} for login clear
- Add balance tracking with configurable divisor (balance_divisor)
- Health check on session reuse, idle TTL eviction, background cleanup
- Add first-frame watchdog (10s timeout) to prevent infinite loading
- Reconnect browser on active=true when session was closed
- UI: uniform text-only inline buttons (websites + upstreams pages)
- Fix page switch race with closingRemoteSessionPromise
2026-05-20 09:44:20 +08:00
SmartUp Developer ad16618406 fix: address multiple code audit findings
- CORS: replace wildcard with explicit origin list from CORS_ORIGINS env
- Auth: enforce strong defaults, JWT blacklist (RevokedToken model), login rate limiting
- Auth: validate password length before bcrypt (72-byte limit)
- Scheduler: single-threaded worker to mitigate SQLite write contention
- Scheduler: graceful shutdown (wait=True)
- Snapshots: add prune_snapshots() with configurable retention count
- Storage: isolate localStorage keys via VITE_APP_KEY prefix
- Config: add cors_origins, login_rate_limit, snapshot_retention_count settings
2026-05-17 10:52:18 +08:00
liumangmangandClaude Opus 4.7 7adc7c00ab Add remote browser pages and website sync
Enable managed remote browser custom pages with login autofill and add website sync workflows so external admin surfaces can be handled inside SmartUp.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-15 15:43:58 +08:00