@torrent-tv/proxy 2.101.33 → 2.101.34

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@torrent-tv/proxy",
3
- "version": "2.101.33",
3
+ "version": "2.101.34",
4
4
  "description": "Torrent proxy client that exposes webseed-like HTTP stream endpoint.",
5
5
  "license": "GPL-3.0-or-later",
6
6
  "repository": {
@@ -290,10 +290,13 @@ export class LocalObservations {
290
290
  }
291
291
 
292
292
  /**
293
- * Price the early wait from separate measured stage medians for the same
294
- * output path. Numeric proximity of a past file, source rate, or link rate
295
- * does not select a completed run. Each observation contributes once, using
296
- * its latest snapshot that states the current cache and operation path.
293
+ * Price the early wait from separate measured stage medians on this proxy
294
+ * configuration. Before the container and track operations are known, use
295
+ * measurements from every observed file type; once current cache and
296
+ * operation facts are known, retain only observations that match those
297
+ * facts. Numeric proximity to a past file, source rate, or link rate never
298
+ * selects a completed run. Each observation contributes once, using its
299
+ * latest snapshot that states the current cache and operation path.
297
300
  *
298
301
  * @param {object} features
299
302
  * @returns {number | null}
@@ -303,7 +306,7 @@ export class LocalObservations {
303
306
  const stages = ["transportMs", "planMs", "prepareMs", "prebufferMs", "presentationMs"];
304
307
  const candidates = [];
305
308
  for (const reading of this.#entries.firstFrame[this.#firstFrameKey()] ?? []) {
306
- if (reading.extension !== (features.extension ?? "") || !reading.stages) continue;
309
+ if (!reading.stages) continue;
307
310
  const points = Array.isArray(reading.featureSnapshots) && reading.featureSnapshots.length > 0
308
311
  ? reading.featureSnapshots : [reading];
309
312
  const point = [...points].reverse().find(candidate => firstFramePathMatches(features, candidate));