A hook used to see only its own package. In a monorepo that made batch-aware automation awkward: a postBump on one package had no idea what else was being released alongside it.

Every hook now also gets allPackages: the full list of packages the run is bumping, each with its resolved new version and bump type. It's the same snapshot for every package's hook and for the batch-level onSuccess / onError, computed once after versions are settled, so even the first package's hook already sees the whole release.

Shell hooks read FERRFLOW_ALL_PACKAGES_JSON; JS/TS function hooks get ctx.allPackages as a real array:

export default {
  workspace: {
    hooks: {
      postBump(ctx) {
        const summary = ctx.allPackages
          .map((p) => `${p.name}@${p.version} (${p.bump})`)
          .join(', ');
        console.log(`Releasing: ${summary}`);
      },
    },
  },
};

For a single-package repo it's just the one entry.