Spec 0243 — Operational guard: dual-research CLI refuses to run inside Claude Code (env-var detection + env-var escape + CLAUDE.md rule + skill amend)
Frontmatter
Field
Value
kind
dev
spec
0243
slug
operational-guard-refuse-running-inside-claude-code
title
Operational guard: dual-research CLI refuses to run inside Claude Code (env-var detection + env-var escape + CLAUDE.md rule + skill amend)
type
new-feature
label
new-feature
version_bump
MINOR
target_version
TBD
status
deployed
depends_on
[]
complexity
S
created
2026-05-28
queued_at
started_at
2026-05-28T11:23:33Z
merged_at
2026-05-28T11:37:26Z
deployed_at
2026-05-28T11:41:00Z
pr
https://github.com/Lexiz/dual-research/pull/278
handover
handoffs/2026-05-28-spec-0243-operational-guard-refuse-running-inside-claude-code.md
failure_step
source_session
promoted_from_draft
disposition
ship
disposition_reason
Four consecutive runs hosted as Claude Code background tasks died silently in phase 2-4 with no Python exception, no signal, no jetsam log — the hosting Claude Code session's background-task manager reaps long-running children at parent-session lifecycle events. The first plain-Terminal.app run (20260528-094743) completed cleanly ($8.66, 39KB final.md, clean shutdown, all gating invariants green). H4 confirmed by Cowork at cowork/briefs/2026-05-28-h4-plain-terminal-next.md. This spec routes the user around the H4 surface by making the CLI refuse-by-default in any Claude-Code-hosted invocation, with a documented env-var escape for power users.
Event timeline
When
Step
Data
2026-05-28T11:04:32Z
queued
{}
2026-05-28T11:23:36Z
in_progress
{}
2026-05-28T11:24:53Z
branched
{"branch": "spec/0243-operational-guard-refuse-running-inside-claude-code", "from": "main@0eb3bae"}
2026-05-28T11:24:55Z
implementing_started
{}
2026-05-28T11:32:42Z
implement_complete
{"files_changed": 9, "commits": 0}
2026-05-28T11:32:44Z
tests_started
{}
2026-05-28T11:36:15Z
tests_green
{"passed": 2283}
2026-05-28T11:37:19Z
pr_opened
{"url": "https://github.com/Lexiz/dual-research/pull/278"}
2026-05-28T11:37:28Z
merged
{"pr": "https://github.com/Lexiz/dual-research/pull/278"}
2026-05-28T11:38:00Z
deploy_started
{}
2026-05-28T11:39:32Z
deployed
{"version": "1.57.0"}
2026-05-28T11:39:39Z
deploy_health_check_ok
{}
2026-05-28T11:40:54Z
handoff_written
{"path": "handoffs/2026-05-28-spec-0243-operational-guard-refuse-running-inside-claude-code.md"}
Links