Skip to content

Record the process.title and inherited-test-env findings as decisions - #1227

Merged
h0x91b merged 1 commit into
mainfrom
docs/dev3-process-naming-decisions
Aug 2, 2026
Merged

Record the process.title and inherited-test-env findings as decisions#1227
h0x91b merged 1 commit into
mainfrom
docs/dev3-process-naming-decisions

Conversation

@h0x91b

@h0x91b h0x91b commented Aug 2, 2026

Copy link
Copy Markdown
Owner

Two findings from seq 1383 (PR #1221) were captured only inside decision 192 and
in task notes, where a future agent hitting the same wall would not look for
them. Both generalise well past native terminal hosts, so they get their own
records.

195 — process.title is not a process name under Bun. Applies to any spawn
in the repo. Bun accepts the assignment on every platform and never throws, so a
smoke test that reads it back proves nothing. It lands in the argv area on macOS
(bounded by the original argv0, so it silently no-ops on a short name and
destroys a long one), in /proc/comm on Linux, and in the console title on
Windows. argv0 is the carrier instead, and it does not disturb the child's own
process.argv. Also records which two viewer columns can never show anything but
the executable basename, and why per-task binary copies are not an option.

196 — Test isolation scrubs the agent's own task environment. Suites started
from a dev3 agent pane inherit that task's DEV3_TASK_* and, on the native
backend, the host's DEV3_NATIVE_SESSION_*; CI inherits none of it. That already
broke native-host-runtime.test.ts locally and only locally, on unmodified code.
Documents the central scrub, and that a newly injected pane var must join
INHERITED_TASK_CONTEXT_ENV in the same change.

Decision 192 now links to both. Documentation only — no code, no behaviour
change. No new changelog entry: this task's entry
(feature-30-native-host-process-identity) already shipped with #1221, and the
policy is one entry per worktree.

Two findings from seq 1383 were only captured inside decision 192 and in task
notes, where a future agent hitting the same walls would not look.

195 covers process naming for any spawn, not just terminal hosts: Bun accepts a
process.title write on every platform and never throws, but it lands in the argv
area on macOS (bounded by the original argv0, so it both silently no-ops on a
short name and destroys a long one), in /proc/comm on Linux, and in the console
title on Windows. argv0 is the carrier instead.

196 covers test isolation: suites started from an agent pane inherit that task's
DEV3_TASK_* and, on the native backend, the host's DEV3_NATIVE_SESSION_*, which
already broke a launcher assertion locally and only locally.
@h0x91b
h0x91b merged commit 4e89815 into main Aug 2, 2026
9 checks passed
@h0x91b
h0x91b deleted the docs/dev3-process-naming-decisions branch August 2, 2026 14:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants