Files
felhom-controller/REPORT.md
T
2026-10-27 15:49:59 +01:00

2.1 KiB
Raw Blame History

REPORT — controller v0.346.0 RELEASED; the line-test hold fixed the same day (2026-10-27, attended)

Plain words first. Controller 0.346.0 is out on every box (global floor 15:37 CET, MinAgent 0.158.1). It carries last night's data-safety fixes and one fix made today: a box that seeds torrents all day now gets its weekly line test. The old hold asked the line test too early — qBittorrent keeps sending for about 14 seconds after it is slowed — so the test was refused every time. Now the controller waits until the app has really slowed down.

What 0.346.0 carries

D53 held-app reports (R-1291), R-1220, R-1218 + R-1219, R-1187 (a)(b)(d)(f)(g) and the two import defects, R-1298, Go 1.27.3 (R-972), and R-1250 (710ceac). CHANGELOG ## v0.346.0.

R-1250 (710ceac)

  • Before (0.345.1 on demo-hp 9201, a throwaway qBittorrent seeding to DooPlex): four holds 11:36–12:21 CET, each refused „not quiet" 4.0–4.2 Mbit/s. Per-second reads: qBittorrent reports its limit 1024 within a second but sends at full speed ~14 s; the forwarder and UDP queues hold nothing (felhom.eu audits/linetest-2026-10-27/).
  • Fix: upwatch.waitDrained — after the hold, poll each held app's own upload (Holdable.UploadRate: qBittorrent up_info_speed, Transmission uploadSpeed) until ≤ 16 KiB/s twice, 2 s apart; at most 90 s; an unreadable speed waits 20 s; then ask the agent. Tests linehold_r1250_drain_test.go (five), red-proved by four mutations.
  • After (0.346.0-rc.1 on 9201): held 13:39:56 → slowed after 22 s → 94.5 Mbit/s → the limit back exactly; the 50 % rule kept the normal slot (0.15 % move).

Release

rc.1 by hand on 9201 and Tester 1 (9202 was in another session's use); b1b9be3 (CI 2423) built as 0.346.0 (sha256:3d910b03…); per-box floors 15:09 CET → all three on 0.346.0 („update successful"); box walk green (start logs 0 errors, every app healthy, https_only_check.py green, held-apps lists match 0 = 0); global floor 15:37 CET, 30-min watch. R-1218's live proof was waived by the operator (felhom.eu 09 §3 decision 270).