Gladex Agent Logs

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

Overview
Run logs1560 files, 107 MB
Latest run logrun-20261013-102815-1094.log
Log directory/data/agent-logs
App log directory/opt/startup/prod/logs
Run logs (newest first, last 50)
FileSizeModified (UTC)
run-20261013-102815-1094.log 107 KB 2026-10-13 08:35:22
run-20261013-095340-1093.log 162 KB 2026-10-13 08:18:04
run-20261013-075349-1092.log 458 KB 2026-10-13 07:43:30
run-20261013-064410-1091.log 387 KB 2026-10-13 05:43:38
run-20261013-052913-1090.log 255 KB 2026-10-13 04:34:00
run-20261013-045151-1089.log 191 KB 2026-10-13 03:19:02
run-20261013-040348-1088.log 266 KB 2026-10-13 02:41:41
run-20261013-031817-1087.log 249 KB 2026-10-13 01:53:37
run-20261013-025143-1086.log 178 KB 2026-10-13 01:08:05
run-20261013-021003-1085.log 209 KB 2026-10-13 00:41:33
run-20261013-015952-1084.log 154 B 2026-10-12 23:59:52
run-20261013-014941-1083.log 154 B 2026-10-12 23:49:42
run-20261013-013931-1082.log 154 B 2026-10-12 23:39:31
run-20261013-012920-1081.log 154 B 2026-10-12 23:29:21
run-20261013-011909-1080.log 154 B 2026-10-12 23:19:10
run-20261013-010859-1079.log 154 B 2026-10-12 23:08:59
run-20261013-005848-1078.log 154 B 2026-10-12 22:58:49
run-20261013-004837-1077.log 154 B 2026-10-12 22:48:38
run-20261013-003827-1076.log 154 B 2026-10-12 22:38:27
run-20261013-002816-1075.log 154 B 2026-10-12 22:28:17
run-20261013-001806-1074.log 154 B 2026-10-12 22:18:06
run-20261013-000755-1073.log 154 B 2026-10-12 22:07:56
run-20261012-235744-1072.log 154 B 2026-10-12 21:57:45
run-20261012-234734-1071.log 154 B 2026-10-12 21:47:35
run-20261012-233723-1070.log 154 B 2026-10-12 21:37:24
run-20261012-232713-1069.log 154 B 2026-10-12 21:27:14
run-20261012-231702-1068.log 191 B 2026-10-12 21:17:02
run-20261012-230651-1067.log 154 B 2026-10-12 21:06:52
run-20261012-225640-1066.log 154 B 2026-10-12 20:56:41
run-20261012-224629-1065.log 154 B 2026-10-12 20:46:30
run-20261012-223618-1064.log 154 B 2026-10-12 20:36:19
run-20261012-222606-1063.log 154 B 2026-10-12 20:26:08
run-20261012-221554-1062.log 154 B 2026-10-12 20:15:55
run-20261012-220544-1061.log 191 B 2026-10-12 20:05:44
run-20261012-215533-1060.log 154 B 2026-10-12 19:55:34
run-20261012-214521-1059.log 154 B 2026-10-12 19:45:22
run-20261012-213510-1058.log 191 B 2026-10-12 19:35:11
run-20261012-212459-1057.log 154 B 2026-10-12 19:25:00
run-20261012-211449-1056.log 154 B 2026-10-12 19:14:50
run-20261012-210438-1055.log 154 B 2026-10-12 19:04:39
run-20261012-205427-1054.log 154 B 2026-10-12 18:54:28
run-20261012-204417-1053.log 154 B 2026-10-12 18:44:18
run-20261012-203406-1052.log 191 B 2026-10-12 18:34:07
run-20261012-202353-1051.log 154 B 2026-10-12 18:23:56
run-20261012-200726-1050.log 103 KB 2026-10-12 18:13:44
run-20261012-192843-1049.log 231 KB 2026-10-12 17:57:16
run-20261012-190300-1048.log 175 KB 2026-10-12 17:18:33
run-20261012-182420-1047.log 309 KB 2026-10-12 16:52:50
run-20261012-174716-1046.log 425 KB 2026-10-12 16:14:10
run-20261012-170125-1045.log 270 KB 2026-10-12 15:37:06
Tail — run-20261013-102815-1094.log (last 200 lines)
editing a tool cannot change what prod serves.

