mirror of
https://github.com/langgenius/dify.git
synced 2026-07-15 01:17:04 +08:00
Centralize release naming (tag, asset filenames, checksum file, target list, arch/os tokens) so producers derive from one source instead of duplicating literals across build, checksum, and workflow files. - cli/package.json: add difyctl.release block (tagPrefix, binName, checksumsSuffix, targets[id/bunTarget/exe]) as the naming data source. - cli/scripts/release-naming.mjs: new format source + validator; subcommands tag/asset/checksums/tag-prefix/targets/validate. - release-build.sh, release-write-checksums.sh: derive target list and asset names from release-naming.mjs; drop hardcoded maps and literals. - release-validate-manifest.sh: run release-naming.mjs validate, rejecting a malformed difyctl.release before any build derives from it. - cli-release.yml: emit tagPrefix from the manifest step; tag guard, idempotency check, tag_name, and files glob all derive from it. - install-cli.sh, install.ps1: standalone installers stay hardcoded by convention; add a comment pointing at the source.