prismcast 1.4.2 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (178) hide show
  1. package/dist/app.js +18 -1
  2. package/dist/app.js.map +1 -1
  3. package/dist/browser/cdp.d.ts +2 -1
  4. package/dist/browser/cdp.js +44 -23
  5. package/dist/browser/cdp.js.map +1 -1
  6. package/dist/browser/channelSelection.d.ts +45 -1
  7. package/dist/browser/channelSelection.js +164 -27
  8. package/dist/browser/channelSelection.js.map +1 -1
  9. package/dist/browser/display.d.ts +0 -4
  10. package/dist/browser/display.js +0 -7
  11. package/dist/browser/display.js.map +1 -1
  12. package/dist/browser/index.d.ts +5 -0
  13. package/dist/browser/index.js +14 -0
  14. package/dist/browser/index.js.map +1 -1
  15. package/dist/browser/precaching.d.ts +5 -0
  16. package/dist/browser/precaching.js +112 -0
  17. package/dist/browser/precaching.js.map +1 -0
  18. package/dist/browser/tuning/directv.d.ts +2 -0
  19. package/dist/browser/tuning/directv.js +723 -0
  20. package/dist/browser/tuning/directv.js.map +1 -0
  21. package/dist/browser/tuning/fox.d.ts +2 -2
  22. package/dist/browser/tuning/fox.js +141 -22
  23. package/dist/browser/tuning/fox.js.map +1 -1
  24. package/dist/browser/tuning/hbo.d.ts +2 -2
  25. package/dist/browser/tuning/hbo.js +110 -41
  26. package/dist/browser/tuning/hbo.js.map +1 -1
  27. package/dist/browser/tuning/hulu.d.ts +2 -2
  28. package/dist/browser/tuning/hulu.js +442 -168
  29. package/dist/browser/tuning/hulu.js.map +1 -1
  30. package/dist/browser/tuning/sling.d.ts +2 -2
  31. package/dist/browser/tuning/sling.js +200 -56
  32. package/dist/browser/tuning/sling.js.map +1 -1
  33. package/dist/browser/tuning/youtubeTv.d.ts +2 -2
  34. package/dist/browser/tuning/youtubeTv.js +243 -57
  35. package/dist/browser/tuning/youtubeTv.js.map +1 -1
  36. package/dist/browser/video.d.ts +1 -1
  37. package/dist/browser/video.js +4 -2
  38. package/dist/browser/video.js.map +1 -1
  39. package/dist/channels/index.js +280 -34
  40. package/dist/channels/index.js.map +1 -1
  41. package/dist/config/health.d.ts +78 -0
  42. package/dist/config/health.js +202 -0
  43. package/dist/config/health.js.map +1 -0
  44. package/dist/config/paths.d.ts +10 -0
  45. package/dist/config/paths.js +14 -0
  46. package/dist/config/paths.js.map +1 -1
  47. package/dist/config/profiles.d.ts +6 -4
  48. package/dist/config/profiles.js +65 -14
  49. package/dist/config/profiles.js.map +1 -1
  50. package/dist/config/providerPacks.d.ts +46 -0
  51. package/dist/config/providerPacks.js +200 -0
  52. package/dist/config/providerPacks.js.map +1 -0
  53. package/dist/config/providers.d.ts +36 -3
  54. package/dist/config/providers.js +168 -8
  55. package/dist/config/providers.js.map +1 -1
  56. package/dist/config/sites.d.ts +1 -12
  57. package/dist/config/sites.js +38 -5
  58. package/dist/config/sites.js.map +1 -1
  59. package/dist/config/userChannels.d.ts +12 -0
  60. package/dist/config/userChannels.js +81 -14
  61. package/dist/config/userChannels.js.map +1 -1
  62. package/dist/config/userConfig.d.ts +5 -1
  63. package/dist/config/userConfig.js +58 -6
  64. package/dist/config/userConfig.js.map +1 -1
  65. package/dist/config/userProfiles.d.ts +81 -0
  66. package/dist/config/userProfiles.js +424 -0
  67. package/dist/config/userProfiles.js.map +1 -0
  68. package/dist/routes/config/channels/index.d.ts +3 -0
  69. package/dist/routes/config/channels/index.js +3 -0
  70. package/dist/routes/config/channels/index.js.map +1 -0
  71. package/dist/routes/config/channels/routes.d.ts +6 -0
  72. package/dist/routes/config/channels/routes.js +797 -0
  73. package/dist/routes/config/channels/routes.js.map +1 -0
  74. package/dist/routes/config/channels/table.d.ts +46 -0
  75. package/dist/routes/config/channels/table.js +811 -0
  76. package/dist/routes/config/channels/table.js.map +1 -0
  77. package/dist/routes/config/index.d.ts +37 -0
  78. package/dist/routes/config/index.js +81 -0
  79. package/dist/routes/config/index.js.map +1 -0
  80. package/dist/routes/config/providers.d.ts +18 -0
  81. package/dist/routes/config/providers.js +573 -0
  82. package/dist/routes/config/providers.js.map +1 -0
  83. package/dist/routes/config/settings.d.ts +39 -0
  84. package/dist/routes/config/settings.js +820 -0
  85. package/dist/routes/config/settings.js.map +1 -0
  86. package/dist/routes/index.d.ts +3 -2
  87. package/dist/routes/index.js +7 -4
  88. package/dist/routes/index.js.map +1 -1
  89. package/dist/routes/playlist.d.ts +5 -1
  90. package/dist/routes/playlist.js +32 -7
  91. package/dist/routes/playlist.js.map +1 -1
  92. package/dist/routes/providers.d.ts +6 -0
  93. package/dist/routes/providers.js +166 -0
  94. package/dist/routes/providers.js.map +1 -0
  95. package/dist/routes/root/content.d.ts +32 -0
  96. package/dist/routes/root/content.js +857 -0
  97. package/dist/routes/root/content.js.map +1 -0
  98. package/dist/routes/root/index.js +197 -0
  99. package/dist/routes/root/index.js.map +1 -0
  100. package/dist/routes/root/scripts/channels.d.ts +1 -0
  101. package/dist/routes/root/scripts/channels.js +745 -0
  102. package/dist/routes/root/scripts/channels.js.map +1 -0
  103. package/dist/routes/root/scripts/config.d.ts +1 -0
  104. package/dist/routes/root/scripts/config.js +1662 -0
  105. package/dist/routes/root/scripts/config.js.map +1 -0
  106. package/dist/routes/root/scripts/index.d.ts +3 -0
  107. package/dist/routes/root/scripts/index.js +8 -0
  108. package/dist/routes/root/scripts/index.js.map +1 -0
  109. package/dist/routes/root/scripts/status.d.ts +1 -0
  110. package/dist/routes/root/scripts/status.js +436 -0
  111. package/dist/routes/root/scripts/status.js.map +1 -0
  112. package/dist/routes/root/styles.d.ts +5 -0
  113. package/dist/routes/root/styles.js +447 -0
  114. package/dist/routes/root/styles.js.map +1 -0
  115. package/dist/routes/ui.js +8 -3
  116. package/dist/routes/ui.js.map +1 -1
  117. package/dist/service/commands.d.ts +5 -3
  118. package/dist/service/commands.js +117 -33
  119. package/dist/service/commands.js.map +1 -1
  120. package/dist/service/generators.d.ts +27 -0
  121. package/dist/service/generators.js +97 -6
  122. package/dist/service/generators.js.map +1 -1
  123. package/dist/streaming/hls.js +18 -1
  124. package/dist/streaming/hls.js.map +1 -1
  125. package/dist/streaming/lifecycle.js +1 -1
  126. package/dist/streaming/lifecycle.js.map +1 -1
  127. package/dist/streaming/monitor.d.ts +1 -38
  128. package/dist/streaming/monitor.js +2 -289
  129. package/dist/streaming/monitor.js.map +1 -1
  130. package/dist/streaming/recovery.d.ts +143 -0
  131. package/dist/streaming/recovery.js +286 -0
  132. package/dist/streaming/recovery.js.map +1 -0
  133. package/dist/streaming/registry.d.ts +1 -1
  134. package/dist/streaming/setup.d.ts +1 -1
  135. package/dist/streaming/setup.js +3 -1
  136. package/dist/streaming/setup.js.map +1 -1
  137. package/dist/streaming/statusEmitter.d.ts +4 -2
  138. package/dist/streaming/statusEmitter.js +5 -0
  139. package/dist/streaming/statusEmitter.js.map +1 -1
  140. package/dist/types/channels.d.ts +68 -0
  141. package/dist/types/channels.js +2 -0
  142. package/dist/types/channels.js.map +1 -0
  143. package/dist/types/config.d.ts +127 -0
  144. package/dist/types/config.js +2 -0
  145. package/dist/types/config.js.map +1 -0
  146. package/dist/types/index.d.ts +7 -429
  147. package/dist/types/index.js +1 -5
  148. package/dist/types/index.js.map +1 -1
  149. package/dist/types/profiles.d.ts +141 -0
  150. package/dist/types/profiles.js +2 -0
  151. package/dist/types/profiles.js.map +1 -0
  152. package/dist/types/selection.d.ts +101 -0
  153. package/dist/types/selection.js +6 -0
  154. package/dist/types/selection.js.map +1 -0
  155. package/dist/types/shared.d.ts +7 -0
  156. package/dist/types/shared.js +6 -0
  157. package/dist/types/shared.js.map +1 -0
  158. package/dist/types/streaming.d.ts +96 -0
  159. package/dist/types/streaming.js +2 -0
  160. package/dist/types/streaming.js.map +1 -0
  161. package/dist/utils/debugFilter.js +3 -1
  162. package/dist/utils/debugFilter.js.map +1 -1
  163. package/dist/utils/format.d.ts +7 -0
  164. package/dist/utils/format.js +22 -0
  165. package/dist/utils/format.js.map +1 -1
  166. package/dist/utils/index.d.ts +1 -0
  167. package/dist/utils/index.js +1 -0
  168. package/dist/utils/index.js.map +1 -1
  169. package/dist/utils/sanitize.d.ts +14 -0
  170. package/dist/utils/sanitize.js +37 -0
  171. package/dist/utils/sanitize.js.map +1 -0
  172. package/package.json +5 -3
  173. package/dist/routes/config.d.ts +0 -76
  174. package/dist/routes/config.js +0 -2187
  175. package/dist/routes/config.js.map +0 -1
  176. package/dist/routes/root.js +0 -3158
  177. package/dist/routes/root.js.map +0 -1
  178. /package/dist/routes/{root.d.ts → root/index.d.ts} +0 -0
