@aiquants/auth-directory-drizzle 0.7.1 → 0.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -0
- package/dist/index.d.mts +186 -1037
- package/dist/index.d.ts +186 -1037
- package/dist/index.js +1 -2
- package/dist/index.mjs +1 -2
- package/package.json +15 -12
- package/dist/index.js.map +0 -1
- package/dist/index.mjs.map +0 -1
package/README.md
CHANGED
|
@@ -55,6 +55,13 @@ authorization admin UI uses. Removals are issued one at a time because `AdminRem
|
|
|
55
55
|
descriptor; adding a batch form to the authorization core would breach the package boundary, and the
|
|
56
56
|
count is already bounded by the reconciler's circuit breaker.
|
|
57
57
|
|
|
58
|
+
**Every transaction goes through one seam.** All nine of them are opened by `transactionRunner` in
|
|
59
|
+
`db.ts`, which runs the work again when — and only when — the server rolled it back
|
|
60
|
+
(see [`@aiquants/mssql`](../mssql/README.md) — **only the deadlock victim `1205` is run again**, and the closure is wrapped in `capture` so the ORM cannot destroy that evidence). Calling `db.transaction` directly
|
|
61
|
+
at each site means touching nine places to change the policy, and one of them eventually gets left
|
|
62
|
+
behind without saying so. Configure with `transactionRetry` on any factory's options; the closure
|
|
63
|
+
must keep its side effects inside the database, because a retry runs it from the start.
|
|
64
|
+
|
|
58
65
|
**A refusal does not abort the run.** Stopping at the first refused removal leaves the additions
|
|
59
66
|
committed, the earlier removals committed and the ledger untouched — and every later run recomputes
|
|
60
67
|
the same plan and dies at the same index, so one legitimately-guarded row blocks the whole group's
|