[工程][Workspace] 支持单 Provider 响应重试 #5

Closed
opened 2026-09-15 00:45:32 +08:00 by CoderLambert · 2 comments
CoderLambert commented 2026-09-15 00:45:32 +08:00 (Migrated from github.com)

Execution State

READY

Observed base: main@4510833
Execution base: latest main

Problem

Compare 收集失败时,用户只能重新收集全部 Provider。第三方 AI 页面 DOM、登录状态或加载时序短暂异常时,会丢失已经成功收集的结果并增加重复操作。

Target

失败的 Provider 卡片可以单独重试;重试不会清除其他 Provider 已成功收集的快照,也不会在 Provider 被移除后回写迟到结果。

Invariants

  • 保持按需收集,不引入实时 DOM 监控。
  • 不改变 iframe、Grok 顶层标签页或消息协议。
  • 不扩大权限、存储内容或 Provider selector 范围。
  • 同一 Provider 的重试请求不可重复并发。

Acceptance Criteria

  • 失败响应卡片提供单 Provider 重试入口。
  • 重试期间按钮不可重复触发。
  • 其他 Provider 成功响应保持不变。
  • Provider 取消选择后,迟到的重试结果不会重新进入快照。

Validation

Focused:

  • 待执行 workspace 静态检查和手动验证

Repository / Regression:

  • 按用户要求暂缓完整测试

Dependencies

Hard blocked by:

  • none

Conflict / shared surfaces:

  • workspace comparison state only
## Execution State READY Observed base: main@4510833 Execution base: latest main ## Problem Compare 收集失败时,用户只能重新收集全部 Provider。第三方 AI 页面 DOM、登录状态或加载时序短暂异常时,会丢失已经成功收集的结果并增加重复操作。 ## Target 失败的 Provider 卡片可以单独重试;重试不会清除其他 Provider 已成功收集的快照,也不会在 Provider 被移除后回写迟到结果。 ## Invariants - 保持按需收集,不引入实时 DOM 监控。 - 不改变 iframe、Grok 顶层标签页或消息协议。 - 不扩大权限、存储内容或 Provider selector 范围。 - 同一 Provider 的重试请求不可重复并发。 ## Acceptance Criteria - [ ] 失败响应卡片提供单 Provider 重试入口。 - [ ] 重试期间按钮不可重复触发。 - [ ] 其他 Provider 成功响应保持不变。 - [ ] Provider 取消选择后,迟到的重试结果不会重新进入快照。 ## Validation Focused: - 待执行 workspace 静态检查和手动验证 Repository / Regression: - 按用户要求暂缓完整测试 ## Dependencies Hard blocked by: - none Conflict / shared surfaces: - workspace comparison state only
CoderLambert commented 2026-09-15 00:46:26 +08:00 (Migrated from github.com)

[PROGRESS]

STATUS: IN PROGRESS
ISSUE: #5
LANE: workspace
EXECUTION_BASE: main@4510833
BRANCH: main
HEAD: 501d946
PR: none
OWNED_SCOPE: workspace comparison drawer and response collection state
SENSITIVE_SURFACES_TOUCHED: none
CHANGED: apps/browser-extension/workspace/workspace.js; apps/browser-extension/workspace/workspace.css
AC_STATUS: implementation complete; full verification pending
VALIDATION: node --check workspace/workspace.js passed; git diff --check passed
SECURITY_PERMISSION_DELTA: none
KNOWN_RISKS: full regression and browser validation are intentionally deferred
BLOCKERS: none
NEXT: run focused regression tests and browser-backed manual validation, then close Issue #5

[PROGRESS] STATUS: IN PROGRESS ISSUE: #5 LANE: workspace EXECUTION_BASE: main@4510833 BRANCH: main HEAD: 501d946 PR: none OWNED_SCOPE: workspace comparison drawer and response collection state SENSITIVE_SURFACES_TOUCHED: none CHANGED: apps/browser-extension/workspace/workspace.js; apps/browser-extension/workspace/workspace.css AC_STATUS: implementation complete; full verification pending VALIDATION: node --check workspace/workspace.js passed; git diff --check passed SECURITY_PERMISSION_DELTA: none KNOWN_RISKS: full regression and browser validation are intentionally deferred BLOCKERS: none NEXT: run focused regression tests and browser-backed manual validation, then close Issue #5
CoderLambert commented 2026-09-15 01:01:59 +08:00 (Migrated from github.com)

[CLOSURE]

Merged commit: 501d946

Acceptance Criteria:

  • complete
  • Failed response cards expose an isolated retry action.
  • Retry state prevents duplicate requests for the same Provider.
  • Existing successful snapshots are retained.
  • Results arriving after Provider removal are ignored.

Validation:

Scope deviation:

  • NONE

Security/permission delta:

  • NONE

Follow-ups:

  • Live Provider selector/collection smoke remains a separate isolated verification task.
[CLOSURE] Merged commit: 501d946 Acceptance Criteria: - complete - Failed response cards expose an isolated retry action. - Retry state prevents duplicate requests for the same Provider. - Existing successful snapshots are retained. - Results arriving after Provider removal are ignored. Validation: - focused: PASS (workspace syntax check and diff review) - repository/regression: PASS (CI run https://github.com/CoderLambert/ai-parallel/actions/runs/34872040678) - browser: N/A for live Provider response collection; credential-free shell smoke passed - required CI: PASS Scope deviation: - NONE Security/permission delta: - NONE Follow-ups: - Live Provider selector/collection smoke remains a separate isolated verification task.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: lambert/ai-parallel#5