Skip to content

docs(release): sync the fdroiddata recipe snapshot to v1.2.28 - #410

Merged
yuga-hashimoto merged 1 commit into
mainfrom
docs/sync-release-md-recipe-1.2.28
Oct 29, 2026
Merged

yuga-hashimoto merged 1 commit into
mainfrom
docs/sync-release-md-recipe-1.2.28

Conversation

@yuga-hashimoto

Copy link
Copy Markdown
Owner

Summary

Sync the fdroiddata recipe snapshot in docs/RELEASE.md to the branch of MR !48005 after v1.2.28 (same follow-up as #367 did for v1.2.27).

  • versionName 1.2.28 / versionCode 67 / commit 4a662c4a9b69f7c876bb32193c101c70536f0d25 (the v1.2.28 release commit), CurrentVersion 1.2.28 / 67.
  • NonFreeNet reason now also names the Codex binary download from registry.npmjs.org and the ChatGPT/OpenAI sign-in, as the F-Droid reviewer asked.
  • The yaml block is byte-identical to the recipe on the fork branch (soccer.hy620/fdroiddata, commit 190a8c916).

Docs only: one file, no code or resource changes.

Verification

  • Fork pipeline 3002971116 for that recipe: all jobs green (rewritemeta, lint, schema, checkupdates, check apk, fdroid build). fdroid build compared the built binary to the published and-code-v1.2.28-fdroid-release.apk and it matched; the APK's signer is the allowed key.
  • git rev-parse v1.2.28^{commit} equals the recipe's commit; versionCode = 67 / versionName = "1.2.28" at that commit.
  • ./gradlew detekt spotlessCheck not run: spotless targets only *.kt / *.gradle.kts, and this change touches neither.

Review notes

The repo-reviewer agent type does not exist in this Claude Code environment, so the review below was run by a general-purpose subagent instructed to follow .opencode/agents/repo-reviewer.md exactly (read-only, same output format). It returned APPROVE with no blockers and no suggestions to apply. Its one caveat (it could not see the fork CI result, being offline) is covered by the Verification section above.

Pre-PR review

判定: APPROVE

ブロッカー

なし

提案(非ブロッキング)

  • なし。補足として、NonFreeNet の文は「...APIs, including ChatGPT/OpenAI sign-in for Codex, and the app downloads ... , calls ... and uses ...」と読点で長く連なり、英文としてやや読みにくい。ただし fork の CI 通過済みレシピと逐語一致させることが目的なので、ここで直すとスナップショットが fork とずれる。直すなら fdroiddata の MR 側(fork)で直し、その後に docs へ反映する順序になる。今回は変更不要。

チェック済み項目

  • 差分の範囲: git fetch origin main --tags 後に git diff origin/main...HEAD を確認した。変更は docs/RELEASE.md の1ファイルのみ(+9/-8)。ブランチは origin/main(5a1c7551)の直上の1コミット(0812df23)で、merge-base も origin/main と一致する。
  • yaml ブロックの逐語一致: docs/RELEASE.md の ```yaml ブロック(59行)を awk で抽出し、fork の fdroiddata-fork/metadata/com.yugahashimoto.andcode.yml と `diff` / `cmp` で比較した。差分なしで完全一致(末尾改行や `Binaries: ` の行末空白も含む)。fork の HEAD は `190a8c916 AndCode: update to v1.2.28 and cover Codex in the NonFreeNet reason` で、作業ツリーは clean。
    • 未検証: fork 側の CI(fdroid rewritemeta、lint、reproducible-build 比較)の実行結果そのもの。このレビューはネットワーク/gh を使わない read-only 制約のため、確認できていない。レシピが fork の HEAD と一致することだけを確認した。
  • バージョン整合: .release-version は v1.2.28。git show 4a662c4a:app/build.gradle.kts は versionCode = 67、versionName = "1.2.28"。git rev-parse v1.2.28^{commit} は 4a662c4a9b69f7c876bb32193c101c70536f0d25 で、レシピの commit と一致する。このコミットは origin/main の祖先(PR chore(release): v1.2.28 #407 chore/release-1.2.28 のマージコミット)。Builds: の versionName/versionCode/commit と CurrentVersion: 1.2.28 / CurrentVersionCode: 67 もすべて一致する。
  • 古い参照の残り: リポジトリ全体(.git/build/node_modules 除く)を grep した。1.2.27、v1.2.27、db8ed2e8、versionCode: 66 / CurrentVersionCode: 66 はいずれも0件。
  • 周辺の説明文: docs/RELEASE.md 130行の「snapshot ... (v1.2.28)」は更新済み。レシピ下の説明(rewritemeta の順序、AllowedAPKSigningKeys、Binaries: の -fdroid-release.apk)は今回の変更に影響されず、引き続き正しい。NonFreeNet の文言や旧バージョンに触れる記述は他にない。release.yml のコメントにある ndk: r29 もレシピと一致する。THIRD_PARTY_NOTICES.md などの他ドキュメントにレシピのスナップショット値は含まれない。
  • NonFreeNet の記述がコードと合うか(リリースタグ v1.2.28 時点と HEAD の両方で確認):
    • Codex バイナリは registry.npmjs.org から取得される。CodexReleaseClient.OFFICIAL_REGISTRY = "https://registry.npmjs.org/" で @openai/codex のメタデータを引き、dist.tarball を CodexInstaller.install が downloadTo でダウンロードして SHA-512 integrity を検証する。呼び出し元は CodexRuntime.kt:126 と LocalRuntimeInstaller.kt:189。
    • Codex 用の ChatGPT/OpenAI サインインも実在する。CodexRuntime.startChatgptLogin() が account/login/start を type: chatgpt で呼び、CodexTarget がそれを使う。CodexKeepAliveService のコメントに auth.openai.com とのトークン交換への言及がある。
    • app/src/fdroid* や app/src/github* の flavor ソースセットに Codex 関連のコードはない。Codex の導線は main 共通なので、fdroid ビルドにも含まれる。AntiFeature として申告するのは妥当。
    • 既存の主張も引き続きコードに存在する: Claude Code は downloads.claude.ai、Antigravity は accounts.google.com の OAuth。
  • i18n、Kotlin、テスト、秘密情報: Kotlin/リソース/設定の変更がないため対象外。docs のみの変更で、シークレットの追加もない。コミットメッセージ docs(release): ... はリポジトリの形式に合っている。

The MR branch now pins v1.2.28 (versionCode 67, commit 4a662c4) and the
NonFreeNet reason also names the Codex binary download and the ChatGPT/OpenAI
sign-in. The snapshot is byte-identical to the recipe that passed the fork
pipeline, including the reproducible-build comparison against the published
-fdroid-release.apk.
@yuga-hashimoto
yuga-hashimoto merged commit f0c0806 into main Oct 29, 2026
4 checks passed
@yuga-hashimoto
yuga-hashimoto deleted the docs/sync-release-md-recipe-1.2.28 branch October 29, 2026 14:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant