Files
awesome-copilot/eng/lib/external-plugin-source-ref-sha.mjs
github-actions[bot] 2f7304691c chore: publish from main
2026-07-29 05:28:54 +00:00

32 lines
851 B
JavaScript

export function normalizeCommitSha(value) {
if (typeof value !== "string") {
return undefined;
}
const normalized = value.trim().toLowerCase();
return /^[0-9a-f]{40}$/.test(normalized) ? normalized : undefined;
}
export function evaluateRefShaConsistency({ ref, sha, resolvedRefCommitSha }) {
const normalizedSha = normalizeCommitSha(sha);
const normalizedRefCommitSha = normalizeCommitSha(resolvedRefCommitSha);
if (!normalizedSha || !normalizedRefCommitSha) {
return {
comparable: false,
matches: true,
normalizedSha,
normalizedRefCommitSha,
};
}
return {
comparable: true,
matches: normalizedSha === normalizedRefCommitSha,
normalizedSha,
normalizedRefCommitSha,
ref: typeof ref === "string" ? ref.trim() : "",
sha: typeof sha === "string" ? sha.trim() : "",
};
}