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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions