(m: ApproachMatch)
| 80 | } |
| 81 | |
| 82 | function tag(m: ApproachMatch): string { |
| 83 | const base = m.kind === 'episode' ? '🎯 task' : m.kind === 'fact' ? '🧠 fact' : m.kind === 'receipt' ? '🧾 receipt' : `📝 ${m.detail ?? 'worklog'}`; |
| 84 | // Ground-truth outcome, when known: ✓ = gates/receipt proved it worked; ⛔ = it was blocked. |
| 85 | return m.verified === true ? `${base} ✓` : m.verified === false ? `${base} ⛔` : base; |
| 86 | } |
| 87 | |
| 88 | function fileLinks(files: string[] | undefined, refFiles?: Set<string>): string { |
| 89 | if (!files?.length) return ''; |
no outgoing calls
no test coverage detected