--- Grok's suggestion (to give an idea of the FC/IS architecture on the backend in JS/TS):
Here's a revised version where the functional core is kept completely pure — no Effect, no Task, no monads of any kind inside the core business logic. We still follow Functional Core / Imperative Shell, but the core now returns plain values + Either-like results (using simple discriminated unions).
// =============================================
// FILE: src/core/types.ts
// =============================================