disclaw/tasks/DIS-004.md
Nick Tabeling 722d85c2a5
Some checks failed
CI / build-and-test (ubuntu-latest) (pull_request) Has been cancelled
CI / build-and-test (windows-latest) (pull_request) Has been cancelled
CI / lint (pull_request) Has been cancelled
chore: update task board — Phase 0 and Phase 1 marked done
All DIS-001 through DIS-110 set to status:done with merge dates.
BOARD.md reorganized with Done sections per phase.
Phase 1.5 Refinement epic added as planning placeholder.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-10 10:42:16 +02:00

44 lines
1.6 KiB
Markdown

---
id: DIS-004
status: done
phase: 0
priority: p0
labels: [phase:0, type:feat, priority:p0, security]
branch: phase-0/bare-and-append-identity
assignee: claude-agent
started: null
pr: null
merged: 2026-04-09
---
# DIS-004: Runner mit `--bare` + `--append-system-prompt-file` aufrufen
## Ziel
Jeder CLI-Call verwendet `--bare` (skippt CLAUDE.md-Walk-Up, Hooks, Auto-Memory, MCP) und
injiziert die Agenten-Identität explizit über `--append-system-prompt-file <workspace>/CLAUDE.md`.
Parent-CLAUDE.md-Leaks werden strukturell unmöglich.
## Kontext
Claude Code walkt ohne `--bare` alle Parent-Dirs hoch und konkateniert CLAUDE.md-Dateien.
`docs/development-plan.md` §2.9, `docs/cli-feature-answers.md` Frage 8.
## Scope
- **In**: `runner.ts` Args-Builder immer `--bare` + `--append-system-prompt-file <ws>/CLAUDE.md` · Integration-Test mit `tests/fixtures/fake-claude.mjs` der System-Prompt als JSON echoed
- **Out**: `--resume`-Flag (Phase 2) · Streaming-Flags (Phase 5)
## Definition of Done
- [ ] Args enthalten `["--bare", "--append-system-prompt-file", "<ws>/CLAUDE.md"]`
- [ ] Integration-Test `tests/integration/no-parent-claude-md-leak.test.ts` verifiziert: nur Workspace-CLAUDE.md im System-Prompt, keine Parent-Leaks
- [ ] Dokumentations-Kommentar im Runner warum `--bare` zwingend ist
- [ ] `npm run build && npm test` grün
## Dateien (erwartet)
- `src/agent/runner.ts`
- `tests/fixtures/fake-claude.mjs`
- `tests/integration/no-parent-claude-md-leak.test.ts`
## Abhängigkeiten
Blockiert durch: **DIS-002** (sauberes Spawn-Setup muss vorher stehen).
## Spec
`docs/backlog.md` #DIS-004