@quilla-be-kit/persistence 2.1.0 → 2.1.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.
Files changed (2) hide show
  1. package/README.md +13 -0
  2. package/package.json +2 -2
package/README.md CHANGED
@@ -237,6 +237,19 @@ never matches in Postgres.
237
237
  `status IS NULL` too, not just rows with some other non-`DONE` status. Confirm
238
238
  that's actually intended before using `__notIn` in a `delete` or `update`.
239
239
 
240
+ **Migration note — casting to `FilterQuery<T>` inside a generic method:**
241
+ `FilterQuery<T>` is now an intersection of several mapped types (the base
242
+ shape plus one per operator group). TypeScript can verify `Partial<Row>`
243
+ against `FilterQuery<Row>` for a *concrete* `Row`, but it can't verify
244
+ `Partial<T>` against `FilterQuery<T>` when `T` is still an unresolved generic
245
+ parameter — even though every added property is optional. If you have a
246
+ generic base repository/DAO method that builds a `Partial<TRow>` and passes
247
+ it somewhere typed `FilterQuery<TRow>`, that assignment will now fail to
248
+ compile. Cast directly to `FilterQuery<TRow>` instead of routing through
249
+ `Partial<TRow>` first — e.g. `{ id } as FilterQuery<TRow>`, not
250
+ `{ id } as Partial<TRow>` — which sidesteps the generic-assignability gap
251
+ entirely (this is the pattern `BaseWriteDao` uses internally).
252
+
240
253
  ## Mappers — row ↔ aggregate conversion
241
254
 
242
255
  `BasePersistenceMapper` handles the bidirectional row↔aggregate conversion
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quilla-be-kit/persistence",
3
- "version": "2.1.0",
3
+ "version": "2.1.1",
4
4
  "description": "Persistence primitives: Database, DAOs with audit injection and optimistic locking, aggregate repositories with scope isolation, UnitOfWork with pluggable outbox.",
5
5
  "license": "MIT",
6
6
  "author": "Max Martinez",
@@ -71,8 +71,8 @@
71
71
  "pg": "^8.20.0",
72
72
  "vitest": "^2.1.3",
73
73
  "zod": "^4.0.0",
74
- "@quilla-be-kit/ddd": "^0.2.1",
75
74
  "@quilla-be-kit/errors": "^0.3.0",
75
+ "@quilla-be-kit/ddd": "^0.2.1",
76
76
  "@quilla-be-kit/execution-context": "^0.3.1"
77
77
  },
78
78
  "scripts": {