Commit graph CultLib/docs/cultnet-transport-parity.md
Author SHA1 Message Date
Meta Vens
95493862bd Split the Python runtime into cultcache-py, cultnet-py, cultmesh-py
One distribution named cultcache-py carried three libraries. Rust and
TypeScript layer them as cultcache < cultnet < cultmesh; Python now does
the same, one package per layer, module names unchanged so every
`from cultmesh_py import ...` keeps working.

Two imports ran against that layering and are resolved by moving code to
where the dependency direction says it lives, not by adding a shim:

- cultnet_py.interop_peer imported the Verse/peer catalog, authority
  lease, stream, and simulation-fact contracts from cultmesh_py. They are
  wire contracts a bare peer has to speak without owning a node, which is
  why cultnet-rs and cultnet-ts keep them in the net layer. They now live
  in cultnet_py.cultmesh_contracts; cultmesh_py re-exports them.
- cultcache_py.benchmark imported cultnet_py. It measures framed CultNet
  parse beside cache paths, so it and compare_csharp move to cultnet_py.
  verify checks all three packages and moves to cultmesh_py.

The single 6,693-line test module is split by what each test touches: a
test using any cultmesh_py name lands in cultmesh-py, else cultnet_py in
cultnet-py, else cultcache-py. Each suite runs with only its layer and the
layers below on the path, so a test that reaches up fails to import
rather than quietly binding the packages back together. 11 / 53 / 78 =
the same 142.

Workflows install all three; the publish job is one matrix over the
three packages keyed by tag prefix. The TS test harnesses put all three
src directories on PYTHONPATH. cultcache-py bumps to 0.2.0 because it no
longer contains cultnet_py or cultmesh_py; the new packages start at
0.1.0. Nothing was ever published, so no PyPI consumer moves.

  cultcache-py  11 tests, path: cultcache-py/src
  cultnet-py    53 tests, path: + cultnet-py/src
  cultmesh-py   78 tests, path: + cultmesh-py/src
  python -m cultmesh_py.verify -> ok, all five checks
  cultnet_py.interop_peer imports with cultmesh_py absent

Not run here: the cultnet-ts interop ring and cultcache-ts store matrix
need dotnet/kotlin peers; their PYTHONPATH change is four lines.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-10 13:10:47 +02:00
Meta Vens
75c180782a Acknowledge retransmits across RUDP horizons 2026-08-23 19:15:22 +02:00
Meta Vens
a2e3d3fa35 Bind reliable windows to the RUDP ACK horizon 2026-08-23 18:54:18 +02:00
Meta Vens
f4dabfefb0 Bound RUDP reliable transmission windows 2026-08-23 18:35:49 +02:00
Meta Vens
f06914d7c5 Add C# RUDP schema service host 2026-06-17 14:48:53 +01:00
Meta Vens
1c85eabefb Add C# multi-peer RUDP listener 2026-06-17 14:28:18 +01:00
Meta Vens
ba5f4ef824 Update RUDP service adoption map 2026-06-17 14:09:52 +01:00
Meta Vens
114fb86b0f Add C# RUDP schema client adoption path 2026-06-17 13:27:56 +01:00
Meta Vens
b2f2e1a0ff Add Kotlin interop RUDP serve dial path 2026-06-17 12:45:30 +01:00
Meta Vens
cd3f3c28f6 Add C# interop RUDP serve dial path 2026-06-17 11:22:17 +01:00
Meta Vens
c80703172a Add Rust interop RUDP serve dial path 2026-06-17 10:07:37 +01:00
Meta Vens
91d9ecda93 Add Python interop RUDP serve dial path 2026-06-17 08:05:41 +01:00
Meta Vens
25847c0845 Add TypeScript interop RUDP serve dial path 2026-06-17 07:28:47 +01:00
Meta Vens
8da99394cc Add Python CultMesh RUDP server listener 2026-06-17 06:34:30 +01:00
Meta Vens
b72bc7803b Add Rust CultMesh connected RUDP clients 2026-06-17 06:04:00 +01:00
Meta Vens
2ec98d60da Add Kotlin CultMesh connected RUDP clients 2026-06-17 05:42:02 +01:00
Meta Vens
5af8ed57f7 Add C# CultMesh connected RUDP clients 2026-06-17 05:16:46 +01:00
Meta Vens
d131d0f42a Add Rust RUDP schema message helpers 2026-06-17 04:29:22 +01:00
Meta Vens
cc0d52bfc5 Add TypeScript CultMesh RUDP peer helpers 2026-06-17 03:58:12 +01:00
Meta Vens
ce9d709dae Add Python RUDP schema client transport 2026-06-16 23:37:59 +01:00
Meta Vens
678a72c3ca Clarify role-scoped parity claim 2026-06-16 19:02:25 +01:00
Meta Vens
2998f96e73 Add Rust authorized RUDP peer sugar 2026-06-16 17:01:37 +01:00
Meta Vens
6510419439 Add C# CultMesh RUDP facade helpers 2026-06-16 16:57:35 +01:00
Meta Vens
0680855925 Mirror authorized RUDP peer sugar 2026-06-16 16:52:20 +01:00
Meta Vens
c399451880 Add Kotlin authorized RUDP peer sugar 2026-06-16 16:45:21 +01:00
Meta Vens
44c010a867 Add Python CultMesh RUDP factories 2026-06-16 16:42:03 +01:00
Meta Vens
3deabd706d Add TS CultMesh RUDP factories 2026-06-16 16:37:16 +01:00
Meta Vens
9120d0a372 Add Python CultMesh catalog factories 2026-06-16 16:31:13 +01:00
Meta Vens
0308167c3e Add Rust CultMesh catalog factories 2026-06-16 16:26:04 +01:00
Meta Vens
6229167992 Document Kotlin schema catalog filters 2026-06-16 16:22:18 +01:00
Meta Vens
da48d58df7 Add TS CultMesh catalog factories 2026-06-16 16:18:08 +01:00
Meta Vens
e65c0d0fc6 Add Python schema transport client port 2026-06-16 16:13:56 +01:00
Meta Vens
2453e44f11 Add C# transport-aware server listeners 2026-06-16 16:07:56 +01:00
Meta Vens
2355617eca Add Kotlin built-in schema catalog 2026-06-16 16:03:18 +01:00
Meta Vens
7711edf930 Advertise TS shard catalog schemas 2026-06-16 15:12:12 +01:00
Meta Vens
3a8844be11 Add Rust shard catalog helpers 2026-06-16 14:58:35 +01:00
Meta Vens
9c21270f40 Unify Kotlin schema transport catalog helpers 2026-06-16 14:42:57 +01:00
Meta Vens
4f69d11644 Add C# schema client transport port 2026-06-16 14:22:41 +01:00
Meta Vens
8bc505f0c1 Add TypeScript shard catalog sync helpers 2026-06-16 13:53:12 +01:00
Meta Vens
30934fc776 Add TypeScript schema catalog sync helpers 2026-06-16 13:36:34 +01:00
Meta Vens
4335ab10bd Fix RUDP ordered control sequence parity 2026-06-16 13:18:39 +01:00
Meta Vens
38d772c250 Add Kotlin catalog transport helpers 2026-06-16 12:57:54 +01:00
Meta Vens
805539384e Add TypeScript TCP peer helper 2026-06-16 12:15:23 +01:00
Meta Vens
49142a78e5 Add transport-aware server peer context 2026-06-16 11:54:54 +01:00
Meta Vens
49a5a2ae30 Add Kotlin WebSocket schema message sugar 2026-06-16 11:41:32 +01:00
Meta Vens
004dccc970 Route service responses through server adapter 2026-06-16 11:29:15 +01:00
Meta Vens
bcdcc8035f Route LiteNetLib service sends through adapter 2026-06-16 11:15:41 +01:00
Meta Vens
e2ea266136 Add Kotlin schema shard facade sugar 2026-06-16 10:43:54 +01:00
Meta Vens
bec4701389 Route Python interop through transport port 2026-06-16 10:33:55 +01:00
Meta Vens
4c80cafe5d Add TS catalog watch ergonomics 2026-06-16 10:11:37 +01:00