CultLib/packages
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Meta Vens 2204ce23e9 TypeScript: a definition listing an id registers beside the one owning it; registration refuses typed
Owner beats lister, as in C# and Python. The cache kept one definition per id,
own or compatible, and refused a second with a plain Error, so a v1 definition
could not stay registered beside a v2 declaring v1's id (Soul F8, cult-cache.ts
registration). Now a definition owns its schema id and any number may list it:
a record resolves to the owner, else to the one lister. Several listers and no
owner name no single definition, and the load is refused with
SchemaConflictError naming the id, the record key and the listers.

Every registration refusal is now SchemaConflictError (Soul F10): a second owner
of one id, a second definition with one schema name, and a different definition
for one type. Each names the new definition's id and both schema names.
SchemaConflictError takes an optional message for these uses.

Tests: an owner and a lister register in both orders and each reads its own
records, and a lister alone reads the owner's id; two listers register in both
orders, a record under their id is refused typed without its owner and is the
owner's with it, registered before or after them; each of the three refusals is
a SchemaConflictError in both registration orders.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 15:31:31 +02:00
..
cultcache-py Python: a document listing an id registers beside the one owning it; registration refuses typed 2026-09-30 15:31:25 +02:00
cultcache-rs Rust: a registered type owns its schema id, so only it may name an id over records the file holds 2026-09-30 11:10:06 +02:00
cultcache-ts TypeScript: a definition listing an id registers beside the one owning it; registration refuses typed 2026-09-30 15:31:31 +02:00
cultmath CultMath: Phacelle port moves into MPL-2.0 files; prune cut pinned by boundary points 2026-09-30 00:34:27 +02:00
cultmesh-browser Raise the TypeScript packages' Node floor to 20 2026-09-29 01:21:18 +02:00
cultmesh-kotlin Consolidate CultNet schema contracts into CultLib/contracts/cultnet 2026-09-13 17:27:41 +02:00
cultmesh-py One local schema id in cultmesh-py; catalog writers merge only the same schema; a compatible entry before its owner reads as the owner 2026-09-30 09:01:00 +02:00
cultmesh-rs cultnet-rs, cultmesh-rs: an ended session fails its flush; issued sequences survive a reset; the doc server says goodbye 2026-09-29 20:36:58 +02:00
cultmesh-ts Raise the TypeScript packages' Node floor to 20 2026-09-29 01:21:18 +02:00
cultnet-py Writers derive the catalog from the records they write; the merging is deleted 2026-09-30 10:03:34 +02:00
cultnet-rs Merge origin/main: CultCache publication Cuts 1-3 and the RUDP hardening 2026-09-29 23:33:11 +02:00
cultnet-ts Tests: the directory store names its refused manifest and keeps the entry that publishes a compatible id 2026-09-30 07:45:31 +02:00