源码快照 @ 2026-09-01 (source-only, 剔除非源码素材)
Publish Claude Code Binaries / Stage and publish binaries (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-arm64 (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build linux-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build windows-amd64 (push) Canceled after 0s
Sync Tutti Agent Skills / sync (push) Canceled after 0s
Windows Agent Adapters / Test Windows agent adapters (push) Canceled after 0s
Windows Daemon Adapters / Test Windows daemon adapters (push) Canceled after 0s
Publish Tutti App Runtime / Publish runtime catalog (push) Canceled after 0s
Publish Claude Code Binaries / Stage and publish binaries (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-arm64 (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build linux-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build windows-amd64 (push) Canceled after 0s
Sync Tutti Agent Skills / sync (push) Canceled after 0s
Windows Agent Adapters / Test Windows agent adapters (push) Canceled after 0s
Windows Daemon Adapters / Test Windows daemon adapters (push) Canceled after 0s
Publish Tutti App Runtime / Publish runtime catalog (push) Canceled after 0s
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
const stablePackageReleaseTagPrefix = "packages-v";
|
||||
const stablePackageReleaseVersionPattern = /^0\.0\.(?<patch>\d+)$/;
|
||||
|
||||
export function computeNextStablePackageReleaseVersion(tagNames) {
|
||||
const stableVersions = [];
|
||||
const invalidTags = [];
|
||||
|
||||
for (const tagName of tagNames) {
|
||||
if (!tagName.startsWith(stablePackageReleaseTagPrefix)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
const version = parseStablePackageReleaseTag(tagName);
|
||||
if (!version) {
|
||||
invalidTags.push(tagName);
|
||||
continue;
|
||||
}
|
||||
|
||||
stableVersions.push(version);
|
||||
}
|
||||
|
||||
if (invalidTags.length > 0) {
|
||||
throw new Error(
|
||||
`Unsupported package release tags: ${invalidTags.join(", ")}`
|
||||
);
|
||||
}
|
||||
|
||||
if (stableVersions.length === 0) {
|
||||
return "0.0.1";
|
||||
}
|
||||
|
||||
const nextPatch =
|
||||
Math.max(...stableVersions.map((version) => version.patch)) + 1;
|
||||
return `0.0.${nextPatch}`;
|
||||
}
|
||||
|
||||
export function formatStablePackageReleaseTag(version) {
|
||||
if (!parseStablePackageReleaseVersion(version)) {
|
||||
throw new Error(`Unsupported package release version: ${version}`);
|
||||
}
|
||||
|
||||
return `${stablePackageReleaseTagPrefix}${version}`;
|
||||
}
|
||||
|
||||
export function parseStablePackageReleaseTag(tagName) {
|
||||
if (!tagName.startsWith(stablePackageReleaseTagPrefix)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return parseStablePackageReleaseVersion(
|
||||
tagName.slice(stablePackageReleaseTagPrefix.length)
|
||||
);
|
||||
}
|
||||
|
||||
export function parseStablePackageReleaseVersion(version) {
|
||||
const match = stablePackageReleaseVersionPattern.exec(version);
|
||||
|
||||
if (!match?.groups) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return {
|
||||
patch: Number(match.groups.patch),
|
||||
version
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user