d3ro-voice/scripts/ci
Yun Chan 49a4c97923 fix(release): refuse to re-publish a version that already shipped
The feed publisher overwrote whatever version-specific assets it found, so a
re-run of an old release tag could quietly replace the installer that
customers already downloaded under that version number.

Publication now compares the bytes already in the version-specific registry
path and stops when they differ, while still allowing an identical re-run to
finish. The metadata verifier gained a negative case so the guard cannot be
removed unnoticed.
2026-09-16 23:49:37 +09:00
..
audit-nas-stt-config.ps1 feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
bootstrap-linux-toolchain.sh ci: bootstrap Linux release toolchains 2026-08-29 19:19:19 +09:00
build-all.mjs feat: complete release preparation, 10+ ad mediation, CI/CD, and docker deployment 2026-08-20 11:12:05 +09:00
build-mobile-local-e2e.ps1 feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
check-design-tokens.mjs feat(release): publish desktop updates from a tag through one feed 2026-09-16 23:23:00 +09:00
check-no-hardcoded-secrets.mjs feat(release): publish desktop updates from a tag through one feed 2026-09-16 23:23:00 +09:00
create-desktop-license-keypair.mjs feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
create-mobile-release-evidence.mjs feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
create-release-evidence-key.mjs feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
create-release-tag.mjs feat(release): publish desktop updates from a tag through one feed 2026-09-16 23:23:00 +09:00
extract-release-notes.mjs feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
generate-checksums.mjs feat: complete release preparation, 10+ ad mediation, CI/CD, and docker deployment 2026-08-20 11:12:05 +09:00
mobile-release-evidence-lib.mjs feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
prepare-mobile-release-publication.mjs feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
prepare-whisper-model.mjs feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
publish-forgejo-release.mjs fix(release): refuse to re-publish a version that already shipped 2026-09-16 23:49:37 +09:00
publish-gitlab-release.mjs feat(release): publish desktop updates from a tag through one feed 2026-09-16 23:23:00 +09:00
push-to-chanpaca-git.mjs feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
run-mobile-csprng-instrumentation.sh feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
run-mobile-emulator-gate.sh feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
run-mobile-incoming-share-local-e2e.ps1 feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
sync-and-publish-forgejo-release.mjs feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
sync-version.mjs feat(release): publish desktop updates from a tag through one feed 2026-09-16 23:23:00 +09:00
upload-asset-to-forgejo-release.mjs feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
verify-android-app-links.mjs feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
verify-android-artifact.mjs feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
verify-mobile-build-config.mjs feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
verify-mobile-release-boundary.mjs ci: allow protected mobile candidate 2026-08-30 09:20:49 +09:00
verify-mobile-release-config.mjs feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
verify-play-store-assets.mjs feat(play): finalize store graphics and copy 2026-08-29 20:11:54 +09:00
verify-release-evidence-key-pair.mjs feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
verify-release-metadata.mjs fix(release): refuse to re-publish a version that already shipped 2026-09-16 23:49:37 +09:00
verify-windows-android-upload-key.ps1 feat(release): prepare 1.1.0 candidate 2026-08-29 18:33:45 +09:00
verify-windows-release-artifact.ps1 ci(release): require trusted Windows signing 2026-08-29 18:49:08 +09:00