(params: ObservabilityParams)
| 593 | // --------------------------------------------------------------------------- |
| 594 | |
| 595 | async function handleNetworkCommand(params: ObservabilityParams): Promise<DaemonResponse> { |
| 596 | const request = resolveNetworkCommandRequest(params); |
| 597 | if (!request.ok) return request; |
| 598 | const { include, maxEntries, session } = request; |
| 599 | |
| 600 | if (session.device.platform === 'web') { |
| 601 | return await handleWebNetworkCommand({ include, maxEntries }); |
| 602 | } |
| 603 | |
| 604 | const capture = await readSessionNetworkCapture({ |
| 605 | device: session.device, |
| 606 | appBundleId: session.appBundleId, |
| 607 | appLogState: session.appLog?.getState(), |
| 608 | appLogStartedAt: session.appLog?.startedAt, |
| 609 | appLogPath: params.sessionStore.resolveAppLogPath(params.sessionName), |
| 610 | maxEntries, |
| 611 | include, |
| 612 | maxPayloadChars: 2048, |
| 613 | maxScanLines: 4000, |
| 614 | }); |
| 615 | |
| 616 | return { |
| 617 | ok: true, |
| 618 | data: { |
| 619 | ...capture.dump, |
| 620 | active: Boolean(session.appLog), |
| 621 | state: session.appLog?.getState() ?? 'inactive', |
| 622 | backend: capture.backend, |
| 623 | notes: capture.notes, |
| 624 | }, |
| 625 | }; |
| 626 | } |
| 627 | |
| 628 | async function handleWebNetworkCommand(params: { |
| 629 | include: NetworkIncludeMode; |
no test coverage detected