Files
felhom-controller/REPORT.md
T
admin 772ef36f5f
gates / gates (push) Successful in 48s
v0.331.0: OnlyOffice opens and saves from FileBrowser and Nextcloud; FileBrowser back at once after a restart (R-1018)
FileBrowser config carries server.internalUrl http://filebrowser:80 (OnlyOffice fetched the public files address and got 403);
Nextcloud's DocumentServerInternalUrl gets its trailing slash (every save was lost: http://onlyoffice:80cache/...);
RestartStack("filebrowser") runs the R-1126 gate at once (files.<domain> was 502 for up to 5 min after the link switched).
Each red-proofed. MinAgent 0.158.1.
2026-10-18 21:05:04 +02:00

1.7 KiB

REPORT — controller v0.331.0 (2026-10-18 evening): the OnlyOffice links, live-walked and fixed (R-1018)

Task: the evening brief of 2026-10-18, Part 2 (felhom.eu REPORT-evening-2026-10-18.md). Evidence: felhom.eu documentation/audits/onlyoffice-2026-10-18/.

The walk (scratch 9202 on 0.330.0, OnlyOffice 9.4.0 + Nextcloud 34.0.4 installed through the dashboard API, headless Chrome through the box's public names mapped to 9202):

Path Before the fix After
FileBrowser → open a .docx editor frame loads, the document never does: OnlyOffice's fetch of https://files.<domain>/… → 403 (the public name leads to another box) opens, edits, saves: the file on the drive reads „R1018 BEFORE EDITED-FB-1849"
Nextcloud → open a .docx opens and edits; „All changes saved" — but the save is lost: Nextcloud fetches http://onlyoffice:80cache/… the file in Nextcloud reads „… EDITED-NC-1847"
switch the link on / off files. 502 for 4 min 8 s / 3 min 38 s the gate runs at the restart
OnlyOffice stopped FileBrowser: no editor; Nextcloud: /apps/onlyoffice/<id> 404 — the revoke-on-stop rule holds —

Fixes (each red-proofed — the fix removed, the test failed with the wrong value, restored):

  1. FileBrowser config: server.internalUrl: "http://filebrowser:80" — TestFileBrowserConfig_R1018_InternalURLIsTheContainer.
  2. Nextcloud: DocumentServerInternalUrl = http://onlyoffice:80/ — TestNextcloudApply_R1018_InternalAddressesTakeAPath.
  3. RestartStack("filebrowser") runs the R-1126 gate — TestRestartStack_R1018_FileBrowserPublishedAgainAtOnce.

Gates: go build/vet/test ./... green; controller_gates.py --fast green. Fixtures: none changed.