diff --git a/README.md b/README.md index dd648572..c29f2b27 100644 --- a/README.md +++ b/README.md @@ -1138,7 +1138,7 @@ shipping) → [`docs/LINEAGE.md`](docs/LINEAGE.md). --- -> **Want to help?** Start anywhere on the spectrum. At the ready-made end, twenty open problems — languages, +> **Want to help?** Start anywhere on the spectrum. At the ready-made end, open problems — languages, > resolver bugs, fuzzers, docs — are written up as starter kits: the research is done, the file and line pointers > are in the prompt, and **each prompt writes a plan and stops**, so we can agree the approach before you write any > code. @@ -1146,7 +1146,7 @@ shipping) → [`docs/LINEAGE.md`](docs/LINEAGE.md). > ```bash > git clone https://github.com/redhat-et/ripwire && cd ripwire > cmake -S . -B build && cmake --build build -j # plain build, no build type -> ls prompts/help-wanted/ # twenty kits — pick one +> ls prompts/help-wanted/ # pick one > claude "follow prompts/help-wanted/zig-language.md" # or your agent of choice > ``` > @@ -1170,8 +1170,8 @@ shipping) → [`docs/LINEAGE.md`](docs/LINEAGE.md). > what a change makes *worse*, and handing that back while the code is still being written. > > [help wanted](https://github.com/redhat-et/ripwire/labels/help%20wanted) · -> [good first issue](https://github.com/redhat-et/ripwire/labels/good%20first%20issue) (three) · -> [all twenty prompts](prompts/help-wanted/) +> [good first issue](https://github.com/redhat-et/ripwire/labels/good%20first%20issue) · +> [all the prompts](prompts/help-wanted/) --- @@ -2322,8 +2322,9 @@ Use these methods when a disclosure says the answer is incomplete: 1. Use `--expand=SYM` to read the body. 2. Use `--uses=SYM` and `--impact=SYM` to measure the blast radius. 3. Use `--scip=FILE` to supply a compiler-grade index. A precise index replaces the name-based edges - and marks the affected edges with `prov="scip"`. A missing index causes a refusal. A corrupt index - causes a fallback to the name-based edges and a warning on standard error. Neither case is silent. + and marks the affected edges with `prov="scip"`. A path that is missing, empty or not a regular file + causes a refusal (exit 1). A corrupt index causes a fallback to the name-based edges and a warning on + standard error. Neither case is silent. ### 8. Determinism diff --git a/prompts/help-wanted/README.md b/prompts/help-wanted/README.md index fb69d8df..38d4e466 100644 --- a/prompts/help-wanted/README.md +++ b/prompts/help-wanted/README.md @@ -9,7 +9,6 @@ below. Comment on that issue to claim it. | Slug | What it delivers | Difficulty | Prompt | | --- | --- | --- | --- | | `struct-layout-doctor` | A `--doctor` row that catches a binary whose translation units were compiled against different struct layouts | good first issue | [`struct-layout-doctor.md`](struct-layout-doctor.md) | -| `next-uses-bare-name` | The callers answer's `next=` pointer lands on a declined call site for narrowed selectors too | good first issue | [`next-uses-bare-name.md`](next-uses-bare-name.md) | | `uses-qualified-selector` | `--uses`, `--safe-delete`, `--verify` and the MCP `uses` verb stop answering 0 for a `::` selector that `--callers` resolves | good first issue | [`uses-qualified-selector.md`](uses-qualified-selector.md) | | `cpp-nested-std-namespaces` | Nested `std::` calls such as `std::ranges::move` and `std::chrono::duration_cast` stop binding in-repo definitions | medium | [`cpp-nested-std-namespaces.md`](cpp-nested-std-namespaces.md) | | `ts-literal-receivers` | TS/JS built-in calls on literal receivers, such as `"x".replace()`, stop binding unrelated user functions (#59) | medium | [`ts-literal-receivers.md`](ts-literal-receivers.md) | @@ -34,3 +33,11 @@ reaches its finish line, not of its first measurement alone. The top-level [`../full-audit.md`](../full-audit.md) is open for help too, with its own issue: run one lens, or all six. Build the tool before you start, as [`../README.md`](../README.md) shows: a plain build, no build type. + +## Solved + +These prompts led to a merged fix. Each stays here as a worked example of a kit that landed. + +| Slug | What it delivered | Solved by | Prompt | +| --- | --- | --- | --- | +| `next-uses-bare-name` | The callers answer's `next=` pointer lands on a declined call site for narrowed selectors too | @antoleod, in [#182](https://github.com/redhat-et/ripwire/pull/182), closing [#158](https://github.com/redhat-et/ripwire/issues/158) | [`next-uses-bare-name.md`](next-uses-bare-name.md) | diff --git a/prompts/help-wanted/next-uses-bare-name.md b/prompts/help-wanted/next-uses-bare-name.md index 83d3d0fb..2f611179 100644 --- a/prompts/help-wanted/next-uses-bare-name.md +++ b/prompts/help-wanted/next-uses-bare-name.md @@ -1,5 +1,9 @@ # Help wanted: make the callers answer's `next=` land on a declined call site +> **Solved.** @antoleod fixed this in [#182](https://github.com/redhat-et/ripwire/pull/182), closing +> [#158](https://github.com/redhat-et/ripwire/issues/158). The prompt stays as a worked example of a kit that landed; +> the paths, lines and outputs below describe the tree before that fix. + **Good first issue · size S · scheduled after the 0.6.0 release · builds on PR #136 (merged)** You are fixing **one pointer**. When `--callers` cannot show a call as a row because the resolver