feat(cli): thread list defaults to active threads only
CI / check (pull_request) Successful in 2m52s

Closes #147. Changes default behavior of `uwf thread list` to show only
active threads (idle + running). Adds `--all` flag to opt into the
previous full-list behavior. Explicit `--status` still wins over `--all`.

- cmdThreadList gains a `showAll: boolean` parameter (default false)
- CLI registers `--all` option and passes it through
- Test suite includes new `default behavior (issue #147)` describe block
  covering 9 scenarios; existing tests updated where they implicitly
  relied on the old "show everything" behavior
- README, cli-reference, and usage-reference updated to document the
  new default and the `--all` flag

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-07 13:46:25 +00:00
parent e1c7e3d267
commit ae757e4d44
9 changed files with 326 additions and 15 deletions
+5 -1
View File
@@ -233,11 +233,12 @@ function parsePaginationOptions(
thread
.command("list")
.description("List threads")
.description("List threads (defaults to active: idle + running)")
.option(
"--status <status>",
"Filter by status: idle, running, completed, cancelled, active (idle+running), or comma-separated values",
)
.option("--all", "Show all threads regardless of status (overrides default active-only filter)")
.option("--after <date>", "Filter threads created after this date (ISO or relative like '7d')")
.option("--before <date>", "Filter threads created before this date (ISO or relative like '7d')")
.option("--skip <n>", "Skip first n threads")
@@ -245,6 +246,7 @@ thread
.action(
(opts: {
status: string | undefined;
all: boolean | undefined;
after: string | undefined;
before: string | undefined;
skip: string | undefined;
@@ -256,6 +258,7 @@ thread
const nowMs = Date.now();
const { afterMs, beforeMs } = parseTimeFilters(opts.after, opts.before, nowMs);
const { skip, take } = parsePaginationOptions(opts.skip, opts.take);
const showAll = opts.all === true;
const result = await cmdThreadList(
storageRoot,
@@ -264,6 +267,7 @@ thread
beforeMs,
skip,
take,
showAll,
);
writeOutput(result);
});