# Fresh sanitized server-only evidence

Captured 2026-10-25 UTC. Worktree /home/ubuntu/wt/issue-24755, branch fix/issue-24755.
Head [e285b17a3f](https://git.cafe/pingdotgg/t3code/commit/e285b17a3f8e6f2818f0c596739799675d469a9b); baseline [c79ef8c454](https://git.cafe/pingdotgg/t3code/commit/c79ef8c454).
Checkout clean before and after; head unchanged. No implementation edits, commits, pushes, merges, watches or public issue writes. Scratch retained for parent proof audit.

## Supplied red test result (not rerun here)

The task supplied this reliable failing result at the red fixture commit for test `bounds an oversized boot-service.log that the service manager still appends to`:

```text
assert.isBelow(size, seededSize)
expected: size < 17825792
actual:   size = 17825802
FAIL: seeded log did not shrink; appended Listening newline increased its size.
```

This is a supplied summary, not claimed to be a freshly executed red transcript. The shared checkout was never changed to reproduce red.

## Retained baseline runtime summary

Previous baseline runtime already executed in isolated /tmp/t3-24755-repro using a real systemd user transient unit, serviceLauncher.main and bin.ts serve. 17 MiB seed = 17825792 bytes. Healthy Listening on 127.0.0.1:19855; unit active; before stop log size 17833033 bytes, inode 1462356, no archive. Setup sentinel/version corrections were not counted as proof. Baseline unit was stopped before this capture. No baseline raw log or state uploaded.

## Current implementation inspection

The 10 MiB threshold uses copy then in-place truncate, preserving append descriptors. Archive copy failure is handled independently: best-effort remove the failed archive, then attempt truncation regardless. The directory-at-archive-path focused test proves truncation still occurs when copying fails. Recurring ten-minute maintenance is queued through the launcher's transition queue, and its interval is cleared on exit. Startup uses the same exported boundServiceLog seam. A real subprocess grows the log after startup; fake timers advance the recurring interval, and stopping queues behind maintenance before assertions. No ten-minute wall-clock wait or actual recurring runtime firing is claimed.

## Focused green tests

`vp test run apps/server/src/serviceLauncher.test.ts`

```text
note: You are running `vp test` as a Vite+ built-in command. If you meant to run the test npm script, use `vpr test` instead.

 RUN  v5.0.5 /home/ubuntu/wt/issue-24755


 Test Files  1 passed (1)
      Tests  18 passed (18)
   Start at  06:27:22
   Duration  21.74s (tests 67%, transform 20%, import 9%, setup 5%)

```

`vp test run apps/server/src/serviceLauncher.test.ts apps/server/src/cloud/bootService.test.ts`

```text
note: You are running `vp test` as a Vite+ built-in command. If you meant to run the test npm script, use `vpr test` instead.

 RUN  v5.0.5 /home/ubuntu/wt/issue-24755


 Test Files  2 passed (2)
      Tests  51 passed (51)
   Start at  06:29:01
   Duration  18.89s (tests 66%, transform 20%, import 9%, setup 4%)

```

Additional exploratory focused checks passed: serviceLauncher + serviceLauncherClient, 23 tests across two files; bootService + cli/service, 39 tests across two files; bootService + pinnedRuntime, 46 tests across two files; bootService + servicePreflight, 34 tests across two files; bootService + selfUpdate, 45 tests across two files. These are separate runs, not the requested related 51-test pair.

## Fresh real systemd runtime

Command: `python3 /tmp/t3-24755-evidence/evidence-driver-refresh.py`.
Runtime 0.1.2, protocol 3; actual serviceLauncher.main and actual bin.ts serve, isolated fixture only. Both stdout and stderr use systemd append mode; inherited PATH omitted. Port 19855. The driver retains its original O_APPEND fd across startup and second explicit exported maintenance seam. Both archives and both postmarkers are asserted. The public driver embeds and verifies the original launch.ts and runtime wrapper contents; maintenance.ts is generated by it. No fixture state, pairing tokens or raw logs are published.

```text
Runtime evidence: actual serviceLauncher.main + actual bin.ts serve; isolated fixture /tmp/t3-24755-repro
Head e285b17a3f8e6f2818f0c596739799675d469a9b
Environment Linux 6.1.102 x86_64 GNU/Linux; node v26.12.1
Service manager systemd 255 (255.4-1ubuntu8.17)
Before startup retained O_APPEND fd: dev=65024 inode=1462356 bytes=17825792
Before startup live path: dev=65024 inode=1462356 bytes=17825792
Command: systemd-run --user --unit=t3-24755-evidence.service --property=WorkingDirectory=/home/ubuntu/wt/issue-24755 --property=StandardOutput=append:/tmp/t3-24755-repro/userdata/logs/boot-service.log --property=StandardError=append:/tmp/t3-24755-repro/userdata/logs/boot-service.log --setenv=T3CODE_HOME=/tmp/t3-24755-repro --setenv=PATH=[inherited, omitted] /home/ubuntu/.local/share/vite-plus/bin/node /tmp/t3-24755-repro/launch.ts
Unit state: active
Healthy log: [06:27:31.341] INFO (#6465): Listening on http://127.0.0.1:19855
After startup retained fd: dev=65024 inode=1462356 bytes=363
After startup live path: dev=65024 inode=1462356 bytes=363
Startup archive: bytes=17825792; premarker verified; live reduced
Unique startup postmarker written through retained fd and verified in live path
Before maintenance unit state: active; live dev=65024 inode=1462356 bytes=11536473
Command: /home/ubuntu/.local/share/vite-plus/bin/node /tmp/t3-24755-evidence/maintenance.ts (explicit exported maintenance seam; not timer firing)
After maintenance retained fd: dev=65024 inode=1462356 bytes=0
After maintenance live path: dev=65024 inode=1462356 bytes=0
Second archive bytes=11536473; startup postmarker and maintenance premarker verified
Unique maintenance postmarker written through original retained fd and verified in live path
After maintenance unit state: active
Timer wiring inspected: 10 minute setInterval calls boundServiceLog; startup calls same seam. No 10 minute timer wait performed.
Owned unit stopped: inactive
```

## Original lead-written fixture source dependencies

launch.ts:
```ts
import {main} from "/home/ubuntu/wt/issue-24755/apps/server/src/serviceLauncher.ts"; await main();
```

runtime/versions/0.1.2/t3:
```sh
#!/bin/sh
exec /home/ubuntu/.local/share/vite-plus/bin/node /home/ubuntu/wt/issue-24755/apps/server/src/bin.ts serve --port 19855 --host 127.0.0.1 --base-dir /tmp/t3-24755-repro --no-browser
```

Fixture prerequisite: isolated runtime state selecting activeVersion 0.1.2 and protocol 3, plus executable permissions on the wrapper and runtime/versions/0.1.2/.install-complete containing exactly `0.1.2\n`. Use freshly initialized isolated state, never live T3 home. The existing fixture state itself is intentionally excluded.

## Scope and limitations

Surface matrix EMPTY: 0/0. Server-only; no browser verification. macOS launchd unverified. Ten-minute checks are periodic, not a hard cap: archives can exceed 10 MiB. Copy/truncate can lose writes between copy and truncate. Runtime startup and explicit maintenance seam passed; recurring timer is covered by the focused fake-timer test. Archive-copy failure is covered by the focused test, not injected into the running service.
Owned evidence unit inactive after both successful fresh runs; pre-existing repro unit inactive. Worktree untouched, scratch retained.

## FRICTION category|happened|avoidance

suite-selection|Initial related test selections produced 23, 39, 46, 34 and 45 passes, not the requested 51-test pair.|Report exact runs separately and confirm serviceLauncher plus bootService pair before uploading.
environment|Current requested node executable reports v26.12.1, versus v24.22.1 in prior evidence.|Fresh runtime records the actual version; do not reuse old version claims.
red-proof|Original red result was supplied and not freshly executed.|Clearly label supplied red; leave shared checkout untouched.
reproducibility|Prior public driver depended on launch.ts and a runtime wrapper omitted from its upload.|Embed both exact source contents in refreshed driver and transcript; verify fixture matches before runtime.
