diff --git a/CLAUDE.md b/CLAUDE.md index fc5bd7a..6c65ff3 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -34,6 +34,7 @@ CI (`.github/workflows/ci.yml`) gates on: lint → format:check → typecheck | `./async` | Promises & async (spec 037) — `$q` (digest-scheduled, Promises/A+-aligned promise toolkit: `defer`/executor constructor/`resolve`/`when`/`reject`/`.then`/`.catch`/`.finally` + the three combiners `all`/`race`/`allSettled`, plus always-on unhandled-rejection reporting), `$timeout` (cancellable one-off deferred task settling a `$q` promise), `$interval` (cancellable repeating task reporting per-tick progress + count-cap resolve). All three are PURE ESM-first factories (injected digest/timer seams) with DI registrations on `ngModule`. `EXCEPTION_HANDLER_CAUSES` grew 10→13 here (`'$q'` / `'$timeout'` / `'$interval'`). | `createQ`, `createTimeout`, `createInterval`, types `QService`, `QPromise`, `QDeferred`, `QExecutor`, `QSettledResult`, `QOptions`, `Thenable`, `AwaitedQ`, `TimeoutService`, `TimeoutOptions`, `IntervalService`, `IntervalOptions`, `TimerId` (the internal promise class is deliberately NOT exported — it would shadow the global `Promise`) | | `./cache` | General-purpose cache factory (spec 038 Slice 1) — `$cacheFactory(id, options?)` produces named, `Map`-backed caches (`put` / `get` / `remove` / `removeAll` / `info` + `destroy` which detaches from the registry so the id is reusable); the factory carries a registry surface (`get` / `info`). Backs `$http`'s opt-in response cache and is usable standalone. PURE ESM-first factory (`createCacheFactory`, fresh registry closure per injector) + DI registration on `ngModule`. **No LRU / `capacity` eviction** (documented deviation — `CacheOptions.capacity` accepted for shape parity, ignored; every cache is an unbounded `Map`). | `createCacheFactory`, types `Cache`, `CacheFactory`, `CacheInfo`, `CacheOptions` | | `./http` | Networking (spec 038) — `$http` (callable returning a `$q` promise of a typed `HttpResponse`; general `$http(config)` form + `get`/`delete`/`head`/`post`/`put`/`patch`/`jsonp` shortcuts), `$httpBackend` (the transport seam — native `fetch` + a `