Repository navigation
Merges involving names declared as identities wait for human review - #1425
Conversation
Signed-off-by: Aschenbath <Aschenbath@users.noreply.github.com>
WaylandYang
left a comment
There was a problem hiding this comment.
Thanks @Aschenbath, this does what 0071 decision 7 says, and only that. One gate, hold_for_merge, covers the batch, cached and second-look verdicts and the governor. Either side counts, current name evidence including aliases and mixed prose evidence counts, kept still closes, and a person's decision is unchanged. The tests cover governance on and off and both verdicts. Two small things before merge:
- The three comments in
adjudication_identity_tests.rsshould be in Chinese, per the repo convention. - ADR 0071's status line should name the PRs:
Implemented · 2026-10-25 · #1333, #1390, #1425 · open: none.
Optional: reuse name_vectors::has_identity_evidence! instead of a second copy of the join, and let the governor's consequences tool mention the identity hold. Separately, merge_entities drops fact_evidence when it deduplicates name facts, so a person's merge can take identity status away from the survivor; that's #1426, not this PR's job.
…mplementing PRs in 0071 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Aschenbath <Aschenbath@users.noreply.github.com>
|
Thanks. Both requested changes are in 94b180e: the three comments in |
WaylandYang
left a comment
There was a problem hiding this comment.
Thanks, both changes are in. The optional reuse and the governor wording are fine as a follow-up. Merging.
Why
A confident
sameverdict could automatically merge entities whose names astatementssource declared to be identities. This implements ADR 0071 decision 7 using the existing{"names":"identity"}source flag.Closes #1248
What changes
escalate_identityfor human review.keptverdicts still close automatically, and people can still merge entities themselves.How it was checked
Checked commit
2916e332150bc5baa1435c0a0fd14721bf85f899on Linux x86_64 with Rust 1.99.1, PostgreSQL 16.15, pgvector 0.6.0, and Poppler with CJK data. The test database was created with UTF-8 encoding and all migrations applied.cargo test --workspace: 1,709 passed, 0 failed, 6 ignored, withUTOPIA_TEST_REQUIRE_DB=1andUTOPIA_TEST_REQUIRE_PDFTOTEXT=1. The six ignored tests are existing live-service and isolated delivery experiments.cargo clippy --workspace --all-targets -- -D warnings: passed.cargo fmt --all --check: passed.pnpm build --outDir /var/tmp/utopia-1248/web-dist, andpnpm test: passed; 326 web tests across 47 files.The three new database-backed regressions use mocked confident model verdicts to cover governance on/off, direct batch and second-look decisions, aliases with mixed evidence, cached verdict replay after a source flag change, kept decisions, and sources without the identity flag.
Before review