refactor: rename pod crate to worker
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
//! extract sub-Engine への入力テキスト組み立て。
|
||||
//!
|
||||
//! `crates/pod/src/pod.rs::build_summary_prompt` と同じ方針で
|
||||
//! `crates/worker/src/worker.rs::build_summary_prompt` と同じ方針で
|
||||
//! Item 列を flat な行に落とす(reasoning は省く、tool call は名前のみ、
|
||||
//! tool result は summary のみ)。conversation 全体を Markdown の単一
|
||||
//! セクションとして渡し、抽出指示は system prompt 側に寄せる。
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
//! extract: 活動抽出。
|
||||
//!
|
||||
//! 通常 Pod の post-run hook で発火する disposable Engine と、その
|
||||
//! 通常 Worker の post-run hook で発火する disposable Engine と、その
|
||||
//! 出力を `<workspace>/.yoi/memory/_staging/<id>.json` に書き出す
|
||||
//! ヘルパーを提供する。Pod 側はこのモジュールから:
|
||||
//! ヘルパーを提供する。Worker 側はこのモジュールから:
|
||||
//!
|
||||
//! - [`build_extract_input`] を sub-Engine の最初の user 入力に
|
||||
//! - [`write_extracted_tool`] を唯一のツールとして
|
||||
//! - [`write_staging`] で受け取った JSON を staging に書き出し
|
||||
//!
|
||||
//! の順で組み立てる。system prompt は Pod の `PromptCatalog`
|
||||
//! (`PodPrompt::MemoryExtractSystem`) で管理される。pointer 永続化
|
||||
//! の順で組み立てる。system prompt は Worker の `PromptCatalog`
|
||||
//! (`WorkerPrompt::MemoryExtractSystem`) で管理される。pointer 永続化
|
||||
//! (session-store の `LogEntry::Extension`、domain `"memory.extract"`)は
|
||||
//! Pod 側が責務を持つ。
|
||||
//! Worker 側が責務を持つ。
|
||||
//!
|
||||
//! 出力 JSON の wrap は [`write_staging`] が `source: { segment_id, range }`
|
||||
//! を機械付与する形で担当し、LLM には source を推論させない。
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
//! extract 抽出の出力 schema。
|
||||
//!
|
||||
//! LLM は [`ExtractedPayload`] そのもの(source 抜き)を返し、Pod 側
|
||||
//! LLM は [`ExtractedPayload`] そのもの(source 抜き)を返し、Worker 側
|
||||
//! ラッパーが [`StagingRecord`] に組み立てて staging へ書き出す。
|
||||
//! source は機械付与する契約 (`docs/plan/memory.md` §Extract)。
|
||||
|
||||
@@ -78,7 +78,7 @@ pub struct RequestEntry {
|
||||
|
||||
/// staging に書き出される 1 ファイル分のレコード。
|
||||
///
|
||||
/// `source` は Pod 側ラッパーが segment_id と log entry range を
|
||||
/// `source` は Worker 側ラッパーが segment_id と log entry range を
|
||||
/// 機械付与する。LLM はこのフィールドを見ない / 推論しない。
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
pub struct StagingRecord {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
//! `LogEntry::Extension { domain: "memory.extract", payload }` の payload 形式と
|
||||
//! restore 時の fold ヘルパー。memory crate がドメインを所有するので、
|
||||
//! session-store / Pod は payload 構造を知らない。
|
||||
//! session-store / Worker は payload 構造を知らない。
|
||||
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
//!
|
||||
//! sub-Engine からは extract worker が出した [`ExtractedPayload`] を
|
||||
//! 受け取って `Mutex` 越しに [`ExtractWorkerContext`] に置くだけ。
|
||||
//! Pod 側はランループ完了後に `take_payload()` で取り出して
|
||||
//! Worker 側はランループ完了後に `take_payload()` で取り出して
|
||||
//! [`super::staging::write_staging`] に渡す。
|
||||
|
||||
use std::sync::{Arc, Mutex};
|
||||
@@ -22,7 +22,7 @@ the wrapper attaches provenance mechanically.";
|
||||
pub struct ExtractWorkerContext {
|
||||
payload: Mutex<Option<ExtractedPayload>>,
|
||||
/// `write_extracted` が複数回呼ばれた回数(debug 用)。
|
||||
/// 後勝ちで上書きするが、Pod 側で warn を出したい場合に参照する。
|
||||
/// 後勝ちで上書きするが、Worker 側で warn を出したい場合に参照する。
|
||||
call_count: Mutex<usize>,
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@ impl ExtractWorkerContext {
|
||||
Self::default()
|
||||
}
|
||||
|
||||
/// sub-Engine 終了後に Pod が呼んで payload を取り出す。
|
||||
/// sub-Engine 終了後に Worker が呼んで payload を取り出す。
|
||||
/// 一度も `write_extracted` が呼ばれなければ `None`。
|
||||
pub fn take_payload(&self) -> Option<ExtractedPayload> {
|
||||
self.payload
|
||||
|
||||
Reference in New Issue
Block a user