docs(post-v1): design notes for #20/#22/#24 (deferred items)#15
Merged
Conversation
The three "specialized / opt-in / defer based on real user pull" items from docs/17-version-plan.md's v1.6 bucket now have design notes so the gates for future implementation are pre-paid. Each note documents why deferred, what concrete triggering signals would justify reconsideration, the phase-1 integration shape when triggered, dependencies, and an anticipated failure matrix. - docs/31-own-ptrace.md (#20 own Linux ptrace driver): defer while LLDB's NativeProcessLinux is sufficient; triggers are PTRACE_GET_SYSCALL_INFO / seccomp-aware tracing / io_uring observability gaps and measurable per-thread throughput gaps. - docs/32-hardware-tracing.md (#22 Intel PT / ARM ETM): defer; phase-0 (perf script shell-out) is cheap, phase-1 (in-process libipt decode) is ~10-12 weeks. Gates behind LDB_ENABLE_HARDWARE_TRACING. - docs/33-criu.md (#24 criu snapshot / fork): defer; brutal compatibility matrix (eBPF, io_uring, GPU contexts all break dump) makes the audience narrow. Pre-flight check is the load-bearing piece. Gates behind LDB_ENABLE_CRIU. No code touched; no tests run. WORKLOG entry summarizes. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Three design notes for post-V1 plan items in v1.6's "specialized / opt-in / defer based on real user pull" bucket (
docs/17-version-plan.md). Documentation only — no code, no tests touched.The intent is to pre-pay the design surface so that if/when a concrete user demand signal arrives, the next contributor has phase-1 scope, dependencies, and a failure matrix already mapped out — not to commit us to building any of these.
docs/31-own-ptrace.md(Field-report follow-ups: target.open lazy load + §1 CLI + §2 socket daemon + §6 chained-fixups phases 1-3 #20) — Own Linux ptrace driver. Defer while LLDB'sNativeProcessLinuxis sufficient. Triggers: specific kernel features LLDB doesn't expose (PTRACE_GET_SYSCALL_INFO, seccomp-aware tracing, io_uring observability, pidfd) and measurable performance gaps (per-thread throughput, displaced-step latency, wakeup batching). Phase-1 shape:LinuxPtraceBackendslotted underDebuggerBackendalongsideLldbBackend/GdbMiBackend; signalfd + waitpid loop; libunwind for DWARF unwinding.docs/32-hardware-tracing.md(#22) — Intel PT / ARM ETM. Defer; phase-0 (perf script shell-out) is cheap if any user asks. Phase-1 is ~10–12 weeks for x86_64 PT alone. Shape: extendperf.recordwithintel_pt//events; newtrace.decodeendpoint with three projections (instructions/calls/summary). Gates behindLDB_ENABLE_HARDWARE_TRACING.docs/33-criu.md(#24) — criu snapshot / fork. Defer indefinitely; build only on concrete demand. Brutal compatibility matrix (eBPF, io_uring, GPU contexts all hard-break). Two user stories that would justify: parallel-hypothesis investigation viasession.criu_fork, periodic checkpoints as "poor man's rr." Pre-flight scan (/proc/<pid>/fdinfo+/proc/<pid>/maps) is the load-bearing piece. Gates behindLDB_ENABLE_CRIU.Format matches
docs/23throughdocs/30: TL;DR, numbered sections, failure-matrix tables, cross-references. Each note leads with "why deferred" and ends with "recommendation: defer" — these are deferred-design notes, not active plans.Test plan
docs/15-post-v1-plan.mdanddocs/17-version-plan.mdcross-references resolve.docs/WORKLOG.md.🤖 Generated with Claude Code