blob: b4a61ecd2e943582329f4075a3bc0eb5dcc3d198 [file] [view] [edit]
# panicparse
Run `make help` for available targets. Before committing, run `make fix`,
`make verify`, and `make test`. Install Git hooks with `make git-hooks`.
`make test` runs coverage and benchmark smoke checks.
Use `make test-race` for race checks.
Run Python tools and scripts with `uv run --locked`.
<!-- BEGIN FILE INDEX -->
## File Index
Autogenerated from first-line comments. Run scripts/update_agents_file_index.py to refresh.
- `.github/workflows/test.yml`: CI checks for tests, coverage, static analysis, and generated files.
- `.golangci.yml`: Go formatting and static analysis configuration.
- `Makefile`: Repository development targets and pinned static analysis tools.
- `README.md`: panicparse
- `cmd/panic/internal/incorrect/correct.go`: Package correct is in directory incorrect. If the call stack is
- `cmd/panic/internal/internal.go`: Package internal is for use for panic.
- `cmd/panic/internal/utf8/utf8.go`: Package รนtf8 tests a package and function with non-ASCII names.
- `cmd/panic/main.go`: panic crashes in various ways.
- `cmd/panic/main_no_race.go`: Disable intentional race scenarios in builds without race instrumentation.
- `cmd/panic/main_race.go`: Enable intentional race scenarios in race-instrumented builds.
- `cmd/panic/main_test.go`: Tests panic scenarios and trusted executable restart behavior.
- `cmd/panicweb/internal/internal.go`: Package internal implements the handlers for panicweb so they are in a
- `cmd/panicweb/main.go`: panicweb implements a simulation of a web server that panics.
- `cmd/panicweb/main_others.go`: Unsupported-platform fallback for the blocked-system-call scenario.
- `cmd/panicweb/main_unix.go`: Create a long nanosleep system call for Unix goroutine snapshots.
- `cmd/panicweb/main_windows.go`: Create a blocked system call for Windows goroutine snapshots.
- `cmd/pp/main.go`: pp: analyzes stack dump of Go processes and simplifies it.
- `codecov.yml`: https://docs.codecov.io/docs/codecovyml-reference
- `internal/internaltest/internaltest.go`: Compile and run panic fixtures and retrieve recorded goroutine snapshots.
- `internal/internaltest/static_panic_race.go`: Recorded race-detector output for stack parsing tests.
- `internal/internaltest/static_panicweb.go`: Recorded panicweb goroutine output for stack parsing tests.
- `internal/internaltest/static_panicweb.sh`: Capture panicweb goroutine output and normalize local toolchain paths.
- `internal/main.go`: Package internal implements panicparse
- `internal/main_test.go`: Tests CLI options, snapshot processing, and consecutive snapshots.
- `internal/ui.go`: Format stack buckets, goroutines, paths, and colors for terminal output.
- `internal/ui_test.go`: Tests terminal bucket headers, stack lines, and column widths.
- `main.go`: panicparse: analyzes stack dump of Go processes and simplifies it.
- `pyproject.toml`: Locked Python development tools and repository script checks.
- `scripts/AGENTS.md`: Development scripts
- `stack/README.md`: Templates
- `stack/bucket.go`: Group goroutines by stack signatures and argument similarity.
- `stack/bucket_test.go`: Tests and benchmarks goroutine grouping and argument matching.
- `stack/context.go`: Read goroutine snapshots, infer source roots, and augment stack information.
- `stack/context_test.go`: Tests snapshot scanning, module paths, source roots, and panic integration.
- `stack/data.go`: Code generated by regen.go. DO NOT EDIT.
- `stack/example_test.go`: Examples rendering text and HTML snapshots and capturing HTTP panics.
- `stack/html.go`: Render snapshots and aggregated goroutines as HTML with source links.
- `stack/html_test.go`: Tests HTML rendering, source links, symbol names, and snapshot output.
- `stack/reader.go`: Buffered line reading for goroutine snapshot parsing.
- `stack/regen.go`: Generate the embedded HTML stack template and favicon.
- `stack/source.go`: This file contains the code to process sources, to be able to deduct the
- `stack/source_test.go`: Tests source augmentation, argument decoding, and native panic fixtures.
- `stack/stack.go`: Package stack analyzes stack dump of Go processes and simplifies it.
- `stack/stack_test.go`: Tests stack functions, call signatures, arguments, and goroutine comparisons.
- `stack/webstack/example_test.go`: Examples exposing goroutine snapshots through an HTTP handler.
- `stack/webstack/webstack.go`: Package webstack provides a http.HandlerFunc that serves a snapshot similar
- `stack/webstack/webstack_test.go`: Tests and benchmarks HTTP snapshots, errors, methods, and memory limits.
<!-- END FILE INDEX -->