Labels: type:perf area:pulse-core
Milestone: Hardening - cross-cutting
Effort: Medium
Depends on: none
Description
Normalization sits on the hot path of every event, and decodedData adds spec
resolution and Zod validation to that path. No benchmark exists, so a change that
halves throughput ships unnoticed until someone runs it at volume.
Acceptance criteria
Implementation notes
- Fixture-driven, not network-driven - a benchmark that hits testnet measures
the network.
Affected files
packages/pulse-core/bench/ (new)
.github/workflows/ci.yml
docs/ARCHITECTURE.md
Labels:
type:perfarea:pulse-coreMilestone: Hardening - cross-cutting
Effort: Medium
Depends on: none
Description
Normalization sits on the hot path of every event, and
decodedDataadds specresolution and Zod validation to that path. No benchmark exists, so a change that
halves throughput ships unnoticed until someone runs it at volume.
Acceptance criteria
NormalizedEventthroughput, decode-with-spec throughput, watcher fan-out at 1 / 100 / 1000 watchers, and cursor write cost per adapterdocs/ARCHITECTURE.mdrecords current numbers and the hardware they were measured onImplementation notes
the network.
Affected files
packages/pulse-core/bench/(new).github/workflows/ci.ymldocs/ARCHITECTURE.md