diff --git a/CONTEXT.md b/CONTEXT.md index ed50099d..9e269bb5 100644 --- a/CONTEXT.md +++ b/CONTEXT.md @@ -16,6 +16,13 @@ > and holds nothing of its own; this file does hold its own content, namely the standing rulings below. +> **2026-10-28 (evening, attended) — Gitea 28.2.0; Wanderer's search memory measured, not changed.** Gitea 1.27.3 → 28.2.0 +> live `0baf8f9` (bench + box + undo; 1.27.3 refuses a 28-migrated database, the undo copy restores it). D57 → decision +> 280: imports only from github.com/codeberg.org/gitlab.com (`[migrations] EGRESS_MODE=strict` + `ALLOWED_HOST_LIST`, the +> 28.x names — 1.x's ALLOWED_DOMAINS is gone; the security review's „wrong key" notice is pre-28). The Gitea fixture posts +> every installer field (28 renamed the form). R-1338: `MEILI_MAX_INDEXING_MEMORY`=128 MiB helped on the bench (17.7 %) +> but NOT on 9202 (95.7 %, steady) → not pushed; the ladder has no entry type for a same-digest re-measure. + > **2026-10-28 (afternoon, attended at the STOPs) — Docker Hub stops refusing the watch; the four big steps.** R-1334: > measured first — the 429s were the BURST (211 tag-list requests in ~2 min from six workers), not the count; `fe677bae` > spaces Docker Hub requests (1/s), retries a 429 (Retry-After; NOT CHECKED after the 4th try) and caches tag lists 24 h diff --git a/STATUS.md b/STATUS.md index 7c91ff2d..59030ccb 100644 --- a/STATUS.md +++ b/STATUS.md @@ -2,7 +2,7 @@ **Ready for Tester 2? Yes — tell the friend go (hand-over list: `documentation/pilot/TESTER2-handover.md`).** -**Updated 2026-10-28 (evening).** On your yes, the four big updates are live with their undo tested: Wanderer v0.21.2 (offered again, D59 ended; federation from other servers stays off), Termix 26.10.5 (D58 ended), Homepage v2.7.0 and Seerr v3.5.1. Docker Hub no longer refuses the security watch in test runs, with no login; tonight's run is the check. +**Updated 2026-10-28 (evening).** On your yes, the four big updates are live with their undo tested: Wanderer v0.21.2 (offered again, D59 ended; federation from other servers stays off), Termix 26.10.5 (D58 ended), Homepage v2.7.0 and Seerr v3.5.1. Gitea 28.2.0 too (imports only from GitHub, Codeberg, GitLab); Docker Hub no longer refuses the watch in test runs — tonight's run is the check. ## What works - **The Plex attack (10-17 → 10-23) did not reach Felhom's secrets** (R-1241). diff --git a/documentation/architecture/09-update-architecture.md b/documentation/architecture/09-update-architecture.md index 63e803af..716fd18b 100644 --- a/documentation/architecture/09-update-architecture.md +++ b/documentation/architecture/09-update-architecture.md @@ -1153,6 +1153,15 @@ its length, and both fixes cost something the household would notice — operato major gets automated by accident). Why A: the brief („a normal step if it counts as a main version in our ladder rules, else the lane") and the one-comparator rule; the box walk + soak is the guard either way. +### 2026-10-28 (evening, attended) — D57 judged again in Gitea's big step: imports from three hosts only + +280. **Gitea's repository import is limited to github.com, codeberg.org and gitlab.com** (`[migrations] EGRESS_MODE=strict`, + `ALLOWED_HOST_LIST`, Gitea 28's own egress rules) — this replaces D57's „keep import on, unrestricted" (decision 273). + Measured on 9202 with 28.2.0: the default (`lax`) already refuses home-network and Docker addresses (422); the + allow-list also refuses every other public host (gitea.com 422) and lets GitHub import (201). Options: the allow-list + (cost: an import from a self-hosted forge or Bitbucket is refused) or 28's default (cost: the box fetches any public + address a family member names). *Operator, 2026-10-28, at the Gitea STOP; CC's pick.* + ### 2026-10-28 (afternoon, attended) — the four big steps; D59 ends; Wanderer's inbound federation stays off 279. **D59 ends: Wanderer is offered again** after its big step v0.20.0 → v0.21.2 went live (catalog `1825247`), and diff --git a/documentation/audits/gitea-wanderer-2026-10-28/bench-C3.txt b/documentation/audits/gitea-wanderer-2026-10-28/bench-C3.txt new file mode 100644 index 00000000..755635d9 --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/bench-C3.txt @@ -0,0 +1,3 @@ + "verdict": "failed", +rc=0 + diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/MV-gitea.log b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/MV-gitea.log new file mode 100644 index 00000000..ce45b796 --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/MV-gitea.log @@ -0,0 +1,118 @@ +[17:49:38] scratch drive folders cleared before FROM (R-656): none existed +[17:49:38] MV-gitea: deploying gitea at FROM {'gitea': 'gitea/gitea:1.27.3'} +[17:50:22] FROM settled=True in 30.9s :: {"gitea": {"status": "running", "health": "healthy", "restarts": 0, "exit": 0}} +[17:50:22] fixture: the BOX walk's own (Gitea), through upgrade_boxport +[17:50:29] gitea: first-run installer POST / http=200 +[17:50:35] gitea: installed through its own first-run form; the admin authenticates +[17:50:36] gitea: create repo http=201 +[17:50:36] gitea: one commit (drill.txt) http=201 +[17:50:36] gitea: the committed file read back http=200 same=True +[17:50:36] gitea: readback of the seeded repo http=200 ok=True +[17:50:36] C1 (seed reads back BEFORE): True +[17:50:37] MV-gitea: swapping to TO {'gitea': 'gitea/gitea:28.2.0'} +[17:50:52] TO up -d rc=0 +[17:51:23] TO settled=True in 30.8s :: {"gitea": {"status": "running", "health": "healthy", "restarts": 0, "exit": 0}} +[17:51:23] migration lines observed: 6 +[17:51:23] gitea: the committed file read back http=200 same=True +[17:51:23] gitea: readback of the seeded repo http=200 ok=True +[17:51:23] RESULT (seed reads back AFTER): True +[17:51:24] memory watch: 600s, 4 callers on 1 path(s) at 172.18.0.2:3000 +[17:51:39] + 15s gitea=332M/512M peak=333M kills=0 rs=0 reqs=300 +[17:51:54] + 30s gitea=346M/512M peak=346M kills=0 rs=0 reqs=600 +[17:52:09] + 45s gitea=352M/512M peak=353M kills=0 rs=0 reqs=900 +[17:52:24] + 60s gitea=353M/512M peak=355M kills=0 rs=0 reqs=1196 +[17:52:39] + 76s gitea=353M/512M peak=355M kills=0 rs=0 reqs=1496 +[17:52:54] + 91s gitea=354M/512M peak=355M kills=0 rs=0 reqs=1796 +[17:53:10] + 106s gitea=353M/512M peak=355M kills=0 rs=0 reqs=2092 +[17:53:25] + 121s gitea=353M/512M peak=356M kills=0 rs=0 reqs=2392 +[17:53:40] + 136s gitea=358M/512M peak=358M kills=0 rs=0 reqs=2692 +[17:53:55] + 151s gitea=357M/512M peak=360M kills=0 rs=0 reqs=2988 +[17:54:10] + 166s gitea=358M/512M peak=360M kills=0 rs=0 reqs=3288 +[17:54:25] + 182s gitea=358M/512M peak=360M kills=0 rs=0 reqs=3588 +[17:54:40] + 197s gitea=358M/512M peak=360M kills=0 rs=0 reqs=3884 +[17:54:55] + 212s gitea=359M/512M peak=360M kills=0 rs=0 reqs=4184 +[17:55:11] + 227s gitea=359M/512M peak=360M kills=0 rs=0 reqs=4484 +[17:55:26] + 242s gitea=359M/512M peak=360M kills=0 rs=0 reqs=4784 +[17:55:41] + 257s gitea=359M/512M peak=360M kills=0 rs=0 reqs=5080 +[17:55:56] + 272s gitea=359M/512M peak=361M kills=0 rs=0 reqs=5380 +[17:56:11] + 287s gitea=359M/512M peak=361M kills=0 rs=0 reqs=5680 +[17:56:26] + 302s gitea=359M/512M peak=361M kills=0 rs=0 reqs=5976 +[17:56:41] + 318s gitea=359M/512M peak=361M kills=0 rs=0 reqs=6276 +[17:56:56] + 333s gitea=359M/512M peak=361M kills=0 rs=0 reqs=6572 +[17:57:12] + 348s gitea=358M/512M peak=361M kills=0 rs=0 reqs=6872 +[17:57:27] + 363s gitea=359M/512M peak=361M kills=0 rs=0 reqs=7172 +[17:57:42] + 378s gitea=359M/512M peak=361M kills=0 rs=0 reqs=7472 +[17:57:57] + 393s gitea=358M/512M peak=361M kills=0 rs=0 reqs=7768 +[17:58:12] + 408s gitea=358M/512M peak=361M kills=0 rs=0 reqs=8068 +[17:58:27] + 423s gitea=359M/512M peak=361M kills=0 rs=0 reqs=8368 +[17:58:42] + 438s gitea=359M/512M peak=361M kills=0 rs=0 reqs=8664 +[17:58:57] + 454s gitea=358M/512M peak=361M kills=0 rs=0 reqs=8964 +[17:59:13] + 469s gitea=359M/512M peak=361M kills=0 rs=0 reqs=9264 +[17:59:28] + 484s gitea=359M/512M peak=361M kills=0 rs=0 reqs=9560 +[17:59:43] + 499s gitea=359M/512M peak=361M kills=0 rs=0 reqs=9860 +[17:59:58] + 514s gitea=360M/512M peak=361M kills=0 rs=0 reqs=10160 +[18:00:13] + 529s gitea=359M/512M peak=361M kills=0 rs=0 reqs=10456 +[18:00:28] + 544s gitea=359M/512M peak=361M kills=0 rs=0 reqs=10756 +[18:00:43] + 560s gitea=359M/512M peak=361M kills=0 rs=0 reqs=11056 +[18:00:58] + 575s gitea=359M/512M peak=361M kills=0 rs=0 reqs=11353 +[18:01:13] + 590s gitea=359M/512M peak=361M kills=0 rs=0 reqs=11652 +[18:01:29] + 605s gitea=359M/512M peak=361M kills=0 rs=0 reqs=11952 +[18:01:29] memory watch: killed=False tight=[] requests=11952 codes={'200': 11952} +[18:01:29] MV-gitea: ABORT — putting the FROM images back +[18:04:34] ABORT: the app did NOT come back (rc=0, 184.8s) +{ + "harness_version": 5, + "edge": "MV-gitea", + "app": "gitea", + "note": "night 2026-09-23 within-a-major move: gitea=gitea/gitea:28.2.0", + "from": { + "gitea": "gitea/gitea:1.27.3" + }, + "to": { + "gitea": "gitea/gitea:28.2.0" + }, + "verdict": "proven", + "seed_read_before": true, + "seed_read_after": true, + "healthy_after": true, + "migration_observed": "\u001b[2Kgitea | 2026/10/28 18:50:58 modelmigration/migrations.go:557:Migrate() [I] Migration[343]: Add max_parallel column to action_run_job", + "abort": "refuses", + "abort_detail": "ules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_artifacts\n\u001b[2Kgitea | 2026/10/28 19:04:26 routers/common/db.go:22:InitDBEngine() [I] Beginning ORM engine initialization.\n\u001b[2Kgitea | 2026/10/28 19:04:26 routers/common/db.go:29:InitDBEngine() [I] ORM engine initialization attempt #1/10...\n\u001b[2Kgitea | 2026/10/28 19:04:26 cmd/web.go:205:serveInstalled() [I] PING DATABASE sqlite3\n\u001b[2Kgitea | 2026/10/28 19:04:26 .../migrations/migrations.go:532:Migrate() [F] Migration Error: Your database (migration version: 358) is for a newer Gitea, you can not use the newer database for this old Gitea release (343).\n\u001b[2Kgitea | Gitea will exit to keep your database safe and unchanged. Please use the correct Gitea release, do not change the migration version manually (incorrect manual operation may lose data).\n\u001b[2Kgitea | Received signal 15; terminating.", + "engine_state_after": null, + "memory": { + "soak_s": 605.1, + "requested_s": 600, + "requests": 11952, + "codes": { + "200": 11952 + }, + "first_kill": null, + "containers": { + "gitea": { + "limit": 536870912, + "peak": 379576320, + "peak_pct": 0.707, + "anon_peak_sampled": 137670656, + "anon_peak_pct": 0.256, + "swap_peak": 0, + "oom_kills": 0, + "restarts": 0, + "oomkilled_flag": false, + "measured": true + } + }, + "unmeasured": [], + "venue_swap_bytes": 0, + "load": "reached" + }, + "marks": [], + "bench_overrides": null, + "duration_s": 30.8, + "measured_at": "2026-10-28T18:04:34Z", + "evidence": "evidence/MV-gitea", + "scratch_cleared": [], + "files_changed": [], + "files_changed_detail": [], + "files_ignored": [], + "total_s": 896.8 +} diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/abort-refusal.txt b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/abort-refusal.txt new file mode 100644 index 00000000..27f2a23b --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/abort-refusal.txt @@ -0,0 +1,40 @@ +[2Kgitea | 2026/10/28 19:03:25 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_artifacts +[2Kgitea | 2026/10/28 19:03:25 routers/common/db.go:22:InitDBEngine() [I] Beginning ORM engine initialization. +[2Kgitea | 2026/10/28 19:03:25 routers/common/db.go:29:InitDBEngine() [I] ORM engine initialization attempt #1/10... +[2Kgitea | 2026/10/28 19:03:25 cmd/web.go:205:serveInstalled() [I] PING DATABASE sqlite3 +[2Kgitea | 2026/10/28 19:03:25 .../migrations/migrations.go:532:Migrate() [F] Migration Error: Your database (migration version: 358) is for a newer Gitea, you can not use the newer database for this old Gitea release (343). +[2Kgitea | Gitea will exit to keep your database safe and unchanged. Please use the correct Gitea release, do not change the migration version manually (incorrect manual operation may lose data). +[2Kgitea | Received signal 15; terminating. +[2Kgitea | Server listening on :: port 22. +[2Kgitea | Server listening on 0.0.0.0 port 22. +[2Kgitea | 2026/10/28 19:04:25 cmd/web.go:263:runWeb() [I] Starting Gitea on PID: 18 +[2Kgitea | 2026/10/28 19:04:25 cmd/web.go:115:showWebStartupMessage() [I] Gitea version: 1.27.3 built with go1.26.7-X:jsonv2 : bindata, timetzdata, +[2Kgitea | 2026/10/28 19:04:25 cmd/web.go:116:showWebStartupMessage() [I] * RunMode: prod +[2Kgitea | 2026/10/28 19:04:25 cmd/web.go:117:showWebStartupMessage() [I] * AppPath: /usr/local/bin/gitea +[2Kgitea | 2026/10/28 19:04:25 cmd/web.go:118:showWebStartupMessage() [I] * WorkPath: /data/gitea +[2Kgitea | 2026/10/28 19:04:25 cmd/web.go:119:showWebStartupMessage() [I] * CustomPath: /data/gitea +[2Kgitea | 2026/10/28 19:04:25 cmd/web.go:120:showWebStartupMessage() [I] * ConfigFile: /data/gitea/conf/app.ini +[2Kgitea | 2026/10/28 19:04:25 cmd/web.go:121:showWebStartupMessage() [I] Prepare to run web server +[2Kgitea | 2026/10/28 19:04:25 routers/init.go:117:InitWebInstalled() [I] Git version: 2.54.0 (home: /data/gitea/home) +[2Kgitea | 2026/10/28 19:04:26 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local +[2Kgitea | 2026/10/28 19:04:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/attachments +[2Kgitea | 2026/10/28 19:04:26 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local +[2Kgitea | 2026/10/28 19:04:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/avatars +[2Kgitea | 2026/10/28 19:04:26 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local +[2Kgitea | 2026/10/28 19:04:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-avatars +[2Kgitea | 2026/10/28 19:04:26 modules/storage/storage.go:237:initLFS() [I] Initialising LFS storage with type: local +[2Kgitea | 2026/10/28 19:04:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/git/lfs +[2Kgitea | 2026/10/28 19:04:26 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local +[2Kgitea | 2026/10/28 19:04:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-archive +[2Kgitea | 2026/10/28 19:04:26 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local +[2Kgitea | 2026/10/28 19:04:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/packages +[2Kgitea | 2026/10/28 19:04:26 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local +[2Kgitea | 2026/10/28 19:04:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_log +[2Kgitea | 2026/10/28 19:04:26 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local +[2Kgitea | 2026/10/28 19:04:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_artifacts +[2Kgitea | 2026/10/28 19:04:26 routers/common/db.go:22:InitDBEngine() [I] Beginning ORM engine initialization. +[2Kgitea | 2026/10/28 19:04:26 routers/common/db.go:29:InitDBEngine() [I] ORM engine initialization attempt #1/10... +[2Kgitea | 2026/10/28 19:04:26 cmd/web.go:205:serveInstalled() [I] PING DATABASE sqlite3 +[2Kgitea | 2026/10/28 19:04:26 .../migrations/migrations.go:532:Migrate() [F] Migration Error: Your database (migration version: 358) is for a newer Gitea, you can not use the newer database for this old Gitea release (343). +[2Kgitea | Gitea will exit to keep your database safe and unchanged. Please use the correct Gitea release, do not change the migration version manually (incorrect manual operation may lose data). +[2Kgitea | Received signal 15; terminating. \ No newline at end of file diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/abort-states.json b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/abort-states.json new file mode 100644 index 00000000..82a6e61d --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/abort-states.json @@ -0,0 +1,8 @@ +{ + "gitea": { + "status": "restarting", + "health": "unhealthy", + "restarts": 0, + "exit": 0 + } +} \ No newline at end of file diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/compose-final.log b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/compose-final.log new file mode 100644 index 00000000..a68cd5f4 --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/compose-final.log @@ -0,0 +1,396 @@ +[2Kgitea | Server listening on :: port 22. +[2Kgitea | Server listening on 0.0.0.0 port 22. +[2Kgitea | 2026/10/28 19:01:33 cmd/web.go:263:runWeb() [I] Starting Gitea on PID: 18 +[2Kgitea | 2026/10/28 19:01:33 cmd/web.go:115:showWebStartupMessage() [I] Gitea version: 1.27.3 built with go1.26.7-X:jsonv2 : bindata, timetzdata, +[2Kgitea | 2026/10/28 19:01:33 cmd/web.go:116:showWebStartupMessage() [I] * RunMode: prod +[2Kgitea | 2026/10/28 19:01:33 cmd/web.go:117:showWebStartupMessage() [I] * AppPath: /usr/local/bin/gitea +[2Kgitea | 2026/10/28 19:01:33 cmd/web.go:118:showWebStartupMessage() [I] * WorkPath: /data/gitea +[2Kgitea | 2026/10/28 19:01:33 cmd/web.go:119:showWebStartupMessage() [I] * CustomPath: /data/gitea +[2Kgitea | 2026/10/28 19:01:33 cmd/web.go:120:showWebStartupMessage() [I] * ConfigFile: /data/gitea/conf/app.ini +[2Kgitea | 2026/10/28 19:01:33 cmd/web.go:121:showWebStartupMessage() [I] Prepare to run web server +[2Kgitea | 2026/10/28 19:01:33 routers/init.go:117:InitWebInstalled() [I] Git version: 2.54.0 (home: /data/gitea/home) +[2Kgitea | 2026/10/28 19:01:33 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local +[2Kgitea | 2026/10/28 19:01:33 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/attachments +[2Kgitea | 2026/10/28 19:01:33 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local +[2Kgitea | 2026/10/28 19:01:33 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/avatars +[2Kgitea | 2026/10/28 19:01:33 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local +[2Kgitea | 2026/10/28 19:01:33 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-avatars +[2Kgitea | 2026/10/28 19:01:33 modules/storage/storage.go:237:initLFS() [I] Initialising LFS storage with type: local +[2Kgitea | 2026/10/28 19:01:33 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/git/lfs +[2Kgitea | 2026/10/28 19:01:33 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local +[2Kgitea | 2026/10/28 19:01:33 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-archive +[2Kgitea | 2026/10/28 19:01:33 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local +[2Kgitea | 2026/10/28 19:01:33 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/packages +[2Kgitea | 2026/10/28 19:01:33 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local +[2Kgitea | 2026/10/28 19:01:33 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_log +[2Kgitea | 2026/10/28 19:01:33 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local +[2Kgitea | 2026/10/28 19:01:33 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_artifacts +[2Kgitea | 2026/10/28 19:01:33 routers/common/db.go:22:InitDBEngine() [I] Beginning ORM engine initialization. +[2Kgitea | 2026/10/28 19:01:33 routers/common/db.go:29:InitDBEngine() [I] ORM engine initialization attempt #1/10... +[2Kgitea | 2026/10/28 19:01:33 cmd/web.go:205:serveInstalled() [I] PING DATABASE sqlite3 +[2Kgitea | 2026/10/28 19:01:33 .../migrations/migrations.go:532:Migrate() [F] Migration Error: Your database (migration version: 358) is for a newer Gitea, you can not use the newer database for this old Gitea release (343). +[2Kgitea | Gitea will exit to keep your database safe and unchanged. Please use the correct Gitea release, do not change the migration version manually (incorrect manual operation may lose data). +[2Kgitea | Received signal 15; terminating. +[2Kgitea | Server listening on :: port 22. +[2Kgitea | Server listening on 0.0.0.0 port 22. +[2Kgitea | 2026/10/28 19:01:34 cmd/web.go:263:runWeb() [I] Starting Gitea on PID: 18 +[2Kgitea | 2026/10/28 19:01:34 cmd/web.go:115:showWebStartupMessage() [I] Gitea version: 1.27.3 built with go1.26.7-X:jsonv2 : bindata, timetzdata, +[2Kgitea | 2026/10/28 19:01:34 cmd/web.go:116:showWebStartupMessage() [I] * RunMode: prod +[2Kgitea | 2026/10/28 19:01:34 cmd/web.go:117:showWebStartupMessage() [I] * AppPath: /usr/local/bin/gitea +[2Kgitea | 2026/10/28 19:01:34 cmd/web.go:118:showWebStartupMessage() [I] * WorkPath: /data/gitea +[2Kgitea | 2026/10/28 19:01:34 cmd/web.go:119:showWebStartupMessage() [I] * CustomPath: /data/gitea +[2Kgitea | 2026/10/28 19:01:34 cmd/web.go:120:showWebStartupMessage() [I] * ConfigFile: /data/gitea/conf/app.ini +[2Kgitea | 2026/10/28 19:01:34 cmd/web.go:121:showWebStartupMessage() [I] Prepare to run web server +[2Kgitea | 2026/10/28 19:01:34 routers/init.go:117:InitWebInstalled() [I] Git version: 2.54.0 (home: /data/gitea/home) +[2Kgitea | 2026/10/28 19:01:34 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local +[2Kgitea | 2026/10/28 19:01:34 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/attachments +[2Kgitea | 2026/10/28 19:01:34 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local +[2Kgitea | 2026/10/28 19:01:34 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/avatars +[2Kgitea | 2026/10/28 19:01:34 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local +[2Kgitea | 2026/10/28 19:01:34 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-avatars +[2Kgitea | 2026/10/28 19:01:34 modules/storage/storage.go:237:initLFS() [I] Initialising LFS storage with type: local +[2Kgitea | 2026/10/28 19:01:34 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/git/lfs +[2Kgitea | 2026/10/28 19:01:34 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local +[2Kgitea | 2026/10/28 19:01:34 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-archive +[2Kgitea | 2026/10/28 19:01:34 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local +[2Kgitea | 2026/10/28 19:01:34 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/packages +[2Kgitea | 2026/10/28 19:01:34 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local +[2Kgitea | 2026/10/28 19:01:34 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_log +[2Kgitea | 2026/10/28 19:01:34 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local +[2Kgitea | 2026/10/28 19:01:34 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_artifacts +[2Kgitea | 2026/10/28 19:01:34 routers/common/db.go:22:InitDBEngine() [I] Beginning ORM engine initialization. +[2Kgitea | 2026/10/28 19:01:34 routers/common/db.go:29:InitDBEngine() [I] ORM engine initialization attempt #1/10... +[2Kgitea | 2026/10/28 19:01:34 cmd/web.go:205:serveInstalled() [I] PING DATABASE sqlite3 +[2Kgitea | 2026/10/28 19:01:34 .../migrations/migrations.go:532:Migrate() [F] Migration Error: Your database (migration version: 358) is for a newer Gitea, you can not use the newer database for this old Gitea release (343). +[2Kgitea | Gitea will exit to keep your database safe and unchanged. Please use the correct Gitea release, do not change the migration version manually (incorrect manual operation may lose data). +[2Kgitea | Received signal 15; terminating. +[2Kgitea | Server listening on :: port 22. +[2Kgitea | Server listening on 0.0.0.0 port 22. +[2Kgitea | 2026/10/28 19:01:35 cmd/web.go:263:runWeb() [I] Starting Gitea on PID: 18 +[2Kgitea | 2026/10/28 19:01:35 cmd/web.go:115:showWebStartupMessage() [I] Gitea version: 1.27.3 built with go1.26.7-X:jsonv2 : bindata, timetzdata, +[2Kgitea | 2026/10/28 19:01:35 cmd/web.go:116:showWebStartupMessage() [I] * RunMode: prod +[2Kgitea | 2026/10/28 19:01:35 cmd/web.go:117:showWebStartupMessage() [I] * AppPath: /usr/local/bin/gitea +[2Kgitea | 2026/10/28 19:01:35 cmd/web.go:118:showWebStartupMessage() [I] * WorkPath: /data/gitea +[2Kgitea | 2026/10/28 19:01:35 cmd/web.go:119:showWebStartupMessage() [I] * CustomPath: /data/gitea +[2Kgitea | 2026/10/28 19:01:35 cmd/web.go:120:showWebStartupMessage() [I] * ConfigFile: /data/gitea/conf/app.ini +[2Kgitea | 2026/10/28 19:01:35 cmd/web.go:121:showWebStartupMessage() [I] Prepare to run web server +[2Kgitea | 2026/10/28 19:01:35 routers/init.go:117:InitWebInstalled() [I] Git version: 2.54.0 (home: /data/gitea/home) +[2Kgitea | 2026/10/28 19:01:35 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local +[2Kgitea | 2026/10/28 19:01:35 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/attachments +[2Kgitea | 2026/10/28 19:01:35 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local +[2Kgitea | 2026/10/28 19:01:35 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/avatars +[2Kgitea | 2026/10/28 19:01:35 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local +[2Kgitea | 2026/10/28 19:01:35 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-avatars +[2Kgitea | 2026/10/28 19:01:35 modules/storage/storage.go:237:initLFS() [I] Initialising LFS storage with type: local +[2Kgitea | 2026/10/28 19:01:35 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/git/lfs +[2Kgitea | 2026/10/28 19:01:35 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local +[2Kgitea | 2026/10/28 19:01:35 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-archive +[2Kgitea | 2026/10/28 19:01:35 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local +[2Kgitea | 2026/10/28 19:01:35 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/packages +[2Kgitea | 2026/10/28 19:01:35 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local +[2Kgitea | 2026/10/28 19:01:35 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_log +[2Kgitea | 2026/10/28 19:01:35 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local +[2Kgitea | 2026/10/28 19:01:35 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_artifacts +[2Kgitea | 2026/10/28 19:01:36 routers/common/db.go:22:InitDBEngine() [I] Beginning ORM engine initialization. +[2Kgitea | 2026/10/28 19:01:36 routers/common/db.go:29:InitDBEngine() [I] ORM engine initialization attempt #1/10... +[2Kgitea | 2026/10/28 19:01:36 cmd/web.go:205:serveInstalled() [I] PING DATABASE sqlite3 +[2Kgitea | 2026/10/28 19:01:36 .../migrations/migrations.go:532:Migrate() [F] Migration Error: Your database (migration version: 358) is for a newer Gitea, you can not use the newer database for this old Gitea release (343). +[2Kgitea | Gitea will exit to keep your database safe and unchanged. Please use the correct Gitea release, do not change the migration version manually (incorrect manual operation may lose data). +[2Kgitea | Received signal 15; terminating. +[2Kgitea | Server listening on :: port 22. +[2Kgitea | Server listening on 0.0.0.0 port 22. +[2Kgitea | 2026/10/28 19:01:37 cmd/web.go:263:runWeb() [I] Starting Gitea on PID: 19 +[2Kgitea | 2026/10/28 19:01:37 cmd/web.go:115:showWebStartupMessage() [I] Gitea version: 1.27.3 built with go1.26.7-X:jsonv2 : bindata, timetzdata, +[2Kgitea | 2026/10/28 19:01:37 cmd/web.go:116:showWebStartupMessage() [I] * RunMode: prod +[2Kgitea | 2026/10/28 19:01:37 cmd/web.go:117:showWebStartupMessage() [I] * AppPath: /usr/local/bin/gitea +[2Kgitea | 2026/10/28 19:01:37 cmd/web.go:118:showWebStartupMessage() [I] * WorkPath: /data/gitea +[2Kgitea | 2026/10/28 19:01:37 cmd/web.go:119:showWebStartupMessage() [I] * CustomPath: /data/gitea +[2Kgitea | 2026/10/28 19:01:37 cmd/web.go:120:showWebStartupMessage() [I] * ConfigFile: /data/gitea/conf/app.ini +[2Kgitea | 2026/10/28 19:01:37 cmd/web.go:121:showWebStartupMessage() [I] Prepare to run web server +[2Kgitea | 2026/10/28 19:01:37 routers/init.go:117:InitWebInstalled() [I] Git version: 2.54.0 (home: /data/gitea/home) +[2Kgitea | 2026/10/28 19:01:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local +[2Kgitea | 2026/10/28 19:01:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/attachments +[2Kgitea | 2026/10/28 19:01:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local +[2Kgitea | 2026/10/28 19:01:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/avatars +[2Kgitea | 2026/10/28 19:01:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local +[2Kgitea | 2026/10/28 19:01:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-avatars +[2Kgitea | 2026/10/28 19:01:37 modules/storage/storage.go:237:initLFS() [I] Initialising LFS storage with type: local +[2Kgitea | 2026/10/28 19:01:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/git/lfs +[2Kgitea | 2026/10/28 19:01:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local +[2Kgitea | 2026/10/28 19:01:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-archive +[2Kgitea | 2026/10/28 19:01:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local +[2Kgitea | 2026/10/28 19:01:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/packages +[2Kgitea | 2026/10/28 19:01:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local +[2Kgitea | 2026/10/28 19:01:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_log +[2Kgitea | 2026/10/28 19:01:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local +[2Kgitea | 2026/10/28 19:01:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_artifacts +[2Kgitea | 2026/10/28 19:01:37 routers/common/db.go:22:InitDBEngine() [I] Beginning ORM engine initialization. +[2Kgitea | 2026/10/28 19:01:37 routers/common/db.go:29:InitDBEngine() [I] ORM engine initialization attempt #1/10... +[2Kgitea | 2026/10/28 19:01:37 cmd/web.go:205:serveInstalled() [I] PING DATABASE sqlite3 +[2Kgitea | 2026/10/28 19:01:37 .../migrations/migrations.go:532:Migrate() [F] Migration Error: Your database (migration version: 358) is for a newer Gitea, you can not use the newer database for this old Gitea release (343). +[2Kgitea | Gitea will exit to keep your database safe and unchanged. Please use the correct Gitea release, do not change the migration version manually (incorrect manual operation may lose data). +[2Kgitea | Received signal 15; terminating. +[2Kgitea | Server listening on :: port 22. +[2Kgitea | Server listening on 0.0.0.0 port 22. +[2Kgitea | 2026/10/28 19:01:38 cmd/web.go:263:runWeb() [I] Starting Gitea on PID: 17 +[2Kgitea | 2026/10/28 19:01:38 cmd/web.go:115:showWebStartupMessage() [I] Gitea version: 1.27.3 built with go1.26.7-X:jsonv2 : bindata, timetzdata, +[2Kgitea | 2026/10/28 19:01:38 cmd/web.go:116:showWebStartupMessage() [I] * RunMode: prod +[2Kgitea | 2026/10/28 19:01:38 cmd/web.go:117:showWebStartupMessage() [I] * AppPath: /usr/local/bin/gitea +[2Kgitea | 2026/10/28 19:01:38 cmd/web.go:118:showWebStartupMessage() [I] * WorkPath: /data/gitea +[2Kgitea | 2026/10/28 19:01:38 cmd/web.go:119:showWebStartupMessage() [I] * CustomPath: /data/gitea +[2Kgitea | 2026/10/28 19:01:38 cmd/web.go:120:showWebStartupMessage() [I] * ConfigFile: /data/gitea/conf/app.ini +[2Kgitea | 2026/10/28 19:01:38 cmd/web.go:121:showWebStartupMessage() [I] Prepare to run web server +[2Kgitea | 2026/10/28 19:01:38 routers/init.go:117:InitWebInstalled() [I] Git version: 2.54.0 (home: /data/gitea/home) +[2Kgitea | 2026/10/28 19:01:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local +[2Kgitea | 2026/10/28 19:01:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/attachments +[2Kgitea | 2026/10/28 19:01:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local +[2Kgitea | 2026/10/28 19:01:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/avatars +[2Kgitea | 2026/10/28 19:01:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local +[2Kgitea | 2026/10/28 19:01:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-avatars +[2Kgitea | 2026/10/28 19:01:38 modules/storage/storage.go:237:initLFS() [I] Initialising LFS storage with type: local +[2Kgitea | 2026/10/28 19:01:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/git/lfs +[2Kgitea | 2026/10/28 19:01:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local +[2Kgitea | 2026/10/28 19:01:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-archive +[2Kgitea | 2026/10/28 19:01:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local +[2Kgitea | 2026/10/28 19:01:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/packages +[2Kgitea | 2026/10/28 19:01:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local +[2Kgitea | 2026/10/28 19:01:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_log +[2Kgitea | 2026/10/28 19:01:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local +[2Kgitea | 2026/10/28 19:01:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_artifacts +[2Kgitea | 2026/10/28 19:01:38 routers/common/db.go:22:InitDBEngine() [I] Beginning ORM engine initialization. +[2Kgitea | 2026/10/28 19:01:38 routers/common/db.go:29:InitDBEngine() [I] ORM engine initialization attempt #1/10... +[2Kgitea | 2026/10/28 19:01:38 cmd/web.go:205:serveInstalled() [I] PING DATABASE sqlite3 +[2Kgitea | 2026/10/28 19:01:39 .../migrations/migrations.go:532:Migrate() [F] Migration Error: Your database (migration version: 358) is for a newer Gitea, you can not use the newer database for this old Gitea release (343). +[2Kgitea | Gitea will exit to keep your database safe and unchanged. Please use the correct Gitea release, do not change the migration version manually (incorrect manual operation may lose data). +[2Kgitea | Received signal 15; terminating. +[2Kgitea | Server listening on :: port 22. +[2Kgitea | Server listening on 0.0.0.0 port 22. +[2Kgitea | 2026/10/28 19:01:41 cmd/web.go:263:runWeb() [I] Starting Gitea on PID: 17 +[2Kgitea | 2026/10/28 19:01:41 cmd/web.go:115:showWebStartupMessage() [I] Gitea version: 1.27.3 built with go1.26.7-X:jsonv2 : bindata, timetzdata, +[2Kgitea | 2026/10/28 19:01:41 cmd/web.go:116:showWebStartupMessage() [I] * RunMode: prod +[2Kgitea | 2026/10/28 19:01:41 cmd/web.go:117:showWebStartupMessage() [I] * AppPath: /usr/local/bin/gitea +[2Kgitea | 2026/10/28 19:01:41 cmd/web.go:118:showWebStartupMessage() [I] * WorkPath: /data/gitea +[2Kgitea | 2026/10/28 19:01:41 cmd/web.go:119:showWebStartupMessage() [I] * CustomPath: /data/gitea +[2Kgitea | 2026/10/28 19:01:41 cmd/web.go:120:showWebStartupMessage() [I] * ConfigFile: /data/gitea/conf/app.ini +[2Kgitea | 2026/10/28 19:01:41 cmd/web.go:121:showWebStartupMessage() [I] Prepare to run web server +[2Kgitea | 2026/10/28 19:01:41 routers/init.go:117:InitWebInstalled() [I] Git version: 2.54.0 (home: /data/gitea/home) +[2Kgitea | 2026/10/28 19:01:41 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local +[2Kgitea | 2026/10/28 19:01:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/attachments +[2Kgitea | 2026/10/28 19:01:41 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local +[2Kgitea | 2026/10/28 19:01:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/avatars +[2Kgitea | 2026/10/28 19:01:41 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local +[2Kgitea | 2026/10/28 19:01:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-avatars +[2Kgitea | 2026/10/28 19:01:41 modules/storage/storage.go:237:initLFS() [I] Initialising LFS storage with type: local +[2Kgitea | 2026/10/28 19:01:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/git/lfs +[2Kgitea | 2026/10/28 19:01:41 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local +[2Kgitea | 2026/10/28 19:01:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-archive +[2Kgitea | 2026/10/28 19:01:41 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local +[2Kgitea | 2026/10/28 19:01:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/packages +[2Kgitea | 2026/10/28 19:01:41 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local +[2Kgitea | 2026/10/28 19:01:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_log +[2Kgitea | 2026/10/28 19:01:41 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local +[2Kgitea | 2026/10/28 19:01:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_artifacts +[2Kgitea | 2026/10/28 19:01:41 routers/common/db.go:22:InitDBEngine() [I] Beginning ORM engine initialization. +[2Kgitea | 2026/10/28 19:01:41 routers/common/db.go:29:InitDBEngine() [I] ORM engine initialization attempt #1/10... +[2Kgitea | 2026/10/28 19:01:41 cmd/web.go:205:serveInstalled() [I] PING DATABASE sqlite3 +[2Kgitea | 2026/10/28 19:01:41 .../migrations/migrations.go:532:Migrate() [F] Migration Error: Your database (migration version: 358) is for a newer Gitea, you can not use the newer database for this old Gitea release (343). +[2Kgitea | Gitea will exit to keep your database safe and unchanged. Please use the correct Gitea release, do not change the migration version manually (incorrect manual operation may lose data). +[2Kgitea | Received signal 15; terminating. +[2Kgitea | Server listening on :: port 22. +[2Kgitea | Server listening on 0.0.0.0 port 22. +[2Kgitea | 2026/10/28 19:01:45 cmd/web.go:263:runWeb() [I] Starting Gitea on PID: 17 +[2Kgitea | 2026/10/28 19:01:45 cmd/web.go:115:showWebStartupMessage() [I] Gitea version: 1.27.3 built with go1.26.7-X:jsonv2 : bindata, timetzdata, +[2Kgitea | 2026/10/28 19:01:45 cmd/web.go:116:showWebStartupMessage() [I] * RunMode: prod +[2Kgitea | 2026/10/28 19:01:45 cmd/web.go:117:showWebStartupMessage() [I] * AppPath: /usr/local/bin/gitea +[2Kgitea | 2026/10/28 19:01:45 cmd/web.go:118:showWebStartupMessage() [I] * WorkPath: /data/gitea +[2Kgitea | 2026/10/28 19:01:45 cmd/web.go:119:showWebStartupMessage() [I] * CustomPath: /data/gitea +[2Kgitea | 2026/10/28 19:01:45 cmd/web.go:120:showWebStartupMessage() [I] * ConfigFile: /data/gitea/conf/app.ini +[2Kgitea | 2026/10/28 19:01:45 cmd/web.go:121:showWebStartupMessage() [I] Prepare to run web server +[2Kgitea | 2026/10/28 19:01:45 routers/init.go:117:InitWebInstalled() [I] Git version: 2.54.0 (home: /data/gitea/home) +[2Kgitea | 2026/10/28 19:01:45 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local +[2Kgitea | 2026/10/28 19:01:45 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/attachments +[2Kgitea | 2026/10/28 19:01:45 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local +[2Kgitea | 2026/10/28 19:01:45 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/avatars +[2Kgitea | 2026/10/28 19:01:45 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local +[2Kgitea | 2026/10/28 19:01:45 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-avatars +[2Kgitea | 2026/10/28 19:01:45 modules/storage/storage.go:237:initLFS() [I] Initialising LFS storage with type: local +[2Kgitea | 2026/10/28 19:01:45 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/git/lfs +[2Kgitea | 2026/10/28 19:01:45 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local +[2Kgitea | 2026/10/28 19:01:45 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-archive +[2Kgitea | 2026/10/28 19:01:45 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local +[2Kgitea | 2026/10/28 19:01:45 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/packages +[2Kgitea | 2026/10/28 19:01:45 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local +[2Kgitea | 2026/10/28 19:01:45 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_log +[2Kgitea | 2026/10/28 19:01:45 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local +[2Kgitea | 2026/10/28 19:01:45 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_artifacts +[2Kgitea | 2026/10/28 19:01:45 routers/common/db.go:22:InitDBEngine() [I] Beginning ORM engine initialization. +[2Kgitea | 2026/10/28 19:01:45 routers/common/db.go:29:InitDBEngine() [I] ORM engine initialization attempt #1/10... +[2Kgitea | 2026/10/28 19:01:45 cmd/web.go:205:serveInstalled() [I] PING DATABASE sqlite3 +[2Kgitea | 2026/10/28 19:01:45 .../migrations/migrations.go:532:Migrate() [F] Migration Error: Your database (migration version: 358) is for a newer Gitea, you can not use the newer database for this old Gitea release (343). +[2Kgitea | Gitea will exit to keep your database safe and unchanged. Please use the correct Gitea release, do not change the migration version manually (incorrect manual operation may lose data). +[2Kgitea | Received signal 15; terminating. +[2Kgitea | Server listening on :: port 22. +[2Kgitea | Server listening on 0.0.0.0 port 22. +[2Kgitea | 2026/10/28 19:01:52 cmd/web.go:263:runWeb() [I] Starting Gitea on PID: 17 +[2Kgitea | 2026/10/28 19:01:52 cmd/web.go:115:showWebStartupMessage() [I] Gitea version: 1.27.3 built with go1.26.7-X:jsonv2 : bindata, timetzdata, +[2Kgitea | 2026/10/28 19:01:52 cmd/web.go:116:showWebStartupMessage() [I] * RunMode: prod +[2Kgitea | 2026/10/28 19:01:52 cmd/web.go:117:showWebStartupMessage() [I] * AppPath: /usr/local/bin/gitea +[2Kgitea | 2026/10/28 19:01:52 cmd/web.go:118:showWebStartupMessage() [I] * WorkPath: /data/gitea +[2Kgitea | 2026/10/28 19:01:52 cmd/web.go:119:showWebStartupMessage() [I] * CustomPath: /data/gitea +[2Kgitea | 2026/10/28 19:01:52 cmd/web.go:120:showWebStartupMessage() [I] * ConfigFile: /data/gitea/conf/app.ini +[2Kgitea | 2026/10/28 19:01:52 cmd/web.go:121:showWebStartupMessage() [I] Prepare to run web server +[2Kgitea | 2026/10/28 19:01:52 routers/init.go:117:InitWebInstalled() [I] Git version: 2.54.0 (home: /data/gitea/home) +[2Kgitea | 2026/10/28 19:01:52 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local +[2Kgitea | 2026/10/28 19:01:52 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/attachments +[2Kgitea | 2026/10/28 19:01:52 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local +[2Kgitea | 2026/10/28 19:01:52 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/avatars +[2Kgitea | 2026/10/28 19:01:52 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local +[2Kgitea | 2026/10/28 19:01:52 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-avatars +[2Kgitea | 2026/10/28 19:01:52 modules/storage/storage.go:237:initLFS() [I] Initialising LFS storage with type: local +[2Kgitea | 2026/10/28 19:01:52 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/git/lfs +[2Kgitea | 2026/10/28 19:01:52 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local +[2Kgitea | 2026/10/28 19:01:52 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-archive +[2Kgitea | 2026/10/28 19:01:52 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local +[2Kgitea | 2026/10/28 19:01:52 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/packages +[2Kgitea | 2026/10/28 19:01:52 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local +[2Kgitea | 2026/10/28 19:01:52 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_log +[2Kgitea | 2026/10/28 19:01:52 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local +[2Kgitea | 2026/10/28 19:01:52 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_artifacts +[2Kgitea | 2026/10/28 19:01:52 routers/common/db.go:22:InitDBEngine() [I] Beginning ORM engine initialization. +[2Kgitea | 2026/10/28 19:01:52 routers/common/db.go:29:InitDBEngine() [I] ORM engine initialization attempt #1/10... +[2Kgitea | 2026/10/28 19:01:52 cmd/web.go:205:serveInstalled() [I] PING DATABASE sqlite3 +[2Kgitea | 2026/10/28 19:01:52 .../migrations/migrations.go:532:Migrate() [F] Migration Error: Your database (migration version: 358) is for a newer Gitea, you can not use the newer database for this old Gitea release (343). +[2Kgitea | Gitea will exit to keep your database safe and unchanged. Please use the correct Gitea release, do not change the migration version manually (incorrect manual operation may lose data). +[2Kgitea | Received signal 15; terminating. +[2Kgitea | Server listening on :: port 22. +[2Kgitea | Server listening on 0.0.0.0 port 22. +[2Kgitea | 2026/10/28 19:02:06 cmd/web.go:263:runWeb() [I] Starting Gitea on PID: 18 +[2Kgitea | 2026/10/28 19:02:06 cmd/web.go:115:showWebStartupMessage() [I] Gitea version: 1.27.3 built with go1.26.7-X:jsonv2 : bindata, timetzdata, +[2Kgitea | 2026/10/28 19:02:06 cmd/web.go:116:showWebStartupMessage() [I] * RunMode: prod +[2Kgitea | 2026/10/28 19:02:06 cmd/web.go:117:showWebStartupMessage() [I] * AppPath: /usr/local/bin/gitea +[2Kgitea | 2026/10/28 19:02:06 cmd/web.go:118:showWebStartupMessage() [I] * WorkPath: /data/gitea +[2Kgitea | 2026/10/28 19:02:06 cmd/web.go:119:showWebStartupMessage() [I] * CustomPath: /data/gitea +[2Kgitea | 2026/10/28 19:02:06 cmd/web.go:120:showWebStartupMessage() [I] * ConfigFile: /data/gitea/conf/app.ini +[2Kgitea | 2026/10/28 19:02:06 cmd/web.go:121:showWebStartupMessage() [I] Prepare to run web server +[2Kgitea | 2026/10/28 19:02:06 routers/init.go:117:InitWebInstalled() [I] Git version: 2.54.0 (home: /data/gitea/home) +[2Kgitea | 2026/10/28 19:02:06 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local +[2Kgitea | 2026/10/28 19:02:06 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/attachments +[2Kgitea | 2026/10/28 19:02:06 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local +[2Kgitea | 2026/10/28 19:02:06 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/avatars +[2Kgitea | 2026/10/28 19:02:06 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local +[2Kgitea | 2026/10/28 19:02:06 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-avatars +[2Kgitea | 2026/10/28 19:02:06 modules/storage/storage.go:237:initLFS() [I] Initialising LFS storage with type: local +[2Kgitea | 2026/10/28 19:02:06 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/git/lfs +[2Kgitea | 2026/10/28 19:02:06 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local +[2Kgitea | 2026/10/28 19:02:06 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-archive +[2Kgitea | 2026/10/28 19:02:06 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local +[2Kgitea | 2026/10/28 19:02:06 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/packages +[2Kgitea | 2026/10/28 19:02:06 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local +[2Kgitea | 2026/10/28 19:02:06 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_log +[2Kgitea | 2026/10/28 19:02:06 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local +[2Kgitea | 2026/10/28 19:02:06 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_artifacts +[2Kgitea | 2026/10/28 19:02:06 routers/common/db.go:22:InitDBEngine() [I] Beginning ORM engine initialization. +[2Kgitea | 2026/10/28 19:02:06 routers/common/db.go:29:InitDBEngine() [I] ORM engine initialization attempt #1/10... +[2Kgitea | 2026/10/28 19:02:06 cmd/web.go:205:serveInstalled() [I] PING DATABASE sqlite3 +[2Kgitea | 2026/10/28 19:02:06 .../migrations/migrations.go:532:Migrate() [F] Migration Error: Your database (migration version: 358) is for a newer Gitea, you can not use the newer database for this old Gitea release (343). +[2Kgitea | Gitea will exit to keep your database safe and unchanged. Please use the correct Gitea release, do not change the migration version manually (incorrect manual operation may lose data). +[2Kgitea | Received signal 15; terminating. +[2Kgitea | Server listening on :: port 22. +[2Kgitea | Server listening on 0.0.0.0 port 22. +[2Kgitea | 2026/10/28 19:02:32 cmd/web.go:263:runWeb() [I] Starting Gitea on PID: 17 +[2Kgitea | 2026/10/28 19:02:32 cmd/web.go:115:showWebStartupMessage() [I] Gitea version: 1.27.3 built with go1.26.7-X:jsonv2 : bindata, timetzdata, +[2Kgitea | 2026/10/28 19:02:32 cmd/web.go:116:showWebStartupMessage() [I] * RunMode: prod +[2Kgitea | 2026/10/28 19:02:32 cmd/web.go:117:showWebStartupMessage() [I] * AppPath: /usr/local/bin/gitea +[2Kgitea | 2026/10/28 19:02:32 cmd/web.go:118:showWebStartupMessage() [I] * WorkPath: /data/gitea +[2Kgitea | 2026/10/28 19:02:32 cmd/web.go:119:showWebStartupMessage() [I] * CustomPath: /data/gitea +[2Kgitea | 2026/10/28 19:02:32 cmd/web.go:120:showWebStartupMessage() [I] * ConfigFile: /data/gitea/conf/app.ini +[2Kgitea | 2026/10/28 19:02:32 cmd/web.go:121:showWebStartupMessage() [I] Prepare to run web server +[2Kgitea | 2026/10/28 19:02:32 routers/init.go:117:InitWebInstalled() [I] Git version: 2.54.0 (home: /data/gitea/home) +[2Kgitea | 2026/10/28 19:02:33 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local +[2Kgitea | 2026/10/28 19:02:33 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/attachments +[2Kgitea | 2026/10/28 19:02:33 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local +[2Kgitea | 2026/10/28 19:02:33 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/avatars +[2Kgitea | 2026/10/28 19:02:33 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local +[2Kgitea | 2026/10/28 19:02:33 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-avatars +[2Kgitea | 2026/10/28 19:02:33 modules/storage/storage.go:237:initLFS() [I] Initialising LFS storage with type: local +[2Kgitea | 2026/10/28 19:02:33 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/git/lfs +[2Kgitea | 2026/10/28 19:02:33 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local +[2Kgitea | 2026/10/28 19:02:33 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-archive +[2Kgitea | 2026/10/28 19:02:33 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local +[2Kgitea | 2026/10/28 19:02:33 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/packages +[2Kgitea | 2026/10/28 19:02:33 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local +[2Kgitea | 2026/10/28 19:02:33 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_log +[2Kgitea | 2026/10/28 19:02:33 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local +[2Kgitea | 2026/10/28 19:02:33 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_artifacts +[2Kgitea | 2026/10/28 19:02:33 routers/common/db.go:22:InitDBEngine() [I] Beginning ORM engine initialization. +[2Kgitea | 2026/10/28 19:02:33 routers/common/db.go:29:InitDBEngine() [I] ORM engine initialization attempt #1/10... +[2Kgitea | 2026/10/28 19:02:33 cmd/web.go:205:serveInstalled() [I] PING DATABASE sqlite3 +[2Kgitea | 2026/10/28 19:02:33 .../migrations/migrations.go:532:Migrate() [F] Migration Error: Your database (migration version: 358) is for a newer Gitea, you can not use the newer database for this old Gitea release (343). +[2Kgitea | Gitea will exit to keep your database safe and unchanged. Please use the correct Gitea release, do not change the migration version manually (incorrect manual operation may lose data). +[2Kgitea | Received signal 15; terminating. +[2Kgitea | Server listening on :: port 22. +[2Kgitea | Server listening on 0.0.0.0 port 22. +[2Kgitea | 2026/10/28 19:03:24 cmd/web.go:263:runWeb() [I] Starting Gitea on PID: 18 +[2Kgitea | 2026/10/28 19:03:25 cmd/web.go:115:showWebStartupMessage() [I] Gitea version: 1.27.3 built with go1.26.7-X:jsonv2 : bindata, timetzdata, +[2Kgitea | 2026/10/28 19:03:25 cmd/web.go:116:showWebStartupMessage() [I] * RunMode: prod +[2Kgitea | 2026/10/28 19:03:25 cmd/web.go:117:showWebStartupMessage() [I] * AppPath: /usr/local/bin/gitea +[2Kgitea | 2026/10/28 19:03:25 cmd/web.go:118:showWebStartupMessage() [I] * WorkPath: /data/gitea +[2Kgitea | 2026/10/28 19:03:25 cmd/web.go:119:showWebStartupMessage() [I] * CustomPath: /data/gitea +[2Kgitea | 2026/10/28 19:03:25 cmd/web.go:120:showWebStartupMessage() [I] * ConfigFile: /data/gitea/conf/app.ini +[2Kgitea | 2026/10/28 19:03:25 cmd/web.go:121:showWebStartupMessage() [I] Prepare to run web server +[2Kgitea | 2026/10/28 19:03:25 routers/init.go:117:InitWebInstalled() [I] Git version: 2.54.0 (home: /data/gitea/home) +[2Kgitea | 2026/10/28 19:03:25 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local +[2Kgitea | 2026/10/28 19:03:25 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/attachments +[2Kgitea | 2026/10/28 19:03:25 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local +[2Kgitea | 2026/10/28 19:03:25 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/avatars +[2Kgitea | 2026/10/28 19:03:25 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local +[2Kgitea | 2026/10/28 19:03:25 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-avatars +[2Kgitea | 2026/10/28 19:03:25 modules/storage/storage.go:237:initLFS() [I] Initialising LFS storage with type: local +[2Kgitea | 2026/10/28 19:03:25 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/git/lfs +[2Kgitea | 2026/10/28 19:03:25 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local +[2Kgitea | 2026/10/28 19:03:25 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-archive +[2Kgitea | 2026/10/28 19:03:25 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local +[2Kgitea | 2026/10/28 19:03:25 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/packages +[2Kgitea | 2026/10/28 19:03:25 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local +[2Kgitea | 2026/10/28 19:03:25 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_log +[2Kgitea | 2026/10/28 19:03:25 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local +[2Kgitea | 2026/10/28 19:03:25 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_artifacts +[2Kgitea | 2026/10/28 19:03:25 routers/common/db.go:22:InitDBEngine() [I] Beginning ORM engine initialization. +[2Kgitea | 2026/10/28 19:03:25 routers/common/db.go:29:InitDBEngine() [I] ORM engine initialization attempt #1/10... +[2Kgitea | 2026/10/28 19:03:25 cmd/web.go:205:serveInstalled() [I] PING DATABASE sqlite3 +[2Kgitea | 2026/10/28 19:03:25 .../migrations/migrations.go:532:Migrate() [F] Migration Error: Your database (migration version: 358) is for a newer Gitea, you can not use the newer database for this old Gitea release (343). +[2Kgitea | Gitea will exit to keep your database safe and unchanged. Please use the correct Gitea release, do not change the migration version manually (incorrect manual operation may lose data). +[2Kgitea | Received signal 15; terminating. +[2Kgitea | Server listening on :: port 22. +[2Kgitea | Server listening on 0.0.0.0 port 22. +[2Kgitea | 2026/10/28 19:04:25 cmd/web.go:263:runWeb() [I] Starting Gitea on PID: 18 +[2Kgitea | 2026/10/28 19:04:25 cmd/web.go:115:showWebStartupMessage() [I] Gitea version: 1.27.3 built with go1.26.7-X:jsonv2 : bindata, timetzdata, +[2Kgitea | 2026/10/28 19:04:25 cmd/web.go:116:showWebStartupMessage() [I] * RunMode: prod +[2Kgitea | 2026/10/28 19:04:25 cmd/web.go:117:showWebStartupMessage() [I] * AppPath: /usr/local/bin/gitea +[2Kgitea | 2026/10/28 19:04:25 cmd/web.go:118:showWebStartupMessage() [I] * WorkPath: /data/gitea +[2Kgitea | 2026/10/28 19:04:25 cmd/web.go:119:showWebStartupMessage() [I] * CustomPath: /data/gitea +[2Kgitea | 2026/10/28 19:04:25 cmd/web.go:120:showWebStartupMessage() [I] * ConfigFile: /data/gitea/conf/app.ini +[2Kgitea | 2026/10/28 19:04:25 cmd/web.go:121:showWebStartupMessage() [I] Prepare to run web server +[2Kgitea | 2026/10/28 19:04:25 routers/init.go:117:InitWebInstalled() [I] Git version: 2.54.0 (home: /data/gitea/home) +[2Kgitea | 2026/10/28 19:04:26 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local +[2Kgitea | 2026/10/28 19:04:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/attachments +[2Kgitea | 2026/10/28 19:04:26 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local +[2Kgitea | 2026/10/28 19:04:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/avatars +[2Kgitea | 2026/10/28 19:04:26 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local +[2Kgitea | 2026/10/28 19:04:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-avatars +[2Kgitea | 2026/10/28 19:04:26 modules/storage/storage.go:237:initLFS() [I] Initialising LFS storage with type: local +[2Kgitea | 2026/10/28 19:04:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/git/lfs +[2Kgitea | 2026/10/28 19:04:26 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local +[2Kgitea | 2026/10/28 19:04:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-archive +[2Kgitea | 2026/10/28 19:04:26 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local +[2Kgitea | 2026/10/28 19:04:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/packages +[2Kgitea | 2026/10/28 19:04:26 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local +[2Kgitea | 2026/10/28 19:04:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_log +[2Kgitea | 2026/10/28 19:04:26 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local +[2Kgitea | 2026/10/28 19:04:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_artifacts +[2Kgitea | 2026/10/28 19:04:26 routers/common/db.go:22:InitDBEngine() [I] Beginning ORM engine initialization. +[2Kgitea | 2026/10/28 19:04:26 routers/common/db.go:29:InitDBEngine() [I] ORM engine initialization attempt #1/10... +[2Kgitea | 2026/10/28 19:04:26 cmd/web.go:205:serveInstalled() [I] PING DATABASE sqlite3 +[2Kgitea | 2026/10/28 19:04:26 .../migrations/migrations.go:532:Migrate() [F] Migration Error: Your database (migration version: 358) is for a newer Gitea, you can not use the newer database for this old Gitea release (343). +[2Kgitea | Gitea will exit to keep your database safe and unchanged. Please use the correct Gitea release, do not change the migration version manually (incorrect manual operation may lose data). +[2Kgitea | Received signal 15; terminating. diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/engine-state.json b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/engine-state.json new file mode 100644 index 00000000..ec747fa4 --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/engine-state.json @@ -0,0 +1 @@ +null \ No newline at end of file diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/files-after-detail.json b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/files-after-detail.json new file mode 100644 index 00000000..9e26dfee --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/files-after-detail.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/files-after.json b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/files-after.json new file mode 100644 index 00000000..9e26dfee --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/files-after.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/files-before-detail.json b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/files-before-detail.json new file mode 100644 index 00000000..9e26dfee --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/files-before-detail.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/files-before.json b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/files-before.json new file mode 100644 index 00000000..9e26dfee --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/files-before.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/memory-samples.json b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/memory-samples.json new file mode 100644 index 00000000..0ca63a71 --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/memory-samples.json @@ -0,0 +1,762 @@ +[ + { + "t": 15.1, + "containers": { + "gitea": { + "limit": 536870912, + "current": 348405760, + "peak": 349184000, + "anon": 108822528, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 300 + }, + { + "t": 30.2, + "containers": { + "gitea": { + "limit": 536870912, + "current": 363274240, + "peak": 363601920, + "anon": 123871232, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 600 + }, + { + "t": 45.4, + "containers": { + "gitea": { + "limit": 536870912, + "current": 369954816, + "peak": 370712576, + "anon": 130334720, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 900 + }, + { + "t": 60.5, + "containers": { + "gitea": { + "limit": 536870912, + "current": 370634752, + "peak": 372416512, + "anon": 130977792, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 1196 + }, + { + "t": 75.6, + "containers": { + "gitea": { + "limit": 536870912, + "current": 370450432, + "peak": 372416512, + "anon": 131108864, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 1496 + }, + { + "t": 90.8, + "containers": { + "gitea": { + "limit": 536870912, + "current": 371404800, + "peak": 373010432, + "anon": 131551232, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 1796 + }, + { + "t": 105.9, + "containers": { + "gitea": { + "limit": 536870912, + "current": 371093504, + "peak": 373010432, + "anon": 131743744, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 2092 + }, + { + "t": 121.0, + "containers": { + "gitea": { + "limit": 536870912, + "current": 370917376, + "peak": 373522432, + "anon": 131805184, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 2392 + }, + { + "t": 136.1, + "containers": { + "gitea": { + "limit": 536870912, + "current": 375734272, + "peak": 376250368, + "anon": 135852032, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 2692 + }, + { + "t": 151.2, + "containers": { + "gitea": { + "limit": 536870912, + "current": 375377920, + "peak": 377606144, + "anon": 135880704, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 2988 + }, + { + "t": 166.3, + "containers": { + "gitea": { + "limit": 536870912, + "current": 376414208, + "peak": 377606144, + "anon": 136265728, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 3288 + }, + { + "t": 181.5, + "containers": { + "gitea": { + "limit": 536870912, + "current": 376217600, + "peak": 377782272, + "anon": 136589312, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 3588 + }, + { + "t": 196.6, + "containers": { + "gitea": { + "limit": 536870912, + "current": 376242176, + "peak": 377782272, + "anon": 136609792, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 3884 + }, + { + "t": 211.7, + "containers": { + "gitea": { + "limit": 536870912, + "current": 376684544, + "peak": 378523648, + "anon": 136810496, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 4184 + }, + { + "t": 226.8, + "containers": { + "gitea": { + "limit": 536870912, + "current": 376680448, + "peak": 378523648, + "anon": 136818688, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 4484 + }, + { + "t": 242.0, + "containers": { + "gitea": { + "limit": 536870912, + "current": 377028608, + "peak": 378523648, + "anon": 136859648, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 4784 + }, + { + "t": 257.1, + "containers": { + "gitea": { + "limit": 536870912, + "current": 376479744, + "peak": 378523648, + "anon": 136867840, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 5080 + }, + { + "t": 272.2, + "containers": { + "gitea": { + "limit": 536870912, + "current": 376782848, + "peak": 379387904, + "anon": 136916992, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 5380 + }, + { + "t": 287.3, + "containers": { + "gitea": { + "limit": 536870912, + "current": 376823808, + "peak": 379387904, + "anon": 136937472, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 5680 + }, + { + "t": 302.4, + "containers": { + "gitea": { + "limit": 536870912, + "current": 376590336, + "peak": 379387904, + "anon": 136941568, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 5976 + }, + { + "t": 317.6, + "containers": { + "gitea": { + "limit": 536870912, + "current": 376852480, + "peak": 379387904, + "anon": 136986624, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 6276 + }, + { + "t": 332.7, + "containers": { + "gitea": { + "limit": 536870912, + "current": 376635392, + "peak": 379387904, + "anon": 136994816, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 6572 + }, + { + "t": 347.8, + "containers": { + "gitea": { + "limit": 536870912, + "current": 375865344, + "peak": 379387904, + "anon": 137007104, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 6872 + }, + { + "t": 362.9, + "containers": { + "gitea": { + "limit": 536870912, + "current": 376954880, + "peak": 379387904, + "anon": 137060352, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 7172 + }, + { + "t": 378.0, + "containers": { + "gitea": { + "limit": 536870912, + "current": 377217024, + "peak": 379387904, + "anon": 137068544, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 7472 + }, + { + "t": 393.2, + "containers": { + "gitea": { + "limit": 536870912, + "current": 376217600, + "peak": 379576320, + "anon": 137097216, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 7768 + }, + { + "t": 408.3, + "containers": { + "gitea": { + "limit": 536870912, + "current": 376217600, + "peak": 379576320, + "anon": 137101312, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 8068 + }, + { + "t": 423.4, + "containers": { + "gitea": { + "limit": 536870912, + "current": 376840192, + "peak": 379576320, + "anon": 137211904, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 8368 + }, + { + "t": 438.5, + "containers": { + "gitea": { + "limit": 536870912, + "current": 376881152, + "peak": 379576320, + "anon": 137506816, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 8664 + }, + { + "t": 453.7, + "containers": { + "gitea": { + "limit": 536870912, + "current": 376393728, + "peak": 379576320, + "anon": 137515008, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 8964 + }, + { + "t": 468.8, + "containers": { + "gitea": { + "limit": 536870912, + "current": 377413632, + "peak": 379576320, + "anon": 137523200, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 9264 + }, + { + "t": 483.9, + "containers": { + "gitea": { + "limit": 536870912, + "current": 376918016, + "peak": 379576320, + "anon": 137523200, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 9560 + }, + { + "t": 499.0, + "containers": { + "gitea": { + "limit": 536870912, + "current": 377409536, + "peak": 379576320, + "anon": 137527296, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 9860 + }, + { + "t": 514.1, + "containers": { + "gitea": { + "limit": 536870912, + "current": 377962496, + "peak": 379576320, + "anon": 137539584, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 10160 + }, + { + "t": 529.3, + "containers": { + "gitea": { + "limit": 536870912, + "current": 377221120, + "peak": 379576320, + "anon": 137551872, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 10456 + }, + { + "t": 544.4, + "containers": { + "gitea": { + "limit": 536870912, + "current": 377204736, + "peak": 379576320, + "anon": 137572352, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 10756 + }, + { + "t": 559.5, + "containers": { + "gitea": { + "limit": 536870912, + "current": 377233408, + "peak": 379576320, + "anon": 137588736, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 11056 + }, + { + "t": 574.6, + "containers": { + "gitea": { + "limit": 536870912, + "current": 377249792, + "peak": 379576320, + "anon": 137617408, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 11353 + }, + { + "t": 589.8, + "containers": { + "gitea": { + "limit": 536870912, + "current": 377065472, + "peak": 379576320, + "anon": 137662464, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 11652 + }, + { + "t": 604.9, + "containers": { + "gitea": { + "limit": 536870912, + "current": 377286656, + "peak": 379576320, + "anon": 137670656, + "swap": 0, + "swap_peak": 0, + "oom_kill": 0, + "restarts": 0, + "oomkilled_flag": false, + "status": "running", + "cgroup": true + } + }, + "requests": 11952 + } +] \ No newline at end of file diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/migration-lines.txt b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/migration-lines.txt new file mode 100644 index 00000000..885ccd30 --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/migration-lines.txt @@ -0,0 +1,6 @@ +[2Kgitea | 2026/10/28 18:50:58 modelmigration/migrations.go:557:Migrate() [I] Migration[343]: Add max_parallel column to action_run_job +[2Kgitea | 2026/10/28 18:50:58 modelmigration/migrations.go:557:Migrate() [I] Migration[344]: Add deferred-matrix columns to ActionRunJob +[2Kgitea | 2026/10/28 18:50:58 modelmigration/migrations.go:557:Migrate() [I] Migration[345]: Add block on CODEOWNERS reviews branch protection +[2Kgitea | 2026/10/28 18:50:58 modelmigration/migrations.go:557:Migrate() [I] Migration[346]: Add license_path column to repo_license and backfill +[2Kgitea | 2026/10/28 18:50:58 modelmigration/migrations.go:557:Migrate() [I] Migration[347]: Add watch options +[2Kgitea | 2026/10/28 18:50:58 modelmigration/migrations.go:557:Migrate() [I] Migration[348]: Recreate email_hash table for SHA256 avatar hashes \ No newline at end of file diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/run.log b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/run.log new file mode 100644 index 00000000..91781b00 --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/run.log @@ -0,0 +1,62 @@ +[17:49:38] scratch drive folders cleared before FROM (R-656): none existed +[17:49:38] MV-gitea: deploying gitea at FROM {'gitea': 'gitea/gitea:1.27.3'} +[17:50:22] FROM settled=True in 30.9s :: {"gitea": {"status": "running", "health": "healthy", "restarts": 0, "exit": 0}} +[17:50:22] fixture: the BOX walk's own (Gitea), through upgrade_boxport +[17:50:29] gitea: first-run installer POST / http=200 +[17:50:35] gitea: installed through its own first-run form; the admin authenticates +[17:50:36] gitea: create repo http=201 +[17:50:36] gitea: one commit (drill.txt) http=201 +[17:50:36] gitea: the committed file read back http=200 same=True +[17:50:36] gitea: readback of the seeded repo http=200 ok=True +[17:50:36] C1 (seed reads back BEFORE): True +[17:50:37] MV-gitea: swapping to TO {'gitea': 'gitea/gitea:28.2.0'} +[17:50:52] TO up -d rc=0 +[17:51:23] TO settled=True in 30.8s :: {"gitea": {"status": "running", "health": "healthy", "restarts": 0, "exit": 0}} +[17:51:23] migration lines observed: 6 +[17:51:23] gitea: the committed file read back http=200 same=True +[17:51:23] gitea: readback of the seeded repo http=200 ok=True +[17:51:23] RESULT (seed reads back AFTER): True +[17:51:24] memory watch: 600s, 4 callers on 1 path(s) at 172.18.0.2:3000 +[17:51:39] + 15s gitea=332M/512M peak=333M kills=0 rs=0 reqs=300 +[17:51:54] + 30s gitea=346M/512M peak=346M kills=0 rs=0 reqs=600 +[17:52:09] + 45s gitea=352M/512M peak=353M kills=0 rs=0 reqs=900 +[17:52:24] + 60s gitea=353M/512M peak=355M kills=0 rs=0 reqs=1196 +[17:52:39] + 76s gitea=353M/512M peak=355M kills=0 rs=0 reqs=1496 +[17:52:54] + 91s gitea=354M/512M peak=355M kills=0 rs=0 reqs=1796 +[17:53:10] + 106s gitea=353M/512M peak=355M kills=0 rs=0 reqs=2092 +[17:53:25] + 121s gitea=353M/512M peak=356M kills=0 rs=0 reqs=2392 +[17:53:40] + 136s gitea=358M/512M peak=358M kills=0 rs=0 reqs=2692 +[17:53:55] + 151s gitea=357M/512M peak=360M kills=0 rs=0 reqs=2988 +[17:54:10] + 166s gitea=358M/512M peak=360M kills=0 rs=0 reqs=3288 +[17:54:25] + 182s gitea=358M/512M peak=360M kills=0 rs=0 reqs=3588 +[17:54:40] + 197s gitea=358M/512M peak=360M kills=0 rs=0 reqs=3884 +[17:54:55] + 212s gitea=359M/512M peak=360M kills=0 rs=0 reqs=4184 +[17:55:11] + 227s gitea=359M/512M peak=360M kills=0 rs=0 reqs=4484 +[17:55:26] + 242s gitea=359M/512M peak=360M kills=0 rs=0 reqs=4784 +[17:55:41] + 257s gitea=359M/512M peak=360M kills=0 rs=0 reqs=5080 +[17:55:56] + 272s gitea=359M/512M peak=361M kills=0 rs=0 reqs=5380 +[17:56:11] + 287s gitea=359M/512M peak=361M kills=0 rs=0 reqs=5680 +[17:56:26] + 302s gitea=359M/512M peak=361M kills=0 rs=0 reqs=5976 +[17:56:41] + 318s gitea=359M/512M peak=361M kills=0 rs=0 reqs=6276 +[17:56:56] + 333s gitea=359M/512M peak=361M kills=0 rs=0 reqs=6572 +[17:57:12] + 348s gitea=358M/512M peak=361M kills=0 rs=0 reqs=6872 +[17:57:27] + 363s gitea=359M/512M peak=361M kills=0 rs=0 reqs=7172 +[17:57:42] + 378s gitea=359M/512M peak=361M kills=0 rs=0 reqs=7472 +[17:57:57] + 393s gitea=358M/512M peak=361M kills=0 rs=0 reqs=7768 +[17:58:12] + 408s gitea=358M/512M peak=361M kills=0 rs=0 reqs=8068 +[17:58:27] + 423s gitea=359M/512M peak=361M kills=0 rs=0 reqs=8368 +[17:58:42] + 438s gitea=359M/512M peak=361M kills=0 rs=0 reqs=8664 +[17:58:57] + 454s gitea=358M/512M peak=361M kills=0 rs=0 reqs=8964 +[17:59:13] + 469s gitea=359M/512M peak=361M kills=0 rs=0 reqs=9264 +[17:59:28] + 484s gitea=359M/512M peak=361M kills=0 rs=0 reqs=9560 +[17:59:43] + 499s gitea=359M/512M peak=361M kills=0 rs=0 reqs=9860 +[17:59:58] + 514s gitea=360M/512M peak=361M kills=0 rs=0 reqs=10160 +[18:00:13] + 529s gitea=359M/512M peak=361M kills=0 rs=0 reqs=10456 +[18:00:28] + 544s gitea=359M/512M peak=361M kills=0 rs=0 reqs=10756 +[18:00:43] + 560s gitea=359M/512M peak=361M kills=0 rs=0 reqs=11056 +[18:00:58] + 575s gitea=359M/512M peak=361M kills=0 rs=0 reqs=11353 +[18:01:13] + 590s gitea=359M/512M peak=361M kills=0 rs=0 reqs=11652 +[18:01:29] + 605s gitea=359M/512M peak=361M kills=0 rs=0 reqs=11952 +[18:01:29] memory watch: killed=False tight=[] requests=11952 codes={'200': 11952} +[18:01:29] MV-gitea: ABORT — putting the FROM images back +[18:04:34] ABORT: the app did NOT come back (rc=0, 184.8s) \ No newline at end of file diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/to-full.log b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/to-full.log new file mode 100644 index 00000000..9e96148c --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/to-full.log @@ -0,0 +1,57 @@ +[2Kgitea | Server listening on :: port 22. +[2Kgitea | Server listening on 0.0.0.0 port 22. +[2Kgitea | 2026/10/28 18:50:58 cmd/web.go:273:runWeb() [I] Starting Gitea on PID: 17 +[2Kgitea | 2026/10/28 18:50:58 cmd/web.go:117:showWebStartupMessage() [I] Gitea version: 28.2.0 built with go1.27.2 : bindata, timetzdata, +[2Kgitea | 2026/10/28 18:50:58 cmd/web.go:118:showWebStartupMessage() [I] * RunMode: prod +[2Kgitea | 2026/10/28 18:50:58 cmd/web.go:119:showWebStartupMessage() [I] * AppPath: /usr/local/bin/gitea +[2Kgitea | 2026/10/28 18:50:58 cmd/web.go:120:showWebStartupMessage() [I] * WorkPath: /data/gitea +[2Kgitea | 2026/10/28 18:50:58 cmd/web.go:121:showWebStartupMessage() [I] * CustomPath: /data/gitea +[2Kgitea | 2026/10/28 18:50:58 cmd/web.go:122:showWebStartupMessage() [I] * ConfigFile: /data/gitea/conf/app.ini +[2Kgitea | 2026/10/28 18:50:58 cmd/web.go:123:showWebStartupMessage() [I] Prepare to run web server +[2Kgitea | 2026/10/28 18:50:58 routers/init.go:117:InitWebInstalled() [I] Git version: 2.54.0 (home: /data/gitea/home) +[2Kgitea | 2026/10/28 18:50:58 modules/storage/storage.go:241:initAttachments() [I] Initialising Attachment storage with type: local +[2Kgitea | 2026/10/28 18:50:58 modules/storage/local.go:49:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/attachments +[2Kgitea | 2026/10/28 18:50:58 modules/storage/storage.go:231:initAvatars() [I] Initialising Avatar storage with type: local +[2Kgitea | 2026/10/28 18:50:58 modules/storage/local.go:49:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/avatars +[2Kgitea | 2026/10/28 18:50:58 modules/storage/storage.go:257:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local +[2Kgitea | 2026/10/28 18:50:58 modules/storage/local.go:49:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-avatars +[2Kgitea | 2026/10/28 18:50:58 modules/storage/storage.go:251:initLFS() [I] Initialising LFS storage with type: local +[2Kgitea | 2026/10/28 18:50:58 modules/storage/local.go:49:NewLocalStorage() [I] Creating new Local Storage at /data/git/lfs +[2Kgitea | 2026/10/28 18:50:58 modules/storage/storage.go:263:initRepoArchives() [I] Initialising Repository Archive storage with type: local +[2Kgitea | 2026/10/28 18:50:58 modules/storage/local.go:49:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-archive +[2Kgitea | 2026/10/28 18:50:58 modules/storage/storage.go:273:initPackages() [I] Initialising Packages storage with type: local +[2Kgitea | 2026/10/28 18:50:58 modules/storage/local.go:49:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/packages +[2Kgitea | 2026/10/28 18:50:58 modules/storage/storage.go:284:initActions() [I] Initialising Actions storage with type: local +[2Kgitea | 2026/10/28 18:50:58 modules/storage/local.go:49:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_log +[2Kgitea | 2026/10/28 18:50:58 modules/storage/storage.go:288:initActions() [I] Initialising ActionsArtifacts storage with type: local +[2Kgitea | 2026/10/28 18:50:58 modules/storage/local.go:49:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_artifacts +[2Kgitea | 2026/10/28 18:50:58 routers/common/db.go:22:InitDBEngine() [I] Beginning ORM engine initialization. +[2Kgitea | 2026/10/28 18:50:58 routers/common/db.go:29:InitDBEngine() [I] ORM engine initialization attempt #1/10... +[2Kgitea | 2026/10/28 18:50:58 cmd/web.go:207:serveInstalled() [I] PING DATABASE sqlite3 +[2Kgitea | 2026/10/28 18:50:58 modelmigration/migrations.go:557:Migrate() [I] Migration[343]: Add max_parallel column to action_run_job +[2Kgitea | 2026/10/28 18:50:58 modelmigration/migrations.go:557:Migrate() [I] Migration[344]: Add deferred-matrix columns to ActionRunJob +[2Kgitea | 2026/10/28 18:50:58 modelmigration/migrations.go:557:Migrate() [I] Migration[345]: Add block on CODEOWNERS reviews branch protection +[2Kgitea | 2026/10/28 18:50:58 modelmigration/migrations.go:557:Migrate() [I] Migration[346]: Add license_path column to repo_license and backfill +[2Kgitea | 2026/10/28 18:50:58 modelmigration/migrations.go:557:Migrate() [I] Migration[347]: Add watch options +[2Kgitea | 2026/10/28 18:50:58 modelmigration/migrations.go:557:Migrate() [I] Migration[348]: Recreate email_hash table for SHA256 avatar hashes +[2Kgitea | 2026/10/28 18:50:58 modelmigration/migrations.go:557:Migrate() [I] Migration[349]: Expand action_schedule content column +[2Kgitea | 2026/10/28 18:50:58 modelmigration/migrations.go:557:Migrate() [I] Migration[350]: Add published_unix column to release +[2Kgitea | 2026/10/28 18:50:58 modelmigration/migrations.go:557:Migrate() [I] Migration[351]: Track transfer recipient access grants +[2Kgitea | 2026/10/28 18:50:58 modelmigration/migrations.go:557:Migrate() [I] Migration[352]: Add token columns to deploy_key +[2Kgitea | 2026/10/28 18:50:59 modelmigration/migrations.go:557:Migrate() [I] Migration[353]: Add audit event table +[2Kgitea | 2026/10/28 18:50:59 modelmigration/migrations.go:557:Migrate() [I] Migration[354]: Add Actions job queue indexes +[2Kgitea | 2026/10/28 18:50:59 modelmigration/migrations.go:557:Migrate() [I] Migration[355]: Add AutoMerge merged_commit_id column +[2Kgitea | 2026/10/28 18:50:59 modelmigration/migrations.go:557:Migrate() [I] Migration[356]: Add index on action_run commit_sha +[2Kgitea | 2026/10/28 18:50:59 modelmigration/migrations.go:557:Migrate() [I] Migration[357]: Normalize legacy team authorize values +[2Kgitea | 2026/10/28 18:50:59 routers/init.go:138:InitWebInstalled() [I] ORM engine initialization successful! +[2Kgitea | 2026/10/28 18:50:59 .../indexer/issues/indexer.go:78:InitIssueIndexer.1() [I] PID 17: Initializing Issue Indexer: bleve +[2Kgitea | 2026/10/28 18:50:59 .../indexer/stats/indexer.go:41:populateRepoIndexer() [I] Populating the repo stats indexer with existing repositories +[2Kgitea | 2026/10/28 18:50:59 .../indexer/stats/indexer.go:87:populateRepoIndexer() [I] Done (re)populating the repo stats indexer with existing repositories +[2Kgitea | 2026/10/28 18:50:59 .../indexer/issues/indexer.go:155:InitIssueIndexer.2() [I] Issue Indexer Initialization took 1.212019ms +[2Kgitea | 2026/10/28 18:50:59 cmd/web.go:233:serveInstalled() [I] Audit record output: disabled +[2Kgitea | 2026/10/28 18:50:59 cmd/web.go:339:listen() [I] Listen: http://0.0.0.0:3000 +[2Kgitea | 2026/10/28 18:50:59 cmd/web.go:343:listen() [I] AppURL(ROOT_URL): https://git.gate.invalid/ +[2Kgitea | 2026/10/28 18:50:59 cmd/web.go:346:listen() [I] LFS server enabled +[2Kgitea | 2026/10/28 18:50:59 modules/graceful/server.go:53:NewServer() [I] Starting new Web server: tcp:0.0.0.0:3000 on PID: 17 +[2Kgitea | 2026/10/28 18:51:22 .../src/net/http/server.go:2358:HandlerFunc.ServeHTTP() [I] PING DATABASE sqlite3 +[2Kgitea | 2026/10/28 18:51:22 HTTPRequest [I] router: completed GET /api/healthz for 127.0.0.1:39138, 200 OK in 1.2ms @ healthcheck/check.go:76(healthcheck.Check) diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/to-states.json b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/to-states.json new file mode 100644 index 00000000..8d0c9758 --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/to-states.json @@ -0,0 +1,8 @@ +{ + "gitea": { + "status": "running", + "health": "healthy", + "restarts": 0, + "exit": 0 + } +} \ No newline at end of file diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/verdict.json b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/verdict.json new file mode 100644 index 00000000..df82f179 --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/bench/evidence/MV-gitea/verdict.json @@ -0,0 +1,56 @@ +{ + "harness_version": 5, + "edge": "MV-gitea", + "app": "gitea", + "note": "night 2026-09-23 within-a-major move: gitea=gitea/gitea:28.2.0", + "from": { + "gitea": "gitea/gitea:1.27.3" + }, + "to": { + "gitea": "gitea/gitea:28.2.0" + }, + "verdict": "proven", + "seed_read_before": true, + "seed_read_after": true, + "healthy_after": true, + "migration_observed": "\u001b[2Kgitea | 2026/10/28 18:50:58 modelmigration/migrations.go:557:Migrate() [I] Migration[343]: Add max_parallel column to action_run_job", + "abort": "refuses", + "abort_detail": "ules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_artifacts\n\u001b[2Kgitea | 2026/10/28 19:04:26 routers/common/db.go:22:InitDBEngine() [I] Beginning ORM engine initialization.\n\u001b[2Kgitea | 2026/10/28 19:04:26 routers/common/db.go:29:InitDBEngine() [I] ORM engine initialization attempt #1/10...\n\u001b[2Kgitea | 2026/10/28 19:04:26 cmd/web.go:205:serveInstalled() [I] PING DATABASE sqlite3\n\u001b[2Kgitea | 2026/10/28 19:04:26 .../migrations/migrations.go:532:Migrate() [F] Migration Error: Your database (migration version: 358) is for a newer Gitea, you can not use the newer database for this old Gitea release (343).\n\u001b[2Kgitea | Gitea will exit to keep your database safe and unchanged. Please use the correct Gitea release, do not change the migration version manually (incorrect manual operation may lose data).\n\u001b[2Kgitea | Received signal 15; terminating.", + "engine_state_after": null, + "memory": { + "soak_s": 605.1, + "requested_s": 600, + "requests": 11952, + "codes": { + "200": 11952 + }, + "first_kill": null, + "containers": { + "gitea": { + "limit": 536870912, + "peak": 379576320, + "peak_pct": 0.707, + "anon_peak_sampled": 137670656, + "anon_peak_pct": 0.256, + "swap_peak": 0, + "oom_kills": 0, + "restarts": 0, + "oomkilled_flag": false, + "measured": true + } + }, + "unmeasured": [], + "venue_swap_bytes": 0, + "load": "reached" + }, + "marks": [], + "bench_overrides": null, + "duration_s": 30.8, + "measured_at": "2026-10-28T18:04:34Z", + "evidence": "evidence/MV-gitea", + "scratch_cleared": [], + "files_changed": [], + "files_changed_detail": [], + "files_ignored": [], + "total_s": 896.8 +} \ No newline at end of file diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/box/box-verdict-gitea.json b/documentation/audits/gitea-wanderer-2026-10-28/gitea/box/box-verdict-gitea.json new file mode 100644 index 00000000..d282d9e8 --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/box/box-verdict-gitea.json @@ -0,0 +1,216 @@ +{ + "app": "gitea", + "walk": "security", + "box_walk_version": 1, + "verdict": "proven", + "venue": "box 9202 (drill catalog), the guarded Update", + "from": { + "gitea": "gitea/gitea:1.27.3" + }, + "to": { + "gitea": "gitea/gitea:28.2.0" + }, + "observables_before": { + "pinned_images": { + "gitea": "gitea/gitea:1.27.3" + }, + "installed_images": { + "gitea": "gitea/gitea:1.27.3" + }, + "catalog_images": null, + "live_compose_image_lines": [ + "image: gitea/gitea:1.27.3@sha256:87a67ee09d3ae0d1df5fda5dcda3e2a1f9236a45b0a59025d6e00e46adc43bef" + ], + "docker_inspect": [ + "gitea gitea/gitea:1.27.3@sha256:87a67ee09d3ae0d1df5fda5dcda3e2a1f9236a45b0a59025d6e00e46adc43bef running=true restarts=0" + ] + }, + "setup_gate_before": { + "browser": { + "status": "302", + "redirect": "https://felhom.enkisfelhom.hu/__gate/start?…" + }, + "script": { + "status": "401", + "redirect": null + } + }, + "seed": "read_back", + "drill_commit": "f8723a77e7ca", + "sync_waited_s": 4.5, + "badge_before": { + "hu": [ + { + "title": "Újabb változat érhető el ehhez az alkalmazáshoz. A frissítés indításához nyomd meg a Frissítés gombot.", + "text": "Frissítés elérhető — ma" + } + ], + "en": [ + { + "title": "A newer version of this app is available. Select the Update button to start it.", + "text": "Update available — today" + } + ] + }, + "measured_at": "2026-10-28T17:51:48Z", + "update": { + "accepted": true, + "http": "202", + "phases": [ + { + "t": 0.0, + "phase": "backing-up", + "label": "Biztonsági mentés készül a frissítés előtt…", + "updating": true, + "error": null, + "hold": null + }, + { + "t": 5.2, + "phase": "pulling", + "label": "Új verzió letöltése…", + "updating": true, + "error": null, + "hold": null + }, + { + "t": 10.3, + "phase": "copying", + "label": "Az adatok másolása a frissítés előtt…", + "updating": true, + "error": null, + "hold": null + }, + { + "t": 15.4, + "phase": "verifying", + "label": "Működés ellenőrzése…", + "updating": true, + "error": null, + "hold": null + }, + { + "t": 20.6, + "phase": "done", + "label": "Frissítve", + "updating": false, + "error": null, + "hold": null + } + ], + "duration_s": 20.6, + "final_phase": "done", + "update_error": null, + "hold_reason": null, + "state": "running" + }, + "observables_after": { + "pinned_images": { + "gitea": "gitea/gitea:28.2.0" + }, + "installed_images": { + "gitea": "gitea/gitea:28.2.0" + }, + "catalog_images": { + "gitea": "gitea/gitea:28.2.0" + }, + "live_compose_image_lines": [ + "image: gitea/gitea:28.2.0" + ], + "docker_inspect": [ + "gitea gitea/gitea:28.2.0 running=true restarts=0" + ] + }, + "badge_after": { + "hu": [ + { + "title": "Ez az alkalmazás a legfrissebb elérhető változatot futtatja.", + "text": "Naprakész" + } + ], + "en": [ + { + "title": "This app is running the newest version available.", + "text": "Up to date" + } + ] + }, + "state_after": "running", + "hold_after": null, + "to_digests": { + "gitea": "sha256:30777c91280d973fa02be48b1ade735bd6859e8f6f7af3b4444d519437852504" + }, + "four_observables": { + "pinned": { + "gitea": "gitea/gitea:28.2.0" + }, + "installed": { + "gitea": "gitea/gitea:28.2.0" + }, + "catalog": { + "gitea": "gitea/gitea:28.2.0" + }, + "live_compose": [ + "gitea/gitea:28.2.0" + ] + }, + "seed_read_after": true, + "setup_gate_after": { + "browser": { + "status": "302", + "redirect": "https://felhom.enkisfelhom.hu/__gate/start?…" + }, + "script": { + "status": "401", + "redirect": null + } + }, + "memory": { + "soak_s": 600, + "interval_s": 10, + "samples": 60, + "containers": { + "gitea": { + "samples": 60, + "anon_peak_bytes": 101941248, + "limit_bytes": 536870912, + "anon_peak_pct": 19.0, + "cgroup_peak_pct": 44.0, + "oom_kill_delta": 0, + "oom_killed_flag": false, + "restarts_delta": 0, + "running_all_samples": true, + "cgroup": "/sys/fs/cgroup/system.slice/docker-d7279449787499a35edb23419edd8e0ec9710c107347ff8e99ba3ec4bf7b1de6.scope" + } + }, + "oom_kills": 0, + "restarts": 0, + "peak_pct": 19.0 + }, + "why": "the security-fix step ran on the box through the guarded Update; healthy, TO on all four observables, no undo, no hold, a clean soak, seed read back", + "log": [ + "18:50:45 [5] the box's drill mirror now at dff3cb84fc", + "18:50:49 [1] deploy -> 202 {'ok': True, 'message': 'Telepítés elindítva – az állapot a kártyán követhető'}", + "18:51:14 [1] deployed, controller state=running, pinned={'gitea': 'gitea/gitea:1.27.3'}", + "18:51:14 gate: git is gated — passed as the household (cookie set)", + "18:51:18 [2] setup gate as installed: {'browser': {'status': '302', 'redirect': 'https://felhom.enkisfelhom.hu/__gate/start?…'}, 'script': {'status': '401', 'redirect': None}}", + "18:51:24 gitea: first-run installer POST / http=200", + "18:51:33 gitea: installed through its own first-run form; the admin authenticates", + "18:51:33 gitea: create repo http=201", + "18:51:33 gitea: one commit (drill.txt) http=201", + "18:51:34 gitea: the committed file read back http=200 same=True", + "18:51:34 gitea: readback of the seeded repo http=200 ok=True", + "18:51:35 [5] drill commit f8723a77e7ca: gitea gitea/gitea:1.27.3 -> gitea/gitea:28.2.0 (push rc=0)", + "18:51:43 [5] the box's drill mirror now at f8723a77e7", + "18:51:48 [6] Update -> 202 {'ok': True, 'data': {'accepted': True, 'completed': False}, 'message': 'Frissítés elindult – az állapot a kártyán követhető'}", + "18:51:48 + 0.0s phase=backing-up label=Biztonsági mentés készül a frissítés előtt… err=None hold=None", + "18:51:53 + 5.2s phase=pulling label=Új verzió letöltése… err=None hold=None", + "18:51:58 + 10.3s phase=copying label=Az adatok másolása a frissítés előtt… err=None hold=None", + "18:52:04 + 15.4s phase=verifying label=Működés ellenőrzése… err=None hold=None", + "18:52:09 + 20.6s phase=done label=Frissítve err=None hold=None", + "18:52:27 gitea: the committed file read back http=200 same=True", + "18:52:27 gitea: readback of the seeded repo http=200 ok=True", + "18:52:27 [7] memory soak 600 s …", + "19:02:33 [7] soak: peak 19.0% of the limit (anon), kills 0, restarts 0" + ] +} \ No newline at end of file diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/box/walk.txt b/documentation/audits/gitea-wanderer-2026-10-28/gitea/box/walk.txt new file mode 100644 index 00000000..66b933ea --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/box/walk.txt @@ -0,0 +1,25 @@ +18:50:45 [5] the box's drill mirror now at dff3cb84fc +18:50:49 [1] deploy -> 202 {'ok': True, 'message': 'Telepítés elindítva – az állapot a kártyán követhető'} +18:51:14 [1] deployed, controller state=running, pinned={'gitea': 'gitea/gitea:1.27.3'} +18:51:14 gate: git is gated — passed as the household (cookie set) +18:51:18 [2] setup gate as installed: {'browser': {'status': '302', 'redirect': 'https://felhom.enkisfelhom.hu/__gate/start?…'}, 'script': {'status': '401', 'redirect': None}} +18:51:24 gitea: first-run installer POST / http=200 +18:51:33 gitea: installed through its own first-run form; the admin authenticates +18:51:33 gitea: create repo http=201 +18:51:33 gitea: one commit (drill.txt) http=201 +18:51:34 gitea: the committed file read back http=200 same=True +18:51:34 gitea: readback of the seeded repo http=200 ok=True +18:51:35 [5] drill commit f8723a77e7ca: gitea gitea/gitea:1.27.3 -> gitea/gitea:28.2.0 (push rc=0) +18:51:43 [5] the box's drill mirror now at f8723a77e7 +18:51:48 [6] Update -> 202 {'ok': True, 'data': {'accepted': True, 'completed': False}, 'message': 'Frissítés elindult – az állapot a kártyán követhető'} +18:51:48 + 0.0s phase=backing-up label=Biztonsági mentés készül a frissítés előtt… err=None hold=None +18:51:53 + 5.2s phase=pulling label=Új verzió letöltése… err=None hold=None +18:51:58 + 10.3s phase=copying label=Az adatok másolása a frissítés előtt… err=None hold=None +18:52:04 + 15.4s phase=verifying label=Működés ellenőrzése… err=None hold=None +18:52:09 + 20.6s phase=done label=Frissítve err=None hold=None +18:52:27 gitea: the committed file read back http=200 same=True +18:52:27 gitea: readback of the seeded repo http=200 ok=True +18:52:27 [7] memory soak 600 s … +19:02:33 [7] soak: peak 19.0% of the limit (anon), kills 0, restarts 0 +19:02:33 [9] verdict proven -> /tmp/claude-1000/-mnt-5-hdd-felhom-eu-git/0b76c4d7-9b39-4e4e-869d-d0d2c6006331/scratchpad/p3/box/gitea/verdict.json +19:02:33 RESULT proven — the security-fix step ran on the box through the guarded Update; healthy, TO on all four observables, no undo, no hold, a clean soak, seed read back diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/egress/_try1-egress-28.2.0-default.json b/documentation/audits/gitea-wanderer-2026-10-28/gitea/egress/_try1-egress-28.2.0-default.json new file mode 100644 index 00000000..41e4d505 --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/egress/_try1-egress-28.2.0-default.json @@ -0,0 +1,3 @@ +{ + "label": "28.2.0-default" +} \ No newline at end of file diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/egress/_try1-fixture-form-run-default.txt b/documentation/audits/gitea-wanderer-2026-10-28/gitea/egress/_try1-fixture-form-run-default.txt new file mode 100644 index 00000000..d287fef8 --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/egress/_try1-fixture-form-run-default.txt @@ -0,0 +1,15 @@ +19:02:43 [X] stop -> 200 {'ok': True, 'message': 'Stack gitea stop completed'} +19:03:15 [X] remove (with drive data) -> 200 {'ok': True, 'data': {'removed': 'gitea', 'volumes_removed': ['gitea_gitea_data'], 'hdd_paths_removed': [], 'hdd_paths_preserved': [], 'hdd_note': 'Az alkalmazá +19:03:23 [X] after remove: deployed=False leftovers='' +19:03:32 [5] the box's drill mirror now at f8723a77e7 +19:03:36 [1] deploy -> 202 {'ok': True, 'message': 'Telepítés elindítva – az állapot a kártyán követhető'} +19:04:01 [1] deployed, controller state=running, pinned={'gitea': 'gitea/gitea:28.2.0'} +19:04:02 gate: git is gated — passed as the household (cookie set) +19:04:02 gitea: first-run installer POST / http=200 +19:06:03 gitea: installer POST / -> 200; the admin never authenticated (last 404) ::
202 {'ok': True, 'message': 'Telepítés elindítva – az állapot a kártyán követhető'} +19:11:44 [1] deployed, controller state=running, pinned={'gitea': 'gitea/gitea:28.2.0'} +19:11:44 gate: git is gated — passed as the household (cookie set) +19:11:51 gitea: first-run installer POST / http=200 +19:11:57 gitea: installed through its own first-run form; the admin authenticates +19:11:57 gitea: create repo http=201 +19:11:57 gitea: one commit (drill.txt) http=201 +lan 422 You can not import from disallowed hosts. +docker_internal 422 You can not import from disallowed hosts. +github 201 +not_listed_public 422 You can not import from disallowed hosts. +19:12:11 [X] stop -> 200 {'ok': True, 'message': 'Stack gitea stop completed'} +19:12:43 [X] remove (with drive data) -> 200 {'ok': True, 'data': {'removed': 'gitea', 'volumes_removed': ['gitea_gitea_data'], 'hdd_paths_removed': [], 'hdd_paths_preserved': [], 'hdd_note': 'Az alkalmazá +19:12:51 [X] after remove: deployed=False leftovers='' +19:12:43 [X] remove (with drive data) -> 200 {'ok': True, 'data': {'removed': 'gitea', 'volumes_removed': ['gitea_gitea_data'], 'hdd_paths_removed': [], 'hdd_paths_preserved': [], 'hdd_note': 'Az alkalmazá +19:12:51 [X] after remove: deployed=False leftovers='' diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/egress/run-default.txt b/documentation/audits/gitea-wanderer-2026-10-28/gitea/egress/run-default.txt new file mode 100644 index 00000000..1b5c15ae --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/egress/run-default.txt @@ -0,0 +1,20 @@ +19:08:18 [X] stop -> 200 {'ok': True, 'message': 'Stack gitea stop completed'} +19:08:50 [X] remove (with drive data) -> 200 {'ok': True, 'data': {'removed': 'gitea', 'volumes_removed': ['gitea_gitea_data'], 'hdd_paths_removed': [], 'hdd_paths_preserved': [], 'hdd_note': 'Az alkalmazá +19:08:58 [X] after remove: deployed=False leftovers='' +19:09:07 [5] the box's drill mirror now at f8723a77e7 +19:09:11 [1] deploy -> 202 {'ok': True, 'message': 'Telepítés elindítva – az állapot a kártyán követhető'} +19:09:41 [1] deployed, controller state=running, pinned={'gitea': 'gitea/gitea:28.2.0'} +19:09:41 gate: git is gated — passed as the household (cookie set) +19:09:49 gitea: first-run installer POST / http=200 +19:09:55 gitea: installed through its own first-run form; the admin authenticates +19:09:55 gitea: create repo http=201 +19:09:56 gitea: one commit (drill.txt) http=201 +lan 422 You can not import from disallowed hosts. +docker_internal 422 You can not import from disallowed hosts. +github 201 +not_listed_public 201 +19:10:17 [X] stop -> 200 {'ok': True, 'message': 'Stack gitea stop completed'} +19:10:49 [X] remove (with drive data) -> 200 {'ok': True, 'data': {'removed': 'gitea', 'volumes_removed': ['gitea_gitea_data'], 'hdd_paths_removed': [], 'hdd_paths_preserved': [], 'hdd_note': 'Az alkalmazá +19:10:57 [X] after remove: deployed=False leftovers='' +19:10:49 [X] remove (with drive data) -> 200 {'ok': True, 'data': {'removed': 'gitea', 'volumes_removed': ['gitea_gitea_data'], 'hdd_paths_removed': [], 'hdd_paths_preserved': [], 'hdd_note': 'Az alkalmazá +19:10:57 [X] after remove: deployed=False leftovers='' diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/undo/run.txt b/documentation/audits/gitea-wanderer-2026-10-28/gitea/undo/run.txt new file mode 100644 index 00000000..baf8329e --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/undo/run.txt @@ -0,0 +1,29 @@ +19:13:12 [5] the box's drill mirror now at 51630aaf5f +19:13:17 [1] deploy -> 202 {'ok': True, 'message': 'Telepítés elindítva – az állapot a kártyán követhető'} +19:13:32 [1] deployed, controller state=running, pinned={'gitea': 'gitea/gitea:1.27.3'} +19:13:32 gate: git is gated — passed as the household (cookie set) +19:13:38 gitea: first-run installer POST / http=200 +19:13:44 gitea: installed through its own first-run form; the admin authenticates +19:13:45 gitea: create repo http=201 +19:13:45 gitea: one commit (drill.txt) http=201 +19:13:45 gitea: the committed file read back http=200 same=True +19:13:45 gitea: readback of the seeded repo http=200 ok=True +19:13:46 drill commit 59f9cdff434a: gitea TO with failing checks +19:13:55 [5] the box's drill mirror now at 59f9cdf +19:13:59 [6] Update -> 202 {'ok': True, 'data': {'accepted': True, 'completed': False}, 'message': 'Frissítés elindult – az állapot a kártyán követhető'} +19:13:59 + 0.0s phase=backing-up label=Biztonsági mentés készül a frissítés előtt… err=None hold=None +19:14:05 + 5.1s phase=safety-dump label=Adatbázis pillanatkép… err=None hold=None +19:14:06 + 6.2s phase=pulling label=Új verzió letöltése… err=None hold=None +19:14:10 + 10.3s phase=copying label=Az adatok másolása a frissítés előtt… err=None hold=None +19:14:16 + 16.4s phase=verifying label=Működés ellenőrzése… err=None hold=None +19:19:19 + 319.6s phase=undoing label=Visszaállítás az előző változatra… err=None hold=None +19:19:26 + 326.7s phase=undone label=Visszaállítva az előző változatra err=None hold=None +19:19:52 gitea: the committed file read back http=200 same=True +19:19:52 gitea: readback of the seeded repo http=200 ok=True +19:19:52 RESULT proven — TO started on the data and failed its check; the box undid it: FROM runs again and the seed reads back +19:19:52 [X] stop -> 200 {'ok': True, 'message': 'Stack gitea stop completed'} +19:20:24 [X] remove (with drive data) -> 200 {'ok': True, 'data': {'removed': 'gitea', 'volumes_removed': ['gitea_gitea_data'], 'hdd_paths_removed': [], 'hdd_paths_preserved': [], 'hdd_note': 'Az alkalmazá +19:20:33 [X] after remove: deployed=False leftovers='' +19:20:43 [5] the box's drill mirror now at 2bb94c27 +19:20:43 drill revert 59f9cdff434a: rc=0 +19:20:43 drill templates/gitea equal to before: True diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea/undo/undo-proof-gitea.json b/documentation/audits/gitea-wanderer-2026-10-28/gitea/undo/undo-proof-gitea.json new file mode 100644 index 00000000..a556698c --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea/undo/undo-proof-gitea.json @@ -0,0 +1,180 @@ +{ + "app": "gitea", + "from": { + "gitea": "gitea/gitea:1.27.3" + }, + "to": { + "gitea": "gitea/gitea:28.2.0" + }, + "started": "2026-10-28T18:13:03Z", + "drill_head_before": "51630aaf5f7d132bac746742f3c5c1fd2ecf2e73", + "failing_compose_main_healthcheck": [ + "test: [\"CMD\", \"false\"]" + ], + "failing_probe": true, + "update": { + "accepted": true, + "http": "202", + "phases": [ + { + "t": 0.0, + "phase": "backing-up", + "label": "Biztons\u00e1gi ment\u00e9s k\u00e9sz\u00fcl a friss\u00edt\u00e9s el\u0151tt\u2026", + "updating": true, + "error": null, + "hold": null + }, + { + "t": 5.1, + "phase": "safety-dump", + "label": "Adatb\u00e1zis pillanatk\u00e9p\u2026", + "updating": true, + "error": null, + "hold": null + }, + { + "t": 6.2, + "phase": "pulling", + "label": "\u00daj verzi\u00f3 let\u00f6lt\u00e9se\u2026", + "updating": true, + "error": null, + "hold": null + }, + { + "t": 10.3, + "phase": "copying", + "label": "Az adatok m\u00e1sol\u00e1sa a friss\u00edt\u00e9s el\u0151tt\u2026", + "updating": true, + "error": null, + "hold": null + }, + { + "t": 16.4, + "phase": "verifying", + "label": "M\u0171k\u00f6d\u00e9s ellen\u0151rz\u00e9se\u2026", + "updating": true, + "error": null, + "hold": null + }, + { + "t": 319.6, + "phase": "undoing", + "label": "Vissza\u00e1ll\u00edt\u00e1s az el\u0151z\u0151 v\u00e1ltozatra\u2026", + "updating": true, + "error": null, + "hold": null + }, + { + "t": 326.7, + "phase": "undone", + "label": "Vissza\u00e1ll\u00edtva az el\u0151z\u0151 v\u00e1ltozatra", + "updating": false, + "error": null, + "hold": null + } + ], + "duration_s": 326.8, + "final_phase": "undone", + "update_error": null, + "hold_reason": null, + "state": "running" + }, + "to_log_while_verifying": [ + "2026/10/28 19:14:19 modules/storage/storage.go:257:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local", + "2026/10/28 19:14:19 modules/storage/local.go:49:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-avatars", + "2026/10/28 19:14:19 modules/storage/storage.go:251:initLFS() [I] Initialising LFS storage with type: local", + "2026/10/28 19:14:19 modules/storage/local.go:49:NewLocalStorage() [I] Creating new Local Storage at /data/git/lfs", + "2026/10/28 19:14:19 modules/storage/storage.go:263:initRepoArchives() [I] Initialising Repository Archive storage with type: local", + "2026/10/28 19:14:19 modules/storage/local.go:49:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/repo-archive", + "2026/10/28 19:14:19 modules/storage/storage.go:273:initPackages() [I] Initialising Packages storage with type: local", + "2026/10/28 19:14:19 modules/storage/local.go:49:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/packages", + "2026/10/28 19:14:19 modules/storage/storage.go:284:initActions() [I] Initialising Actions storage with type: local", + "2026/10/28 19:14:19 modules/storage/local.go:49:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_log", + "2026/10/28 19:14:19 modules/storage/storage.go:288:initActions() [I] Initialising ActionsArtifacts storage with type: local", + "2026/10/28 19:14:19 modules/storage/local.go:49:NewLocalStorage() [I] Creating new Local Storage at /data/gitea/actions_artifacts", + "2026/10/28 19:14:19 routers/common/db.go:22:InitDBEngine() [I] Beginning ORM engine initialization.", + "2026/10/28 19:14:19 routers/common/db.go:29:InitDBEngine() [I] ORM engine initialization attempt #1/10...", + "2026/10/28 19:14:19 cmd/web.go:207:serveInstalled() [I] PING DATABASE sqlite3", + "2026/10/28 19:14:19 modelmigration/migrations.go:557:Migrate() [I] Migration[343]: Add max_parallel column to action_run_job", + "2026/10/28 19:14:19 modelmigration/migrations.go:557:Migrate() [I] Migration[344]: Add deferred-matrix columns to ActionRunJob", + "2026/10/28 19:14:20 modelmigration/migrations.go:557:Migrate() [I] Migration[345]: Add block on CODEOWNERS reviews branch protection", + "2026/10/28 19:14:20 modelmigration/migrations.go:557:Migrate() [I] Migration[346]: Add license_path column to repo_license and backfill", + "2026/10/28 19:14:20 modelmigration/migrations.go:557:Migrate() [I] Migration[347]: Add watch options", + "2026/10/28 19:14:20 modelmigration/migrations.go:557:Migrate() [I] Migration[348]: Recreate email_hash table for SHA256 avatar hashes", + "2026/10/28 19:14:20 modelmigration/migrations.go:557:Migrate() [I] Migration[349]: Expand action_schedule content column", + "2026/10/28 19:14:20 modelmigration/migrations.go:557:Migrate() [I] Migration[350]: Add published_unix column to release", + "2026/10/28 19:14:20 modelmigration/migrations.go:557:Migrate() [I] Migration[351]: Track transfer recipient access grants", + "2026/10/28 19:14:20 modelmigration/migrations.go:557:Migrate() [I] Migration[352]: Add token columns to deploy_key", + "2026/10/28 19:14:20 modelmigration/migrations.go:557:Migrate() [I] Migration[353]: Add audit event table", + "2026/10/28 19:14:20 modelmigration/migrations.go:557:Migrate() [I] Migration[354]: Add Actions job queue indexes", + "2026/10/28 19:14:20 modelmigration/migrations.go:557:Migrate() [I] Migration[355]: Add AutoMerge merged_commit_id column", + "2026/10/28 19:14:20 modelmigration/migrations.go:557:Migrate() [I] Migration[356]: Add index on action_run commit_sha", + "2026/10/28 19:14:20 modelmigration/migrations.go:557:Migrate() [I] Migration[357]: Normalize legacy team authorize values", + "2026/10/28 19:14:20 routers/init.go:138:InitWebInstalled() [I] ORM engine initialization successful!", + "2026/10/28 19:14:20 .../indexer/issues/indexer.go:78:InitIssueIndexer.1() [I] PID 17: Initializing Issue Indexer: bleve", + "2026/10/28 19:14:20 .../indexer/stats/indexer.go:41:populateRepoIndexer() [I] Populating the repo stats indexer with existing repositories", + "2026/10/28 19:14:20 .../indexer/stats/indexer.go:87:populateRepoIndexer() [I] Done (re)populating the repo stats indexer with existing repositories", + "2026/10/28 19:14:20 .../indexer/issues/indexer.go:155:InitIssueIndexer.2() [I] Issue Indexer Initialization took 1.151364ms", + "2026/10/28 19:14:20 cmd/web.go:233:serveInstalled() [I] Audit record output: disabled", + "2026/10/28 19:14:20 cmd/web.go:339:listen() [I] Listen: http://0.0.0.0:3000", + "2026/10/28 19:14:20 cmd/web.go:343:listen() [I] AppURL(ROOT_URL): https://git.enkisfelhom.hu/", + "2026/10/28 19:14:20 cmd/web.go:346:listen() [I] LFS server enabled", + "2026/10/28 19:14:20 modules/graceful/server.go:53:NewServer() [I] Starting new Web server: tcp:0.0.0.0:3000 on PID: 17" + ], + "observables_after": { + "pinned_images": { + "gitea": "gitea/gitea:1.27.3" + }, + "installed_images": { + "gitea": "gitea/gitea:1.27.3" + }, + "catalog_images": { + "gitea": "gitea/gitea:28.2.0" + }, + "live_compose_image_lines": [ + "image: gitea/gitea:1.27.3@sha256:87a67ee09d3ae0d1df5fda5dcda3e2a1f9236a45b0a59025d6e00e46adc43bef" + ], + "docker_inspect": [ + "gitea gitea/gitea:1.27.3@sha256:87a67ee09d3ae0d1df5fda5dcda3e2a1f9236a45b0a59025d6e00e46adc43bef running=true restarts=0" + ] + }, + "running_images_after": { + "gitea": "gitea/gitea:1.27.3@sha256:87a67ee09d3ae0d1df5fda5dcda3e2a1f9236a45b0a59025d6e00e46adc43bef" + }, + "seed_after_undo": true, + "verdict": "proven", + "why": "TO started on the data and failed its check; the box undid it: FROM runs again and the seed reads back", + "drill_head_after": "2bb94c27a5745f17730d602722d48a1cfa47b18a", + "drill_tree_equal_to_before": true, + "log": [ + "19:13:12 [5] the box's drill mirror now at 51630aaf5f", + "19:13:17 [1] deploy -> 202 {'ok': True, 'message': 'Telep\u00edt\u00e9s elind\u00edtva \u2013 az \u00e1llapot a k\u00e1rty\u00e1n k\u00f6vethet\u0151'}", + "19:13:32 [1] deployed, controller state=running, pinned={'gitea': 'gitea/gitea:1.27.3'}", + "19:13:32 gate: git is gated \u2014 passed as the household (cookie set)", + "19:13:38 gitea: first-run installer POST / http=200", + "19:13:44 gitea: installed through its own first-run form; the admin authenticates", + "19:13:45 gitea: create repo http=201", + "19:13:45 gitea: one commit (drill.txt) http=201", + "19:13:45 gitea: the committed file read back http=200 same=True", + "19:13:45 gitea: readback of the seeded repo http=200 ok=True", + "19:13:46 drill commit 59f9cdff434a: gitea TO with failing checks", + "19:13:55 [5] the box's drill mirror now at 59f9cdf", + "19:13:59 [6] Update -> 202 {'ok': True, 'data': {'accepted': True, 'completed': False}, 'message': 'Friss\u00edt\u00e9s elindult \u2013 az \u00e1llapot a k\u00e1rty\u00e1n k\u00f6vethet\u0151'}", + "19:13:59 + 0.0s phase=backing-up label=Biztons\u00e1gi ment\u00e9s k\u00e9sz\u00fcl a friss\u00edt\u00e9s el\u0151tt\u2026 err=None hold=None", + "19:14:05 + 5.1s phase=safety-dump label=Adatb\u00e1zis pillanatk\u00e9p\u2026 err=None hold=None", + "19:14:06 + 6.2s phase=pulling label=\u00daj verzi\u00f3 let\u00f6lt\u00e9se\u2026 err=None hold=None", + "19:14:10 + 10.3s phase=copying label=Az adatok m\u00e1sol\u00e1sa a friss\u00edt\u00e9s el\u0151tt\u2026 err=None hold=None", + "19:14:16 + 16.4s phase=verifying label=M\u0171k\u00f6d\u00e9s ellen\u0151rz\u00e9se\u2026 err=None hold=None", + "19:19:19 + 319.6s phase=undoing label=Vissza\u00e1ll\u00edt\u00e1s az el\u0151z\u0151 v\u00e1ltozatra\u2026 err=None hold=None", + "19:19:26 + 326.7s phase=undone label=Vissza\u00e1ll\u00edtva az el\u0151z\u0151 v\u00e1ltozatra err=None hold=None", + "19:19:52 gitea: the committed file read back http=200 same=True", + "19:19:52 gitea: readback of the seeded repo http=200 ok=True", + "19:19:52 RESULT proven \u2014 TO started on the data and failed its check; the box undid it: FROM runs again and the seed reads back", + "19:19:52 [X] stop -> 200 {'ok': True, 'message': 'Stack gitea stop completed'}", + "19:20:24 [X] remove (with drive data) -> 200 {'ok': True, 'data': {'removed': 'gitea', 'volumes_removed': ['gitea_gitea_data'], 'hdd_paths_removed': [], 'hdd_paths_preserved': [], 'hdd_note': 'Az alkalmaz\u00e1", + "19:20:33 [X] after remove: deployed=False leftovers=''", + "19:20:43 [5] the box's drill mirror now at 2bb94c27", + "19:20:43 drill revert 59f9cdff434a: rc=0", + "19:20:43 drill templates/gitea equal to before: True" + ] +} \ No newline at end of file diff --git a/documentation/audits/gitea-wanderer-2026-10-28/gitea_egress.py b/documentation/audits/gitea-wanderer-2026-10-28/gitea_egress.py new file mode 100644 index 00000000..5bb6f756 --- /dev/null +++ b/documentation/audits/gitea-wanderer-2026-10-28/gitea_egress.py @@ -0,0 +1,46 @@ +#!/usr/bin/env python3 +"""gitea_egress.py LABEL — D57 on 9202: what may Gitea's repository import (migration) reach? Installs Gitea from the +drill through the product (the box fixture's own first-run installer = the admin), then asks POST /api/v1/repos/migrate +for: a LAN address (192.168.0.1), a docker-internal one (traefik on 172.18.0.x), a small public GitHub repo, and a public +host that an allow-list would not name (gitea.com). Prints and writes egress-LABEL.json; removes the app at the end. +usage: SC=