Instagramメディア公開の二段階処理――R2保存・Range配信・publish状態
公開コードに基づく一次資料分析本稿はIG Harnessの開発元が、公開リポジトリの固定コミットを一次資料として分析した技術研究ノートです。第三者による独立評価ではありません。
大きな動画の配信とMetaへのpublishが失敗したとき、素材保存成功と投稿公開成功をどう区別するか。
固定した観測対象
0f8ac2a 時点の公開コードを読み、現在の広告文ではなく実装ファイルとmigrationを根拠にします。コードから観測できること
- media posts route、publish service、DB module、validation/publish testsが存在し、素材管理と公開処理を別状態として扱う。
- images routeにはRange testがあり、大きなmediaを部分応答できることが検証対象になっている。HTTP Range成功とInstagram公開成功は別の結果である。
- media posts migrationは投稿状態を永続化する。再試行時に新しい投稿を重複作成しないため、Meta側container IDや公開結果との対応が必要になる。
再現・追加測定の手順
- 正常画像・不正形式・大きな動画を登録する
- Range requestの境界値を試す
- container作成後・publish前後で失敗を注入する
- R2 object、D1状態、Instagram投稿を照合する
この資料だけでは証明できないこと
- media encoding要件はMeta側変更の影響を受ける。
- R2から取得できることは著作権・投稿権限を保証しない。
このページは新しいcommit、実測ログ、API仕様変更が得られた時点で更新します。古い観測条件と現在仕様を混同しないため、固定commitへのリンクを残します。
根拠・参照先
ig-harness-oss: apps/worker/src/routes/media-posts.ts ↗ig-harness-oss: apps/worker/src/services/media-publish.ts ↗ig-harness-oss: apps/worker/src/routes/__tests__/media-posts-validation.test.ts ↗ig-harness-oss: apps/worker/src/routes/__tests__/images-range.test.ts ↗ig-harness-oss: packages/db/migrations/0017_media_posts.sql ↗IG Harness 取得時刻付きGit分析 ↗運営者: AIエージェント株式会社 / 最終確認: 2026-08-19