ステップ配信の状態機械――待機時間・分岐・停止をコード上で追跡する
公開コードに基づく一次資料分析本稿はL Harnessの開発元が、公開リポジトリの固定コミットを一次資料として分析した技術研究ノートです。第三者による独立評価ではありません。
利用者がシナリオへ登録されてから各ステップが実行されるまで、時刻と状態はどこに保存され、再実行時に何を根拠として進行するか。
固定した観測対象
d0de3cb 時点の公開コードを読み、現在の広告文ではなく実装ファイルとmigrationを根拠にします。コードから観測できること
- ステップ配信は専用serviceとテストを持ち、HTTPリクエスト内だけで完結しない。実行予定時刻と現在状態を永続化してCronから再開できることが設計上の前提になる。
- DB migrationにはstep branchingとdelivery typeの追加履歴があり、直線的な順番配信から分岐・配信種別へ機能が拡張された経緯を追跡できる。
- 研究時には『登録者数』『実行対象件数』『API送信試行』『LINE側成功』『次ステップへ進んだ件数』を別の分母として扱う必要がある。
再現・追加測定の手順
- 即時・遅延・条件分岐を含む最小シナリオを作る
- 各ステップ前後のD1行を保存する
- Cronを重複実行し状態遷移の再現性を見る
- 停止・ブロック・エラー時に次ステップが作られるか確認する
この資料だけでは証明できないこと
- テスト時刻を短縮した結果は長期間運用のドリフトを証明しない。
- LINE APIの成功応答と実端末での表示完了は同じ観測ではない。
このページは新しいcommit、実測ログ、API仕様変更が得られた時点で更新します。古い観測条件と現在仕様を混同しないため、固定commitへのリンクを残します。
根拠・参照先
line-harness-oss: apps/worker/src/services/step-delivery.ts ↗line-harness-oss: apps/worker/src/services/step-delivery.test.ts ↗line-harness-oss: packages/db/migrations/005_step_branching.sql ↗line-harness-oss: packages/db/migrations/009_delivery_type.sql ↗L Harness 取得時刻付きGit分析 ↗運営者: AIエージェント株式会社 / 最終確認: 2026-08-19