stripTrajectoryRequestDetail function
TrajectoryRequestDetail
stripTrajectoryRequestDetail(
- TrajectoryRequestDetail detail, {
- required String spillFile,
- String? wireDumpHash,
Reduces detail to the gh-1745 lightweight in-JSONL shape: per-message
role+chars stubs (no previews, no block texts — the estimation basis Σ
chars stays truthful) plus the spillFile pointer to the request blob
carrying the full detail. Counts, sizes, tool names and blob hashes
pass through untouched; wireDumpHash overrides the pointer when the
raw wire dump spilled into the same blob.
Implementation
TrajectoryRequestDetail stripTrajectoryRequestDetail(
TrajectoryRequestDetail detail, {
required String spillFile,
String? wireDumpHash,
}) => TrajectoryRequestDetail(
messageCount: detail.messageCount,
systemPromptChars: detail.systemPromptChars,
toolCount: detail.toolCount,
toolNames: detail.toolNames,
systemPromptHash: detail.systemPromptHash,
toolManifestHash: detail.toolManifestHash,
wireDumpHash: wireDumpHash ?? detail.wireDumpHash,
spillFile: spillFile,
messages: [
for (final message in detail.messages)
TrajectoryRequestMessageSummary(
role: message.role,
chars: message.chars,
preview: '',
),
],
);