Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

fix(validate): plain-text output has no leading pass/fail summary line

オープン
#116 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
68/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
活発
技術スタック
rust
領域
cli

調査の方向性

syscribe validate コマンドのデフォルトのテキスト出力パスから始め、クリーンなケース、警告のみのケース、ゲートされた検証ケースを実行します。--json や終了コードの動作を変更せずに先頭のサマリーを追加します。サマリーが常に最初に表示され、実効的な成功/失敗の状態を反映すれば完了です。

索引モデルが issue の本文から書いたものです。

説明

enhancement

Summary

syscribe validate's default (non---json) text output has no leading pass/fail summary line. A clean run prints nothing; a warnings-only run jumps straight into Warnings (N): with no corresponding Errors (0) header ever printed. Answering "did this pass" from the plain-text mode means either noticing the absence of an Errors section (a fragile negative inference) or switching to --json and inspecting severities programmatically.

Motivation

Running syscribe validate after a batch of spec edits, the actual output was:

Warnings (51):

| Code | File | Message |
...

with no errors section at all — meaning it passed (0 errors), but the only way to confirm that from the text output was grep -c "^| E" for an empty result, since there's no explicit "0 errors" anywhere to read. --json solves this cleanly (structured severities), but the plain-text/human-facing mode — which is also what an LLM agent reads by default unless it specifically remembers to pass --json — leaves "did it pass" as an inference rather than a stated fact.

Proposed fix

Print a one-line summary banner at the very top of the default text output, always, regardless of whether there are findings:

0 errors, 51 warnings

or, when gated:

0 errors, 51 warnings (3 gated by --deny W308) — FAIL

Doesn't change --json's shape (already fine) or the exit-code contract — purely a legibility addition to the human/agent-default text path so "did this pass" is answerable by reading the first line, not by the absence of a section.

Acceptance criteria

  • A 0-error, 0-warning run prints an explicit 0 errors, 0 warnings line (not silence)
  • A warnings-only run's summary line appears before the Warnings (N): table, not after
  • The summary reflects gating flags (--deny/--max-warnings/--warnings-as-errors/--profile) when they change the effective pass/fail verdict
  • --json output is unchanged
主要言語
Rust
スター
7
フォーク
1
平均マージ
1時間 25分
マージ済み PR(30日)
27

環境構築

このプロジェクトの環境構築ファイルはまだ確認していません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

sjames/syscribe のほかの issue

sjames/syscribe の issue をすべて見る

似ている issue

Rust の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。