今すぐ始める

Case、Task、Record

Epismo を実行 runtime にせず、共有に役立つ状態だけを残します。


Case は実際の一案件です。immutable な Playbook Version に固定して開始することも、title だけの ad hoc Case として開始することもできます。Playbook-backed Case は Playbook ID、Version ID、digest を保持しますが、Step の進捗は追跡しません。

Case lifecycle

Case の status は open または closed です。close 時の outcome は completedcancelledabandoned です。completed にするには全 Task が closed である必要があります。cancel または abandon では、残っている open Task を Case transition の一部として閉じます。Case を reopen しても Task は reopen されません。

Task や Record が一件もないまま Case を完了できます。案件の存在と outcome だけを残せばよい場合は、この軽量な形を使ってください。

Case mutation は optimistic concurrency を使います。最新の lockVersion を送信し、conflict 後は古い intent をそのまま再送せず、Case を読み直して変更がまだ妥当か判断してください。

Task は必要時だけ作る

Task は Case 内で明示された仕事です。kind は work または review で、User への assignment、source Step への link、review の場合は対象 Record への link を持てます。

Case 開始時に各 Step の Task は作られません。責任、引き継ぎ、レビュー、個別追跡する仕事を見える状態にする必要があるときだけ Task を作ります。複数 Task を同時に open にでき、ひとつを閉じても Case は自動進行しません。

Task 更新も lockVersion を使います。closed Task を reopen できるのは親 Case が open の間だけです。

Record が引き継ぎ面になる

Record は Case timeline 上の immutable かつ append-only な entry で、Task または source Step にも紐付けられます。application-defined な kind、任意の human-readable content、structured data、origin(useragentsystem)、creator、client identity、作成日時を持ちます。

成果、根拠、判断、review comment、file・object 参照、handoff summary、意味のある error、coordination activity を Record に残してください。chain-of-thought、全 tool call、生 shell output、credential、retry 履歴、heartbeat、runtime graph を自動保存しないでください。

Record の訂正は新しい Record を追記して行います。Record list は Case 横断の activity feed でもあります。Case filter を省略すると、caller が現在読める全 Case の Record を返し、安定 cursor と Case、Task、author、kind、origin、ACL、sort order の filter を利用できます。