feat(observer): parser write-block v4.3 — embedding + reviewed + cost ext (phase 3 deferred #2)

This commit is contained in:
Дмитрий
2026-05-25 13:52:14 +03:00
parent e144879a08
commit a8aa94f180
2 changed files with 119 additions and 10 deletions
+17 -1
View File
@@ -430,6 +430,16 @@ export function extractTokenUsage(turn) {
web_search_requests: web_search,
web_fetch_requests: web_fetch,
iterations,
// v4.3 LLM-agent cost fields — always zero at parse time;
// populated retroactively by controller scripts / reviewer response.
classifier_input_tokens: 0,
classifier_output_tokens: 0,
self_assessment_input_tokens: 0,
self_assessment_output_tokens: 0,
reviewer_input_tokens: 0,
reviewer_output_tokens: 0,
reviewer_subagent_usd: 0,
reviewer_direct_fallback_usd: 0,
};
}
@@ -814,12 +824,18 @@ export function parseTranscript(transcriptText, fallbackSessionId = null, option
return {
schema_version: 4,
schema_minor: 0,
schema_minor: 3,
task_id: sessionId,
task_ref: sessionId,
timestamps: { started_at, ended_at },
path_type: usedSuperpowers ? 'regulated' : 'improvised',
outcome: 'unknown',
// v4.3: reviewed outcome — always null at write time, filled by /brain-retro reviewer.
outcome_reviewed: null,
outcome_reviewed_source: null,
// v4.3: embedding of first user prompt — null at parse time (sync parser cannot
// await model load); populated asynchronously by the Stop-hook after parseTranscript.
prompt_embedding_base64: null,
prompt_signal: classifyPromptSignal(prompt),
decision_provenance,
environment: { ..._envBase, classifier_model: _classifierModel },