@@ -1,6 +1,6 @@
1
1
  import { LOG, formatDuration, formatError, getAbortController, unregisterAbortController } from "../utils/index.js";
2
2
  import { formatKeyframeStatsSummary, formatSessionStatsSummary } from "./fmp4Segmenter.js";
3
- import { formatRecoveryMetricsSummary, getTotalRecoveryAttempts } from "./monitor.js";
3
+ import { formatRecoveryMetricsSummary, getTotalRecoveryAttempts } from "./recovery.js";
4
4
  import { getStream, unregisterStream } from "./registry.js";
5
5
  import { clearClients } from "./clients.js";
6
6
  import { clearShowName } from "./showInfo.js";
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/streaming/lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/streaming/lifecycle.ts"],"names":[],"mappings":"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"}
@@ -1,43 +1,6 @@
1
+ import type { RecoveryMetrics, TabReplacementResult } from "./recovery.js";
1
2
  import type { Frame, Page } from "puppeteer-core";
2
3
  import type { Nullable, ResolvedSiteProfile } from "../types/index.js";
3
- /**
4
- * Recovery metrics tracked throughout the stream's lifetime. Returned when the monitor stops for inclusion in termination logs.
5
- */
6
- export interface RecoveryMetrics {
7
- currentRecoveryStartTime: Nullable<number>;
8
- currentRecoveryMethod: Nullable<string>;
9
- pageNavigationAttempts: number;
10
- pageNavigationSuccesses: number;
11
- playUnmuteAttempts: number;
12
- playUnmuteSuccesses: number;
13
- sourceReloadAttempts: number;
14
- sourceReloadSuccesses: number;
15
- tabReplacementAttempts: number;
16
- tabReplacementSuccesses: number;
17
- totalRecoveryTimeMs: number;
18
- }
19
- /**
20
- * Gets the total number of recovery attempts across all methods. Iterates over ATTEMPT_FIELDS to sum all attempt counters, ensuring new recovery methods are
21
- * automatically included without code changes.
22
- * @param metrics - The recovery metrics object.
23
- * @returns Total recovery attempts.
24
- */
25
- export declare function getTotalRecoveryAttempts(metrics: RecoveryMetrics): number;
26
- /**
27
- * Formats the recovery metrics summary for the termination log. Uses the SUCCESS_FIELDS mapping to iterate over all recovery methods, eliminating hardcoded
28
- * checks for each method type. This ensures new recovery methods are automatically included in the summary.
29
- * @param metrics - The recovery metrics object.
30
- * @returns Formatted summary string, or empty string if no recoveries occurred.
31
- */
32
- export declare function formatRecoveryMetricsSummary(metrics: RecoveryMetrics): string;
33
- /**
34
- * Result from tab replacement recovery. When a browser tab becomes unresponsive (consecutive evaluate timeouts), the recovery handler closes the old tab, creates a
35
- * new one with fresh capture, and returns the new page and context. The monitor then updates its internal references to continue monitoring the new tab.
36
- */
37
- export interface TabReplacementResult {
38
- context: Frame | Page;
39
- page: Page;
40
- }
41
4
  /**
42
5
  * Monitors video playback health and attempts escalating recovery when issues are detected. This function runs on an interval, checking video state and triggering
43
6
  * increasingly aggressive recovery actions when playback stalls, pauses, or errors occur.
@@ -1,8 +1,5 @@
1
- /* Copyright(C) 2024-2026, HJD (https://github.com/hjdhjd). All rights reserved.
2
- *
3
- * monitor.ts: Playback health monitoring for PrismCast.
4
- */
5
1
  import { EvaluateTimeoutError, LOG, formatError, getAbortSignal, isSessionClosedError, runWithStreamContext, startTimer } from "../utils/index.js";
2
+ import { RECOVERY_METHODS, capitalize, checkCircuitBreaker, createRecoveryMetrics, formatIssueType, formatRecoveryDuration, getIssueCategory, getIssueDescription, getRecoveryMethod, recordRecoveryAttempt, recordRecoverySuccess, resetCircuitBreaker } from "./recovery.js";
6
3
  import { applyVideoStyles, buildVideoSelectorType, checkVideoPresence, enforceVideoVolume, ensurePlayback, findVideoContext, getVideoState, tuneToChannel, validateVideoElement, verifyFullscreen } from "../browser/video.js";
7
4
  import { getChannelLogo, getShowName } from "./showInfo.js";
8
5
  import { getLastSegmentSize, getStream, getStreamMemoryUsage } from "./registry.js";
@@ -10,290 +7,6 @@ import { CONFIG } from "../config/index.js";
10
7
  import { emitStreamHealthChanged } from "./statusEmitter.js";
11
8
  import { getClientSummary } from "./clients.js";
12
9
  import { resizeAndMinimizeWindow } from "../browser/cdp.js";
13
- // Recovery method names used in logging. Centralized to ensure consistency across start, success, and failure messages.
14
- const RECOVERY_METHODS = {
15
- pageNavigation: "page navigation",
16
- playUnmute: "play/unmute",
17
- sourceReload: "source reload",
18
- tabReplacement: "tab replacement"
19
- };
20
- /* These mappings connect recovery method names to their corresponding counter fields in RecoveryMetrics. Using a mapping pattern instead of if/else chains reduces
21
- * code duplication, makes adding new recovery methods trivial (add one entry to each map), ensures consistency between attempt and success counting, and provides
22
- * type safety via the RecoveryMetrics interface.
23
- */
24
- // Maps recovery method names to their attempt counter field names.
25
- const ATTEMPT_FIELDS = {
26
- [RECOVERY_METHODS.pageNavigation]: "pageNavigationAttempts",
27
- [RECOVERY_METHODS.playUnmute]: "playUnmuteAttempts",
28
- [RECOVERY_METHODS.sourceReload]: "sourceReloadAttempts",
29
- [RECOVERY_METHODS.tabReplacement]: "tabReplacementAttempts"
30
- };
31
- // Maps recovery method names to their success counter field names.
32
- const SUCCESS_FIELDS = {
33
- [RECOVERY_METHODS.pageNavigation]: "pageNavigationSuccesses",
34
- [RECOVERY_METHODS.playUnmute]: "playUnmuteSuccesses",
35
- [RECOVERY_METHODS.sourceReload]: "sourceReloadSuccesses",
36
- [RECOVERY_METHODS.tabReplacement]: "tabReplacementSuccesses"
37
- };
38
- /**
39
- * Creates a new RecoveryMetrics object with all counters initialized to zero.
40
- * @returns A fresh RecoveryMetrics object.
41
- */
42
- function createRecoveryMetrics() {
43
- return {
44
- currentRecoveryMethod: null,
45
- currentRecoveryStartTime: null,
46
- pageNavigationAttempts: 0,
47
- pageNavigationSuccesses: 0,
48
- playUnmuteAttempts: 0,
49
- playUnmuteSuccesses: 0,
50
- sourceReloadAttempts: 0,
51
- sourceReloadSuccesses: 0,
52
- tabReplacementAttempts: 0,
53
- tabReplacementSuccesses: 0,
54
- totalRecoveryTimeMs: 0
55
- };
56
- }
57
- /**
58
- * Gets the total number of recovery attempts across all methods. Iterates over ATTEMPT_FIELDS to sum all attempt counters, ensuring new recovery methods are
59
- * automatically included without code changes.
60
- * @param metrics - The recovery metrics object.
61
- * @returns Total recovery attempts.
62
- */
63
- export function getTotalRecoveryAttempts(metrics) {
64
- let total = 0;
65
- for (const fieldName of Object.values(ATTEMPT_FIELDS)) {
66
- total += metrics[fieldName];
67
- }
68
- return total;
69
- }
70
- /**
71
- * Gets the total number of successful recoveries across all methods. Iterates over SUCCESS_FIELDS to sum all success counters, ensuring new recovery methods
72
- * are automatically included without code changes.
73
- * @param metrics - The recovery metrics object.
74
- * @returns Total successful recoveries.
75
- */
76
- function getTotalRecoverySuccesses(metrics) {
77
- let total = 0;
78
- for (const fieldName of Object.values(SUCCESS_FIELDS)) {
79
- total += metrics[fieldName];
80
- }
81
- return total;
82
- }
83
- /**
84
- * Formats recovery duration from start time to now.
85
- * @param startTime - The timestamp when recovery started.
86
- * @returns Formatted duration string like "2.1s".
87
- */
88
- function formatRecoveryDuration(startTime) {
89
- const durationMs = Date.now() - startTime;
90
- return (durationMs / 1000).toFixed(1) + "s";
91
- }
92
- /**
93
- * Maps issue category to user-friendly description for logging.
94
- * @param category - The issue category from getIssueCategory().
95
- * @returns User-friendly description.
96
- */
97
- function getIssueDescription(category) {
98
- switch (category) {
99
- case "paused": {
100
- return "paused";
101
- }
102
- case "buffering": {
103
- return "buffering";
104
- }
105
- default: {
106
- return "stalled";
107
- }
108
- }
109
- }
110
- /**
111
- * Maps recovery level to method name.
112
- * @param level - The recovery level (1, 2, or 3).
113
- * @returns The recovery method name.
114
- */
115
- function getRecoveryMethod(level) {
116
- switch (level) {
117
- case 1: {
118
- return RECOVERY_METHODS.playUnmute;
119
- }
120
- case 2: {
121
- return RECOVERY_METHODS.sourceReload;
122
- }
123
- default: {
124
- return RECOVERY_METHODS.pageNavigation;
125
- }
126
- }
127
- }
128
- /**
129
- * Records a recovery attempt in the metrics. Uses the ATTEMPT_FIELDS mapping to find the correct counter field, eliminating the need for if/else chains. This
130
- * makes adding new recovery methods trivial - just add an entry to ATTEMPT_FIELDS.
131
- *
132
- * Note: Tab replacement calls this once per logical attempt even though it may internally retry the onTabReplacement callback. The retry is an implementation
133
- * detail of executeTabReplacement, not a separate recovery attempt from the monitor's perspective. The circuit breaker likewise records one failure per logical
134
- * attempt, not per callback invocation.
135
- * @param metrics - The metrics object to update.
136
- * @param method - The recovery method being attempted.
137
- */
138
- function recordRecoveryAttempt(metrics, method) {
139
- // Cast to the specific field type to handle potential unknown methods at runtime. The mapping ensures valid methods resolve to counter field names.
140
- const field = ATTEMPT_FIELDS[method];
141
- if (field !== undefined) {
142
- metrics[field]++;
143
- }
144
- metrics.currentRecoveryStartTime = Date.now();
145
- metrics.currentRecoveryMethod = method;
146
- }
147
- /**
148
- * Records a successful recovery in the metrics and clears the pending recovery state. Uses the SUCCESS_FIELDS mapping to find the correct counter field,
149
- * eliminating the need for if/else chains. This makes adding new recovery methods trivial - just add an entry to SUCCESS_FIELDS.
150
- * @param metrics - The metrics object to update.
151
- * @param method - The recovery method that succeeded.
152
- */
153
- function recordRecoverySuccess(metrics, method) {
154
- // Cast to the specific field type to handle potential unknown methods at runtime. The mapping ensures valid methods resolve to counter field names.
155
- const field = SUCCESS_FIELDS[method];
156
- if (field !== undefined) {
157
- metrics[field]++;
158
- }
159
- if (metrics.currentRecoveryStartTime !== null) {
160
- metrics.totalRecoveryTimeMs += Date.now() - metrics.currentRecoveryStartTime;
161
- }
162
- metrics.currentRecoveryStartTime = null;
163
- metrics.currentRecoveryMethod = null;
164
- }
165
- /**
166
- * Capitalizes the first letter of a string.
167
- * @param str - The string to capitalize.
168
- * @returns The string with the first letter capitalized.
169
- */
170
- function capitalize(str) {
171
- return str.charAt(0).toUpperCase() + str.slice(1);
172
- }
173
- /**
174
- * Formats the recovery metrics summary for the termination log. Uses the SUCCESS_FIELDS mapping to iterate over all recovery methods, eliminating hardcoded
175
- * checks for each method type. This ensures new recovery methods are automatically included in the summary.
176
- * @param metrics - The recovery metrics object.
177
- * @returns Formatted summary string, or empty string if no recoveries occurred.
178
- */
179
- export function formatRecoveryMetricsSummary(metrics) {
180
- const totalAttempts = getTotalRecoveryAttempts(metrics);
181
- if (totalAttempts === 0) {
182
- return "No recoveries needed.";
183
- }
184
- const totalSuccesses = getTotalRecoverySuccesses(metrics);
185
- // Build the breakdown of recovery methods used by iterating over all methods in SUCCESS_FIELDS. This automatically includes any new recovery methods added to
186
- // the mapping without requiring code changes here.
187
- const parts = [];
188
- for (const [methodName, fieldName] of Object.entries(SUCCESS_FIELDS)) {
189
- const count = metrics[fieldName];
190
- if (count > 0) {
191
- parts.push(String(count) + "× " + methodName);
192
- }
193
- }
194
- // Calculate average recovery time.
195
- const avgTimeMs = totalSuccesses > 0 ? metrics.totalRecoveryTimeMs / totalSuccesses : 0;
196
- const avgTimeStr = (avgTimeMs / 1000).toFixed(1) + "s";
197
- // Format: "Recoveries: 8 (5× source reload, 3× page navigation), avg 4.2s."
198
- if (parts.length > 0) {
199
- return "Recoveries: " + String(totalSuccesses) + " (" + parts.join(", ") + "), avg " + avgTimeStr + ".";
200
- }
201
- // Edge case: attempts but no successes (stream terminated before recovery completed).
202
- return "Recoveries: " + String(totalAttempts) + " attempted, 0 succeeded.";
203
- }
204
- /**
205
- * Records a failure and checks whether the circuit breaker should trip. This centralizes the circuit breaker logic that was previously duplicated in multiple
206
- * recovery paths. The function updates the state in place and returns whether the breaker should trip.
207
- * @param state - The circuit breaker state to update.
208
- * @param now - The current timestamp.
209
- * @returns Result indicating whether the circuit breaker should trip and diagnostic info.
210
- */
211
- function checkCircuitBreaker(state, now) {
212
- // Record this failure.
213
- state.totalFailureCount++;
214
- state.firstFailureTime ??= now;
215
- // Check if we're within the failure window.
216
- const withinWindow = (now - state.firstFailureTime) < CONFIG.recovery.circuitBreakerWindow;
217
- // Determine if we should trip.
218
- const shouldTrip = withinWindow && (state.totalFailureCount >= CONFIG.recovery.circuitBreakerThreshold);
219
- // Reset the window if we're outside it (start fresh count).
220
- if (!withinWindow) {
221
- state.totalFailureCount = 1;
222
- state.firstFailureTime = now;
223
- }
224
- return { shouldTrip, totalCount: state.totalFailureCount, withinWindow };
225
- }
226
- /**
227
- * Resets the circuit breaker state. Called when sustained healthy playback is achieved.
228
- * @param state - The circuit breaker state to reset.
229
- */
230
- function resetCircuitBreaker(state) {
231
- state.firstFailureTime = null;
232
- state.totalFailureCount = 0;
233
- }
234
- /**
235
- * Formats the issue type for diagnostic logging. Returns a human-readable string describing what triggered the recovery. Multiple issues can occur simultaneously
236
- * (e.g., "paused, stalled"), so we collect all applicable issues into a comma-separated list.
237
- * @param state - The video state object containing paused, ended, hasError, etc.
238
- * @param isStalled - Whether the video is stalled (not progressing).
239
- * @param isBuffering - Whether the video is actively buffering.
240
- * @returns A description of the issue.
241
- */
242
- function formatIssueType(state, isStalled, isBuffering) {
243
- const issues = [];
244
- if (state.paused) {
245
- issues.push("paused");
246
- }
247
- if (state.ended) {
248
- issues.push("ended");
249
- }
250
- if (state.error) {
251
- issues.push("error");
252
- }
253
- // Distinguish between buffering (temporary, network-related) and stalled (stopped for unknown reason). Both result in no progression, but buffering indicates the
254
- // player is actively trying to get more data.
255
- if (isStalled && isBuffering) {
256
- issues.push("buffering");
257
- }
258
- if (isStalled && !isBuffering) {
259
- issues.push("stalled");
260
- }
261
- return issues.length > 0 ? issues.join(", ") : "unknown";
262
- }
263
- /**
264
- * Determines the issue category for recovery path selection. This is separate from formatIssueType (which is for logging) because recovery decisions need a single
265
- * category, not a list of all issues. The categories are:
266
- * - "paused": Video is paused but not buffering. L1 (play/unmute) may help.
267
- * - "buffering": Video is buffering or stalled with low readyState. Skip L1, go to L2 (source reload).
268
- * - "other": Error, ended, or unknown state. Skip L1, go to L2 (source reload).
269
- * @param state - The video state object.
270
- * @param isStalled - Whether the video is stalled (not progressing).
271
- * @param isBuffering - Whether the video is actively buffering.
272
- * @returns The issue category for recovery path selection.
273
- */
274
- function getIssueCategory(state, isStalled, isBuffering) {
275
- // Error and ended states take priority - these need aggressive recovery.
276
- if (state.error || state.ended) {
277
- return "other";
278
- }
279
- // Buffering (readyState < 3 with active network) needs source reload, not play/unmute.
280
- if (isBuffering) {
281
- return "buffering";
282
- }
283
- // Stalled with low readyState is effectively buffering.
284
- if (isStalled && (state.readyState < 3)) {
285
- return "buffering";
286
- }
287
- // Paused state (without buffering) may respond to play/unmute.
288
- if (state.paused) {
289
- return "paused";
290
- }
291
- // Stalled without low readyState - unknown cause, treat as buffering.
292
- if (isStalled) {
293
- return "buffering";
294
- }
295
- return "other";
296
- }
297
10
  export function monitorPlaybackHealth(page, context, profile, url, streamId, streamInfo, onCircuitBreak, onTabReplacement) {
298
11
  /* Monitor state variables. These track the video's behavior over time and control recovery decisions.
299
12
  */
@@ -785,7 +498,7 @@ export function monitorPlaybackHealth(page, context, profile, url, streamId, str
785
498
  if (presence?.anyVideoExists && !presence.readyVideoFound) {
786
499
  // Video element exists but doesn't meet readyState criteria. This is a buffering condition, not a missing video condition.
787
500
  // Apply the normal buffering grace period instead of escalating to navigation.
788
- LOG.info("Video element exists but not ready (count=%s, maxReadyState=%s). Treating as buffering.", presence.videoCount, presence.maxReadyState);
501
+ LOG.debug("recovery", "Video is buffering (readyState=%s, elements=%s).", presence.maxReadyState, presence.videoCount);
789
502
  // Reset video not found counter since video actually exists.
790
503
  videoNotFoundCount = 0;
791
504
  // Emit status so SSE clients see current state even during this buffering condition.
@@ -1 +1 @@
1
- {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../src/streaming/monitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../src/streaming/monitor.ts"],"names":[],"mappings":"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"}