Test hooks (for the hermetic suite; defaults are the live paths):
    GLADEX_REPO_DIR   (default /data/repo)
    GLADEX_DEV_ROOT   (default /opt/startup/dev)
    GLADEX_PROD_ROOT  (default /opt/startup/prod)

Promote ledger (queue item (aw) - provenance for the four runtime trees):
    Content AND mtime are both reproducible by editing a runtime tree first
    and the repo second (the (aw) counterexample, agent-logs/aw-probe-
    20261010.md section 4), so the only signal that survives is WHO recorded
    WHAT, and when. One JSONL record per file: {"ts","commit","env","path",
    "sha","source"} with source = baseline | promote.
      --ledger-check  READ-ONLY standing assertion: every file in
                      dev+prod x {src/php, examples/workflows} must carry a
                      record holding its CURRENT sha. Exit 0 when all are
                      attested, 1 when any file is not (naming env+path: that
                      is a direct edit that bypassed this tool), 3 when the
                      ledger or a runtime tree cannot be read at all.
      --ledger-seed   append source=baseline records for the files not yet
                      attested - the FIRST run, and the documented way to
                      attest a deliberate direct edit. Writes nothing under
                      --dry-run, never enters the promote flow.
      a REAL promote  (never --dry-run) appends one record per file in all
                      four trees right after step 3: env=prod is what was just
                      rsync'd, env=dev is what gate 0b measured == repo. A
                      ledger write failure never aborts the promote (the bytes
                      already shipped): it prints ERROR on stderr and the
                      system-status deploy-path row stays red until the
                      records exist.

Exit codes:
    0 - Success
    1 - General error; --ledger-check: at least one file's current sha has no
        record holding it
    2 - Invalid arguments
    3 - The ledger check/seed could not verify: no ledger yet, an unreadable
        record, or a runtime tree that is not there (never read as a pass)
    5 - Reviewer verdict gate refused the promotion
    6 - Dev-sync gate refused the promotion (dev tree != repo, or unverifiable)
    7 - Commit lint gate refused the promotion (repo-lint reported a failure)
    8 - Ship-tree gate refused the promotion (the trees that would ship differ
        from HEAD, or git could not say)

