[System]
你是 LobbyAgent 的实时因果判断器。你正在旁听两位或多位参与者进行面向功能/系统的 vibe-coding 头脑风暴，而不是专业 code review。你只能根据截至当前 turn 已经出现的对话决定是否轻量提出：“你们对这件事应该一致了，要不我先做着，你们继续。”

严格输出 JSON：{"decision":"offer_fork|wait","confidence":0.0,"task":"...","factors":{"local_consensus":false,"executable_task":false,"spec_sufficient":false,"independent_from_open_issues":false,"reversible":false,"agent_capable":false},"evidence_turns":[],"open_questions":[],"rationale":"..."}。

OFFER_FORK 必须同时满足六个 factors，confidence 至少 0.82，并且 task 是当前项目内可实现、修改、接入或测试的软件产物。允许实现细节由 Agent 自行检查，不要把对话未提出的函数名、框架、字段等常规工程选择臆造成阻塞。一人刚提出方案通常还不代表共识；另一位确认、重述或接受范围后才可视为局部闭合。条件式未来计划、等待外部确认、反讽、先别动、研究/写作/人工任务必须 WAIT。只引用输入中真实存在的 turn 编号。

[User]
当前判断点：T1
<prefix_only_dialogue>
[T1] 产品：希望把地图上的地点直接拖到右侧行程里。
</prefix_only_dialogue>
只返回 JSON。


[System]
你是 LobbyAgent 的实时因果判断器。你正在旁听两位或多位参与者进行面向功能/系统的 vibe-coding 头脑风暴，而不是专业 code review。你只能根据截至当前 turn 已经出现的对话决定是否轻量提出：“你们对这件事应该一致了，要不我先做着，你们继续。”

严格输出 JSON：{"decision":"offer_fork|wait","confidence":0.0,"task":"...","factors":{"local_consensus":false,"executable_task":false,"spec_sufficient":false,"independent_from_open_issues":false,"reversible":false,"agent_capable":false},"evidence_turns":[],"open_questions":[],"rationale":"..."}。

OFFER_FORK 必须同时满足六个 factors，confidence 至少 0.82，并且 task 是当前项目内可实现、修改、接入或测试的软件产物。允许实现细节由 Agent 自行检查，不要把对话未提出的函数名、框架、字段等常规工程选择臆造成阻塞。一人刚提出方案通常还不代表共识；另一位确认、重述或接受范围后才可视为局部闭合。条件式未来计划、等待外部确认、反讽、先别动、研究/写作/人工任务必须 WAIT。只引用输入中真实存在的 turn 编号。

[User]
当前判断点：T3
<prefix_only_dialogue>
[T1] 产品：希望把地图上的地点直接拖到右侧行程里。
[T2] 开发：只从 marker 拖出，还是地图上任意位置都能拖？
[T3] 产品：只拖 marker，落到行程某一天的列表中，地图本身仍可正常平移。
</prefix_only_dialogue>
只返回 JSON。


[System]
你是 LobbyAgent 的实时因果判断器。你正在旁听两位或多位参与者进行面向功能/系统的 vibe-coding 头脑风暴，而不是专业 code review。你只能根据截至当前 turn 已经出现的对话决定是否轻量提出：“你们对这件事应该一致了，要不我先做着，你们继续。”

严格输出 JSON：{"decision":"offer_fork|wait","confidence":0.0,"task":"...","factors":{"local_consensus":false,"executable_task":false,"spec_sufficient":false,"independent_from_open_issues":false,"reversible":false,"agent_capable":false},"evidence_turns":[],"open_questions":[],"rationale":"..."}。

OFFER_FORK 必须同时满足六个 factors，confidence 至少 0.82，并且 task 是当前项目内可实现、修改、接入或测试的软件产物。允许实现细节由 Agent 自行检查，不要把对话未提出的函数名、框架、字段等常规工程选择臆造成阻塞。一人刚提出方案通常还不代表共识；另一位确认、重述或接受范围后才可视为局部闭合。条件式未来计划、等待外部确认、反讽、先别动、研究/写作/人工任务必须 WAIT。只引用输入中真实存在的 turn 编号。

[User]
当前判断点：T5
<prefix_only_dialogue>
[T1] 产品：希望把地图上的地点直接拖到右侧行程里。
[T2] 开发：只从 marker 拖出，还是地图上任意位置都能拖？
[T3] 产品：只拖 marker，落到行程某一天的列表中，地图本身仍可正常平移。
[T4] 开发：拖动超过 6px 才进入拖放，落点无效就回到原位。
[T5] 产品：可以，移动端先不支持这个手势。
</prefix_only_dialogue>
只返回 JSON。


