Gladex Agent Logs

Agent run logs & app logs · env: prod · LAN-only investor surface

Overview
Run logs1250 files, 80.1 MB
Latest run logrun-20261008-023653-784.log
Log directory/data/agent-logs
App log directory/opt/startup/prod/logs
Run logs (newest first, last 50)
FileSizeModified (UTC)
run-20261008-023653-784.log 198 KB 2026-10-08 01:38:22
run-20261008-020104-783.log 366 KB 2026-10-08 00:26:43
run-20261008-015055-782.log 153 B 2026-10-07 23:50:55
run-20261008-014045-781.log 153 B 2026-10-07 23:40:46
run-20261008-013035-780.log 153 B 2026-10-07 23:30:36
run-20261008-012026-779.log 153 B 2026-10-07 23:20:27
run-20261008-011017-778.log 153 B 2026-10-07 23:10:17
run-20261008-010006-777.log 190 B 2026-10-07 23:00:07
run-20261008-004957-776.log 153 B 2026-10-07 22:49:58
run-20261008-003948-775.log 190 B 2026-10-07 22:39:49
run-20261008-002939-774.log 153 B 2026-10-07 22:29:40
run-20261008-001541-773.log 153 B 2026-10-07 22:19:30
run-20261008-000532-772.log 153 B 2026-10-07 22:05:33
run-20261007-235523-771.log 153 B 2026-10-07 21:55:23
run-20261007-234513-770.log 190 B 2026-10-07 21:45:13
run-20261007-233503-769.log 153 B 2026-10-07 21:35:04
run-20261007-232454-768.log 153 B 2026-10-07 21:24:54
run-20261007-231444-767.log 153 B 2026-10-07 21:14:45
run-20261007-230434-766.log 153 B 2026-10-07 21:04:35
run-20261007-225424-765.log 190 B 2026-10-07 20:54:25
run-20261007-220924-764.log 425 KB 2026-10-07 20:44:16
run-20261007-215044-763.log 157 KB 2026-10-07 19:59:14
run-20261007-200914-762.log 359 KB 2026-10-07 19:40:35
run-20261007-172947-761.log 540 KB 2026-10-07 17:59:04
run-20261007-161030-760.log 339 KB 2026-10-07 15:19:38
run-20261007-160020-759.log 190 B 2026-10-07 14:00:21
run-20261007-155011-758.log 153 B 2026-10-07 13:50:12
run-20261007-154002-757.log 153 B 2026-10-07 13:40:03
run-20261007-152953-756.log 153 B 2026-10-07 13:29:53
run-20261007-151943-755.log 153 B 2026-10-07 13:19:44
run-20261007-150934-754.log 190 B 2026-10-07 13:09:34
run-20261007-145924-753.log 153 B 2026-10-07 12:59:25
run-20261007-144915-752.log 153 B 2026-10-07 12:49:16
run-20261007-143906-751.log 153 B 2026-10-07 12:39:07
run-20261007-142857-750.log 153 B 2026-10-07 12:28:58
run-20261007-141848-749.log 153 B 2026-10-07 12:18:49
run-20261007-140839-748.log 190 B 2026-10-07 12:08:39
run-20261007-135830-747.log 153 B 2026-10-07 11:58:30
run-20261007-134820-746.log 153 B 2026-10-07 11:48:21
run-20261007-133811-745.log 190 B 2026-10-07 11:38:12
run-20261007-132802-744.log 190 B 2026-10-07 11:28:03
run-20261007-114753-743.log 250 KB 2026-10-07 11:17:54
run-20261007-094305-742.log 286 KB 2026-10-07 09:37:44
run-20261007-082626-741.log 272 KB 2026-10-07 07:32:57
run-20261007-070551-740.log 263 KB 2026-10-07 06:16:16
run-20261007-052216-739.log 354 KB 2026-10-07 04:55:42
run-20261007-033957-738.log 428 KB 2026-10-07 03:12:08
run-20261007-023935-737.log 310 KB 2026-10-07 01:29:49
run-20261007-012521-736.log 162 KB 2026-10-07 00:29:26
run-20261007-005238-735.log 232 KB 2026-10-06 23:15:11
Tail — run-20261008-023653-784.log (last 200 lines)
queue-source-check: OK - one queue: [0.4.254] pointer-only, 111 item line(s) frozen across 209 section(s), 198 PROGRESS bullet(s), 1 path token(s)
rc=0
=== Budget Status ===
Month:       2026-10
Allowance:   5.00 €
Spent:       0.00 € (no October charge recorded anywhere — gladex.de renews at 1.50/mo, renewal date NOT on file, raised as NEEDS-INVESTOR in REPORT.md §14, so this figure may understate a known recurring cost)
Remaining:   5.00 €

