| name | 10-advance-timeline |
| description | 質問・行動の処理と開示レビュー後に、現在タイムラインを次イベントへ進め、必要な能動通知だけを送るskill。 |
タイムライン進行
このskillはステップ10で使います。制御とIPC送信を担当します。
言語
会話用プロセスへ送る通知文は必ず日本語で書きます。
入力
- 最新の
.ai/runs/<run-id>/TIMELINE-<N>.tsv
- 最新のレビュー済み回答集(
.ai/runs/<run-id>/REVIEWED-ANSWERS-<N>.tsv)
.ai/runs/<run-id>/timeline_cursor.json
.ai/runs/<run-id>/situation.tsv(training_mode / primary_department。個別訓練でNPCの動きを自部門への対応要請に変換するために読む)
- IPC の socket(既定パスを 3 ツールで共有。別パスにするときだけ
TTX_SOCKET か --socket)
./ref 配下の仕様・設計文書
./ops 配下の障害対応手順書・監視手順・Runbook
ref / ops の参照
対応者からの質問に答えるために必要な場合、./ref と ./ops を参照してよいです。ただし参照は開示可否の判断に限り、能動通知で送るのは次イベント時点で開示可能な観測事実・発生事象だけです。次に確認すべき手順・監視項目・調査方法といった"手がかり"は含めません(対応者自身に調べさせます)。
出力
.ai/runs/<run-id>/timeline_cursor.json のカーソル更新
- 必要な場合だけ
type: "notification" のIPCメッセージ
- 公開ログと内部ログの記録
手順
timeline_cursor.json のカーソル状態が finished なら、タイムラインを進めず、通知も送らず、このステップを終える。
- 最新の現在タイムラインを読む。
- 現在カーソルの次にある時系列イベントを特定する。
- 次イベントがなければ、カーソル状態を
finished にする。
- 能動送信するかどうかは訓練モードで分岐する。
- 全体訓練(既定。
situation.tsv の training_mode=whole または列なし): 次イベントが能動通知イベント(イベント 列が 能動通知: で始まる行=対応者が動かなくても外部から届く連絡・問い合わせ・監視アラート)なら、そのイベントの 開示可能情報(観測された事実・発生事象)だけを ttx-ai-send --socket <path> --type notification で送る。理想アクション:(対応者が取るべき調査・対応)や 状況変化:(隠れた状態変化)は能動通知ではないので能動送信しない(手順5でカーソルだけ進める)。それらの 開示可能情報 は、現在/過去になったことで .ai/agents/07-handle-question-or-action.md が対応者から質問されたときに現在/過去の観測事実として開示できるが、先回りで能動送信してはいけない(理想アクションの調査結果を push すると、次にやることを教えてしまうため)。
- 個別訓練(
training_mode=individual): 能動通知ゲートは適用せず、行種別(能動通知: / 理想アクション: / 状況変化:)に関わらず、次イベント行の末尾 想定対応部署 列に自部門(primary_department)が含まれるかで判定する。自部門が含まれる行なら、その対応は自部門に関わる(NPC 初動の結果として自部門へ要請が来る場合を含む)ので、観測可能な事実を「自部門への対応要請」または通知に整形して送る(観測事実だけ。示唆表現は除く)。ただし能動送信してよいのは NPC(他部門)由来で自部門に観測される事実・対応要請に限り、自部門自身の理想アクション(理想アクション: <自部門>が…)の調査結果を先回りで送ってはいけない(自部門が取るべき調査・対応は対応者自身に考えさせる)。自部門以外の部門は GM が NPC として即興処理したものとして扱う。
- いずれのモードでも、通知文には観測された事実・発生事象だけを書き、「〜が必要(な状況です)」「〜を確認すべき」「〜してください」といった調査・対応の示唆表現や、観測可能性・検証可能性を示唆する言い回し(「確認できます」「観測できます」「参照できます」等)を除いて整形する(次にやることは対応者自身に考えさせる)。
- 上記で能動送信しない場合は、公開メッセージを送らずカーソルだけ更新する。
- 全体訓練: 次イベントが
理想アクション: / 状況変化:、または 能動通知: でも能動送信すべき観測事実が無い場合。
- 個別訓練: 次イベント行の
想定対応部署 に自部門が含まれない(他部門だけ、または {})場合。その行は NPC の自動処理として公開メッセージを送らずカーソルだけ更新し、NPC が処理した旨を internal_log.jsonl に記録する。
開示ルール
参加者から質問されておらず、かつ能動通知でもない観測情報は開示しません。未来イベントも開示しません。個別訓練では、NPC の内部処理過程、シナリオの受動対応部署の一覧、未来イベントは開示しません(NPC からの対応要請も観測可能な事実だけを述べます)。
個別デバッグ
固定したタイムラインとカーソルファイルで再実行し、次イベントが公開通知を出すかどうかを確認します。