@argosvix/sdk 0.4.16-alpha.0 → 0.4.18-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -122,7 +122,7 @@ export default {
122
122
 
123
123
  Long-running Node processes (Express, Next.js dev server, classic servers) do not need this — the buffer auto-flushes well before process exit.
124
124
 
125
- ## Runtime control plane (ランタイム制御プレーン)
125
+ ## Runtime control plane
126
126
 
127
127
  Observability tells you what an agent *did*. The runtime control plane lets a human
128
128
  bound what an agent *can do* — enforced inside your process, configured from the
@@ -158,7 +158,7 @@ try {
158
158
  }
159
159
  ```
160
160
 
161
- The gate is configured from the dashboard / chat (" $5 の予算ゲートを作成して"). On an
161
+ The gate is configured from the dashboard / chat ("create a $5/month budget gate"). On an
162
162
  account with no gate it's a complete no-op. `enforceMode: "fail_open"` (default) lets
163
163
  calls through when the backend is unreachable; `"fail_closed"` blocks while the cached
164
164
  state is stale (`ArgosvixBudgetGateUnavailableError`). Set `budgetGateFailClosed: true`
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAA2B,MAAM,YAAY,CAAC;AAE1E,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAOzC;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAE,cAAmB,GAAG,CAAC,CAuChF;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAE3D;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAE1E;AAgfD,0FAA0F;AAC1F,wBAAgB,0BAA0B,IAAI,IAAI,CAEjD;AAqyCD;;;;;;;;;GASG"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAA2B,MAAM,YAAY,CAAC;AAE1E,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAOzC;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAE,cAAmB,GAAG,CAAC,CAyChF;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAE3D;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAE1E;AA0oBD,0FAA0F;AAC1F,wBAAgB,0BAA0B,IAAI,IAAI,CAEjD;AA82CD;;;;;;;;;GASG"}
package/dist/client.js CHANGED
@@ -61,9 +61,11 @@ export function wrap(client, config = {}) {
61
61
  break;
62
62
  }
63
63
  }
64
- // 平文 capture の対応範囲(2026-07-02 パリティ解消): 全 4 provider の
65
- // 非ストリーミング success path promptBody / completionBody を抽出する。
66
- // streaming 経路は全 provider 未対応(メタデータは記録され、平文のみ省略)
64
+ // 平文 capture の対応範囲(2026-07 streaming 対応): 全 4 provider の
65
+ // 非ストリーミング success path に加え、既存 stream wrapper がある streaming 経路
66
+ // (OpenAI Chat / Anthropic / Mistral / Gemini legacy + 新 SDK)でも promptBody /
67
+ // completionBody を抽出する。OpenAI Responses の streaming は stream wrapper 自体が
68
+ // 未実装(下記 "not yet observed" warn)のため平文も未対応。
67
69
  wrappedClients.set(client, recorder);
68
70
  return client;
69
71
  }
@@ -208,8 +210,10 @@ function buildTags(config, provider, requestArgs) {
208
210
  * - anthropic (Messages) = prompt + completion
209
211
  * - mistral (chat.complete) = prompt + completion
210
212
  * - gemini (legacy generateContent + 新 SDK models.generateContent) = prompt + completion
211
- * - streaming 経路 = 未対応(captureContent true でも promptBody /
212
- * completionBody は付与されない。メタデータは通常どおり記録される)
213
+ * - streaming 経路(2026-07 対応)= 既存 stream wrapper finalize で promptBody
214
+ * (入口 snapshot)+ completionBody(テキスト delta 蓄積、256KB 上限)を付与。
215
+ * ツール呼び出し引数の streaming 組み立ては対象外。OpenAI Responses streaming は
216
+ * stream wrapper 未実装のため未対応。
213
217
  */
214
218
  function extractOpenAIChatPromptBody(requestArgs) {
215
219
  if (!Array.isArray(requestArgs.messages) || requestArgs.messages.length === 0) {
@@ -469,6 +473,154 @@ function safeStringify(value) {
469
473
  return undefined;
470
474
  }
471
475
  }
476
+ // ============================================================
477
+ // streaming 平文キャプチャ(2026-07 設計、 docs/handoff/streaming-capture-design-2026-07.md)
478
+ //
479
+ // promptBody は既存の extract*PromptBody を stream 入口で snapshot し、
480
+ // completionBody は既存 stream wrapper(usage 集計で全チャンク観測済み)に
481
+ // テキスト delta の蓄積を足すだけで得る(= 新しい傍受点は作らない)。
482
+ // redaction は従来どおり Recorder の flush 時に一括適用される。
483
+ // ============================================================
484
+ /**
485
+ * 蓄積バッファの上限(= 262,144 bytes = 256KB)。ingest 側の本文上限と整合。
486
+ * 暴走ストリームで wrapper がホストアプリのメモリを食う事故を構造的に防ぐ。
487
+ */
488
+ const STREAM_CAPTURE_MAX_BYTES = 262_144;
489
+ const STREAM_TRUNCATED_MARKER = "…[truncated]";
490
+ /**
491
+ * UTF-16 code unit 走査で UTF-8 バイト長を数える(TextEncoder の毎 delta 割り当てを
492
+ * 避ける)。surrogate pair は 4 bytes で 1 code point として数える。
493
+ */
494
+ function utf8ByteLength(text) {
495
+ let bytes = 0;
496
+ for (let i = 0; i < text.length; i++) {
497
+ const code = text.charCodeAt(i);
498
+ if (code < 0x80)
499
+ bytes += 1;
500
+ else if (code < 0x800)
501
+ bytes += 2;
502
+ else if (code >= 0xd800 && code <= 0xdbff && i + 1 < text.length) {
503
+ // surrogate pair = 4 bytes(後続の low surrogate を 1 つ消費)
504
+ bytes += 4;
505
+ i++;
506
+ }
507
+ else
508
+ bytes += 3;
509
+ }
510
+ return bytes;
511
+ }
512
+ /**
513
+ * streaming テキスト delta の蓄積バッファ。256KB 上限で超過分は捨てて、
514
+ * result() が末尾に truncated マーカーを付けた本文を返す。
515
+ */
516
+ class StreamTextAccumulator {
517
+ parts = [];
518
+ bytes = 0;
519
+ truncated = false;
520
+ push(text) {
521
+ if (typeof text !== "string" || text.length === 0 || this.truncated)
522
+ return;
523
+ const size = utf8ByteLength(text);
524
+ if (this.bytes + size <= STREAM_CAPTURE_MAX_BYTES) {
525
+ this.parts.push(text);
526
+ this.bytes += size;
527
+ return;
528
+ }
529
+ // 上限をまたぐ delta は入る分だけ code point 境界で継ぎ足し、以降は捨てる。
530
+ let remaining = STREAM_CAPTURE_MAX_BYTES - this.bytes;
531
+ let head = "";
532
+ for (const ch of text) {
533
+ const chBytes = utf8ByteLength(ch);
534
+ if (chBytes > remaining)
535
+ break;
536
+ head += ch;
537
+ remaining -= chBytes;
538
+ }
539
+ if (head.length > 0) {
540
+ this.parts.push(head);
541
+ this.bytes = STREAM_CAPTURE_MAX_BYTES - remaining;
542
+ }
543
+ this.truncated = true;
544
+ }
545
+ /**
546
+ * 蓄積本文を返す(空なら undefined = record に載せない)。
547
+ * interrupted = 例外 / 途中打ち切りで「そこまでの本文」を返すとき、marker を強制付与。
548
+ */
549
+ result(interrupted = false) {
550
+ if (this.parts.length === 0)
551
+ return undefined;
552
+ const body = this.parts.join("");
553
+ return this.truncated || interrupted ? body + STREAM_TRUNCATED_MARKER : body;
554
+ }
555
+ }
556
+ /**
557
+ * stream 入口での capture 状態生成。captureContent でないときは undefined を返して
558
+ * 抽出コストも蓄積コストもゼロに保つ(promptBody 抽出は thunk で遅延)。
559
+ */
560
+ function buildStreamCapture(config, extractPromptBody) {
561
+ if (config.captureContent !== true)
562
+ return undefined;
563
+ const capture = { acc: new StreamTextAccumulator() };
564
+ const promptBody = extractPromptBody();
565
+ if (promptBody !== undefined)
566
+ capture.promptBody = promptBody;
567
+ return capture;
568
+ }
569
+ /**
570
+ * stream finalize / error record に promptBody / completionBody を付与する。
571
+ * redaction はここではなく Recorder の flush 時に一括適用される(非 stream と同方針)。
572
+ */
573
+ function applyStreamCapture(record, capture, interrupted) {
574
+ if (!capture)
575
+ return;
576
+ if (capture.promptBody !== undefined)
577
+ record.promptBody = capture.promptBody;
578
+ const completionBody = capture.acc.result(interrupted);
579
+ if (completionBody !== undefined)
580
+ record.completionBody = completionBody;
581
+ }
582
+ /** OpenAI Chat stream チャンクのテキスト delta(choices[0].delta.content、string のみ)。 */
583
+ function extractOpenAIStreamDeltaText(chunk) {
584
+ const delta = chunk.choices?.[0]?.delta;
585
+ const content = delta?.content;
586
+ return typeof content === "string" && content.length > 0 ? content : undefined;
587
+ }
588
+ /**
589
+ * Gemini stream チャンクのテキスト delta。新 SDK は chunk.text(string property)、
590
+ * legacy は chunk.text()(関数、safety block 等で throw しうる)。どちらも無ければ
591
+ * candidates[0].content.parts[].text を継ぎ足す(JSON fallback はしない = delta のみ)。
592
+ */
593
+ function extractGeminiStreamChunkText(chunk) {
594
+ if (!chunk || typeof chunk !== "object")
595
+ return undefined;
596
+ const t = chunk.text;
597
+ if (typeof t === "string" && t.length > 0)
598
+ return t;
599
+ if (typeof t === "function") {
600
+ try {
601
+ const v = t.call(chunk);
602
+ if (typeof v === "string" && v.length > 0)
603
+ return v;
604
+ }
605
+ catch {
606
+ // legacy chunk.text() は candidate なし等で throw する。 蓄積は諦めて続行。
607
+ }
608
+ }
609
+ const candidates = chunk.candidates;
610
+ if (!Array.isArray(candidates) || candidates.length === 0)
611
+ return undefined;
612
+ const parts = candidates[0]
613
+ ?.content?.parts;
614
+ if (!Array.isArray(parts))
615
+ return undefined;
616
+ const texts = [];
617
+ for (const p of parts) {
618
+ const text = p && typeof p === "object" ? p.text : undefined;
619
+ if (typeof text === "string" && text.length > 0)
620
+ texts.push(text);
621
+ }
622
+ return texts.length > 0 ? texts.join("") : undefined;
623
+ }
472
624
  function extractErrorDetails(err) {
473
625
  if (!err || typeof err !== "object")
474
626
  return undefined;
@@ -578,7 +730,10 @@ function wrapOpenAIChat(client, recorder, config) {
578
730
  await recorder.budgetGate.check({ model: requestArgs.model, payload: requestArgs });
579
731
  const response = await originalCreate(...args);
580
732
  if (isStream) {
581
- return wrapOpenAIStream(response, recorder, requestArgs, start, id, callTags, buildTraceMeta(config), usageInjected);
733
+ return wrapOpenAIStream(response, recorder, requestArgs, start, id, callTags, buildTraceMeta(config), usageInjected,
734
+ // streaming 平文キャプチャ = promptBody は入口 snapshot、 completionBody は
735
+ // delta 蓄積(captureContent=true のときのみ生成)。
736
+ buildStreamCapture(config, () => extractOpenAIChatPromptBody(requestArgs)));
582
737
  }
583
738
  const r = response;
584
739
  const latencyMs = Date.now() - start;
@@ -650,7 +805,9 @@ callTags,
650
805
  traceMeta,
651
806
  // 我々が include_usage を注入したか。 true のとき末尾 usage-only チャンクは host に
652
807
  // yield せず観測だけする(consumer の stream 形状を変えない)。
653
- usageInjected = false) {
808
+ usageInjected = false,
809
+ // streaming 平文キャプチャ(captureContent=true のときのみ渡る)。
810
+ capture) {
654
811
  let finalModel = requestArgs.model || "unknown";
655
812
  let promptTokens = 0;
656
813
  let completionTokens = 0;
@@ -659,6 +816,8 @@ usageInjected = false) {
659
816
  let lastUsage;
660
817
  // 監査 Tier 2 = TTFT。 最初に本文 delta を載せたチャンク到達時刻 - 開始時刻。
661
818
  let ttftMs;
819
+ // 正常完走したか(早期 break / abandon では false のまま → 本文に truncated marker)。
820
+ let completed = false;
662
821
  // 監査 2026-06-28 = 消費側が早期 break / abandon すると generator が yield で
663
822
  // .return() され、 ループ後の記録が skip されて課金済み呼び出しが record されない
664
823
  // (budget gate の spend も漏れる)。 finally + recorded フラグで「正常完走 / error /
@@ -669,7 +828,7 @@ usageInjected = false) {
669
828
  return;
670
829
  recorded = true;
671
830
  const streamCost = calculateCostWithCache("openai", finalModel, promptTokens, completionTokens, cachedReadTokens, 0);
672
- recorder.record({
831
+ const record = {
673
832
  id,
674
833
  provider: "openai",
675
834
  model: finalModel,
@@ -686,7 +845,9 @@ usageInjected = false) {
686
845
  tags: callTags,
687
846
  ...traceMeta,
688
847
  requestMeta: buildOpenAIRequestMeta(requestArgs),
689
- });
848
+ };
849
+ applyStreamCapture(record, capture, !completed);
850
+ recorder.record(record);
690
851
  };
691
852
  try {
692
853
  for await (const chunk of stream) {
@@ -695,6 +856,7 @@ usageInjected = false) {
695
856
  // 先頭チャンクでは立てない(= TTFT を過小評価しない、 Codex SHOULD_FIX)。
696
857
  ttftMs = Date.now() - start;
697
858
  }
859
+ capture?.acc.push(extractOpenAIStreamDeltaText(chunk));
698
860
  if (chunk.model)
699
861
  finalModel = chunk.model;
700
862
  if (chunk.usage) {
@@ -715,12 +877,13 @@ usageInjected = false) {
715
877
  }
716
878
  yield chunk;
717
879
  }
880
+ completed = true;
718
881
  recordOnce();
719
882
  }
720
883
  catch (err) {
721
884
  recorded = true; // error record で確定(finally の recordOnce を抑止)
722
885
  const errorDetails = extractErrorDetails(err);
723
- recorder.record({
886
+ const errorRecord = {
724
887
  id,
725
888
  provider: "openai",
726
889
  model: finalModel,
@@ -735,7 +898,10 @@ usageInjected = false) {
735
898
  error: err instanceof Error ? err.message : String(err),
736
899
  ...(errorDetails ? { errorDetails } : {}),
737
900
  requestMeta: buildOpenAIRequestMeta(requestArgs),
738
- });
901
+ };
902
+ // 例外で切れた場合は「そこまでの本文 + truncated マーカー」を record に載せる。
903
+ applyStreamCapture(errorRecord, capture, true);
904
+ recorder.record(errorRecord);
739
905
  throw err;
740
906
  }
741
907
  finally {
@@ -887,7 +1053,7 @@ function wrapAnthropic(client, recorder, config) {
887
1053
  await recorder.budgetGate.check({ model: requestArgs.model, payload: requestArgs });
888
1054
  const response = await originalCreate(...args);
889
1055
  if (isStream) {
890
- return wrapAnthropicStream(response, recorder, requestArgs, start, id, callTags, buildTraceMeta(config));
1056
+ return wrapAnthropicStream(response, recorder, requestArgs, start, id, callTags, buildTraceMeta(config), buildStreamCapture(config, () => extractAnthropicPromptBody(requestArgs)));
891
1057
  }
892
1058
  const r = response;
893
1059
  const latencyMs = Date.now() - start;
@@ -949,13 +1115,17 @@ function wrapAnthropic(client, recorder, config) {
949
1115
  }
950
1116
  };
951
1117
  }
952
- async function* wrapAnthropicStream(stream, recorder, requestArgs, start, id, callTags, traceMeta) {
1118
+ async function* wrapAnthropicStream(stream, recorder, requestArgs, start, id, callTags, traceMeta,
1119
+ // streaming 平文キャプチャ(captureContent=true のときのみ渡る)。
1120
+ capture) {
953
1121
  let model = requestArgs.model || "unknown";
954
1122
  // Anthropic: input_tokens は「非キャッシュ input」。 cache 読取/書込は別計上。
955
1123
  let inputTokens = 0;
956
1124
  let cachedReadTokens = 0;
957
1125
  let cachedWriteTokens = 0;
958
1126
  let completionTokens = 0;
1127
+ // 正常完走したか(早期 break / abandon では false のまま → 本文に truncated marker)。
1128
+ let completed = false;
959
1129
  // 監査 2026-06-28 = 早期 break でも観測済みトークンで 1 回だけ記録(OpenAI と同様)。
960
1130
  let recorded = false;
961
1131
  const recordOnce = () => {
@@ -964,7 +1134,7 @@ async function* wrapAnthropicStream(stream, recorder, requestArgs, start, id, ca
964
1134
  recorded = true;
965
1135
  const promptTokens = inputTokens + cachedReadTokens + cachedWriteTokens;
966
1136
  const cost = calculateCostWithCache("anthropic", model, promptTokens, completionTokens, cachedReadTokens, cachedWriteTokens);
967
- recorder.record({
1137
+ const record = {
968
1138
  id,
969
1139
  provider: "anthropic",
970
1140
  model,
@@ -980,10 +1150,19 @@ async function* wrapAnthropicStream(stream, recorder, requestArgs, start, id, ca
980
1150
  tags: callTags,
981
1151
  ...traceMeta,
982
1152
  requestMeta: buildAnthropicRequestMeta(requestArgs),
983
- });
1153
+ };
1154
+ applyStreamCapture(record, capture, !completed);
1155
+ recorder.record(record);
984
1156
  };
985
1157
  try {
986
1158
  for await (const event of stream) {
1159
+ if (capture &&
1160
+ event.type === "content_block_delta" &&
1161
+ event.delta?.type === "text_delta" &&
1162
+ typeof event.delta.text === "string") {
1163
+ // テキスト delta のみ蓄積(ツール引数の input_json_delta 等は対象外)。
1164
+ capture.acc.push(event.delta.text);
1165
+ }
987
1166
  if (event.type === "message_start" && event.message) {
988
1167
  if (event.message.model)
989
1168
  model = event.message.model;
@@ -1001,13 +1180,14 @@ async function* wrapAnthropicStream(stream, recorder, requestArgs, start, id, ca
1001
1180
  }
1002
1181
  yield event;
1003
1182
  }
1183
+ completed = true;
1004
1184
  recordOnce();
1005
1185
  }
1006
1186
  catch (err) {
1007
1187
  recorded = true;
1008
1188
  const errorDetails = extractErrorDetails(err);
1009
1189
  const promptTokens = inputTokens + cachedReadTokens + cachedWriteTokens;
1010
- recorder.record({
1190
+ const errorRecord = {
1011
1191
  id,
1012
1192
  provider: "anthropic",
1013
1193
  model,
@@ -1022,7 +1202,10 @@ async function* wrapAnthropicStream(stream, recorder, requestArgs, start, id, ca
1022
1202
  error: err instanceof Error ? err.message : String(err),
1023
1203
  ...(errorDetails ? { errorDetails } : {}),
1024
1204
  requestMeta: buildAnthropicRequestMeta(requestArgs),
1025
- });
1205
+ };
1206
+ // 例外で切れた場合は「そこまでの本文 + truncated マーカー」を record に載せる。
1207
+ applyStreamCapture(errorRecord, capture, true);
1208
+ recorder.record(errorRecord);
1026
1209
  throw err;
1027
1210
  }
1028
1211
  finally {
@@ -1114,7 +1297,7 @@ function wrapMistral(client, recorder, config) {
1114
1297
  try {
1115
1298
  await recorder.budgetGate.check({ model: requestArgs.model, payload: requestArgs });
1116
1299
  const stream = (await originalStream(...args));
1117
- return wrapMistralStream(stream, recorder, requestArgs, start, id, callTags, buildTraceMeta(config));
1300
+ return wrapMistralStream(stream, recorder, requestArgs, start, id, callTags, buildTraceMeta(config), buildStreamCapture(config, () => extractMistralPromptBody(requestArgs)));
1118
1301
  }
1119
1302
  catch (err) {
1120
1303
  // H-2: stream initialization error (= auth/validation/connection)
@@ -1140,18 +1323,22 @@ function wrapMistral(client, recorder, config) {
1140
1323
  };
1141
1324
  }
1142
1325
  }
1143
- async function* wrapMistralStream(stream, recorder, requestArgs, start, id, callTags, traceMeta) {
1326
+ async function* wrapMistralStream(stream, recorder, requestArgs, start, id, callTags, traceMeta,
1327
+ // streaming 平文キャプチャ(captureContent=true のときのみ渡る)。
1328
+ capture) {
1144
1329
  let model = requestArgs.model || "unknown";
1145
1330
  let promptTokens = 0;
1146
1331
  let completionTokens = 0;
1147
1332
  let reportedTotal;
1333
+ // 正常完走したか(早期 break / abandon では false のまま → 本文に truncated marker)。
1334
+ let completed = false;
1148
1335
  // 監査 2026-06-28 = 早期 break でも観測済みトークンで 1 回だけ記録(OpenAI と同様)。
1149
1336
  let recorded = false;
1150
1337
  const recordOnce = () => {
1151
1338
  if (recorded)
1152
1339
  return;
1153
1340
  recorded = true;
1154
- recorder.record({
1341
+ const record = {
1155
1342
  id,
1156
1343
  provider: "mistral",
1157
1344
  model,
@@ -1164,11 +1351,19 @@ async function* wrapMistralStream(stream, recorder, requestArgs, start, id, call
1164
1351
  tags: callTags,
1165
1352
  ...traceMeta,
1166
1353
  requestMeta: buildMistralRequestMeta(requestArgs),
1167
- });
1354
+ };
1355
+ applyStreamCapture(record, capture, !completed);
1356
+ recorder.record(record);
1168
1357
  };
1169
1358
  try {
1170
1359
  for await (const chunk of stream) {
1171
1360
  const inner = chunk.data ?? chunk;
1361
+ if (capture) {
1362
+ // Mistral は OpenAI Chat 互換の delta 形状(choices[0].delta.content、string のみ)。
1363
+ const delta = inner.choices?.[0]?.delta;
1364
+ if (typeof delta?.content === "string")
1365
+ capture.acc.push(delta.content);
1366
+ }
1172
1367
  if (inner.model)
1173
1368
  model = inner.model;
1174
1369
  if (inner.usage) {
@@ -1180,12 +1375,13 @@ async function* wrapMistralStream(stream, recorder, requestArgs, start, id, call
1180
1375
  }
1181
1376
  yield chunk;
1182
1377
  }
1378
+ completed = true;
1183
1379
  recordOnce();
1184
1380
  }
1185
1381
  catch (err) {
1186
1382
  recorded = true;
1187
1383
  const errorDetails = extractErrorDetails(err);
1188
- recorder.record({
1384
+ const errorRecord = {
1189
1385
  id,
1190
1386
  provider: "mistral",
1191
1387
  model,
@@ -1200,7 +1396,10 @@ async function* wrapMistralStream(stream, recorder, requestArgs, start, id, call
1200
1396
  error: err instanceof Error ? err.message : String(err),
1201
1397
  ...(errorDetails ? { errorDetails } : {}),
1202
1398
  requestMeta: buildMistralRequestMeta(requestArgs),
1203
- });
1399
+ };
1400
+ // 例外で切れた場合は「そこまでの本文 + truncated マーカー」を record に載せる。
1401
+ applyStreamCapture(errorRecord, capture, true);
1402
+ recorder.record(errorRecord);
1204
1403
  throw err;
1205
1404
  }
1206
1405
  finally {
@@ -1314,9 +1513,12 @@ function wrapGeminiLegacyModel(model, modelName, recorder, config) {
1314
1513
  const originalStreamRef = result.stream;
1315
1514
  // #1 R1: trace 軸は stream 生成時(= 入口、 ambient 有効)に snapshot する。
1316
1515
  const traceMeta = buildTraceMeta(config);
1516
+ // streaming 平文キャプチャ = promptBody 入口 snapshot + delta 蓄積。
1517
+ const capture = buildStreamCapture(config, () => extractGeminiPromptBody(requestArgs));
1317
1518
  const wrappedStream = (async function* () {
1318
1519
  try {
1319
1520
  for await (const chunk of originalStreamRef) {
1521
+ capture?.acc.push(extractGeminiStreamChunkText(chunk));
1320
1522
  yield chunk;
1321
1523
  }
1322
1524
  const finalResponse = await result.response;
@@ -1325,7 +1527,7 @@ function wrapGeminiLegacyModel(model, modelName, recorder, config) {
1325
1527
  const completionTokens = usage?.candidatesTokenCount ?? 0;
1326
1528
  const cachedReadTokens = usage?.cachedContentTokenCount ?? 0;
1327
1529
  const cost = calculateCostWithCache("gemini", modelName, promptTokens, completionTokens, cachedReadTokens, 0);
1328
- recorder.record({
1530
+ const record = {
1329
1531
  id,
1330
1532
  provider: "gemini",
1331
1533
  model: modelName,
@@ -1340,11 +1542,13 @@ function wrapGeminiLegacyModel(model, modelName, recorder, config) {
1340
1542
  tags: callTags,
1341
1543
  ...traceMeta,
1342
1544
  requestMeta: buildGeminiRequestMeta(requestArgs),
1343
- });
1545
+ };
1546
+ applyStreamCapture(record, capture, false);
1547
+ recorder.record(record);
1344
1548
  }
1345
1549
  catch (err) {
1346
1550
  const errorDetails = extractErrorDetails(err);
1347
- recorder.record({
1551
+ const errorRecord = {
1348
1552
  id,
1349
1553
  provider: "gemini",
1350
1554
  model: modelName,
@@ -1359,7 +1563,10 @@ function wrapGeminiLegacyModel(model, modelName, recorder, config) {
1359
1563
  error: err instanceof Error ? err.message : String(err),
1360
1564
  ...(errorDetails ? { errorDetails } : {}),
1361
1565
  requestMeta: buildGeminiRequestMeta(requestArgs),
1362
- });
1566
+ };
1567
+ // 例外で切れた場合は「そこまでの本文 + truncated マーカー」を record に載せる。
1568
+ applyStreamCapture(errorRecord, capture, true);
1569
+ recorder.record(errorRecord);
1363
1570
  throw err;
1364
1571
  }
1365
1572
  })();
@@ -1471,10 +1678,13 @@ function wrapGeminiNew(client, recorder, config) {
1471
1678
  // C-2 + H-3 fix: AsyncGenerator wrap with finally-record + error tied to consumption
1472
1679
  // #1 R1: trace 軸は stream 生成時(= 入口、 ambient 有効)に snapshot する。
1473
1680
  const traceMeta = buildTraceMeta(config);
1681
+ // streaming 平文キャプチャ = promptBody 入口 snapshot + delta 蓄積。
1682
+ const capture = buildStreamCapture(config, () => extractGeminiPromptBody(requestArgs));
1474
1683
  return (async function* () {
1475
1684
  let lastUsage;
1476
1685
  try {
1477
1686
  for await (const chunk of stream) {
1687
+ capture?.acc.push(extractGeminiStreamChunkText(chunk));
1478
1688
  if (chunk.usageMetadata)
1479
1689
  lastUsage = chunk.usageMetadata;
1480
1690
  yield chunk;
@@ -1483,7 +1693,7 @@ function wrapGeminiNew(client, recorder, config) {
1483
1693
  const completionTokens = lastUsage?.candidatesTokenCount ?? 0;
1484
1694
  const cachedReadTokens = lastUsage?.cachedContentTokenCount ?? 0;
1485
1695
  const cost = calculateCostWithCache("gemini", modelName, promptTokens, completionTokens, cachedReadTokens, 0);
1486
- recorder.record({
1696
+ const record = {
1487
1697
  id,
1488
1698
  provider: "gemini",
1489
1699
  model: modelName,
@@ -1498,11 +1708,13 @@ function wrapGeminiNew(client, recorder, config) {
1498
1708
  tags: callTags,
1499
1709
  ...traceMeta,
1500
1710
  requestMeta: buildGeminiNewRequestMeta(requestArgs),
1501
- });
1711
+ };
1712
+ applyStreamCapture(record, capture, false);
1713
+ recorder.record(record);
1502
1714
  }
1503
1715
  catch (err) {
1504
1716
  const errorDetails = extractErrorDetails(err);
1505
- recorder.record({
1717
+ const errorRecord = {
1506
1718
  id,
1507
1719
  provider: "gemini",
1508
1720
  model: modelName,
@@ -1519,7 +1731,10 @@ function wrapGeminiNew(client, recorder, config) {
1519
1731
  error: err instanceof Error ? err.message : String(err),
1520
1732
  ...(errorDetails ? { errorDetails } : {}),
1521
1733
  requestMeta: buildGeminiNewRequestMeta(requestArgs),
1522
- });
1734
+ };
1735
+ // 例外で切れた場合は「そこまでの本文 + truncated マーカー」を record に載せる。
1736
+ applyStreamCapture(errorRecord, capture, true);
1737
+ recorder.record(errorRecord);
1523
1738
  throw err;
1524
1739
  }
1525
1740
  })();
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@argosvix/sdk",
3
- "version": "0.4.16-alpha.0",
3
+ "version": "0.4.18-alpha.0",
4
4
  "description": "Drop-in observability wrapper for OpenAI, Anthropic, Gemini, Mistral SDK clients. One-line wrap() = cost / latency / quality records.",
5
5
  "keywords": [
6
6
  "argosvix",