Package-level declarations

Types

Link copied to clipboard
interface AttachmentStore

A file-backed attachment data source.

Link copied to clipboard
data class AttachmentWriteRequest(val sessionId: String, val eventId: String, val mimeType: String, val bytes: ByteArray, val isRedacted: Boolean, val redactionApplicability: RedactionApplicability = RedactionApplicability.APPLIED)
Link copied to clipboard
sealed interface AttachmentWriteResult
Link copied to clipboard
interface EventStore

A single-source, durable event data source. Inputs must already be redacted.

Link copied to clipboard
sealed interface EventStoreWriteResult
Link copied to clipboard

What a flagged evidence item was captured from.

Link copied to clipboard

QA-assigned impact of one evidence report, independent of any tracker's own severity scale.

Link copied to clipboard
interface EvidenceStore

Durable, per-session QA evidence tray: the flagged items a bug report is built from, plus its typed draft. This is the server-side precedent io.devconsole.timeline.TimelineAnnotations already set for durable, per-subject annotations -- evidence is a second, richer instance of the same idea, not a new pattern.

Link copied to clipboard
sealed interface EvidenceWriteResult
Link copied to clipboard

Whether redaction was a meaningful step for one attachment's content.

Link copied to clipboard
class RetainedCaptureQuery(store: () -> EventStore?, currentSessionId: () -> String?)

Session selection and durable capture reads shared by inspector surfaces.

Link copied to clipboard
data class SessionRetentionPolicy(val maxSessions: Int, val maxAgeMs: Long, val maxBytes: Long)

Limits applied to retained app-run sessions by a persistence implementation.

Link copied to clipboard
interface SessionStore

Durable app-run lifecycle and history source.

Link copied to clipboard
data class StoredAttachment(val id: String, val eventId: String, val sessionId: String, val mimeType: String, val originalLength: Long, val storedLength: Long, val truncated: Boolean, val sha256: String, val isRedacted: Boolean, val relativePath: String, val redactionApplicability: RedactionApplicability)
Link copied to clipboard
data class StoredEvent(val id: String, val sessionId: String, val sequence: Long, val pluginId: String, val type: String, val wallTimeMs: Long, val monoTimeNs: Long, val severity: Int, val summary: String, val correlationId: String? = null, val tagsJson: String = "{}", val payloadJson: String? = null, val attachmentId: String? = null, val schemaVersion: Int = 1)

A redacted event ready for durable storage. This contract deliberately has no Android or Room types, so consumers never need to know which persistence mechanism is active.

Link copied to clipboard
data class StoredEvidenceItem(val id: String, val sessionId: String, val kind: EvidenceKind, val subjectId: String, val label: String, val flaggedAtMs: Long, val snapshotJson: String, val attachmentId: String? = null)

One flagged QA item, durable across a browser refresh and an app restart.

Link copied to clipboard
data class StoredEvidenceReport(val sessionId: String, val severity: EvidenceSeverity = EvidenceSeverity.MAJOR, val summary: String? = null, val expected: String? = null, val actual: String? = null, val updatedAtMs: Long = 0)

The typed bug-report draft attached to one session's evidence tray. A session has at most one; saving replaces the prior draft rather than appending to a history.

Link copied to clipboard
data class StoredSession(val id: String, val status: StoredSessionStatus, val startedAtMs: Long, val startedAtMonotonicNs: Long = 0, val endedAtMs: Long? = null, val applicationId: String? = null, val appVersionName: String? = null, val appVersionCode: Long? = null, val buildType: String? = null, val deviceModel: String? = null, val deviceApiLevel: Int? = null, val deviceOsVersion: String? = null, val recordCount: Long = 0, val estimatedBytes: Long = 0)

Durable, already-safe metadata for an app run. Device and build fields are optional so databases created before sessions existed can be backfilled without inventing host information.

Link copied to clipboard

Lifecycle state for one persisted app run.