Releases: tractat-us/kuilt
Releases · tractat-us/kuilt
v0.6.0
What's Changed
- feat(examples): add :examples module with tic-tac-toe and chat by @keddie in #478
- docs: update README coordinates to 0.5.0 by @github-actions[bot] in #472
- examples: tic-tac-toe + chat integration over real raft and SeamReplicator by @keddie in #481
- feat(raft): leader-forwarding for propose() + two-player tic-tac-toe example by @keddie in #486
- docs: design spec — RaftNode.propose leader-forwarding by @keddie in #482
- docs: design spec + plan — kuilt-raft exactly-once forwarded proposals by @keddie in #487
- feat(kuilt-raft): exactly-once forwarded proposals (client-serial dedup, §8) by @keddie in #493
- docs: design spec + plan — server-cluster topology (epic #485) by @keddie in #497
- docs: convert G4 CRDT map snippets to source includes by @keddie in #499
- docs: convert G5 CRDT composite/ephemeral snippets to source includes by @keddie in #503
- docs: convert G1 CRDT snippets to source includes by @keddie in #501
- docs: convert G3 CRDT register snippets to source includes by @keddie in #500
- docs: convert G2 CRDT set snippets to source includes by @keddie in #504
- docs: formalize server-cluster topology vocabulary (epic #485) by @keddie in #506
- docs: pull snippets from source via Writerside include (spike on gcounter) by @keddie in #498
- feat(session): ServerClusterReconnect helper — S1a of server-cluster topology (#485) by @keddie in #514
- examples: PNCounter pilot + SeamReplicator convenience API by @keddie in #491
- test(examples): S1b relay-room integration — RaftNode over KtorRoomHost by @keddie in #521
- feat(crdt)!: split :kuilt-crdt (dependency-free) + :kuilt-quilter; rename SeamReplicator→Quilter by @keddie in #522
- docs: how to set up multi-node / consensus virtual-time tests by @keddie in #526
- publish
MultiNodeRaftSimin:kuilt-raft-test, S1c-0 of epic #485 by @keddie in #527 - M=3 leader-change + entry-server-kill, no double-apply (done-when), epic #485 by @keddie in #530
- M=1 exactly-once done-when, epic #485 by @keddie in #529
- test(examples): strengthen M=3 done-when — prove duplicate is actually committed by @keddie in #533
- docs: reframe library around three axes; add getting-started tutorial by @keddie in #473
- docs: sync CLAUDE.md module table after #522 kuilt-crdt/quilter split by @keddie in #536
- test(examples): real-transport failover — ResumeToken degrades to fresh-join on entry-server change (O4) by @keddie in #537
- fix(core): make CompositeSeam ply announces close-safe (#535) by @keddie in #538
- feat: :kuilt-cluster scaffold + ClusterClient API + tier-(a) tests (S3a) by @keddie in #539
- feat: ManagedRaftTransport + wire CoroutineScope.clusterClient (S3b-1, #513) by @keddie in #540
- feat(cluster): S3b-2 — ServerCluster facade + M=3 voter mesh by @keddie in #541
- feat(cluster): S3b-3 — real-socket E2E for ServerCluster + ClusterClient by @keddie in #543
- docs: server-cluster topology — architecture + usage + guide by @keddie in #546
- docs: diagnosing the UncaughtExceptionsBeforeTest leak class (#535) by @keddie in #547
- feat(websocket): injectable selfPeerId on KtorClientLoom (#544) by @keddie in #548
- feat(websocket): injectable selfPeerId on KtorClientLoom (#544) by @keddie in #549
- feat(cluster): production-path clusterClient over real sockets (#544) by @keddie in #550
- fix(core): CompositeSeam send paths tolerate a ply tearing mid-send (#542) by @keddie in #551
- feat(core)!: rename Conn → Connection (no abbreviations) by @keddie in #552
- fix(cluster): route learner→leader in LearnerRouter — M=3 real-socket E2E (#545) by @keddie in #553
- fix(core): register a ply in
livebefore launching its pumps (#554) by @keddie in #555 - fix(cluster): ManagedRaftTransport addresses its single relay peer (#544) by @keddie in #556
- feat(cluster): multi-relay ServerCluster + real-socket cross-relay failover E2E (#544) by @keddie in #557
- docs(cluster): S2a sub-spec — per-server star relay (#511) by @keddie in #558
- docs: convert backtick-blocked snippets via camelCase sample aliases by @keddie in #534
- test(cluster): N-client hardening E2E — leader transfer + relay kill + no-double-apply by @keddie in #560
- fix(cluster): retry changeMembership on concurrent admission race by @keddie in #562
- test(core): close() CompositeSeam in composite tests by @keddie in #564
- docs(kuilt-raft): dedup GC v2 sub-spec — supersession prune by @keddie in #566
- docs(kuilt-game): one-call gameNode bootstrap — design sub-spec by @keddie in #567
- feat(kuilt-raft): dedup GC v2 — supersession prune + closeSession by @keddie in #568
- docs(kuilt-game): resolve gameNode bootstrap-enumeration (#480) by @keddie in #569
- docs(kuilt-game): gameNode bootstrap implementation plan (#480) by @keddie in #573
- test(kuilt-raft): wire closeSession() end-to-end on committed close op (#570) by @keddie in #572
- test(kuilt-game): Seam-based virtual-time bootstrap harness (#480) by @keddie in #574
- feat(kuilt-game): gameNode(seam, voterIds) roster-given bootstrap (#480) by @keddie in #575
- feat(kuilt-game): gameHost/gameJoin appoint-the-host bootstrap (#480) by @keddie in #576
- test(kuilt-game): latecomer admission after first commit (#480) by @keddie in #577
- feat(kuilt-game): EphemeralMap host-declaration presence layer (#480) by @keddie in #578
- feat(kuilt-game): fail fast on duplicate gameHost (#480) by @keddie in #579
- feat(kuilt-game): gameNode samples, incoming-guard + virtual-time test hygiene (#480) by @keddie in #581
- docs(kuilt-raft): decision — no index-horizon idle TTL valve (#571) by @keddie in #582
- feat(kuilt-game): bounded presence-convergence wait for duplicate-host check (#580) by @keddie in #583
- feat(kuilt-game): deterministic lowest-NodeId host arbitration (#584) by @keddie in #585
- feat(kuilt-game): gameHost return-at-quorum mode (#586) by @keddie in #588
- docs(testing): advanceTimeBy over an always-on timer is O(span/interval) work by @keddie in #591
- feat(kuilt-core): NamedMux — string-keyed multiplexer over a Seam (#589) by @keddie in #590
- feat(kuilt-game): GameSession return type with named app channels (#589) by @keddie in #592
- docs: add :kuilt-cluster to the module table by @keddie in #595
- docs: refresh module table — game bootstrap API, Conn→Connection by @keddie in #596
- docs(kuilt-raft,kuilt-cluster): currency pass for dedup-GC/closeSession + cluster surface by @keddie in #597
- docs(writerside): consistency pass — module table + NamedMux + game bootstrap by @keddie in #601
- docs(kuilt-game): bootstrap API doc completeness + samples by @keddie in #598
- docs(guide): note kuilt-stream/kuilt-tcp in fabric-kit by @keddie in #605
- docs(guide): kuilt-game bootstrap topic by @keddie in #606
- docs(kuilt-core): NamedMux + multiplexing surface + freshness pass by @keddie in #599
- feat(kuilt-game): gameJoin fails loud with RosterFullException when roster is full (#587) by @keddie in #602
- refactor(...
v0.5.0
What's Changed
- feat(publish): create GitHub Release on tag push by @keddie in #435
- fix(kuilt-websocket): scrub internal project references from KtorRoomHost KDoc by @keddie in #438
- fix(kuilt-websocket): remove application-specific defaults from KtorRoomHost by @keddie in #442
- fix(kuilt-mdns): require callers to supply service type by @keddie in #441
- fix(kuilt-multipeer): require callers to supply MC service type, remove hardcoded default by @keddie in #443
- fix(kuilt-multipeer): rename dylib and cdecl symbols from fireworks_mc to kuilt by @keddie in #444
- fix(kuilt-mdns): replace fireworks-* test fixture names with kuilt-* by @keddie in #445
- fix(kuilt-webrtc): public-API hygiene — remove app vocabulary, inject RNG, scrub internal refs by @keddie in #463
- docs(kuilt-raft,kuilt-core): scrub internal PR-stack labels and spec paths from shipped KDoc by @keddie in #462
- fix(kuilt-mdns): generic txtExtensions, MDNSServiceType normalization, DI-agnostic KDoc by @keddie in #464
- fix(kuilt-session): require room-factory clock, surface accept-loop errors, align WindowOpened to Instant by @keddie in #465
- docs: note stale ci-required draft-run gotcha in merge polling by @keddie in #468
- docs(kuilt-raft): correct changeMembership KDoc — voter-set changes ARE supported via joint consensus by @keddie in #467
- fix: use 0.4.0-dev.<run_number> for dev build versions by @keddie in #469
- fix: bump version line to 0.5 by @keddie in #470
Full Changelog: v0.4.0...v0.5.0
v0.5.0-rc1
What's Changed
Misc. release prep