(items: list[dict])
| 2591 | |
| 2592 | |
| 2593 | def fmt_broken_refs(items: list[dict]): |
| 2594 | if not items: |
| 2595 | print("✅ 没有失效的 raw 引用") |
| 2596 | return |
| 2597 | print(f"⚠️ 发现 {len(items)} 处失效引用:\n") |
| 2598 | for it in items: |
| 2599 | print(f" {it['from_path']}:{it['line']} ({it['from_title']})") |
| 2600 | print(f" → [[{it['target']}#^{it['anchor']}]] 原因: {it['reason']}") |
| 2601 | print() |
| 2602 | |
| 2603 | |
| 2604 | def fmt_unsummarized(items: list[dict]): |