Update nexus: fix conflicts and sync local changes

This commit is contained in:
Shen Wei
2026-04-26 12:06:50 +08:00
parent 191797c01b
commit f09834b5a5
2443 changed files with 254323 additions and 255154 deletions

View File

@@ -1,49 +1,49 @@
---
title: "Evidence-based Merge Proposal"
type: concept
tags: ["multi-agent", "identity", "coordination", "decision-making"]
sources: ["identity-graph-operator"]
last_updated: 2026-04-25
---
# Evidence-based Merge Proposal证据驱动合并提案
## Definition
多 Agent 身份协调中的标准提案协议——当发现两个实体应合并时,不直接执行 merge 操作,而是构造包含完整 per-field evidence 的提案,供其他 Agent 审查后再执行。
## Structure
```json
{
"entity_a_id": "a1b2c3d4-...",
"entity_b_id": "e5f6g7h8-...",
"confidence": 0.87,
"evidence": {
"email_match": { "score": 1.0, "values": ["wsmith@acme.com", "wsmith@acme.com"] },
"name_match": { "score": 0.82, "values": ["William Smith", "Bill Smith"] },
"phone_match": { "score": 1.0, "values": ["+155****0142", "+155****0142"] },
"reasoning": "Same email and phone. Name differs but 'Bill' is a known nickname for 'William'."
}
}
```
## When to Propose vs. Direct Merge
| 场景 | 动作 | 原因 |
|------|------|------|
| 单 Agent置信度 > 0.95 | 直接合并 | 无歧义,无其他 Agent 需协商 |
| 多 Agent置信度中等 | 提案合并 | 让其他 Agent 审查证据 |
| Agent 不同意既有合并 | 提案拆分(含 member_ids | 不直接撤销,由多方验证 |
| 修正数据字段 | 带 expected_version 的直接变更 | 字段更新无需多 Agent 审查 |
## Core Principles
- **永远不带证据不合并**"These look similar" 不是证据per-field comparison scores + confidence thresholds 才是证据
- **提案优于断言**:提出 merge带证据而非直接执行让对方 Agent 有机会审查
- **反压不覆盖**:当 Agent 间存在冲突(一个提出 merge另一个提出 split不直接覆盖另一方证据而是呈现反证据让最强证据胜出
## Conflict Resolution
当两个 Agent 对同一对实体给出矛盾提案时:
1. 标记为 `conflict` 状态
2. 双方添加评论讨论证据
3. 等待人类或仲裁 Agent 最终裁决
4. 永不通过"强行覆盖"解决冲突
---
title: "Evidence-based Merge Proposal"
type: concept
tags: ["multi-agent", "identity", "coordination", "decision-making"]
sources: ["identity-graph-operator"]
last_updated: 2026-04-25
---
# Evidence-based Merge Proposal证据驱动合并提案
## Definition
多 Agent 身份协调中的标准提案协议——当发现两个实体应合并时,不直接执行 merge 操作,而是构造包含完整 per-field evidence 的提案,供其他 Agent 审查后再执行。
## Structure
```json
{
"entity_a_id": "a1b2c3d4-...",
"entity_b_id": "e5f6g7h8-...",
"confidence": 0.87,
"evidence": {
"email_match": { "score": 1.0, "values": ["wsmith@acme.com", "wsmith@acme.com"] },
"name_match": { "score": 0.82, "values": ["William Smith", "Bill Smith"] },
"phone_match": { "score": 1.0, "values": ["+155****0142", "+155****0142"] },
"reasoning": "Same email and phone. Name differs but 'Bill' is a known nickname for 'William'."
}
}
```
## When to Propose vs. Direct Merge
| 场景 | 动作 | 原因 |
|------|------|------|
| 单 Agent置信度 > 0.95 | 直接合并 | 无歧义,无其他 Agent 需协商 |
| 多 Agent置信度中等 | 提案合并 | 让其他 Agent 审查证据 |
| Agent 不同意既有合并 | 提案拆分(含 member_ids | 不直接撤销,由多方验证 |
| 修正数据字段 | 带 expected_version 的直接变更 | 字段更新无需多 Agent 审查 |
## Core Principles
- **永远不带证据不合并**"These look similar" 不是证据per-field comparison scores + confidence thresholds 才是证据
- **提案优于断言**:提出 merge带证据而非直接执行让对方 Agent 有机会审查
- **反压不覆盖**:当 Agent 间存在冲突(一个提出 merge另一个提出 split不直接覆盖另一方证据而是呈现反证据让最强证据胜出
## Conflict Resolution
当两个 Agent 对同一对实体给出矛盾提案时:
1. 标记为 `conflict` 状态
2. 双方添加评论讨论证据
3. 等待人类或仲裁 Agent 最终裁决
4. 永不通过"强行覆盖"解决冲突