22 lines
1.0 KiB
Markdown
22 lines
1.0 KiB
Markdown
# Tasks — network-plugin-content-delivery-throttle
|
|
|
|
> Blocked on: `network-plugin-content-delivery` (core), `@suaveplan/rate-limiter`, `network-plugin-transport-manager`.
|
|
|
|
## 1. Implementation
|
|
|
|
- [x] 1.1 `src/throttle/bandwidth-throttler.ts` — `BandwidthThrottler`.
|
|
- [x] 1.2 Per-peer + global token buckets via `@suaveplan/rate-limiter`-style algorithm.
|
|
- [x] 1.3 Tag chunk dispatches with `priority: "bulk"` for transport manager.
|
|
- [x] 1.4 Emit `cd:throttled` on delayed dispatch.
|
|
- [x] 1.5 Wire `ContentDeliveryPlugin.throttler` getter.
|
|
|
|
## 2. Tests
|
|
|
|
- [x] 2.1 `src/throttle/bandwidth-throttler.spec-conformance.test.ts` — per-peer rate, global rate, BULK priority, event emission.
|
|
|
|
## 3. Verify
|
|
|
|
- [x] 3.1 `bunx turbo lint typecheck test --filter=@suaveplan/network-plugin-content-delivery` green.
|
|
- [x] 3.2 `bunx turbo test:coverage --filter=@suaveplan/network-plugin-content-delivery` 100/100/100/100.
|
|
- [x] 3.3 `bun scripts/openspec-conformance.ts @suaveplan/network-plugin-content-delivery` PASS (build green; CLAUDE-Rule-11 runner imports verified).
|