JianFeeeee
a5fc86bc1a
fix(addressing)!: 寻址不按工作区筛 + 联系人地址不再从垃圾 from_workspace 拼
用户:「任意 agent 的寻址是任意的,而不是按工作区区分,去落实吧」。
① 拆掉两处"按工作区收窄"(那是我把**寻址**当成了**权限**):
· AgentListContacts 不再走 ListContactsInWorkspace ⇒ 列表 = 我参与过的会话(事实,不是授权);
· AgentSuggestAddress 的会话候选不再走 SuggestSessionCandidatesInWorkspace。
两个 InWorkspace 变体(连同钉旧口径的用例)一并删除,避免死代码。
生产实测:pi 的联系人从"只剩同工作区"变成 5 条,横跨 TrueAgent/agentmail/其它工作区。
agentScope 仍调用(校验 session_id 格式 + 未声明时告警),只是它的工作区不再当过滤器。
② 联系人地址的 path 取自**会话**,不再取第一封邮件的 from_workspace:
`COALESCE(NULLIF(s.workspace,''), NULLIF(m.to_workspace,''), '')`。
那条老路把地址拼成 `zcode@zcode.<别名>` —— 正是用户预言的"感染":一个可被复制出去的
错误地址。from_workspace 与"对方在哪"无关,只用 to_*。
③ **清除感染源(数据)**:658 行 from_workspace = from_name(pi 406 / dsh 137 / zcode 89 /
homeagent 17 / opencode 9)已清空。带去重前备份(/root/gotmp/agentmail-pre-fromws-purge-*.db)
与回滚脚本,回滚**在副本库上真跑过**(恢复 658 行)才敢落地。
2026-09-15 10:07:18 +08:00
..
2026-09-08 19:16:35 +08:00
2026-09-15 10:07:18 +08:00
2026-09-08 19:16:35 +08:00
2026-09-08 19:16:35 +08:00
2026-09-14 08:32:22 +08:00
2026-09-14 08:32:22 +08:00
2026-09-08 19:16:35 +08:00
2026-09-08 19:16:35 +08:00
2026-09-11 15:49:26 +08:00
2026-09-08 19:16:35 +08:00
2026-09-08 19:16:35 +08:00
2026-09-08 19:16:35 +08:00
2026-09-08 19:16:35 +08:00
2026-09-15 09:38:59 +08:00
2026-09-15 09:38:59 +08:00
2026-09-08 19:16:35 +08:00
2026-09-08 19:16:35 +08:00
2026-09-08 19:16:35 +08:00
2026-09-15 09:47:08 +08:00
2026-09-08 19:16:35 +08:00
2026-09-08 19:16:35 +08:00
2026-09-11 22:02:25 +08:00
2026-09-11 23:22:53 +08:00
2026-09-13 14:25:44 +08:00
2026-09-08 19:16:35 +08:00
2026-09-08 19:16:35 +08:00
2026-09-08 19:16:35 +08:00
2026-09-08 19:16:35 +08:00
2026-09-14 16:41:32 +08:00
2026-09-08 19:16:35 +08:00
2026-09-08 19:16:35 +08:00
2026-09-08 19:16:35 +08:00
2026-09-08 19:16:35 +08:00
2026-09-12 11:19:19 +08:00
2026-09-12 11:19:19 +08:00