Log:
  - 2026-09-20: init, no domains ordered yet
● identity-run@jonas.service loaded failed failed Scheduled persona run (jonas)
/dev/mapper/ubuntu--vg-ubuntu--lv   98G   90G  3.3G  97% /
10
e41735e dispatcher: shift log 2026-10-07T17:03:00Z
> build · mimo-v2.6-flash-free
$ cd /data/repo && sed -n '488,530p' tests/test_healthcheck.sh; echo "=== healthcheck battery?"; grep -n "DO_.*MUT\|battery\|Battery" tests/test_healthcheck.sh | head
echo "=== D. four plants, each asserted to FLIP the reading section C pins ==="
# The flipped READING is what is asserted, not a second copy of section C:
# if the assertion in C can no longer fail, this is the run that says so.

start_world 200 "$BAD_BODY"
if [ -n "${WORLD_PORT:-}" ]; then
    # M1 — the body's verdict dropped: healthy forced true whatever the endpoint says.
    if make_copy m1-status "$WORLD_PORT" \
        '                    result["healthy"] = data.get("status") == "ok"' \
        '                    result["healthy"] = True'; then
        read_world "$SB/m1-status" dev
        assert_rc "M1 with the status check dropped, an error body reads exit 0 (so C2's rc assertion CAN fail)" 0 "$W_RC"
        assert_has "M1 and its human row reads HEALTHY (so C2's state assertion CAN fail)" "HEALTHY" "$W_OUT"
    fi

    # M2 — the unhealthy exit branch rewritten to 0: the state and the code disagree.
    if make_copy m2-exit "$WORLD_PORT" \
        '        sys.exit(1)  # One or more unhealthy' \
        '        sys.exit(0)  # One or more unhealthy'; then
        read_world "$SB/m2-exit" dev
        assert_rc "M2 with the exit-1 branch rewritten, an error body exits 0 (so C2's rc assertion CAN fail)" 0 "$W_RC"
        assert_has "M2 while the row still says UNHEALTHY — two reads, one plant" "UNHEALTHY" "$W_OUT"
    fi

    # M4 (the pre-fix replay) is asserted against the 500 world below: a 200
    # world never RAISES, so an except-clause plant has nothing to flip here.
else
    bad "D: the fake endpoint never reported a port"
fi
stop_world

# --- M4: the defect this run repaired, put back --------------------------------
# The pre-fix tool reported an answered 500 through the CONNECTION-error
# handler: status_code null, response null, error "HTTP Error 500: ...",
# exit 3. The plant therefore replaces the HTTPError branch's REPORTING BODY
# (the five lines that turn a response into a status) with the old
# `result["error"]` line — swapping only the class name would change nothing,
# because the duplicate handler below is never reached. The find is BUILT from
# lines of the live file so this suite holds no literal of what it plants.
start_world 500 "$GOOD_BODY"
if [ -n "${WORLD_PORT:-}" ]; then
    M4_FIND='        result["status_code"] = e.code
        try:
