linshen
97ea44af4e
fix(ui): collapse predefined variables by default
2026-01-27 22:45:12 +08:00
linshen
7c13cc2173
refactor(ui): drop global vars button in ContextModeActions
2026-01-27 22:33:19 +08:00
linshen
6e495c0468
refactor(ui): remove global vars prop in image mode
2026-01-27 22:24:54 +08:00
linshen
c9df28d42d
refactor(ui): remove global vars wiring in context mode
2026-01-27 22:18:31 +08:00
linshen
80a1ba80df
refactor(ui): drop global vars action in variables panel
2026-01-27 22:11:07 +08:00
linshen
1352125e5a
fix(ui): polish variables panel labels and a11y
2026-01-27 23:59:12 +08:00
linshen
837702e769
fix(core): switch OpenRouter image default to gemini-2.5-flash-image
2026-01-27 23:57:38 +08:00
linshen
e014db2b5e
fix(ui): unify variable name validation and sanitize variables
2026-01-27 23:45:00 +08:00
linshen
99f4815c53
fix(ui): keep source view after optimize in variable modes
...
Avoid forceExitEditing flipping Pro/Image outputs back to Markdown render so variable highlighting remains the default.
2026-01-27 22:52:46 +08:00
linshen
3a28783326
feat(ui): persist temp vars per pro/image submode
...
Store temporary variables in each Pro/Image submode session and route useTemporaryVariables accordingly (Basic remains in-memory).
2026-01-27 22:16:52 +08:00
linshen
623c7c09ff
feat(ui): add smart variable value generation
...
Provide smart fill for missing temp variables in Pro/Image and centralize the generation glue in a composable.
2026-01-27 22:07:14 +08:00
linshen
239e55d53a
fix(ui): resolve model key for variable value generation
...
Ensure smart variable value generation always uses a non-empty evaluation model key (FunctionModelManager + fallbacks).
2026-01-27 21:52:23 +08:00
linshen
0f526630a2
refactor(ui): extract temporary variables panel
...
Reuse a shared temp-variable editor in test panels and show it above image test variants for parity with Pro.
2026-01-27 21:39:56 +08:00
linshen
84b1751cc7
refactor(ui): centralize VariableAwareInput wiring
...
Introduce useVariableAwareInputBridge to reuse variable extraction/missing-variable handlers across workspaces.
2026-01-27 21:26:08 +08:00
linshen
91e81772c2
feat(ui): harden variable parsing and validation
...
Support {{ foo }} placeholders, block unescaped mustache tags, and treat empty values as missing.
2026-01-27 21:11:43 +08:00
linshen
11dff36575
feat(ui): support variables in image mode
...
Enable variable-aware editing and ensure image generation replaces placeholders, blocking runs when required variables are missing or empty.
2026-01-27 21:03:17 +08:00
linshen
67a16ed036
feat(ui): dedupe and gc image storage by session refs
2026-01-25 22:41:04 +08:00
linshen
7ebe66df70
feat(ui): add multi-column image workspace test variants
2026-01-25 22:14:55 +08:00
linshen
c6ba853f5d
feat(ui): add multi-column pro-multi test variants
...
Introduce a split-view pro-multi workspace with a multi-column variant tester and persist layout/variant settings across sessions.
2026-01-24 21:55:57 +08:00
linshen
4f5af3b2e2
feat(ui): add multi-column pro-variable test variants
2026-01-24 18:00:21 +08:00
linshen
a35d0b7eab
feat(ui): add multi-column basic-system test variants
...
Align basic-system testing with basic-user by enabling 2–4 side-by-side variant runs with persisted per-column settings/results and A/B evaluation entry points.
2026-01-24 15:34:39 +08:00
linshen
ce3af34d9b
feat(ui): add multi-column basic-user test variants
...
Enable 2-4 column comparisons with per-variant version/model selection, persisted layout/results, and evaluation actions aligned to output.
2026-01-24 12:44:33 +08:00
linshen
a539ef9023
chore(cursor): remove legacy workflows
2026-01-23 11:47:04 +08:00
linshen
ba3c4b7c88
fix(ui): persist manual prompt edits to history
...
Ensure Save Changes creates a new version across basic and image workspaces.
2026-01-22 21:47:20 +08:00
linshen
4575ee1712
fix(test): build core before ui gate tests
...
Ensure @prompt-optimizer/core dist exists so Vitest/Vite can resolve workspace imports in a fresh CI checkout.
2026-01-21 23:57:19 +08:00
linshen
02caa81584
fix(i18n): add missing retry label
...
Add common.retry to locale bundles to avoid runtime warnings during evaluation error states.
2026-01-21 23:52:04 +08:00
linshen
d3a44e44b5
ci: limit e2e to gate specs
...
Avoid running the full E2E suite on every PR/push. Keep fast unit gates and run only test:gate:e2e in VCR replay mode.
2026-01-21 23:46:12 +08:00
linshen
e39495bfb9
fix(ci): use existing e2e replay script
...
Replace the missing pnpm test:replay step with pnpm test:e2e:replay and ensure gate runs with E2E_VCR_MODE=replay.
2026-01-21 23:41:37 +08:00
linshen
50ba9ab011
chore: bump version to 2.5.0
...
Sync version across root package, desktop app, and browser extension manifest.
2026-01-21 23:29:08 +08:00
linshen
e326ad1747
chore: remove temporary root files
...
Drop an outdated screenshot and a stray review note from the repository root to keep the workspace clean.
2026-01-21 23:17:42 +08:00
linshen
0617868cfd
ci: gate docker and release on tests
...
Make docker builds and desktop releases depend on the shared test workflow to avoid duplicate runs and ensure only tested revisions ship.
2026-01-21 23:05:11 +08:00
linshen
e3f428013e
feat(ui): warn about CORS-restricted providers
...
Expose optional corsRestricted provider metadata and show tags/dialogs on connection tests in web. Also hide the warning tag in desktop where IPC bypasses CORS.
2026-01-21 22:47:56 +08:00
linshen
3115540cac
fix(desktop): preserve structured IPC errors for i18n
...
Keep error code/params across contextBridge so renderer can translate errors reliably; harden UI error formatting and update vue-i18n test mocks.
2026-01-21 21:23:17 +08:00
linshen
03a62630bd
fix(i18n): align core errors to structured codes
...
- Normalize IPC/plain-object errors via toErrorWithCode
- Align image adapter + storage config errors to i18n codes
- Add missing UI locale keys and update tests
2026-01-20 22:23:00 +08:00
linshen
96a32ad46d
feat(ui): persist evaluation results per workspace
...
Evaluation is now scoped to each workspace and stored in session snapshots to avoid cross-mode state leaks and restore after reload. Pro/multi clears evaluation results when the selected message changes.
2026-01-20 21:56:00 +08:00
linshen
dd1589186c
fix(ui): fail fast when image storage is unavailable for sessions
2026-01-20 21:17:00 +08:00
linshen
320957c385
feat(data): add desktop storage info to data manager
2026-01-20 20:43:00 +08:00
linshen
934601440a
fix(ui): improve model key conflict errors
2026-01-20 20:08:00 +08:00
linshen
6d85f18c6a
fix(ui): apply evaluation patch to image session
2026-01-19 22:24:24 +08:00
linshen
c8f5a2dec8
fix(core): format dashscope image2image input as data url
2026-01-19 22:04:06 +08:00
linshen
40e1005d81
test(e2e): stabilize route bootstrap and output polling
...
- Reduce output polling flakes\n- Stabilize route bootstrap and smoke flows\n- Improve i18n label compatibility (incl. zh-TW)
2026-01-18 22:56:00 +08:00
linshen
8205df2dc1
fix(ui): harden workspaces, history restore, and image mode
...
- Harden workspace/session restore and initialization\n- Improve image mode behavior and storage handling\n- Update UI i18n and integration tests
2026-01-18 20:28:00 +08:00
linshen
ca877ea794
build(ui): add vue-tsc typecheck
...
- Add vue-tsc typecheck to UI build pipeline
2026-01-18 16:43:00 +08:00
linshen
8c17e9c9e7
fix(desktop): align IPC for image errors and tools
...
- Align desktop IPC with structured image errors\n- Support LLM tools streaming over IPC
2026-01-18 13:17:00 +08:00
linshen
007a37e26a
feat(core): structured image errors and adapters
...
- Add structured image error codes and types\n- Update image adapters and service surface for explicit requests\n- Update core tests and vitest configuration
2026-01-18 10:08:00 +08:00
linshen
7599020638
fix(i18n): translate structured core errors in UI
...
Align core errors to emit code+params and have UI render messages via i18n keys with interpolation, plus add tests for locale-specific output.
2026-01-17 12:56:55 +08:00
Prashant Jain and Claude Opus 4.5
3a100d5314
feat(i18n): internationalize core error messages with error codes ( #238 )
...
- Add centralized error codes in packages/core/src/constants/error-codes.ts
- Refactor error classes to use error codes instead of hardcoded messages
- Add bilingual comments (English/Chinese) for cross-team collaboration
- Add error translations to en-US, zh-CN, and zh-TW locale files
- Export error codes from core package for UI layer consumption
This allows error messages to be displayed in the user's preferred
language while keeping the codebase accessible to both English and
Chinese speaking developers.
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-17 12:51:09 +08:00
Prashant Jain and Claude Opus 4.5
b37950dc74
feat(ui): sort image models by enabled status and name ( #235 )
...
Sort image model configurations in Model Manager to display enabled
models first, then alphabetically by display name within each group.
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-16 16:46:00 +08:00
linshen
90f23b6e0a
test(e2e): 补全文生图/图生图对比生成并稳定回放
...
- 增加 SiliconFlow 文生图与图生图用例并启用对比生成\n- 完善 VCR 回放(含非 SSE 响应)并修复输出选择器\n- 图生图跳过易抖动模板下拉、等待上传弹窗关闭;e2e 脚本改用 cross-env 兼容 Windows
2026-01-15 22:43:00 +08:00
linshen
840d4087a7
test(e2e): 补充 basic-system/basic-user 用例并增强回放
...
- 新增 system 对比用例并支持 VCR 多请求回放\n- 补齐 basic-user 用例并录制 fixtures
2026-01-15 21:08:00 +08:00