Skip to content

FDR-0014 recognizer: accept cutting-garden's underscore receipt prefix before its first underscore protocol receipt lands #279

@sfriedenberg-etsy

Description

@sfriedenberg-etsy

Heads-up / forward-looking — nothing is broken today, but a coordination point is coming.

Background

cutting-garden's RFC 0002 protocol receipts currently carry the hyphen prefix cutting_garden-capture-receipt-<kind>-v1 (e.g. cutting_garden-capture-receipt-git-v1), while its flat per-store-group receipts carry the underscore prefix cutting_garden-capture_receipt-fs-v1. dodder's FDR-0014 capture-protocol-ingestion recognizer keys on cutting-garden's receipt prefix.

cutting-garden has decided (amarbel-llc/cutting-garden#112) to converge on the underscore prefix going forward — the underscore binds tighter than the hyphen, so the canonical grammar is cutting_garden / capture_receipt / <family> / v<N>.

What changes, and when

  • Nothing on disk changes now. Existing hyphen-form protocol receipts are frozen and stay readable as-is.
  • The convergence is applied forward, at version bumps:
    • New protocol families debut on the underscore prefix at v1 — the first is caldav: cutting_garden-capture_receipt-caldav-v1.
    • Existing protocol families (git, web) adopt underscore at their next version bump (v2).

The ask

Before cutting-garden's first underscore protocol receipt lands (caldav-v1, tracked in cutting-garden/docs/plans/2026-06-18-caldav-protocol-migration.md, Phase 0), confirm/update the FDR-0014 recognizer to accept both:

  • cutting_garden-capture-receipt-<kind>-vN (hyphen — existing git/web receipts, frozen)
  • cutting_garden-capture_receipt-<kind>-vN (underscore — new families + future bumps), while still distinguishing the flat cutting_garden-capture_receipt-fs-v1 if dodder relies on that distinction.

No deadline pressure yet — caldav-v1 is still at the planning stage. This is a heads-up so the recognizer change can be sequenced before the wire change, not after.

Cross-references


Filed by Clown 0.3.12+e27f901 (commit)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    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