=== healthcheck battery?
$ cd /data/repo && sed -n '1,80p' tests/test_ip_drift_cron.sh | grep -n "mutant\|M1\|battery" ; echo "=== cron help"; awk '/--help\)/,/exit 0 ;;/' tests/test_ip_drift_cron.sh | head -40; echo "=== cron plant roster"; grep -c "run_mutation M[0-9]" tests/test_ip_drift_cron.sh; grep -c "run_writer_plant M[0-9]" tests/test_ip_drift_cron.sh; grep -c "run_suite_plant M[0-9]" tests/test_ip_drift_cron.sh
41:# Set by --mutations: run the mutation battery instead of the suite.
=== cron help
=== cron plant roster
38
0
20
> build · mimo-v2.6-flash-free
$ du -x -d1 -h / 2>/dev/null | sort -h | tail -8; echo "=== /data"; du -x -d1 -h /data 2>/dev/null | sort -h | tail -8; echo "=== tmp"; du -x -d1 -h /tmp 2>/dev/null | sort -h | tail -5
156M	/.cache
241M	/home
2.5G	/root
4.4G	/usr
4.7G	/opt
9.9G	/var
51G	/tmp
73G	/
=== /data
72K	/data/.config
96K	/data/homelab
968K	/data/.shift-jonas
87M	/data/agent-logs
108M	/data/tmp-regression
573M	/data/shared
6.1G	/data/repo
6.9G	/data
=== tmp
585M	/tmp/gopath
882M	/tmp/gomodcache
2.5G	/tmp/opencode
46G	/tmp/gocache
51G	/tmp
$ sleep 60; tail -8 /tmp/opencode/run784teeth/run.log; echo "=== regression"; pgrep -f regression-run >/dev/null && echo running || echo done; wc -c /tmp/opencode/run784-regression.log
pins redirected; M23 pin left: 0 | M24 pin left: 0 | target23 present: 2 | target24 present: 2
bash -n OK after the redirect
=== clean run in the redirected tree ===
=== Results: 759 passed, 0 failed ===
clean FAIL lines: 0
target23 printed as its own ok row: 1
target24 printed as its own ok row: 1
=== battery in the redirected tree ===
=== regression
running
0 /tmp/opencode/run784-regression.log
> build · mimo-v2.6-flash-free
$ ls -lat /data/tmp-regression | head -8; echo "=== count"; ls /data/tmp-regression | wc -l; echo "=== ps"; ps -o pid,etime,pcpu,cmd -p $(pgrep -f "regression-run" | head -2) 2>/dev/null; echo "=== how regression-run reports"; grep -n "print\|flush\|stdout" /data/repo/tools/regression-run | head -10
total 28
drwxr-xr-x   9 root root 4096 Oct  7 05:52 ..
drwxr-xr-x   7 root root 4096 Sep 30 19:54 .
drwxr-xr-x 116 root root 4096 Sep 30 19:53 opencode
drwx------   2 root root 4096 Sep 30 19:50 gladex-e2e-3739311163
drwx------   2 root root 4096 Sep 30 19:49 gladex-e2e-1360382551
drwx------   2 root root 4096 Sep 30 19:38 gladex-e2e-1497649488
drwx------   2 root root 4096 Sep 30 19:37 gladex-e2e-1579225453
=== count
5
=== ps
    PID     ELAPSED %CPU CMD
