Files

109 lines
3.7 KiB
Markdown
Raw Permalink Normal View History

2026-03-26 14:09:07 +01:00
# Phase 4: Power User Features - Discussion Log
> **Audit trail only.** Do not use as input to planning, research, or execution agents.
> Decisions are captured in CONTEXT.md — this log preserves the alternatives considered.
**Date:** 2026-03-26
**Phase:** 04-power-user-features
**Areas discussed:** Pcap file timing, Flag interaction rules, Offline processing feedback
---
## Pcap File Timing
| Option | Description | Selected |
|--------|-------------|----------|
| Packet timestamps | Use each packet's captured timestamp to assign it to a 500ms window. Fast processing. Faithful to original timing. | ✓ |
| Fixed-rate chunking | Ignore timestamps, just group every N packets into a window. Simpler but loses temporal fidelity. | |
| You decide | Claude picks the best approach based on codebase constraints | |
**User's choice:** Packet timestamps
**Notes:** None
### Follow-up: Time gaps
| Option | Description | Selected |
|--------|-------------|----------|
| Preserve gaps as silence | Gaps become silent sections in the MP3. Faithful but potentially long files. | ✓ |
| Collapse gaps | Skip windows with zero packets. Dense, shorter output. | |
| You decide | Claude picks based on what fits the pipeline best | |
**User's choice:** Preserve gaps as silence
**Notes:** MP3 duration matches the pcap's time span faithfully, including periods of no traffic.
---
## Flag Interaction Rules
### --read and -i interaction
| Option | Description | Selected |
|--------|-------------|----------|
| Mutually exclusive | Error if both provided. Matches tcpdump behavior. | ✓ |
| Ignore -i when --read set | Silently ignore -i if --read is present. | |
| You decide | Claude picks based on CLI conventions | |
**User's choice:** Mutually exclusive
**Notes:** None
### --filter with --read
| Option | Description | Selected |
|--------|-------------|----------|
| Yes, allow both | --filter applies BPF to the pcap file contents. Common workflow: capture broad, then sonify a subset. | ✓ |
| Only with live capture | --filter only works with -i. Simpler scope. | |
| You decide | Claude picks based on go-pcap/gopacket capabilities | |
**User's choice:** Yes, allow both
**Notes:** None
### --read without -o default
| Option | Description | Selected |
|--------|-------------|----------|
| Derive from input filename | capture.pcap → capture.mp3. Parallel to ffmpeg conventions. | ✓ |
| Same timestamp default as live | netsynth-<timestamp>.mp3 regardless of input. | |
| You decide | Claude picks the most intuitive default | |
**User's choice:** Derive from input filename
**Notes:** None
---
## Offline Processing Feedback
### User feedback during pcap processing
| Option | Description | Selected |
|--------|-------------|----------|
| Bookend messages | "Reading capture.pcap..." at start, then summary + Saved line at end. | ✓ |
| Packet count progress | Running packet count as file is read. More feedback but adds complexity for fast operation. | |
| You decide | Claude picks based on existing output style | |
**User's choice:** Bookend messages
**Notes:** None
### --verbose with --read
| Option | Description | Selected |
|--------|-------------|----------|
| Yes, same output | Per-window activity lines scroll by. Consistent behavior regardless of source. | ✓ |
| No, only live capture | --verbose ignored with --read. Keeps offline mode minimal. | |
| You decide | Claude picks based on consistency | |
**User's choice:** Yes, same output
**Notes:** None
---
## Claude's Discretion
- BPF filter validation approach
- Pcap file format detection and error messages
- Timestamp-based windowing implementation strategy
- Handling of pcap files with no packets
## Deferred Ideas
None — discussion stayed within phase scope