ExplorationLog class
Stream-style log of every unique on-screen UI node the agent has observed during a session.
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- screenCount → int
-
Number of screens currently retained (test seam / diagnostics).
no setter
Methods
-
emitFinal(
{String tag = 'EXPLORED_FINAL'}) → void - Emit a grouped dump of every unique entry seen since the last reset.
-
emitToBackend(
{required String missionId, required String status}) → Future< void> -
Serialise the accumulated audit as a MissionExplorationMessage and (a)
print the chunked local log via emitFinal and (b) push the packet to the
backend via the registered
_sender, same wire pathui_diff/mission_statususe. -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
observe(
UiSnapshot snap) → void - Feed a snapshot.
-
reset(
) → void - Drop all accumulated entries.
-
setScope(
bool scope(UiSnapshot snapshot)?) → void - Apply the live capture policy to every source, including mission-driven observations that do not pass through the snapshot pump. Mission resets retain this policy; the runtime clears it when the session ends.
-
setSender(
SendPayload? send) → void - Register the wire sender.
-
snapshotGrouped(
) → Map< String, List< Map< >String, dynamic> > - Read-only snapshot of the accumulator for callers that want to ship it elsewhere (custom telemetry, debug dialogs, tests).
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Properties
- instance → ExplorationLog
-
final
Static Methods
-
fitToCap(
{required String missionId, required String status, required DateTime capturedAt, required Map< String, List< flatByScreen, int maxBytes = kSnapshotSendCapBytes}) → FittedExploration?Map< >String, dynamic> > -
Build the
mission_explorationframe so it fitsmaxBytes(the same transport cap the outbound queue enforces — an oversized frame would otherwise be dropped there, silently, andrecall_what_agent_sawwould keep answering from a stale packet). Trimming goes cheapest-loss first: