claudebox/.planning/phases/02-env-audit-and-cli-polish/02-HUMAN-UAT.md
Christopher Mühl c5e8cca867 feat(05-01): rewrite mount architecture with per-project instance isolation
- Replace --bind ~/.claudebox + --symlink with direct --bind ~/.claude ~/.claude
- Add compute_canonical_root() function using git rev-parse --git-common-dir
- Add per-project INSTANCE_DIR via sha256sum[:16] of canonical git root
- Overlay projects/ with per-project hash dir for isolated conversation history
- Overlay history.jsonl and SANDBOX.md as file-level bind mounts
- Update credential mount target from ~/.claudebox to ~/.claude
- Add CLAUDE_JSON_FILE (~/.claude.json) detection and conditional bind mount
- Remove stale CLAUDE.md injection logic (D-06: user's real CLAUDE.md used)
- Update dry-run block and print_audit to reflect new mount layout
- Update SANDBOX.md heredoc to remove ~/.claudebox reference
2026-04-13 09:00:53 +00:00

1.1 KiB

status phase source started updated
partial 02-env-audit-and-cli-polish
02-VERIFICATION.md
2026-04-09T17:30:00Z 2026-04-09T17:30:00Z

Current Test

[awaiting human testing]

Tests

1. Visual Audit Display

expected: Run claudebox without --yes — see grouped sections (Sandbox-generated, Host allowlisted, Extra), PATH split by colon, sensitive values masked, Y/n prompt on stderr result: [pending]

2. Dry-Run Output

expected: Run claudebox --dry-run — full bwrap command prints to stderr, does not execute result: [pending]

3. Check Mode

expected: Run claudebox --check — colored OK/FAIL/WARN output for bwrap, claude, git, curl, nix, ~/.claudebox, ANTHROPIC_API_KEY result: [pending]

4. Non-Interactive Abort

expected: Pipe input to claudebox (e.g., echo | claudebox) — aborts with error telling user to pass --yes/-y result: [pending]

5. Yes Flag Skip

expected: Run claudebox --yes or claudebox -y — skips audit display and confirmation, launches immediately result: [pending]

Summary

total: 5 passed: 0 issues: 0 pending: 5 skipped: 0 blocked: 0

Gaps