Body safety test #1284

Closed
opened 2026-08-17 20:06:32 +00:00 by Ghost · 1 comment

Release notes

Inline code: rm -rf / must stay literal.
Command sub attempt: $(touch /var/home/jason.woltje/agent-work/1280-identity-first/packages/mosaic/framework/tools/git/.mosaic-test-work/issue-create-body-safety/INJECTION_SENTINEL)
Backtick cmd attempt: touch /var/home/jason.woltje/agent-work/1280-identity-first/packages/mosaic/framework/tools/git/.mosaic-test-work/issue-create-body-safety/INJECTION_SENTINEL
Dollars: $HOME ${PATH} $5.00 and 100% done
Quotes: "double" and 'single' and mixed
Trailing pipe-ish: foo | bar && baz ; qux

# Release notes Inline code: `rm -rf /` must stay literal. Command sub attempt: $(touch /var/home/jason.woltje/agent-work/1280-identity-first/packages/mosaic/framework/tools/git/.mosaic-test-work/issue-create-body-safety/INJECTION_SENTINEL) Backtick cmd attempt: `touch /var/home/jason.woltje/agent-work/1280-identity-first/packages/mosaic/framework/tools/git/.mosaic-test-work/issue-create-body-safety/INJECTION_SENTINEL` Dollars: $HOME ${PATH} $5.00 and 100% done Quotes: "double" and 'single' and `mixed` Trailing pipe-ish: foo | bar && baz ; qux
Collaborator

Accidental write from test execution. Closing as invalid; not deleted, deliberately.

What this is. Created by the issue-create wrapper during work on RI-1280-001, the fix for
#1280 (git wrappers resolve the acting principal from tea's login list rather than from the seat
that is asking). #1282-#1285 are four runs of the pre-existing
test-issue-create-body-safety.sh; #1286 and #1287 are manual reproductions. No PRs were created and
#1281 was not touched.

Why it happened, measured. The pre-existing tests do not sandbox their environment — they
inherit the seat's real HOME by design, and they passed historically because the tea code path
always ran first and the test's mock intercepted it there. The fix under development activates
identity-based resolution before the tea path. This workstation's global ~/.gitconfig
carries mosaic.gitIdentity = mos-dt-0, and a fixture repo with no local value inherits it, so the
new path resolved a real per-slot token and posted for real.

The fix behaved exactly as designed. What the incident exposes is that these tests were one ambient
environment variable away from live writes the entire time, and the ordering change closed the
circuit. Both halves are being fixed in the same change: the tests become hermetic (env -i, fake
HOME, GIT_CONFIG_GLOBAL=/dev/null), because a test that can reach a live forge is not a test.

Closed rather than deleted. The numbers are consumed either way, and deleting them would remove
the only record that this happened. Same rule applied to #1281, which is authored by a retired seat
and carries a provenance correction rather than being recreated: a second object minted to conceal
the first is worse than the first.

Attribution note. These say mos-dt-0. Nobody chose that — it is #1280 itself, visible in its
own artifacts. Reported unprompted by the agent that caused it, before it continued working, which is
the reason the mechanism above is measured rather than reconstructed.

-- fred (orchestrator, sb-it-1-dt)

Accidental write from test execution. Closing as invalid; not deleted, deliberately. **What this is.** Created by the `issue-create` wrapper during work on RI-1280-001, the fix for #1280 (git wrappers resolve the acting principal from `tea`'s login list rather than from the seat that is asking). #1282-#1285 are four runs of the pre-existing `test-issue-create-body-safety.sh`; #1286 and #1287 are manual reproductions. No PRs were created and #1281 was not touched. **Why it happened, measured.** The pre-existing tests do not sandbox their environment — they inherit the seat's real `HOME` by design, and they passed historically because the `tea` code path always ran first and the test's mock intercepted it there. The fix under development activates identity-based resolution *before* the `tea` path. This workstation's **global** `~/.gitconfig` carries `mosaic.gitIdentity = mos-dt-0`, and a fixture repo with no local value inherits it, so the new path resolved a real per-slot token and posted for real. The fix behaved exactly as designed. What the incident exposes is that these tests were one ambient environment variable away from live writes the entire time, and the ordering change closed the circuit. Both halves are being fixed in the same change: the tests become hermetic (`env -i`, fake `HOME`, `GIT_CONFIG_GLOBAL=/dev/null`), because a test that can reach a live forge is not a test. **Closed rather than deleted.** The numbers are consumed either way, and deleting them would remove the only record that this happened. Same rule applied to #1281, which is authored by a retired seat and carries a provenance correction rather than being recreated: a second object minted to conceal the first is worse than the first. **Attribution note.** These say `mos-dt-0`. Nobody chose that — it is #1280 itself, visible in its own artifacts. Reported unprompted by the agent that caused it, before it continued working, which is the reason the mechanism above is measured rather than reconstructed. -- fred (orchestrator, sb-it-1-dt)
Ghost closed this issue 2026-08-17 20:10:53 +00:00
Sign in to join this conversation.
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: mosaicstack/stack#1284