EventChannel class

What the app did on the way to a step, compared.

The channel that catches what no picture can: a duplicated request, a new analytics call, an N+1 that appeared because somebody moved a fetch into a builder. None of those change a pixel, and all of them are regressions.

Aligned, then diffed field by field — the same shape TreeDiff uses, and for the same reason. This was a multiset over a masked string, which could only ever say this event is gone, that one arrived: fold the body into the key and a 4000-character payload differing in one property prints twice in full, leave it out and a 200 → 500 on the same endpoint is silence. There is no setting of that dial that behaves well.

The mask survives, promoted to the job it was always good at. Collapsing digits is how /cases/case_0 finds /cases/case_1; it is not licence to throw the payload away. Exactly the split TreeDiff draws between the signature that matches and the label that reads.

Constructors

EventChannel({required List<String> added, required List<String> removed, List<EventDelta> deltas = const [], int deltasDropped = 0})
const
EventChannel.of({required List<Map<String, Object?>> base, required List<Map<String, Object?>> head})
factory

Properties

added → List<String>
Events only on head, and only on base, as their masked form.
final
changed → bool
no setter
deltas → List<EventDelta>
Events both sides made, whose fields disagree — one entry per field.
final
deltasDropped → int
How many deltas maxEventDeltas cut. A truncated list that does not say so reads as a complete one.
final
hashCode → int
The hash code for this object.
no setterinherited
removed → List<String>
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
significant → bool
Whether anything outside the system subchannel differs.
no setter

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() → Map<String, Object?>
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited

Static Methods

fromJson(Map<String, Object?> json) → EventChannel
mask(Map<String, Object?> event) → String
One event reduced to what makes it that event, for reading.
subchannelOf(String masked) → String
The channel an added/removed line travelled on.

Constants

systemSubchannel → const String
The subchannel the framework's own chatter travels on — platform channel traffic the app never wrote a line of.