Commit b2234ae
fix(compat): task #61 P1 — fold huangheng+ziang NIT into bulk_upsert tests
Two non-blocking NITs from @huangheng msg=99b5ffd5 + @ziang msg=84f5c3cc
re-CR on PR #1927 — fold-in to land more complete test:
* `_rejects_mixed_names` now also asserts post-raise zero-side-effect
(`get_entity("Alice") is None` + `get_entity("Bob") is None`) — pins
Lesson #12 v6.4 aggregation-chain invariant: a backend that swapped
validation order to raise AFTER the first row write would silently
leak partial state.
* New `_replay_is_idempotent` case — pins the Protocol's "Forward-only
retry safety: per-part dedup so replays are idempotent" contract.
A backend that appended on replay (instead of dedup-then-replace)
would silently duplicate lineage members under retry.
Coverage delta: 37 → 38 cross-backend cases.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>1 parent e98ce51 commit b2234ae
1 file changed
Lines changed: 34 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
883 | 883 | | |
884 | 884 | | |
885 | 885 | | |
| 886 | + | |
| 887 | + | |
| 888 | + | |
| 889 | + | |
| 890 | + | |
| 891 | + | |
| 892 | + | |
886 | 893 | | |
887 | 894 | | |
888 | 895 | | |
| |||
985 | 992 | | |
986 | 993 | | |
987 | 994 | | |
| 995 | + | |
| 996 | + | |
| 997 | + | |
| 998 | + | |
| 999 | + | |
| 1000 | + | |
| 1001 | + | |
| 1002 | + | |
| 1003 | + | |
| 1004 | + | |
| 1005 | + | |
| 1006 | + | |
| 1007 | + | |
| 1008 | + | |
| 1009 | + | |
| 1010 | + | |
| 1011 | + | |
| 1012 | + | |
| 1013 | + | |
| 1014 | + | |
| 1015 | + | |
| 1016 | + | |
| 1017 | + | |
| 1018 | + | |
| 1019 | + | |
| 1020 | + | |
| 1021 | + | |
0 commit comments