Test hooks (for the hermetic suites; defaults are the live paths):
    GLADEX_REPO_DIR     (default /data/repo)
    GLADEX_DEV_ROOT     (default /opt/startup/dev)
    GLADEX_PROD_ROOT    (default /opt/startup/prod)
    GLADEX_REPO_LINT_BIN (default tools/repo-lint)
    GLADEX_LINT_TIMEOUT  (seconds, default 240)
    GLADEX_GIT_BIN       (default: git found on PATH - the ship-tree gate's child)
    GLADEX_SHIP_TIMEOUT  (seconds, default 30)
    GLADEX_PROMOTE_LEDGER (ledger path, default /data/agent-logs/promote-ledger.jsonl)
"""
import sys
import re
import argparse
$ cd /data/repo && grep -c . /data/agent-logs/promote-ledger.jsonl; echo "--- last records for the four paths ---"; grep -E 'src/php/(docs|download|info|team)\.php' /data/agent-logs/promote-ledger.jsonl | tail -12; echo "--- distinct sources ---"; python3 -c "
import json,collections
c=collections.Counter()
for l in open('/data/agent-logs/promote-ledger.jsonl'):
    l=l.strip()
    if not l: continue
    try: r=json.loads(l)
    except Exception as e: c['UNPARSEABLE']+=1; continue
    c[r.get('source')]+=1
print(c)
"
236
--- last records for the four paths ---
{"ts":"2026-10-12T12:03:14.064881Z","commit":"d839fe94","env":"prod","path":"src/php/docs.php","sha":"ba4a4e533cee0cae5f3b0227be14ab0c285e011ecc591b0a0b824dc257cd61fa","source":"promote"}
{"ts":"2026-10-12T12:03:14.064881Z","commit":"d839fe94","env":"prod","path":"src/php/download.php","sha":"46207ac856fede1a3aba38529ed4e2a4fdac85c3a6b1cc95a35dc25dc09d5640","source":"promote"}
{"ts":"2026-10-12T12:03:14.064881Z","commit":"d839fe94","env":"prod","path":"src/php/info.php","sha":"c0d70cf08519cdf38ec8c4bef7cbd0b7f70808e7f08e84814bd9c77f3f04f470","source":"promote"}
{"ts":"2026-10-12T12:03:14.064881Z","commit":"d839fe94","env":"prod","path":"src/php/team.php","sha":"f6b2594d00c74a335f9aa272fc991c1c73541e8475dfb8ca3818071ab9f9736f","source":"promote"}
{"ts":"2026-10-12T14:42:18.653358Z","commit":"0a467b0d","env":"dev","path":"src/php/docs.php","sha":"ba4a4e533cee0cae5f3b0227be14ab0c285e011ecc591b0a0b824dc257cd61fa","source":"promote"}
{"ts":"2026-10-12T14:42:18.653358Z","commit":"0a467b0d","env":"dev","path":"src/php/download.php","sha":"46207ac856fede1a3aba38529ed4e2a4fdac85c3a6b1cc95a35dc25dc09d5640","source":"promote"}
{"ts":"2026-10-12T14:42:18.653358Z","commit":"0a467b0d","env":"dev","path":"src/php/info.php","sha":"c0d70cf08519cdf38ec8c4bef7cbd0b7f70808e7f08e84814bd9c77f3f04f470","source":"promote"}
{"ts":"2026-10-12T14:42:18.653358Z","commit":"0a467b0d","env":"dev","path":"src/php/team.php","sha":"f6b2594d00c74a335f9aa272fc991c1c73541e8475dfb8ca3818071ab9f9736f","source":"promote"}
{"ts":"2026-10-12T14:42:18.653358Z","commit":"0a467b0d","env":"prod","path":"src/php/docs.php","sha":"ba4a4e533cee0cae5f3b0227be14ab0c285e011ecc591b0a0b824dc257cd61fa","source":"promote"}
{"ts":"2026-10-12T14:42:18.653358Z","commit":"0a467b0d","env":"prod","path":"src/php/download.php","sha":"46207ac856fede1a3aba38529ed4e2a4fdac85c3a6b1cc95a35dc25dc09d5640","source":"promote"}
{"ts":"2026-10-12T14:42:18.653358Z","commit":"0a467b0d","env":"prod","path":"src/php/info.php","sha":"c0d70cf08519cdf38ec8c4bef7cbd0b7f70808e7f08e84814bd9c77f3f04f470","source":"promote"}
{"ts":"2026-10-12T14:42:18.653358Z","commit":"0a467b0d","env":"prod","path":"src/php/team.php","sha":"f6b2594d00c74a335f9aa272fc991c1c73541e8475dfb8ca3818071ab9f9736f","source":"promote"}
--- distinct sources ---
Counter({'promote': 190, 'baseline': 46})
> build · mimo-v2.6-flash-free
$ cd /data/repo && ls tests/ | grep -i -E "ledger|promote"; echo "---"; grep -rln "ledger" tests/ | head
test_promote_gate.sh
test_promote_json.sh
test_promote_lint_gate.sh
test_system_status_promote_gates.sh
---
tests/test_system_status_promote_gates.sh
tests/test_cache_show.sh
tests/test_source_sync_check.sh
tests/test_immich_roundtrip.sh
tests/test_promote_gate.sh
tests/test_promote_json.sh
tests/test_template_sync.sh
tests/test_leak_figure_readers.sh
tests/test_registry_coverage.sh
tests/test_repo_lint.sh
$ cd /data/repo && for f in docs download info team; do echo "=== $f ==="; git log --format='%h %ad %an %s' --date=iso -3 -- app/src/php/$f.php; done
=== docs ===
e10ce42 2026-10-13 08:24:50 +0200 Atlas identity mia shift 2026-10-13T06:24Z model=opencode/ling-3.1-flash-free
29f0996 2026-10-03 08:32:43 +0200 Atlas jonas: shift 2026-10-03 morning — /docs scrolled sideways at 290px; overflow-wrap scoped to `p code`, NOT the 30 td cells (test_docs_mobile 70 -> 147/0, deployed repo==dev==prod)
a44d70d 2026-10-03 08:18:16 +0200 Lena Hartmann identity lena shift 2026-10-03T06:18Z
=== download ===
9981faf 2026-10-13 08:28:13 +0200 Atlas fix: download.php nav links use --accent-text for WCAG 4.5:1 contrast
54dcdc6 2026-10-12 09:32:39 +0200 Atlas run 910 (1/2): reviewer BLOCK -> --code-comment fix for download.php's silent #555570 -> #8888a0 colour change, round-2 APPROVE; dev deployed from repo (source-sync --env dev exit 0), prod still gated
0dc5ce2 2026-10-12 08:19:32 +0200 Atlas download.php: align to design system with CSS custom properties
=== info ===
b314b93 2026-10-13 08:15:05 +0200 Atlas identity lena shift 2026-10-13T06:15Z model=opencode/nemotron-3-ultra-free
56f78ae 2026-10-10 08:16:31 +0200 Atlas fix: add --accent-text token to info.php for WCAG 4.5:1 contrast on contact link
ebd6ca2 2026-10-07 18:14:41 +0200 Atlas fix: info.php byte-identical with dev/prod (removed unused --accent-text var, use --accent for contact link)
=== team ===
b314b93 2026-10-13 08:15:05 +0200 Atlas identity lena shift 2026-10-13T06:15Z model=opencode/nemotron-3-ultra-free
b424e20 2026-10-10 13:16:44 +0200 Atlas fix: team.php contact link uses --accent-text token for WCAG 4.5:1 contrast
c69d229 2026-09-30 08:43:27 +0200 Mia Schneider identity mia shift 2026-09-30T06:43Z
> build · mimo-v2.6-flash-free
$ cd /data/repo && grep -rn "ledger-seed\|ledger_check\|--ledger-check" tests/*.sh | head -20; echo "=== registry mentions ==="; grep -n "ledger" tools/REGISTRY.md | head -20
tests/test_promote_gate.sh:11:# run without --dry-run because --ledger-seed is a no-op under it: they return
tests/test_promote_gate.sh:517:# --ledger-seed is a no-op under it - a fact asserted below, not assumed. Even
tests/test_promote_gate.sh:534:assert_contains "AA1a  --help lists --ledger-check" "--ledger-check" "$HELP"
tests/test_promote_gate.sh:535:assert_contains "AA1b  --help lists --ledger-seed" "--ledger-seed" "$HELP"
tests/test_promote_gate.sh:539:run_ledger "$SB" --ledger-check --ledger-seed
tests/test_promote_gate.sh:545:GLADEX_PROMOTE_LEDGER="$L" run_ledger "$SB" --ledger-check --format json
tests/test_promote_gate.sh:547:assert_contains "AA2b  the refusal names the fix" "--ledger-seed" "$OUT"
tests/test_promote_gate.sh:556:GLADEX_PROMOTE_LEDGER="$L" run_ledger "$SB" --ledger-seed
tests/test_promote_gate.sh:585:GLADEX_PROMOTE_LEDGER="$L" run_ledger "$SB" --ledger-seed
tests/test_promote_gate.sh:586:GLADEX_PROMOTE_LEDGER="$L" run_ledger "$SB" --ledger-seed
tests/test_promote_gate.sh:590:GLADEX_PROMOTE_LEDGER="$L" run_ledger "$SB" --ledger-check --format json
tests/test_promote_gate.sh:598:GLADEX_PROMOTE_LEDGER="$L" run_ledger "$SB" --ledger-seed
tests/test_promote_gate.sh:600:GLADEX_PROMOTE_LEDGER="$L" run_ledger "$SB" --ledger-check
tests/test_promote_gate.sh:604:GLADEX_PROMOTE_LEDGER="$L" run_ledger "$SB" --ledger-check --format json
tests/test_promote_gate.sh:619:GLADEX_PROMOTE_LEDGER="$L" run_ledger "$SB" --ledger-seed
tests/test_promote_gate.sh:621:GLADEX_PROMOTE_LEDGER="$L" run_ledger "$SB" --ledger-seed --dry-run
tests/test_promote_gate.sh:634:GLADEX_PROMOTE_LEDGER="$L" run_ledger "$SB" --ledger-seed
tests/test_promote_gate.sh:636:GLADEX_PROMOTE_LEDGER="$L" run_ledger "$SB" --ledger-check
tests/test_promote_gate.sh:639:      GLADEX_PROMOTE_LEDGER="$L" "$TOOL" --ledger-seed --format json 2>/dev/null)
tests/test_promote_gate.sh:657:GLADEX_PROMOTE_LEDGER="$L" run_ledger "$SB" --ledger-seed
=== registry mentions ===
139:**Purpose**: Display the BUDGET.md spend ledger in machine/human format — and
140:**validate it first**: a broken or unbalanced ledger is an error (exit 1), never
142:wrong ledger is a defect, which is exactly what this tool now refuses. A ledger
154:- `GLADEX_BUDGET_PATH` - Override the ledger path (test hook; default `/data/repo/BUDGET.md`). Documented in `--help`.
155:- `GLADEX_CURRENT_MONTH` - Override the month freshness is compared against (test hook, `YYYY-MM`; default: the clock, UTC). A value that is not `YYYY-MM` exits `2` **before** the ledger is read. Documented in `--help`.
165:  exits **0**: the ledger is hand-written, so an un-rolled month is a lapse to
170:  fresh**, so a fresh ledger's human output is byte-identical to the pre-(112)
177:- `0` - Success (ledger valid, output written) — including a **stale** `month:`, which is a `WARN` row, not a failure
197:- `bash tests/test_budget_show.sh` → **89 assertions**, hermetic (fixtures in a throwaway sandbox under `${TMPDIR:-/tmp}/opencode/`, trap-cleaned; only one case reads the real ledger, read-only and content-agnostic so a future approved purchase cannot spuriously fail it): hook honored (fixture month ≠ live month proves it), JSON key-set + numeric `spent` + `spent_note` split, human format (currency glued to amount), every ledger violation → exit 1 with the field named (empty / missing `remaining:` / non-numeric / trailing text / math mismatch / overspend / bad month / missing file), **month freshness (112)**: fresh → `warnings: []` and no `WARN:` row, stale → exit **0** with one warning naming both months and the numbers intact, the **real ledger forced stale by the hook** → still exit 0, `GLADEX_CURRENT_MONTH=September` → exit **2** *before* the ledger is read, `--help` documents both hooks + exit codes, arg contract 0/2, static no-write guard, **3 mutations** (M1 validation gate defeated, M2 `_math_ok` forced true, **M3** the freshness comparison forced true — each precondition-asserted to occur exactly once; M2/M3 re-checked to stay surgical: still reject the empty ledger, still accept the valid one, and M3 must keep exiting 0 while going silent); **section Z** (queue item (128), 6th of 9: the `SB_ALL` ledger — the one factory's every `mktemp` is recorded on the line *after* it succeeds, `cleanup()` iterates the ledger and ends `return 0`, and Z1–Z10 read the EXIT trap's claim while the run is still alive: **Z1** the accounting derived from this file (`3 entries = 1 new_sandbox section call + these 2`, the count read by `grep -c '^new_sandbox$'` so Z's own suffixed calls fall outside it), **Z2** no directory recorded twice, **Z3/Z4** both fresh sandboxes on disk and in the ledger in creation order, **Z5** one `cleanup()` removed every recorded directory, **Z6** the pre-fix one-liner reproduced on purpose (it removes only the last `$SB`, leaving the first of a pair standing — the N-minus-one leak this suite could not see while its factory ran once), **Z7** every factory in the file records into the ledger (both counts derived from the source, neither reader able to count its own source — the recorder pattern carries an escaped dollar so its own line cannot match itself; 1 factory today, so a future second one cannot hide), **Z8/Z9** the leak reader counts directories never files (a directory and a file sharing the `bs.*` prefix side by side: 1 vs 2, then 0 vs 1), **Z10** one `cleanup()` leaves zero ledger directories on disk, read with the same directory reader)
198:- Live: `budget-show` → 0; `--format json` → balanced 5.00 − 0.00 = 5.00 (`month: 2026-10`, rolled 2026-10-01; September closed 1.50 / 3.50, history kept verbatim — the `spent:` note carries the open `.de` renewal question, REPORT.md §14) with `"warnings": []` while the month is current, and `GLADEX_CURRENT_MONTH=2099-12` → still exit **0** with exactly one warning; `/api/budget` on :8000/:8001 → same numbers, both pages `200` (PHP parses the ledger independently)
321:**Purpose**: Promote dev environment to prod, behind four mandatory gates — reviewer verdict, dev-sync, commit lint, ship-tree (git checkout, build, restart) — and, since 2026-10-10 (`[0.4.294]`, queue item (aw)), the **promote ledger**: the standing record of what is running in the four runtime trees.
327:promote-dev-to-prod [--dry-run] [--force] [--format {human,json}] [--ledger-check | --ledger-seed] [--help]
336:- `--ledger-check` - **READ-ONLY standing assertion**: every file in the four runtime
337:  trees (dev+prod × `src/php` + `examples/workflows`) carries a ledger record holding
339:  direct edit that bypassed this tool), `3` the ledger or a tree cannot be read.
340:  Mutually exclusive with `--ledger-seed`; returns **before** the gate machinery, so it
342:- `--ledger-seed` - Append `source=baseline` records for the runtime files not yet
345:- `--help` - Show help message (epilog documents the JSON contract and the ledger)
349:  `--ledger-check`: every file attested; `--ledger-seed`: records written)
351:  `--ledger-check`: **at least one file's current sha has no record holding it**
$ for f in docs.php download.php info.php team.php; do echo "=== $f ==="; stat -c '%n mtime=%y size=%s' /opt/startup/dev/src/php/$f /opt/startup/prod/src/php/$f /data/repo/app/src/php/$f; done; echo "--- other files mtimes sample (dev) ---"; stat -c '%n %y' /opt/startup/dev/src/php/*.php | sort | tail -8; echo "--- prod sample ---"; stat -c '%n %y' /opt/startup/prod/src/php/*.php | sort | tail -8
=== docs.php ===
/opt/startup/dev/src/php/docs.php mtime=2026-10-13 08:24:02.885739325 +0200 size=23676
/opt/startup/prod/src/php/docs.php mtime=2026-10-13 08:24:08.599787055 +0200 size=23676
/data/repo/app/src/php/docs.php mtime=2026-10-13 08:23:59.413710238 +0200 size=23676
=== download.php ===
/opt/startup/dev/src/php/download.php mtime=2026-10-13 08:27:02.296164081 +0200 size=9469
/opt/startup/prod/src/php/download.php mtime=2026-10-13 08:27:02.298164095 +0200 size=9469
/data/repo/app/src/php/download.php mtime=2026-10-13 08:26:56.241118223 +0200 size=9469
=== info.php ===
/opt/startup/dev/src/php/info.php mtime=2026-10-13 08:17:16.398753168 +0200 size=6420
/opt/startup/prod/src/php/info.php mtime=2026-10-13 08:17:19.987795008 +0200 size=6420
/data/repo/app/src/php/info.php mtime=2026-10-13 08:15:01.550060961 +0200 size=6420
=== team.php ===
/opt/startup/dev/src/php/team.php mtime=2026-10-13 08:16:55.800510078 +0200 size=8228
/opt/startup/prod/src/php/team.php mtime=2026-10-13 08:17:05.298622805 +0200 size=8228
/data/repo/app/src/php/team.php mtime=2026-10-13 08:14:52.384936589 +0200 size=8228
--- other files mtimes sample (dev) ---
/opt/startup/dev/src/php/init_db.php 2026-09-24 06:14:15.211288260 +0200
/opt/startup/dev/src/php/landing.php 2026-10-09 13:17:25.069083414 +0200
/opt/startup/dev/src/php/log.php 2026-10-02 08:51:04.068707275 +0200
/opt/startup/dev/src/php/mailbox.php 2026-10-04 09:28:42.503943595 +0200
/opt/startup/dev/src/php/start.php 2026-10-03 18:36:02.294787848 +0200
/opt/startup/dev/src/php/stats.php 2026-10-12 16:22:37.617204302 +0200
/opt/startup/dev/src/php/team.php 2026-10-13 08:16:55.800510078 +0200
/opt/startup/dev/src/php/templates.php 2026-10-12 13:18:13.755015237 +0200
--- prod sample ---
/opt/startup/prod/src/php/init_db.php 2026-09-24 06:10:09.231080747 +0200
/opt/startup/prod/src/php/landing.php 2026-10-09 13:16:51.300864429 +0200
/opt/startup/prod/src/php/log.php 2026-10-02 08:50:37.774515133 +0200
/opt/startup/prod/src/php/mailbox.php 2026-10-04 09:28:42.503943595 +0200
/opt/startup/prod/src/php/start.php 2026-10-03 18:35:52.124689863 +0200
/opt/startup/prod/src/php/stats.php 2026-10-12 16:22:37.617204302 +0200
/opt/startup/prod/src/php/team.php 2026-10-13 08:17:05.298622805 +0200
/opt/startup/prod/src/php/templates.php 2026-10-12 13:18:13.755015237 +0200
> build · mimo-v2.6-flash-free
→ Read repo/tools/promote-dev-to-prod [offset=262, limit=160]
> build · mimo-v2.6-flash-free

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)
[Tue Oct 13 10:30:20 2026] 127.0.0.1:33234 Accepted
[Tue Oct 13 10:30:20 2026] 127.0.0.1:33234 Closing
[Tue Oct 13 10:30:20 2026] 127.0.0.1:33242 Accepted
[Tue Oct 13 10:30:21 2026] 127.0.0.1:33242 Closing
[Tue Oct 13 10:30:21 2026] 127.0.0.1:33250 Accepted
[Tue Oct 13 10:30:21 2026] 127.0.0.1:33250 Closing
[Tue Oct 13 10:30:22 2026] 127.0.0.1:33258 Accepted
[Tue Oct 13 10:30:22 2026] 127.0.0.1:33258 Closing
[Tue Oct 13 10:30:22 2026] 127.0.0.1:33274 Accepted
[Tue Oct 13 10:30:22 2026] 127.0.0.1:33274 Closing
[Tue Oct 13 10:30:25 2026] 127.0.0.1:41650 Accepted
[Tue Oct 13 10:30:25 2026] 127.0.0.1:41650 Closing
[Tue Oct 13 10:30:26 2026] 127.0.0.1:41656 Accepted
[Tue Oct 13 10:30:26 2026] 127.0.0.1:41656 Closing
[Tue Oct 13 10:30:29 2026] 127.0.0.1:41668 Accepted
[Tue Oct 13 10:30:29 2026] 127.0.0.1:41668 Closing
[Tue Oct 13 10:30:30 2026] 127.0.0.1:41672 Accepted
[Tue Oct 13 10:30:30 2026] 127.0.0.1:41672 Closing
[Tue Oct 13 10:30:33 2026] 127.0.0.1:41682 Accepted
[Tue Oct 13 10:30:33 2026] 127.0.0.1:41682 Closing
[Tue Oct 13 10:30:34 2026] 127.0.0.1:41684 Accepted
[Tue Oct 13 10:30:34 2026] 127.0.0.1:41684 Closing
[Tue Oct 13 10:30:37 2026] 127.0.0.1:42054 Accepted
[Tue Oct 13 10:30:37 2026] 127.0.0.1:42054 Closing
[Tue Oct 13 10:30:39 2026] 127.0.0.1:42058 Accepted
[Tue Oct 13 10:30:39 2026] 127.0.0.1:42058 Closing
[Tue Oct 13 10:30:43 2026] 127.0.0.1:42066 Accepted
[Tue Oct 13 10:30:43 2026] 127.0.0.1:42066 Closing
[Tue Oct 13 10:30:46 2026] 127.0.0.1:48940 Accepted
[Tue Oct 13 10:30:46 2026] 127.0.0.1:48940 Closing
[Tue Oct 13 10:30:50 2026] 127.0.0.1:48950 Accepted
[Tue Oct 13 10:30:50 2026] 127.0.0.1:48950 Closing
[Tue Oct 13 10:30:54 2026] 127.0.0.1:48956 Accepted
[Tue Oct 13 10:30:54 2026] 127.0.0.1:48956 Closing
[Tue Oct 13 10:31:09 2026] 127.0.0.1:58198 Accepted
[Tue Oct 13 10:31:09 2026] 127.0.0.1:58198 Closing
[Tue Oct 13 10:31:22 2026] 127.0.0.1:32886 Accepted
[Tue Oct 13 10:31:22 2026] 127.0.0.1:32886 Closing
[Tue Oct 13 10:31:22 2026] 127.0.0.1:32900 Accepted
[Tue Oct 13 10:31:22 2026] 127.0.0.1:32900 Closing
[Tue Oct 13 10:31:22 2026] 127.0.0.1:32912 Accepted
[Tue Oct 13 10:31:22 2026] 127.0.0.1:32912 Closing
[Tue Oct 13 10:31:22 2026] 127.0.0.1:32916 Accepted
[Tue Oct 13 10:31:22 2026] 127.0.0.1:32916 Closing
[Tue Oct 13 10:31:22 2026] 127.0.0.1:32924 Accepted
[Tue Oct 13 10:31:22 2026] 127.0.0.1:32924 Closing
[Tue Oct 13 10:31:22 2026] 127.0.0.1:32940 Accepted
[Tue Oct 13 10:31:22 2026] 127.0.0.1:32940 Closing
[Tue Oct 13 10:31:22 2026] 127.0.0.1:32948 Accepted
[Tue Oct 13 10:31:22 2026] 127.0.0.1:32948 Closing
[Tue Oct 13 10:31:22 2026] 127.0.0.1:32964 Accepted
[Tue Oct 13 10:31:22 2026] 127.0.0.1:32964 Closing
[Tue Oct 13 10:31:22 2026] 127.0.0.1:32980 Accepted
[Tue Oct 13 10:31:23 2026] 127.0.0.1:32980 Closing
[Tue Oct 13 10:31:23 2026] 127.0.0.1:32992 Accepted
[Tue Oct 13 10:31:23 2026] 127.0.0.1:32992 Closing
[Tue Oct 13 10:35:38 2026] 127.0.0.1:49540 Accepted
[Tue Oct 13 10:35:38 2026] 127.0.0.1:49540 Closing
[Tue Oct 13 10:35:38 2026] 127.0.0.1:49546 Accepted

Other app logs: downloads.log

Generated 2026-10-13 08:35:38 UTC · Gladex.de