Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 7 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -1138,15 +1138,15 @@ 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.
>
> ```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
> ```
>
Expand All @@ -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/)

---

Expand Down Expand Up @@ -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

Expand Down
9 changes: 8 additions & 1 deletion prompts/help-wanted/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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) |
Expand All @@ -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) |
4 changes: 4 additions & 0 deletions prompts/help-wanted/next-uses-bare-name.md
Original file line number Diff line number Diff line change
@@ -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
Expand Down
Loading