Preserve isolated local drafts across navigation and reload
This commit is contained in:
@@ -80,3 +80,11 @@
|
||||
卡片展示关联任务标签、状态与summary简介。宽详情展示背景、完整候选方案、自由填写、主控检查结论及版本历史;有候选方案仍允许只填写意见,推荐不预选,显式提交。提交携当前revision,失败保留草稿和幂等键;版本冲突刷新并要求重新确认,不能偷偷提交到新版本。需要重新考虑时保留旧快照供对照。
|
||||
|
||||
详情内独立咨询按decision_id隔离轮询、消息、草稿及client_key,发送显示pending并防重;未绑定显示待接通,不模拟回复。完成归档后只读历史。组件不修改普通沟通页,用户选择仍在卡片;事实核实回复、接受结论与实际授权分别呈现。键盘/窄屏可访问,不新增依赖。隔离验收覆盖切换决策不串消息、失败草稿、版本冲突、只填意见、历史及只读状态;真实会话未接通不显示已验证。
|
||||
|
||||
## 草稿保存与恢复反馈
|
||||
|
||||
沟通、决策提交和独立咨询分别保存草稿,按实例与对应目标隔离;切页、刷新、重新登录后恢复。草稿状态与发送状态分开,失败或结果未知保留输入,不自动重发;明确成功后才清对应内容。提供当前单项“清除草稿”,不能清除其他决策/会话的输入。存储不可用明确提示尚未持久保存,不显示虚假的已保存状态。
|
||||
|
||||
决策版本改变显示旧稿与重确认提示,重新阅读后才允许使用新版本提交,不静默把旧选项视为批准。已完成决策只读历史与草稿处理不得触发提交。页面升级提示不得自动重载丢失正在编辑内容;无本地数据的旧丢稿不声称可恢复。草稿只在网页本地,不上传,不包含token。
|
||||
|
||||
单项清除按钮须说明范围:决策/咨询包含对应范围旧版本,沟通仅当前入口session;两种决策输入互不清除。存储失败时允许继续保留当前输入和重试保存,禁止发送并提示刷新/退出可能丢失。成功但发现新编辑时保留新稿并说明,不显示全部已清。恢复旧版本内容必须保留版本提示与显式重确认;本地保存提示不代表已发送、模型已回复或决策已完成。
|
||||
|
||||
@@ -168,3 +168,14 @@ POST /consultation-credential由普通凭据签发专用token,数据库只存h
|
||||
完成与归档前须检查绑定咨询session消息:有queued/claimed/uncertain未完成输入时返回409,保持可交流;completed立即拒绝新咨询POST,历史GET保留。fleet仅在archive_status=archived且本机worker无inflight/pending_completion/needs_reconciliation时停止自有子进程,不终止模型writer。已入队旧通知接收者fresh GET核对revision,过期静默停止,不能由快照直接执行。有限CLI及fleet负责已有绑定的桥接,不自行创建或归档宿主会话。
|
||||
|
||||
真实决策独立会话的创建、绑定后签发有限凭据、桥接、事实核实和完成归档步骤见 [独立决策会话接入](decision-sessions.md)。notifier调用决策通知submitting接口后才向宿主队列外发,保留不可变快照与未知结果保护;不能仅清应用队列冒充取消宿主输入。
|
||||
|
||||
|
||||
页面升级与旧草稿:状态同步不会替换已加载的网页代码。服务公布当前前端入口文件,版本变化只提示,不自动整页重载或重发。新版草稿保存机制应在同浏览器、同实例及对应会话/决策范围内恢复输入与重试信息;存储失败或旧页面尚未支持持久保存时明确提示先自行保留内容再重载,不能把复制作为正常持久化方案。旧提交缺expected_revision仍拒绝写入,不猜版本;核对response/history和咨询消息确认落库结果,再由人类入口说明操作。旧版已丢稿无服务证据不得承诺恢复。
|
||||
|
||||
## 本地草稿实际存储契约
|
||||
|
||||
同源localStorage使用workbench-draft-v1:前缀加JSON数组作用域。沟通为[instance_id, communication, 入口session];决策为[instance_id, decision, decision_id, revision];咨询为[instance_id, consultation, decision_id, session_id或unbound, revision]。不包含token,不上传未提交正文。实例或有效版本尚未就绪时禁发,不猜版本;新浏览器、不同源/实例或清理浏览器数据不保证恢复。重新登录不以token作为草稿身份,因此同浏览器同范围可恢复,并非按用户账号隔离。
|
||||
|
||||
每次输入写入,POST前先持久保存attempt幂等信息;失败或结果未知保留,刷新后可由用户明确重试,不自动发送。读取/保存失败显示具体风险并阻止发送,可重试保存;清除失败提示旧稿可能残留,不应重复提交。成功只清对应当前版本草稿,比较已存值防迟到响应删掉随后编辑;咨询成功不清决策选择。只确认接口成功不表示模型已回复或业务验收完成。
|
||||
|
||||
当前版本无记录时可读取同作用域最近旧版本草稿,保留旧revision,须用户明确重确认,决策旧选项清除后重新选择/检查意见。已完成决策的残留草稿只读,不自动重交。显式单项清除:沟通仅当前session;决策仅该决策所有版本;咨询仅该决策与咨询session范围所有版本,互不影响。清除留下无正文cleared标记防旧版本草稿重新出现。绑定session变化属于不同范围,不承诺自动跨绑定迁移。
|
||||
|
||||
Reference in New Issue
Block a user