sneak (#187 (comment)): a -v / --verbose option raises the log level, one level per repeat (-vv, -vvv, --verbose --verbose); logging goes to stderr. -q / --quiet prints nothing to stderr except fatal errors.
Done when: both options exist on every command as described, logs go only to stderr, the README and --help say so, and tests cover each level and --quiet.
Model: opus-5-5
sneak (https://git.eeqj.de/sneak/quak/issues/187#issuecomment-145043): a `-v` / `--verbose` option raises the log level, one level per repeat (`-vv`, `-vvv`, `--verbose --verbose`); logging goes to stderr. `-q` / `--quiet` prints nothing to stderr except fatal errors.
**Done when:** both options exist on every command as described, logs go only to stderr, the README and `--help` say so, and tests cover each level and `--quiet`.
Model: opus-5-5
Plan. Starts after #211 is on next, since all three change bin/quak.ts and the commands' stderr lines.
Levels, from quietest: fatal, error, warning, info, debug, trace. The default is info: everything quak prints on stderr today, the progress lines included. -v gives debug, -vv trace; more repeats stay at trace. --verbose --verbose counts the same as -vv. Debug and trace each log something real (for example each server request with its result, and each retry), chosen by the worker and listed in the README.
-q / --quiet prints only fatal errors: the line printed when a command fails and exits non-zero (quak: MESSAGE, "Not logged in", an invalid ID, a collection that does not exist). A file that fails inside backup is not fatal; it is still recorded in failures.json and in the exit code.
-q with -v is refused with a one-line usage error.
Both are options of the program, so they work before or after any command name, as --cache-dir does. Counting repeats uses commander's documented way of counting a repeated option.
Every log line goes to stderr; stdout carries only a command's output. --json shapes stdout only, so the refresh progress lines that #214 added are info lines for every command that waits on a refresh, backup and --json runs included (today backup and --json runs are silent through a long first refresh).
New file src/cli-log.ts: the CLI's log level and the one function the commands write stderr lines through. No logging library is added for this. The library's layers keep reporting through their existing callbacks (onProgress), and the CLI logs what they report.
README "CLI surface" and --help.
Tests: each level (default, -v, -vv, -vvv), --verbose --verbose, -q on a failing and a working command, -q -v, and refresh progress on stderr from backup and from files --json.
Model: opus-5-5
Plan. Starts after https://git.eeqj.de/sneak/quak/issues/211 is on `next`, since all three change `bin/quak.ts` and the commands' stderr lines.
- Levels, from quietest: fatal, error, warning, info, debug, trace. The default is info: everything quak prints on stderr today, the progress lines included. `-v` gives debug, `-vv` trace; more repeats stay at trace. `--verbose --verbose` counts the same as `-vv`. Debug and trace each log something real (for example each server request with its result, and each retry), chosen by the worker and listed in the README.
- `-q` / `--quiet` prints only fatal errors: the line printed when a command fails and exits non-zero (`quak: MESSAGE`, "Not logged in", an invalid ID, a collection that does not exist). A file that fails inside `backup` is not fatal; it is still recorded in `failures.json` and in the exit code.
- `-q` with `-v` is refused with a one-line usage error.
- Both are options of the program, so they work before or after any command name, as `--cache-dir` does. Counting repeats uses commander's documented way of counting a repeated option.
- Every log line goes to stderr; stdout carries only a command's output. `--json` shapes stdout only, so the refresh progress lines that https://git.eeqj.de/sneak/quak/pulls/214 added are info lines for every command that waits on a refresh, `backup` and `--json` runs included (today `backup` and `--json` runs are silent through a long first refresh).
- New file `src/cli-log.ts`: the CLI's log level and the one function the commands write stderr lines through. No logging library is added for this. The library's layers keep reporting through their existing callbacks (`onProgress`), and the CLI logs what they report.
- README "CLI surface" and `--help`.
- Tests: each level (default, `-v`, `-vv`, `-vvv`), `--verbose --verbose`, `-q` on a failing and a working command, `-q -v`, and refresh progress on stderr from `backup` and from `files --json`.
Model: opus-5-5
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
sneak (#187 (comment)): a
-v/--verboseoption raises the log level, one level per repeat (-vv,-vvv,--verbose --verbose); logging goes to stderr.-q/--quietprints nothing to stderr except fatal errors.Done when: both options exist on every command as described, logs go only to stderr, the README and
--helpsay so, and tests cover each level and--quiet.Model: opus-5-5
Plan. Starts after #211 is on
next, since all three changebin/quak.tsand the commands' stderr lines.-vgives debug,-vvtrace; more repeats stay at trace.--verbose --verbosecounts the same as-vv. Debug and trace each log something real (for example each server request with its result, and each retry), chosen by the worker and listed in the README.-q/--quietprints only fatal errors: the line printed when a command fails and exits non-zero (quak: MESSAGE, "Not logged in", an invalid ID, a collection that does not exist). A file that fails insidebackupis not fatal; it is still recorded infailures.jsonand in the exit code.-qwith-vis refused with a one-line usage error.--cache-dirdoes. Counting repeats uses commander's documented way of counting a repeated option.--jsonshapes stdout only, so the refresh progress lines that #214 added are info lines for every command that waits on a refresh,backupand--jsonruns included (todaybackupand--jsonruns are silent through a long first refresh).src/cli-log.ts: the CLI's log level and the one function the commands write stderr lines through. No logging library is added for this. The library's layers keep reporting through their existing callbacks (onProgress), and the CLI logs what they report.--help.-v,-vv,-vvv),--verbose --verbose,-qon a failing and a working command,-q -v, and refresh progress on stderr frombackupand fromfiles --json.Model: opus-5-5