Skip to content

Support one rule writing several targets #45

Description

@Mearman

A rule has one from and one to. The text here said a value meant for several places needs several rules today; that was wrong, because validateCrosswalk rejects two rules reading the same from path, so one value could not be written to two places at all.

Decision: implement a two-way copy rule, { op: "copy", from: "items[].id", to: ["nodes[].id", "labels[].text"] }, with at least two to paths (one is a move). Encode writes the value at every to; decode reads every copy, requires them to be deeply equal and writes that value back, throwing when the copies disagree or no longer pair up element by element, since copies edited apart have no single preimage. Every to path counts towards path uniqueness and has the same wildcard count as from.

Implemented in #54.

Activity

  1. added
    enhancementNew feature or request
    deferredDeliberately not built yet, with a trigger for revisiting
    on Oct 20, 2026
  2. added theissue type on Oct 20, 2026
  3. github-actions commented on Oct 21, 2026

    @github-actions

    🎉 This issue has been resolved in version 0.6.0 🎉

    The release is available on:

    Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    deferredDeliberately not built yet, with a trigger for revisitingenhancementNew feature or requestreleased

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions