• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

dcdpr / jp / 27721933543
67%

Build:
DEFAULT BRANCH: main
Ran 17 Jun 2026 09:52PM UTC
Jobs 1
Files 418
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

17 Jun 2026 09:48PM UTC coverage: 66.609% (-0.01%) from 66.62%
27721933543

push

github

web-flow
feat(cli): Add stdin target `-`, regex and `--list` to `c grep` (#755)

Introduce three related improvements to conversation management:

**Stdin target (`-`)** — any multi-ID command now accepts `-` as a
target to read conversation IDs from standard input, one per line.
`ConversationTarget::Stdin` maps `-` at parse time; resolution reads
stdin once, trims blank lines, and parses each line as a
`ConversationId` with the same validation applied to command-line IDs.
The target is rejected on single-value commands and cannot be combined
with other targets. Terminal stdin (nothing piped) errors immediately
rather than blocking.

**`c grep --regex`/`-r`** — treats the pattern as a `fancy-regex`
expression instead of a plain substring, enabling look-around,
backreferences, and anchors (`\A`, `\z`). A new `Matcher` enum in
`shared/search.rs` encapsulates both modes so the matching predicate is
compiled once and reused across all lines of all conversations.

**`c grep --list`/`-l`** — prints only the unique conversation IDs that
contain at least one match, one per line (JSON array under `-F json`).
This is the producer half of the stdin pipeline:

```sh
jp c grep -l --regex '\Apr-triage:\d{3}\z' | jp c archive -
```

**Archive confirmation** — bulk archive (`jp c archive id1 id2 …` or `jp
c archive -`) now prompts for each conversation when more than one is
targeted, showing the conversation title alongside its ID so the
selection can be verified before committing. Prompt output for both
`archive` and `rm` was also corrected to use `prompt_writer()` instead
of `out_writer()`, keeping prompt text off the data channel.

RFD 086 documents the stdin-input convention and its relationship to the
four-channel output model (RFD 048).

Signed-off-by: Jean Mertz <git@jeanmertz.com>

66 of 104 new or added lines in 6 files covered. (63.46%)

35616 of 53470 relevant lines covered (66.61%)

426.93 hits per line

Uncovered Changes

Lines Coverage ∆ File
21
41.84
-1.48% crates/jp_cli/src/cmd/target.rs
13
27.17
-2.24% crates/jp_cli/src/cmd/conversation/archive.rs
2
87.63
-0.39% crates/jp_cli/src/cmd/conversation/grep.rs
2
18.52
0.0% crates/jp_cli/src/cmd/conversation/rm.rs
Jobs
ID Job ID Ran Files Coverage
1 27721933543.1 17 Jun 2026 09:52PM UTC 418
66.61
GitHub Action Run
Source Files on build 27721933543
  • Tree
  • List 418
  • Changed 6
  • Source Changed 6
  • Coverage Changed 5
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #27721933543
  • 2482c90e on github
  • Prev Build on main (#27717090033)
  • Next Build on main (#27722771184)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc