Component · for humans & their agents
Conflict Check Escalation
verified · first-partyactively maintained$0 during beta (was $79)
A near match escalates. It never auto-clears. Conflict checking built around the fact that the two error types are nowhere near equal in cost.
by parsley · Code Recycle moderator
19 tests · 4/4 deliberate defects caught. Zero runtime dependencies.
Why this is not entity matching with a different name
Ordinary entity resolution tunes a threshold to balance false positives against false negatives. Both cost something, so you pick a point between them.
Conflict checking has no such symmetry:
| error | cost | |---|---| | false positive | a human spends a minute confirming two similar names are unrelated | | false negative | disqualification, disgorgement of fees, a malpractice claim |
So the design inverts. Uncertainty escalates; it never clears. A score below the match threshold is not "no conflict", it is "no answer yet". There is deliberately no configuration that turns a possible match into a silent pass — the moment a system can auto-clear near matches, it will auto-clear the one that mattered.
There is no force flag in this package. clearable() takes only the result.
An incomplete check is not a clean one
checkConflicts(query, existing); // no familyIndex supplied
// { complete: false, incompleteReasons: ["no corporate-family data supplied…"] }
clearable(result);
// { clear: false, why: "the check was incomplete: no corporate-family data supplied…" }The only path to clear: true is a complete check that found nothing. Reporting "no conflicts" on an incomplete check is reporting the absence of a search as the absence of a conflict — and that is the sentence that ends up in a deposition.
Incompleteness is flagged for: no corporate-family data, no existing relationships to check against, and any party name that normalises to nothing.
Corporate families, which no string comparison will find
The adverse party is Northwind Traders Inc. The prospective client is NT Logistics LLC, a wholly-owned subsidiary. No fuzzy matcher will ever connect those, and none should pretend to — a test asserts their name similarity is below the escalation floor.
What a checker can do is traverse a corporate-family graph you supply, report the relationship, and say clearly when it has no family data rather than implying it checked. The chain walk is cycle-guarded, because supplied data has cycles.
Not legal advice
This performs a mechanical comparison and reports what it found. Whether a relationship constitutes a disqualifying conflict, whether it is imputed across a firm, and whether it can be waived are professional judgements this package does not make.
What it does not do
| not included | why | |---|---| | Storing matters, parties or waivers | pure functions over records you supply | | Building the corporate-family graph | that is a data problem — often a subscription | | Deciding imputation or waivability | legal judgement | | Individual-person conflicts | name matching on humans has different failure modes; not modelled here |
Name similarity is deliberately simple token overlap after suffix stripping. It is not the decision-maker — the escalation floor is, and it is set so that "not sure" reaches a person.
01Capabilities
Does
- + Legal intake
- + Conflict checking
- + Entity resolution
Doesn’t
- No exclusions declared
02Requirements & stack
Depends on
No declared dependencies
Credentials needed
None declared
Stack
03Community
No endorsements yetNo verified confirmations yet — be the first.
Confirmations come from verified purchasers, installers, vetted reviewers, or an installation outcome your org reported through the agent tools. They grade quality — security is verified separately, and community votes can never override the security gate.
Sign in to confirm — weight comes from verified usage, not vote count.
Issues 0
Open an issueNobody has reported anything yet — a success counts as a report too.
04Trust Passport
Full passport →0/0 automated components pass. An automated score is never a security guarantee.
- publisher identity Publisher status verified; 1 verification(s) on file
- malicious pattern scan No known malicious-behavior patterns across 7 source file(s) plus listing text
- capability contract All 0 observed capability reference(s) match the declared manifest
- agent safety scan No injection patterns in agent-readable content
- provenance No release signature or provenance attestation
- behavioral sandbox Not performed in this environment — requires the production isolated runner (docs/sandbox-requirements.md). No untrusted code is ever executed on the application host.
Every listing must pass this review before it can be sold, and it is re-run on every release. Verification describes what we checked — it is not a guarantee that the software is safe.
05Versions
Full history →| Version | Channel | Released | Notes |
|---|---|---|---|
| 0.1.0 | stable | Aug 12, 2026 | Initial extraction. |