Skip to content

validate: cited-source — add --strict on rivet check sources, promotable cited-source-stale severity, --list for migrate recipes #249

@avrabe

Description

@avrabe

Summary

12-persona dogfood (DevOps persona) building CI gate templates around the new 0.7.0 cited-source + schema-migrate features found three CLI asymmetries that hurt platform-engineering workflows.

B7 — rivet check sources has no --strict

rivet validate --strict-cited-sources exists. Symmetrically, rivet check sources --strict should exist — for an audit-mode workflow that wants to fail (not just print) when any cited-source is stale or has a missing hash.

Today the workflow has to:

rivet check sources --update --apply && git diff --exit-code

…which doubles as audit-and-mutation. A pure read-only --strict would be cleaner.

B8 — cited-source-stale Info severity not promotable

The cited-source schema doc says last-checked staleness emits Severity::Info. There's no flag to promote that to error — so a CI gate that wants "every cited-source must be re-checked within N days" can't be built from 0.7.0's flags alone. Need either:

  • --strict-cited-source-stale flag promoting Info to Error
  • Per-schema configurable threshold (e.g. cited-source-stale-after: 30d) in rivet.yaml

B9 — No rivet schema migrate --list for recipe discovery

A weekly schema-drift CI cron wants to know which migration recipes are available, programmatically, so it can iterate. Today only dev-to-aspice ships, but the cron would need to discover this dynamically (not hard-code).

Add rivet schema migrate --list printing the available recipes (name, source preset, target preset, description).

Trigger

Post-0.7.0 DevOps persona dogfood. The platform engineer was building GitHub Actions workflow templates and hit each of these three asymmetries.

Acceptance

  • rivet check sources --strict flag added (read-only audit, exits 1 if any drift)
  • --strict-cited-source-stale flag (promotes stale Info to Error)
  • rivet schema migrate --list (json + text output)
  • Tests for each
  • Docs (schema-cited-sources, schema-migrate topics) updated

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions