docs(8.0): note reserved-field default-throw in RELEASES rc additions

This commit is contained in:
David Snelling 2026-06-20 15:38:06 -07:00
parent 54c7c39669
commit 1bc709d31b

View file

@ -25,6 +25,12 @@ no separate migration doc. **`8.0.0-rc.1` is live** — install with
> `brain.neural()` clustering and `Db.search()` removed (use `find({ vector })` /
> `find()` + aggregation `GROUP BY`); storage config collapsed to one `path` key (the
> pre-8.0 aliases now throw); and `queryAggregate` no longer hangs/staled min-max after a delete.
> **Reserved fields in a `metadata` bag now throw by default** — passing a Brainy-reserved key
> (`confidence`, `weight`, `subtype`, `visibility`, `service`, `createdBy`, `noun`/`verb`, `data`,
> `createdAt`, `updatedAt`, `_rev`) inside `metadata` on `add()`/`update()`/`relate()`/`updateRelation()`
> (untyped/JS callers — TypeScript already blocks it) is rejected with an Error naming the correct
> param, instead of the old silent remap-or-drop. Pass reserved values as their dedicated top-level
> params. Opt back into the legacy behavior with `new Brainy({ reservedFieldPolicy: 'warn' | 'remap' })`.
### Headline: Database as a Value