Commit graph

24 commits

Author SHA1 Message Date
2643222373
refactor(rete): use asEntityId for AGG_FACT sentinel id
Drop the `-1 as unknown as EntityId` double-cast in favour of the
asEntityId() helper exported alongside the type. Single-site, documented
cast instead of an inline double-cast.

Completes the cleanup of `as unknown as` in non-test source across both
packages/chess and packages/rete.
2026-04-19 16:49:50 -06:00
9960ea96cf
refactor(ui): use asEntityId helper at piece-id boundaries
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-19 13:53:45 -06:00
ca6a3df500
fix(rete): inject clock into EventLog; use tsc for DTS; fix cycle.test.ts private access; add Playwright worker limit 2026-04-16 18:25:49 -06:00
a75b6f041b
feat(chess): add localStorage auto-save and restore (P3.14) 2026-04-16 16:24:49 -06:00
35e270e3b5
feat(rete): add Immer snapshots at tick boundaries (P3.2) 2026-04-16 15:25:35 -06:00
c5c00153ab
feat(rete): add replay engine + state-hash determinism verifier (P3.3) 2026-04-16 15:25:13 -06:00
aa5105d1c7
feat(rete): add append-only event log with monotonic sequence (P3.1) 2026-04-16 15:24:11 -06:00
aabd4a396a
feat(rete): add FilterNode (P1.9), ExistentialNode (P2.2), AggregationNode (P2.4) — commit missing files 2026-04-16 14:26:26 -06:00
08515012b1
feat(rete): add NCC nodes (P2.3) 2026-04-16 14:22:21 -06:00
1731c43eb2
feat(rete): add negation nodes (NOT) (P2.1) 2026-04-16 14:21:39 -06:00
0401295bbc
test(rete): port pararules golden tests; tag Phase 1 parity (P1.14)
10 integration tests in packages/rete/tests/golden/ manually wire
AlphaNode → BetaMemory → JoinNode → ProductionNode chains and drive
them via Session.insert/retract. Each test maps to a pararules Nim
reference test (documented in GOLDEN-MAP.md).

Coverage: packages/rete/src at 96.8% statements / 95.4% branch /
97.8% functions — all well above the 90% Phase 1 gate.

Tests: 227 total (166 pre-existing + 61 new golden), all green.
2026-04-16 14:16:19 -06:00
0259268e34
feat(rete): add deterministic conflict resolution (P1.13) 2026-04-16 14:01:32 -06:00
3104d33985
feat(rete): add derived facts with thenFinally + truth maintenance (P1.11) 2026-04-16 13:59:24 -06:00
04804545da
feat(rete): add cycle detection with recursionLimit (P1.12) 2026-04-16 13:58:12 -06:00
572ffd27e0
feat(rete): add query/queryAll API (P1.10) 2026-04-16 13:54:11 -06:00
ea27fd1539
feat(rete): add JoinNode with variable-binding equality tests (P1.8) 2026-04-16 13:50:54 -06:00
eb01a88fe9
feat(rete): add BetaMemory + Token propagation (P1.7) 2026-04-16 13:47:50 -06:00
c4b1eb0a61
feat(rete): add JSON serialize/deserialize round-trip (P1.6) 2026-04-16 13:44:14 -06:00
f9b17346c3
feat(rete): add typed rule builder + handler registry (P1.5) 2026-04-16 13:42:21 -06:00
76b21ddd5f
feat(rete): add Session lifecycle (P1.4) 2026-04-16 13:39:54 -06:00
2501edd886
feat(rete): add AlphaNetwork with inverted-index dispatch (P1.3) 2026-04-16 13:38:24 -06:00
72a1723522
feat(rete): add WorkingMemory with deterministic iteration (P1.2) 2026-04-16 13:37:47 -06:00
a027635d27
feat(rete): add schema and typed Fact primitives (P1.1) 2026-04-16 13:36:57 -06:00
f3a38d44be
chore(root): scaffold monorepo — Phase 0 complete 2026-04-16 13:32:21 -06:00