From 28f3bd81ded49d3bf57654245a91e8a23b3817d3 Mon Sep 17 00:00:00 2001 From: joyful-ii-V-I Date: Sat, 12 Sep 2026 09:50:56 -0400 Subject: [PATCH 1/2] docs(help-wanted): #182 solved the next-uses-bare-name kit, but the docs still counted it as open @antoleod's #182 fixed the problem the next-uses-bare-name starter kit describes. prompts/help-wanted/README.md still listed it as open, and README.md said "twenty open problems", "twenty kits", "all twenty prompts" and "(three)" good first issues. Each of those counts is kept by hand and goes stale whenever a kit is solved. - prompts/help-wanted/README.md: the kit's row moves to a new Solved table at the end, which names #182, its author and the issue it closed (#158). - prompts/help-wanted/next-uses-bare-name.md: kept as a worked example of a kit that landed. A note at the top says the paths, lines and outputs below describe the tree before the fix. - README.md: the four counts are reworded without a number. No generated document and no gate pins these counts. Co-Authored-By: Claude Opus 5 --- README.md | 8 ++++---- prompts/help-wanted/README.md | 9 ++++++++- prompts/help-wanted/next-uses-bare-name.md | 4 ++++ 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 3e79d5ff..584d5021 100644 --- a/README.md +++ b/README.md @@ -1132,7 +1132,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. @@ -1140,7 +1140,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 > ``` > @@ -1164,8 +1164,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/) --- 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 From 3a1efca367ed229df87d9c304d524214382f47b9 Mon Sep 17 00:00:00 2001 From: joyful-ii-V-I Date: Sat, 12 Sep 2026 11:45:30 -0400 Subject: [PATCH 2/2] docs(readme): the reference guide said only a missing --scip index refuses Section 7 of the reference guide said "A missing index causes a refusal." Since #197 a --scip path that is empty, or is not a regular file (a directory, a FIFO, a device), is refused the same way (exit 1). The sentence now says so, in the guide's own one-instruction-per-sentence style, matching the escalation list #197 already updated. Co-Authored-By: Claude Opus 5 --- README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 6c0a2007..c29f2b27 100644 --- a/README.md +++ b/README.md @@ -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