3036050       11:49  0.0 /usr/bin/bash -c cd /data/repo && nohup ./tools/regression-run > /tmp/opencode/run784-regression.log 2>&1 & echo "started pid=$!"
3036051       11:49  0.0 python3 ./tools/regression-run
=== how regression-run reports
8:    guessed ONE summary format and printed "1854 passed / 0 failed" while
23:    the combined stdout+stderr wins.
24:    "Last match", not "last line": seven suites print trailing noise after
31:    match is used rather than reporting no summary — a suite really did print
40:    document; --baseline FILE replays a later run against one and prints the
58:    stores the text in the document and `--baseline FILE` prints it as a
65:    characters: print_baseline renders it behind a fixed two-space prefix, so
89:    Precedence: 2 > 6 > 3 > 4 > 1 > 0, and EVERY suite's outcome is printed
149:    printed for a run that did not finish). A suite that moves a child into its
183:# Numbers, never a format: the four shapes this tree prints are all covered by
> build · mimo-v2.6-flash-free
$ sleep 120; tail -6 /tmp/opencode/run784teeth/run.log; echo "=== regression"; pgrep -f regression-run >/dev/null && echo running || echo done; wc -c /tmp/opencode/run784-regression.log; grep -c '^## \[0.4.255\]' /data/repo/CHANGELOG.md
=== clean run in the redirected tree ===
=== Results: 759 passed, 0 failed ===
clean FAIL lines: 0
target23 printed as its own ok row: 1
target24 printed as its own ok row: 1
=== battery in the redirected tree ===
=== regression
running
0 /tmp/opencode/run784-regression.log
0
> build · mimo-v2.6-flash-free
$ cd /data/repo && bash tests/test_repo_lint.sh 2>&1 | tail -2; bash tests/test_queue_source.sh 2>&1 | tail -2
repo-lint suite: 473 passed, 0 failed
===============================
queue-source-check suite: 278 passed, 0 failed
===============================
> build · mimo-v2.6-flash-free
$ sleep 240; tail -7 /tmp/opencode/run784teeth/run.log; echo "=== regression"; pgrep -f regression-run >/dev/null && echo running || echo done; wc -c /tmp/opencode/run784-regression.log
bash -n OK after the redirect
=== clean run in the redirected tree ===
=== Results: 759 passed, 0 failed ===
clean FAIL lines: 0
target23 printed as its own ok row: 1
target24 printed as its own ok row: 1
=== battery in the redirected tree ===
=== regression
running
0 /tmp/opencode/run784-regression.log
> build · mimo-v2.6-flash-free
$ cd /data/repo && sed -n '1887,1915p' tests/test_ip_drift_cron.sh
# Read a twenty-fifth time for M56 (queue item (as), 2026-10-07): the
# `PY30PLANT` `ORDER` entry-drop plant added below — the tuple's third entry
# removed, so the `' ALSO: '.join(...)` never emits the unparseable body and
# the two OTHER classes' step-4 teeth-proofs lose the text they `grep -qF` —
# its pin redirected to the SAME target, in a throwaway tree built the eighth
# reading's way (`tests/` + the WHOLE `tools/` copied so `REPO=` resolves
# there). Source-checked BEFORE the redirect was built: the target is line
# **177**, call count **1** as a LINE-START assertion, quoted here on its own
# line so this reading sits inside the count it reports:
#     assert_lacks "no drift → nothing appended to ALERTS"
# (raw **9** at redirect time — line 177 plus the seventeenth through
# twenty-fourth readings above; this line takes it to **10**, and the bare-body
# count **19 → 20** with it); the pin's QUOTED argument occurred **1** time,
# and so did each of its two BARE fragments — the class+label head and the
# body-carrying head — the call and nothing else, because the (as) block below
# never quotes the pin whole (its full text lives only at the call, measured
# **1** there, each fragment **1**); no backslash in the target (a backslash is
# LITERAL under `grep -F`); `bash -n` OK after the redirect. Result:
# redirected tree's clean run **340 / 0, rc 0** with the target still printing
# its own `ok` row (four `no drift` rows print in every clean run — the target
# among them, same as the unredirected run), battery in that tree **580 passed
# / 1 failed, rc 1**, the one red being
# `wrong verdict is NOT the intended one (expected a failure of: 'no drift →
# nothing appended to ALERTS')` — the single redirected pin check, so the
# redirect moved that pin and nothing else — and
# `grep -cE '^  ok   - M5[456]'` → **14**: the fifteen less the redirected pin
# check.
# =============================================================================
if [ "$DO_MUTATIONS" = "1" ]; then
> build · mimo-v2.6-flash-free
$ cd /data/repo && grep -rn "did not bite" tests/*.sh tools/* 2>/dev/null | grep -i "grep -c\|count\|wc -l" | head; echo "=== who counts target strings"; grep -rn "replay: the writer" tests/*.sh | head; echo "=== control24"; grep -rn "control24: the plant applied" tests/*.sh | head
=== who counts target strings
tests/test_system_status_ip_drift.sh:972:    bad "replay: the writer or its sandbox hooks are absent, so its exit branches cannot be replayed"
tests/test_system_status_ip_drift.sh:974:    ok "replay: the writer and both sandbox hooks it needs are present"
=== control24
tests/test_system_status_ip_drift.sh:1358:        ok "control24: the plant applied — the branch text is gone from the copy"

Select another run log from the list above. Only files matching run-YYYYMMDD-HHMMSS-N.log are readable.

App log tail — prod-8001.log (last 60 lines)
[Thu Oct  8 03:35:07 2026] 127.0.0.1:38914 Accepted
[Thu Oct  8 03:35:07 2026] 127.0.0.1:38914 Closing
[Thu Oct  8 03:35:07 2026] 127.0.0.1:38928 Accepted
[Thu Oct  8 03:35:07 2026] 127.0.0.1:38928 Closing
[Thu Oct  8 03:35:08 2026] 127.0.0.1:38940 Accepted
[Thu Oct  8 03:35:08 2026] 127.0.0.1:38940 Closing
[Thu Oct  8 03:35:08 2026] 127.0.0.1:38954 Accepted
[Thu Oct  8 03:35:08 2026] 127.0.0.1:38954 Closing
[Thu Oct  8 03:35:11 2026] 127.0.0.1:38962 Accepted
[Thu Oct  8 03:35:11 2026] 127.0.0.1:38962 Closing
[Thu Oct  8 03:35:11 2026] 127.0.0.1:38976 Accepted
[Thu Oct  8 03:35:11 2026] 127.0.0.1:38976 Closing
[Thu Oct  8 03:35:13 2026] 127.0.0.1:38982 Accepted
[Thu Oct  8 03:35:13 2026] 127.0.0.1:38982 Closing
[Thu Oct  8 03:35:13 2026] 127.0.0.1:38994 Accepted
[Thu Oct  8 03:35:13 2026] 127.0.0.1:38994 Closing
[Thu Oct  8 03:35:14 2026] 127.0.0.1:38996 Accepted
[Thu Oct  8 03:35:14 2026] 127.0.0.1:38996 Closing
[Thu Oct  8 03:35:14 2026] 127.0.0.1:39004 Accepted
[Thu Oct  8 03:35:14 2026] 127.0.0.1:39004 Closing
[Thu Oct  8 03:35:18 2026] 127.0.0.1:38966 Accepted
[Thu Oct  8 03:35:18 2026] 127.0.0.1:38966 Closing
[Thu Oct  8 03:35:24 2026] 127.0.0.1:38972 Accepted
[Thu Oct  8 03:35:24 2026] 127.0.0.1:38972 Closing
[Thu Oct  8 03:35:24 2026] 127.0.0.1:38984 Accepted
[Thu Oct  8 03:35:24 2026] 127.0.0.1:38984 Closing
[Thu Oct  8 03:35:29 2026] 127.0.0.1:54172 Accepted
[Thu Oct  8 03:35:29 2026] 127.0.0.1:54172 Closing
[Thu Oct  8 03:35:39 2026] 127.0.0.1:43028 Accepted
[Thu Oct  8 03:35:39 2026] 127.0.0.1:43028 Closing
[Thu Oct  8 03:36:03 2026] 127.0.0.1:54588 Accepted
[Thu Oct  8 03:36:03 2026] 127.0.0.1:54588 Closing
[Thu Oct  8 03:36:08 2026] 127.0.0.1:42104 Accepted
[Thu Oct  8 03:36:08 2026] 127.0.0.1:42104 Closing
[Thu Oct  8 03:36:10 2026] 127.0.0.1:42114 Accepted
[Thu Oct  8 03:36:10 2026] 127.0.0.1:42114 Closing
[Thu Oct  8 03:36:10 2026] 127.0.0.1:42128 Accepted
[Thu Oct  8 03:36:10 2026] 127.0.0.1:42128 Closing
[Thu Oct  8 03:36:13 2026] 127.0.0.1:42142 Accepted
[Thu Oct  8 03:36:13 2026] 127.0.0.1:42142 Closing
[Thu Oct  8 03:36:29 2026] 127.0.0.1:39210 Accepted
[Thu Oct  8 03:36:29 2026] 127.0.0.1:39210 Closing
[Thu Oct  8 03:37:15 2026] 127.0.0.1:45148 Accepted
[Thu Oct  8 03:37:15 2026] 127.0.0.1:45148 Closing
[Thu Oct  8 03:37:16 2026] 127.0.0.1:45154 Accepted
[Thu Oct  8 03:37:16 2026] 127.0.0.1:45154 Closing
[Thu Oct  8 03:37:23 2026] 127.0.0.1:45160 Accepted
[Thu Oct  8 03:37:23 2026] 127.0.0.1:45160 Closing
[Thu Oct  8 03:37:25 2026] 127.0.0.1:58252 Accepted
[Thu Oct  8 03:37:25 2026] 127.0.0.1:58252 Closing
[Thu Oct  8 03:37:46 2026] 127.0.0.1:33420 Accepted
[Thu Oct  8 03:37:46 2026] 127.0.0.1:33420 Closing
[Thu Oct  8 03:37:46 2026] 127.0.0.1:33426 Accepted
[Thu Oct  8 03:37:46 2026] 127.0.0.1:33426 Closing
[Thu Oct  8 03:38:24 2026] 127.0.0.1:46600 Accepted
[Thu Oct  8 03:38:24 2026] 127.0.0.1:46600 Closing
[Thu Oct  8 03:39:35 2026] 127.0.0.1:58266 Accepted
[Thu Oct  8 03:39:35 2026] 127.0.0.1:58266 Closing
[Thu Oct  8 03:39:36 2026] 127.0.0.1:58272 Accepted

Generated 2026-10-08 01:39:36 UTC · Gladex.de