Commit graph

9 commits

Author SHA1 Message Date
jedarden
5dda1c0b2d gap-review round 1: fix 24 gaps (3 critical, 9 high, 7 medium, 5 low)
Critical:
- G-1: Stop poller exit seq: replace malformed \x1b[201~\r/exit\r with /exit\r
- G-2: EC-7 (Stop before prompt) is unreachable after EC-11 unsets session vars; now errors
- G-3: hook.sh FIFO path written as single-quoted shell string to prevent injection
- G-9: FIFO O_NONBLOCK ENXIO prevention: keeper write-end fd held until Stop fires
- G-12: SIGTERM now installs handler (mirrors SIGINT) so TempDir drops cleanly

High:
- G-4: stream-json offset defined as byte offset via seek(End) at prompt injection
- G-5: /read is a built-in slash command, not an MCP tool; no allowedTools needed
- G-6: hook merge ordering documented (sequential, user hooks first, per-hook timeout)
- G-7: mock_claude built in Phase 2 (not Phase 10) so integration tests run in all phases
- G-8: install.sh step 3.5 installs mock_claude; doctor --check references ~/.local/bin/mock_claude
- G-10: cwd-slug algorithm documented (strip leading /, replace / with -) + unit test directive
- G-11: model precedence chain defined (--model > config.toml > compiled-in default)

Medium/Low:
- G-13: idle fallback timer is one-shot; deactivated after any transition
- G-14: --setting-sources= marked unverified (per OQ-2) in all three mentions
- G-15: /read sandboxing note added (not filesystem-restricted in standard installs)
- G-16: mock_claude added to CI artifact list and Cargo.toml workspace note
- G-17: ClaudePrintError variant → JSON subtype mapping table added
- G-18: fingerprint dedup false-negative for identical-usage consecutive turns documented
- G-19: install.sh step 2.5 preserves previous binary as claude-print.prev
- G-20: window size probe order defined (STDOUT→STDIN→/dev/tty→fallback 220×50)
- G-21: scenario count "20+" changed to open-ended; MOCK_DELAY_STOP usage noted
- G-22: settings.json schema verification added to OQ-1 checklist
- G-23: NEEDLE stdin delivery connected to CLI stdin-as-prompt behavior
- G-24: PO-4 noted in Phase 4 entry; PO-5 acknowledged in Phase 7 entry

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-07 12:57:13 -04:00
jedarden
ef6b7b42e8 Add missing plan sections: scope, acceptance, architecture, security, ops, risk
Addresses all MISSING/PARTIAL items from the plan review:
- Glossary, Non-Goals, Hard Requirements, What It Is Not, Scope Lock
- Acceptance scenarios (AS-1 through AS-6) with pass/fail criteria
- Module layout (src/ file tree), state machine diagrams, concurrency model
- Cross-cutting concerns: error propagation, signals, temp dir, log boundary
- Tech stack rationale column on crate table
- Edge case catalog (EC-1..12), anti-patterns, invariants (INV-1..8)
- Proof obligations (PO-1..6) with named recovery per assumption
- Phase entry/exit criteria and LOC estimates for all 11 phases
- Conformance harness + definition of done + all-gates policy in Testing
- Security section: threat model (T-1..5), untrusted input policy, supply chain
- Performance section: budgets, benchmark contract, CI size gate
- Operations section: migration plan, semver stance, rollout/rollback, doctor command
- Risk register (R-1..7) with likelihood/impact/mitigation
- ADRs (ADR-001..003) for the three churn-magnet decisions
- Open Questions updated with phase dependencies and resolution deadlines
- Phase 6 renamed from duplicate "Hook installer" to "Stop poller"

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-07 12:35:12 -04:00
jedarden
af79068a05 Remove all prior art repo references from docs
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-07 11:05:03 -04:00
jedarden
97d167a993 Inherit user hooks by default; no CLAUDE_CONFIG_DIR; add --no-inherit-hooks
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-07 11:03:34 -04:00
jedarden
0ab3b42e13 Add sandbox isolation: CLAUDE_CONFIG_DIR, transcript forwarding, isolation tests
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-07 10:49:00 -04:00
jedarden
b03e3b3e37 Rewrite plan: single Rust binary, version-resilience tests, mock-claude fixture
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-07 10:45:48 -04:00
jedarden
8ab946e1ef Add PTY mechanics and Claude Code internals research
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-07 10:41:46 -04:00
jedarden
30af5c4421 Remove prior art references; expand plan to full feature set and test coverage
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-07 10:35:10 -04:00
jedarden
134af23bbf Initial scaffold: claude-print PTY wrapper for subscription billing 2026-06-07 10:30:31 -04:00