When a document is created I don't see today an easy way that a human or ai agent can check if this can be seen by rivet
I see rivet serve is called and checked by looking at the website
Acceptance / kill-criterion (pinned for the issue-fixing routine)
Fixed when rivet check docs (a new dedicated subcommand) enumerates every candidate path the doc scanner considered and tags each loaded / skipped (<reason>) / excluded (allowlist), supports --format json for mechanical assertions, and exits non-zero under --strict when any candidate is skipped.
Verified on gale's three live skip cases — docs/mcuboot-coverage-analysis.md (no frontmatter), docs/release-plan.md (missing field id), docs/wasm-module-distribution.md (no frontmatter): each must appear in the JSON with its correct reason, and --strict must exit non-zero until those three are either given valid frontmatter or excluded via docs[].exclude.
Scope (single slice, not narrowed): one PR delivering enumerate + per-path reason + --format json + --strict. Rationale: --strict is the part that makes it a CI-gateable oracle (the actual ask — "a check"), and it's trivial once the enumeration exists. A dedicated subcommand (not folding into rivet validate's warning stream) so the status is queryable without a full validation pass and mirrors the existing rivet docs check --coverage --strict oracle pattern.
When a document is created I don't see today an easy way that a human or ai agent can check if this can be seen by rivet
I see rivet serve is called and checked by looking at the website
Acceptance / kill-criterion (pinned for the issue-fixing routine)
Fixed when
rivet check docs(a new dedicated subcommand) enumerates every candidate path the doc scanner considered and tags eachloaded/skipped (<reason>)/excluded (allowlist), supports--format jsonfor mechanical assertions, and exits non-zero under--strictwhen any candidate is skipped.Verified on gale's three live skip cases —
docs/mcuboot-coverage-analysis.md(no frontmatter),docs/release-plan.md(missing fieldid),docs/wasm-module-distribution.md(no frontmatter): each must appear in the JSON with its correct reason, and--strictmust exit non-zero until those three are either given valid frontmatter or excluded viadocs[].exclude.Scope (single slice, not narrowed): one PR delivering enumerate + per-path reason +
--format json+--strict. Rationale:--strictis the part that makes it a CI-gateable oracle (the actual ask — "a check"), and it's trivial once the enumeration exists. A dedicated subcommand (not folding intorivet validate's warning stream) so the status is queryable without a full validation pass and mirrors the existingrivet docs check --coverage --strictoracle pattern.