Conformance
No visual conformance cases have been published for this package yet. The registry summary below describes what the compat layer implements.expo-app-metrics
native-seam only — upstream JS (AppMetricsRoot, Session wrapper, error handler, network observer hook) runs from the bundle; deterministic in-memory main/foreground sessions round-trip js-originated logs and metrics with native record shapes and validation45%
API coverageWorking (12)
markFirstRender/markInteractive acceptedlogEvent with native validation (empty/reserved/overlong names dropped, body/displayName truncation, attribute sanitization, expo.log.display_name injection)setGlobalAttributes merged per recordreportError js.exception session logsgetMainSession identitygetForegroundSession (ios session while foregrounded, android null)getInactiveSessions emptygetAllCrashReports empty on android and absent on ios like nativeclearStoredEntries per platform (ios no-op, android wipes stored rows)addMetric/addCustomMetricToSession round-tripSession isActive/getEndDate/getMetrics/getLogsNetworkRequestObserver construct/setFilter with listener plumbing that never emits
Missing (5)
no native-generated startup/frame/memory/network metricsno MetricKit/startup crash captureno network interceptionno sqlite persistence across restartstakeMemoryUsageSnapshotAsync and the ios-only get*MetricsAsync extras omitted (os process memory, outside the js contract)