Skip to content

BuildScript declares every file it writes as rainix-codegen owns <path> #329

Closed

Description

@thedavidmeister

rainix's codegen-declaration action, run inside rainix-copy-artifacts, fails a generated path that was declared but not written. That is the half of the currency check a diff cannot do: a generator that stops emitting a file leaves the committed copy alone, so nothing differs (rainlanguage/rain.factory.deploy#35). It only sees paths a generator declares on stdout as rainix-codegen owns <path>, and nothing here declares any, so the check is a no-op for every rain.deploy consumer.

Ask

BuildScript and the LibRainDeploySnapshot writers print rainix-codegen owns <path> for each file they own and write on a run(): the rolling candidate snapshots, the alias and released-suites libs, the aggregate, and the staged config. Frozen src/generated/<tag>/ records are deliberately not rewritten, so they are not declared.

Refs rainlanguage/rain.factory.deploy#35

🤖 Generated with Claude Code

Activity

  1. thedavidmeister commented on Oct 21, 2026

    @thedavidmeister
    ContributorAuthor

    Already done by #327, which merged before this was filed: BuildScript.run() declares every generated path it writes. Verified on main (878058b): codegen-declaration reports 11 paths declared, and each was written. Consumers get it once a sol-v* release that contains #327 is cut and they bump their pin.

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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions