No description
Find a file
Joey Yakimowich-Payne 6cddb1dcd0
chore(sisyphus): T3 Final Verification Wave — all reviewers APPROVE
F1 Plan Compliance Audit — APPROVE
  Primitives [15/15] | Tasks [17/17 top-level] | ADRs [7/7]

F2 Code Quality Review — APPROVE
  Build [PASS] | Lint [PASS] | Tests [1386 pass] | No 'as any' / '@ts-ignore'
  in non-test source | Registry-dispatch pattern throughout (no
  hardcoded kind switches)

F3 Manual QA — APPROVE
  e2e [79/79] including 18/18 custom-modifiers.spec.ts scenarios
  (plan called for 15, shipped 18). All former fixmes passing.

F4 Scope Fidelity — APPROVE
  Recursion cap [3, enforced by MAX_RECURSION_DEPTH in validate.ts]
  Primitive count cap [50, enforced by MAX_PRIMITIVE_COUNT in
  validate.ts + server Zod .max(50)]
  Per-room cap [10, enforced by CUSTOM_MODIFIER_ROOM_CAP in
  broadcast.ts]
  Per-engine custom registry [CustomModifierRegistry owned by
  ChessEngine, never global — cross-room leakage structurally
  impossible]
  T4 smuggling [CLEAN — scripted type is rejected in both
  validate.test.ts and schema.test.ts; no runtime scripted
  descriptor shipped]

T3 boulder complete.
2026-04-19 22:04:36 -06:00
.github/workflows chore(root): scaffold monorepo — Phase 0 complete 2026-04-16 13:32:21 -06:00
.sisyphus chore(sisyphus): T3 Final Verification Wave — all reviewers APPROVE 2026-04-19 22:04:36 -06:00
docs docs(adr): T4 scripted modifiers forward-design 2026-04-19 21:09:52 -06:00
packages feat(ui): share custom modifier with multiplayer room — closes T29 fixmes 2026-04-19 21:56:34 -06:00
scripts feat(rete): add replay engine + state-hash determinism verifier (P3.3) 2026-04-16 15:25:13 -06:00
.gitignore chore: ignore .org.chromium.Chromium.* runtime files 2026-04-19 10:20:42 -06:00
eslint.config.js feat(engine): damage-resistance modifier descriptor 2026-04-18 22:22:31 -06:00
lefthook.yml chore(root): scaffold monorepo — Phase 0 complete 2026-04-16 13:32:21 -06:00
LICENSE chore(root): scaffold monorepo — Phase 0 complete 2026-04-16 13:32:21 -06:00
package.json feat(rete): add replay engine + state-hash determinism verifier (P3.3) 2026-04-16 15:25:13 -06:00
playwright.config.ts 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
README.md chore(root): scaffold monorepo — Phase 0 complete 2026-04-16 13:32:21 -06:00
tsconfig.base.json chore(root): scaffold monorepo — Phase 0 complete 2026-04-16 13:32:21 -06:00
tsconfig.json chore(root): scaffold monorepo — Phase 0 complete 2026-04-16 13:32:21 -06:00
vitest.workspace.ts chore(root): scaffold monorepo — Phase 0 complete 2026-04-16 13:32:21 -06:00

@paratype

A Doorenbos-style Rete II rules engine for TypeScript games, with an authoritative WebSocket chess demo.

Packages

Docs

Getting Started

bun install && bun run check