Class CascadeReporter

java.lang.Object
network.ike.workspace.cascade.CascadeReporter

public final class CascadeReporter extends Object
Formats the cascade-awareness messages that ike:release-draft and ike:release-publish print (IKE-Network/ike-issues#402, #420).

In the decentralized cascade model every project version-controls its own src/main/cascade/release-cascade.yaml, so the releasing repo's own ProjectCascade is all the reporter needs — no graph assembly, no sibling checkouts. The downstream edges of that file are exactly the foundation repos a release makes stale.

This reporter does not inspect git history: after a foundation repo is released, every downstream repo is definitionally stale. The point is visibility — the operator cannot finish a single-repo release without seeing what the cascade says comes next.

  • Method Details

    • publishFooter

      public static List<String> publishFooter(ProjectCascade local, String repo)
      Builds the post-release cascade footer for ike:release-publish.
      Parameters:
      local - the releasing project's own parsed manifest
      repo - the releasing project's repo/directory name
      Returns:
      log lines naming the now-stale downstream repos and the exact commands to continue the cascade
    • draftPreview

      public static List<String> draftPreview(ProjectCascade local, String repo)
      Builds the cascade preview section for ike:release-draft.
      Parameters:
      local - the project's own parsed manifest
      repo - the project's repo/directory name
      Returns:
      log lines naming the downstream repos this release will make stale; an end-of-cascade advisory when nothing is downstream