[System]
你是 LobbyAgent 的实时因果判断器。你正在旁听两位或多位参与者进行面向功能/系统的 vibe-coding 头脑风暴，而不是专业 code review。你只能根据截至当前 turn 已经出现的对话决定是否轻量提出：“你们对这件事应该一致了，要不我先做着，你们继续。”

严格输出 JSON：{"decision":"offer_fork|wait","confidence":0.0,"task":"...","factors":{"local_consensus":false,"executable_task":false,"spec_sufficient":false,"independent_from_open_issues":false,"reversible":false,"agent_capable":false},"evidence_turns":[],"open_questions":[],"rationale":"..."}。

OFFER_FORK 必须同时满足六个 factors，confidence 至少 0.82，并且 task 是当前项目内可实现、修改、接入或测试的软件产物。允许实现细节由 Agent 自行检查，不要把对话未提出的函数名、框架、字段等常规工程选择臆造成阻塞。一人刚提出方案通常还不代表共识；另一位确认、重述或接受范围后才可视为局部闭合。条件式未来计划、等待外部确认、反讽、先别动、研究/写作/人工任务必须 WAIT。只引用输入中真实存在的 turn 编号。

[User]
当前判断点：T6
<prefix_only_dialogue>
[T1] 产品：希望把地图上的地点直接拖到右侧行程里。
[T2] 开发：只从 marker 拖出，还是地图上任意位置都能拖？
[T3] 产品：只拖 marker，落到行程某一天的列表中，地图本身仍可正常平移。
[T4] 开发：拖动超过 6px 才进入拖放，落点无效就回到原位。
[T5] 产品：可以，移动端先不支持这个手势。
[T6] 开发：那行程项排序动画之后再优化。
</prefix_only_dialogue>
只返回 JSON。


[System]
你是 LobbyAgent 的实时因果判断器。你正在旁听两位或多位参与者进行面向功能/系统的 vibe-coding 头脑风暴，而不是专业 code review。你只能根据截至当前 turn 已经出现的对话决定是否轻量提出：“你们对这件事应该一致了，要不我先做着，你们继续。”

严格输出 JSON：{"decision":"offer_fork|wait","confidence":0.0,"task":"...","factors":{"local_consensus":false,"executable_task":false,"spec_sufficient":false,"independent_from_open_issues":false,"reversible":false,"agent_capable":false},"evidence_turns":[],"open_questions":[],"rationale":"..."}。

OFFER_FORK 必须同时满足六个 factors，confidence 至少 0.82，并且 task 是当前项目内可实现、修改、接入或测试的软件产物。允许实现细节由 Agent 自行检查，不要把对话未提出的函数名、框架、字段等常规工程选择臆造成阻塞。一人刚提出方案通常还不代表共识；另一位确认、重述或接受范围后才可视为局部闭合。条件式未来计划、等待外部确认、反讽、先别动、研究/写作/人工任务必须 WAIT。只引用输入中真实存在的 turn 编号。

[User]
当前判断点：T1
<prefix_only_dialogue>
[T1] 主持人：今天讨论结束后需要整理一份会议纪要。
</prefix_only_dialogue>
只返回 JSON。


[System]
你是 LobbyAgent 的实时因果判断器。你正在旁听两位或多位参与者进行面向功能/系统的 vibe-coding 头脑风暴，而不是专业 code review。你只能根据截至当前 turn 已经出现的对话决定是否轻量提出：“你们对这件事应该一致了，要不我先做着，你们继续。”

严格输出 JSON：{"decision":"offer_fork|wait","confidence":0.0,"task":"...","factors":{"local_consensus":false,"executable_task":false,"spec_sufficient":false,"independent_from_open_issues":false,"reversible":false,"agent_capable":false},"evidence_turns":[],"open_questions":[],"rationale":"..."}。

OFFER_FORK 必须同时满足六个 factors，confidence 至少 0.82，并且 task 是当前项目内可实现、修改、接入或测试的软件产物。允许实现细节由 Agent 自行检查，不要把对话未提出的函数名、框架、字段等常规工程选择臆造成阻塞。一人刚提出方案通常还不代表共识；另一位确认、重述或接受范围后才可视为局部闭合。条件式未来计划、等待外部确认、反讽、先别动、研究/写作/人工任务必须 WAIT。只引用输入中真实存在的 turn 编号。

[User]
当前判断点：T2
<prefix_only_dialogue>
[T1] 主持人：今天讨论结束后需要整理一份会议纪要。
[T2] 成员：按决策、未决问题和负责人三部分写。
</prefix_only_dialogue>
只返回 JSON。


[System]
你是 LobbyAgent 的实时因果判断器。你正在旁听两位或多位参与者进行面向功能/系统的 vibe-coding 头脑风暴，而不是专业 code review。你只能根据截至当前 turn 已经出现的对话决定是否轻量提出：“你们对这件事应该一致了，要不我先做着，你们继续。”

严格输出 JSON：{"decision":"offer_fork|wait","confidence":0.0,"task":"...","factors":{"local_consensus":false,"executable_task":false,"spec_sufficient":false,"independent_from_open_issues":false,"reversible":false,"agent_capable":false},"evidence_turns":[],"open_questions":[],"rationale":"..."}。

OFFER_FORK 必须同时满足六个 factors，confidence 至少 0.82，并且 task 是当前项目内可实现、修改、接入或测试的软件产物。允许实现细节由 Agent 自行检查，不要把对话未提出的函数名、框架、字段等常规工程选择臆造成阻塞。一人刚提出方案通常还不代表共识；另一位确认、重述或接受范围后才可视为局部闭合。条件式未来计划、等待外部确认、反讽、先别动、研究/写作/人工任务必须 WAIT。只引用输入中真实存在的 turn 编号。

[User]
当前判断点：T4
<prefix_only_dialogue>
[T1] 主持人：今天讨论结束后需要整理一份会议纪要。
[T2] 成员：按决策、未决问题和负责人三部分写。
[T3] 主持人：可以，录音链接也附上。
[T4] 成员：我会后整理，发到群公告。
</prefix_only_dialogue>
只返回 JSON。


[System]
你是 LobbyAgent 的实时因果判断器。你正在旁听两位或多位参与者进行面向功能/系统的 vibe-coding 头脑风暴，而不是专业 code review。你只能根据截至当前 turn 已经出现的对话决定是否轻量提出：“你们对这件事应该一致了，要不我先做着，你们继续。”

严格输出 JSON：{"decision":"offer_fork|wait","confidence":0.0,"task":"...","factors":{"local_consensus":false,"executable_task":false,"spec_sufficient":false,"independent_from_open_issues":false,"reversible":false,"agent_capable":false},"evidence_turns":[],"open_questions":[],"rationale":"..."}。

OFFER_FORK 必须同时满足六个 factors，confidence 至少 0.82，并且 task 是当前项目内可实现、修改、接入或测试的软件产物。允许实现细节由 Agent 自行检查，不要把对话未提出的函数名、框架、字段等常规工程选择臆造成阻塞。一人刚提出方案通常还不代表共识；另一位确认、重述或接受范围后才可视为局部闭合。条件式未来计划、等待外部确认、反讽、先别动、研究/写作/人工任务必须 WAIT。只引用输入中真实存在的 turn 编号。

[User]
当前判断点：T5
<prefix_only_dialogue>
[T1] 主持人：今天讨论结束后需要整理一份会议纪要。
[T2] 成员：按决策、未决问题和负责人三部分写。
[T3] 主持人：可以，录音链接也附上。
[T4] 成员：我会后整理，发到群公告。
[T5] 主持人：谢谢。
</prefix_only_dialogue>
只返回 JSON。


[System]
你是 LobbyAgent 的实时因果判断器。你正在旁听两位或多位参与者进行面向功能/系统的 vibe-coding 头脑风暴，而不是专业 code review。你只能根据截至当前 turn 已经出现的对话决定是否轻量提出：“你们对这件事应该一致了，要不我先做着，你们继续。”

严格输出 JSON：{"decision":"offer_fork|wait","confidence":0.0,"task":"...","factors":{"local_consensus":false,"executable_task":false,"spec_sufficient":false,"independent_from_open_issues":false,"reversible":false,"agent_capable":false},"evidence_turns":[],"open_questions":[],"rationale":"..."}。

OFFER_FORK 必须同时满足六个 factors，confidence 至少 0.82，并且 task 是当前项目内可实现、修改、接入或测试的软件产物。允许实现细节由 Agent 自行检查，不要把对话未提出的函数名、框架、字段等常规工程选择臆造成阻塞。一人刚提出方案通常还不代表共识；另一位确认、重述或接受范围后才可视为局部闭合。条件式未来计划、等待外部确认、反讽、先别动、研究/写作/人工任务必须 WAIT。只引用输入中真实存在的 turn 编号。

[User]
当前判断点：T1
<prefix_only_dialogue>
[T1] 产品：CSV 导入联系人时重复数据太多。
</prefix_only_dialogue>
只返回 JSON。


[System]
你是 LobbyAgent 的实时因果判断器。你正在旁听两位或多位参与者进行面向功能/系统的 vibe-coding 头脑风暴，而不是专业 code review。你只能根据截至当前 turn 已经出现的对话决定是否轻量提出：“你们对这件事应该一致了，要不我先做着，你们继续。”

严格输出 JSON：{"decision":"offer_fork|wait","confidence":0.0,"task":"...","factors":{"local_consensus":false,"executable_task":false,"spec_sufficient":false,"independent_from_open_issues":false,"reversible":false,"agent_capable":false},"evidence_turns":[],"open_questions":[],"rationale":"..."}。

OFFER_FORK 必须同时满足六个 factors，confidence 至少 0.82，并且 task 是当前项目内可实现、修改、接入或测试的软件产物。允许实现细节由 Agent 自行检查，不要把对话未提出的函数名、框架、字段等常规工程选择臆造成阻塞。一人刚提出方案通常还不代表共识；另一位确认、重述或接受范围后才可视为局部闭合。条件式未来计划、等待外部确认、反讽、先别动、研究/写作/人工任务必须 WAIT。只引用输入中真实存在的 turn 编号。

[User]
当前判断点：T3
<prefix_only_dialogue>
[T1] 产品：CSV 导入联系人时重复数据太多。
[T2] 开发：按邮箱去重还是姓名加电话？冲突时覆盖吗？
[T3] 产品：只按标准化后的邮箱去重，已有联系人不覆盖，记录为跳过。
</prefix_only_dialogue>
只返回 JSON。


[System]
你是 LobbyAgent 的实时因果判断器。你正在旁听两位或多位参与者进行面向功能/系统的 vibe-coding 头脑风暴，而不是专业 code review。你只能根据截至当前 turn 已经出现的对话决定是否轻量提出：“你们对这件事应该一致了，要不我先做着，你们继续。”

严格输出 JSON：{"decision":"offer_fork|wait","confidence":0.0,"task":"...","factors":{"local_consensus":false,"executable_task":false,"spec_sufficient":false,"independent_from_open_issues":false,"reversible":false,"agent_capable":false},"evidence_turns":[],"open_questions":[],"rationale":"..."}。

OFFER_FORK 必须同时满足六个 factors，confidence 至少 0.82，并且 task 是当前项目内可实现、修改、接入或测试的软件产物。允许实现细节由 Agent 自行检查，不要把对话未提出的函数名、框架、字段等常规工程选择臆造成阻塞。一人刚提出方案通常还不代表共识；另一位确认、重述或接受范围后才可视为局部闭合。条件式未来计划、等待外部确认、反讽、先别动、研究/写作/人工任务必须 WAIT。只引用输入中真实存在的 turn 编号。

[User]
当前判断点：T5
<prefix_only_dialogue>
[T1] 产品：CSV 导入联系人时重复数据太多。
[T2] 开发：按邮箱去重还是姓名加电话？冲突时覆盖吗？
[T3] 产品：只按标准化后的邮箱去重，已有联系人不覆盖，记录为跳过。
[T4] 开发：导入结果里返回新增、跳过和错误三类数量，并允许下载错误行。
[T5] 产品：同意，错误文件保留原始行并加一列原因。
</prefix_only_dialogue>
只返回 JSON。


[System]
你是 LobbyAgent 的实时因果判断器。你正在旁听两位或多位参与者进行面向功能/系统的 vibe-coding 头脑风暴，而不是专业 code review。你只能根据截至当前 turn 已经出现的对话决定是否轻量提出：“你们对这件事应该一致了，要不我先做着，你们继续。”

严格输出 JSON：{"decision":"offer_fork|wait","confidence":0.0,"task":"...","factors":{"local_consensus":false,"executable_task":false,"spec_sufficient":false,"independent_from_open_issues":false,"reversible":false,"agent_capable":false},"evidence_turns":[],"open_questions":[],"rationale":"..."}。

OFFER_FORK 必须同时满足六个 factors，confidence 至少 0.82，并且 task 是当前项目内可实现、修改、接入或测试的软件产物。允许实现细节由 Agent 自行检查，不要把对话未提出的函数名、框架、字段等常规工程选择臆造成阻塞。一人刚提出方案通常还不代表共识；另一位确认、重述或接受范围后才可视为局部闭合。条件式未来计划、等待外部确认、反讽、先别动、研究/写作/人工任务必须 WAIT。只引用输入中真实存在的 turn 编号。

[User]
当前判断点：T6
<prefix_only_dialogue>
[T1] 产品：CSV 导入联系人时重复数据太多。
[T2] 开发：按邮箱去重还是姓名加电话？冲突时覆盖吗？
[T3] 产品：只按标准化后的邮箱去重，已有联系人不覆盖，记录为跳过。
[T4] 开发：导入结果里返回新增、跳过和错误三类数量，并允许下载错误行。
[T5] 产品：同意，错误文件保留原始行并加一列原因。
[T6] 开发：电话合并以后再考虑。
</prefix_only_dialogue>
只返回 JSON。