@argosvix/sdk 0.4.0-alpha.1 → 0.4.2-alpha.1
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/CHANGELOG.md +29 -0
- package/dist/recorder.d.ts.map +1 -1
- package/dist/recorder.js +38 -4
- package/dist/recorder.js.map +1 -1
- package/dist/redaction.d.ts +29 -0
- package/dist/redaction.d.ts.map +1 -1
- package/dist/redaction.js +59 -0
- package/dist/redaction.js.map +1 -1
- package/dist/types.d.ts +17 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/version.d.ts +14 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +14 -0
- package/dist/version.js.map +1 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,35 @@ All notable changes to `@argosvix/sdk` are documented in this file.
|
|
|
4
4
|
The format is loosely based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
5
5
|
and the project follows [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
6
6
|
|
|
7
|
+
## [0.4.1-alpha.1] - 2026-06-02
|
|
8
|
+
|
|
9
|
+
### Added
|
|
10
|
+
- **PII redaction metadata** on every captured record (= v1.5 Round D 第1段):
|
|
11
|
+
- `LlmCallRecord.piiRedacted` — `true` when at least one PII match was redacted
|
|
12
|
+
in the prompt body, completion body, or any tool call argument/result.
|
|
13
|
+
- `LlmCallRecord.redactionMetadata` — `Record<string, unknown>` carrying
|
|
14
|
+
per-category counts plus a redactor identifier, e.g.
|
|
15
|
+
`{ email: 2, phone: 1, redactor: "argosvix-sdk" }`.
|
|
16
|
+
- Three new helpers: `redactPiiWithCounts(text)`, `mergeRedactionCounts(a, b)`,
|
|
17
|
+
`hasAnyRedaction(counts)`. Existing `redactPii(text)` keeps the prior
|
|
18
|
+
single-return-value shape for backwards compatibility.
|
|
19
|
+
- Per-pattern `type` tag on the redaction patterns (`email` / `creditCard` /
|
|
20
|
+
`myNumber` / `phone` / `ipv4` / `ipv6`) so backend / dashboard can surface
|
|
21
|
+
category-level audit information.
|
|
22
|
+
|
|
23
|
+
### Changed
|
|
24
|
+
- `Recorder.sanitizeContent` now uses `redactPiiWithCounts` instead of plain
|
|
25
|
+
`redactPii`, aggregating counts across `promptBody`, `completionBody`, and
|
|
26
|
+
every tool call's `arguments` / `result`. When any redaction happens, the
|
|
27
|
+
record gains `piiRedacted = true` and `redactionMetadata`.
|
|
28
|
+
|
|
29
|
+
### Notes
|
|
30
|
+
- Backwards compatible: records that contain no PII still ship without the new
|
|
31
|
+
fields (= backend reads them as NULL / falsy).
|
|
32
|
+
- Backend `argosvix-ingest` already has the `pii_redacted` / `redaction_metadata`
|
|
33
|
+
columns on `llm_calls` (migration 0042). Ingest acceptance + query surface +
|
|
34
|
+
dashboard badge are the follow-up commits.
|
|
35
|
+
|
|
7
36
|
## [0.4.0-alpha.1] - 2026-06-02
|
|
8
37
|
|
|
9
38
|
### Added
|
package/dist/recorder.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recorder.d.ts","sourceRoot":"","sources":["../src/recorder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"recorder.d.ts","sourceRoot":"","sources":["../src/recorder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAUhE;;;;;;;GAOG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC;;;;;OAKG;IACH,OAAO,CAAC,aAAa,CAAyC;gBAElD,MAAM,GAAE,cAAmB;IAIvC,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IA6BnC;;;;;;;;;;;OAWG;IACG,KAAK,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAwBzB,OAAO;IA8DrB;;;;;;;OAOG;IACH,OAAO,CAAC,eAAe;IAoEvB,aAAa,IAAI,MAAM;IAIvB;;;OAGG;IACH,iBAAiB,IAAI,IAAI;CAI1B"}
|
package/dist/recorder.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { hasAnyRedaction, mergeRedactionCounts, redactPiiWithCounts, redactToolCall, } from "./redaction.js";
|
|
2
|
+
import { SDK_VERSION } from "./version.js";
|
|
2
3
|
/**
|
|
3
4
|
* Per-wrap() instance-based recorder.
|
|
4
5
|
* Avoids module-level global state to keep test isolation clean and to let
|
|
@@ -162,14 +163,47 @@ export class Recorder {
|
|
|
162
163
|
return record;
|
|
163
164
|
}
|
|
164
165
|
const out = { ...record };
|
|
166
|
+
// 2026-06-02 Round D = 各 field の redaction 結果 + counts を 集計し、
|
|
167
|
+
// piiRedacted + redactionMetadata を record に carry。 backend migration
|
|
168
|
+
// 0042 の llm_calls.pii_redacted + redaction_metadata column 軸の前提。
|
|
169
|
+
let totalCounts = {};
|
|
165
170
|
if (record.promptBody !== undefined) {
|
|
166
|
-
|
|
171
|
+
const r = redactPiiWithCounts(record.promptBody);
|
|
172
|
+
out.promptBody = r.text;
|
|
173
|
+
totalCounts = mergeRedactionCounts(totalCounts, r.counts);
|
|
167
174
|
}
|
|
168
175
|
if (record.completionBody !== undefined) {
|
|
169
|
-
|
|
176
|
+
const r = redactPiiWithCounts(record.completionBody);
|
|
177
|
+
out.completionBody = r.text;
|
|
178
|
+
totalCounts = mergeRedactionCounts(totalCounts, r.counts);
|
|
170
179
|
}
|
|
171
180
|
if (record.toolCalls !== undefined) {
|
|
172
|
-
out.toolCalls = record.toolCalls.map(
|
|
181
|
+
out.toolCalls = record.toolCalls.map((call) => {
|
|
182
|
+
const redacted = redactToolCall(call);
|
|
183
|
+
if (call.arguments !== undefined) {
|
|
184
|
+
const r = redactPiiWithCounts(call.arguments);
|
|
185
|
+
totalCounts = mergeRedactionCounts(totalCounts, r.counts);
|
|
186
|
+
}
|
|
187
|
+
if (call.result !== undefined) {
|
|
188
|
+
const r = redactPiiWithCounts(call.result);
|
|
189
|
+
totalCounts = mergeRedactionCounts(totalCounts, r.counts);
|
|
190
|
+
}
|
|
191
|
+
return redacted;
|
|
192
|
+
});
|
|
193
|
+
}
|
|
194
|
+
if (hasAnyRedaction(totalCounts)) {
|
|
195
|
+
out.piiRedacted = true;
|
|
196
|
+
// 2026-06-02 v1.5+ C7 = redactor identifier に SDK version を carry。
|
|
197
|
+
// dashboard / backend で 「どの SDK version が redact したか」 を audit
|
|
198
|
+
// できる軸 (= 古い SDK が cutoff 後の新 pattern (= new gTLD 等) で 漏れた
|
|
199
|
+
// narrative を 追跡可能)。 data minimization 軸では SDK version は PII では
|
|
200
|
+
// ないので problem なし。
|
|
201
|
+
out.redactionMetadata = { ...totalCounts, redactor: `argosvix-sdk@${SDK_VERSION}` };
|
|
202
|
+
}
|
|
203
|
+
else {
|
|
204
|
+
// 0 件でも redaction を 通したことを backend で 区別したい場合は
|
|
205
|
+
// piiRedacted = false carry。 既存 record 互換のため明示 set せず
|
|
206
|
+
// undefined のまま (= backend が null fallback 解釈)。
|
|
173
207
|
}
|
|
174
208
|
return out;
|
|
175
209
|
}
|
package/dist/recorder.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recorder.js","sourceRoot":"","sources":["../src/recorder.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"recorder.js","sourceRoot":"","sources":["../src/recorder.ts"],"names":[],"mappings":"AACA,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,cAAc,GAEf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C;;;;;;;GAOG;AACH,MAAM,OAAO,QAAQ;IACX,MAAM,GAAoB,EAAE,CAAC;IACpB,MAAM,CAAiB;IACxC;;;;;OAKG;IACK,aAAa,GAAoC,IAAI,CAAC;IAE9D,YAAY,SAAyB,EAAE;QACrC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,MAAqB;QAC1B,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ;YAAE,OAAO;QACjC,8DAA8D;QAC9D,+CAA+C;QAC/C,+DAA+D;QAC/D,oDAAoD;QACpD,WAAW;QACX,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAE5B,qEAAqE;QACrE,yEAAyE;QACzE,sEAAsE;QACtE,iCAAiC;QACjC,IACE,OAAO,OAAO,KAAK,WAAW;YAC9B,OAAO,CAAC,GAAG,IAAI,IAAI;YACnB,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,KAAK,GAAG,EACrC,CAAC;YACD,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,GAAG,CAAC;QACjD,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,OAAO,EAAE,CAAC;YAClC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;QACpB,CAAC;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,KAAK;QACT,2EAA2E;QAC3E,+EAA+E;QAC/E,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,aAAa,CAAC;YAC3B,CAAC;YAAC,MAAM,CAAC;gBACP,+EAA+E;YACjF,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAEtC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;QAC7B,IAAI,CAAC;YACH,OAAO,MAAM,OAAO,CAAC;QACvB,CAAC;gBAAS,CAAC;YACT,IAAI,IAAI,CAAC,aAAa,KAAK,OAAO,EAAE,CAAC;gBACnC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC5B,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,OAAO,CAAC,OAAwB;QAC5C,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAChD,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,uCAAuC,CAAC;QACjF,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,IAAI,CAAC,CAAC;QAErD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE;oBAChC,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE;wBACP,cAAc,EAAE,kBAAkB;wBAClC,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;qBAC9C;oBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;iBAClC,CAAC,CAAC;gBACH,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;oBACX,qEAAqE;oBACrE,IAAI,CAAC;wBACH,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAG7B,CAAC;wBACF,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BAC9C,sCAAsC;4BACtC,OAAO,CAAC,IAAI,CACV,+BAA+B,IAAI,CAAC,QAAQ,CAAC,MAAM,aAAa,EAChE,IAAI,CAAC,QAAQ,CACd,CAAC;wBACJ,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC;wBACP,mEAAmE;oBACrE,CAAC;oBACD,OAAO,OAAO,CAAC;gBACjB,CAAC;gBACD,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,QAAQ,GAAG,CAAC,EAAE,CAAC;oBAC1C,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;oBACvD,SAAS;gBACX,CAAC;gBACD,sCAAsC;gBACtC,OAAO,CAAC,KAAK,CACX,kCAAkC,GAAG,CAAC,MAAM,aAAa,CAAC,GAAG,CAAC,IAAI,QAAQ,GAAG,CAC9E,CAAC;gBACF,OAAO,OAAO,CAAC;YACjB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,GAAG,QAAQ,GAAG,CAAC,EAAE,CAAC;oBACrB,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;oBACvD,SAAS;gBACX,CAAC;gBACD,sCAAsC;gBACtC,OAAO,CAAC,KAAK,CACX,sCAAsC,QAAQ,YAAY,EAC1D,GAAG,CACJ,CAAC;gBACF,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;;OAOG;IACK,eAAe,CAAC,MAAqB;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,KAAK,IAAI,CAAC;QACpD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,IACE,MAAM,CAAC,UAAU,KAAK,SAAS;gBAC/B,MAAM,CAAC,cAAc,KAAK,SAAS;gBACnC,MAAM,CAAC,SAAS,KAAK,SAAS,EAC9B,CAAC;gBACD,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,MAAM,QAAQ,GAAkB,EAAE,GAAG,MAAM,EAAE,CAAC;YAC9C,OAAO,QAAQ,CAAC,UAAU,CAAC;YAC3B,OAAO,QAAQ,CAAC,cAAc,CAAC;YAC/B,OAAO,QAAQ,CAAC,SAAS,CAAC;YAC1B,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,mBAAmB,KAAK,IAAI,CAAC;QAClE,IAAI,gBAAgB,EAAE,CAAC;YACrB,wDAAwD;YACxD,uDAAuD;YACvD,qCAAqC;YACrC,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,GAAG,GAAkB,EAAE,GAAG,MAAM,EAAE,CAAC;QACzC,8DAA8D;QAC9D,sEAAsE;QACtE,kEAAkE;QAClE,IAAI,WAAW,GAAoB,EAAE,CAAC;QACtC,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,CAAC,GAAG,mBAAmB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACjD,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC;YACxB,WAAW,GAAG,oBAAoB,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,MAAM,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACxC,MAAM,CAAC,GAAG,mBAAmB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YACrD,GAAG,CAAC,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC;YAC5B,WAAW,GAAG,oBAAoB,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACnC,GAAG,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC5C,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;gBACtC,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;oBACjC,MAAM,CAAC,GAAG,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAC9C,WAAW,GAAG,oBAAoB,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;gBAC5D,CAAC;gBACD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBAC9B,MAAM,CAAC,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAC3C,WAAW,GAAG,oBAAoB,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;gBAC5D,CAAC;gBACD,OAAO,QAAQ,CAAC;YAClB,CAAC,CAAC,CAAC;QACL,CAAC;QACD,IAAI,eAAe,CAAC,WAAW,CAAC,EAAE,CAAC;YACjC,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC;YACvB,mEAAmE;YACnE,8DAA8D;YAC9D,2DAA2D;YAC3D,gEAAgE;YAChE,mBAAmB;YACnB,GAAG,CAAC,iBAAiB,GAAG,EAAE,GAAG,WAAW,EAAE,QAAQ,EAAE,gBAAgB,WAAW,EAAE,EAAE,CAAC;QACtF,CAAC;aAAM,CAAC;YACN,8CAA8C;YAC9C,sDAAsD;YACtD,gDAAgD;QAClD,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACH,iBAAiB;QACf,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC5B,CAAC;CACF"}
|
package/dist/redaction.d.ts
CHANGED
|
@@ -25,6 +25,13 @@
|
|
|
25
25
|
* ので個人情報混入リスクとしては問題なし(マスキング種別が不正確に
|
|
26
26
|
* なるだけ)
|
|
27
27
|
*/
|
|
28
|
+
/**
|
|
29
|
+
* 2026-06-02 Round D = redaction type tag。 redaction_metadata に carry
|
|
30
|
+
* する カテゴリ。 backend 0042 schema の redaction_metadata JSON に
|
|
31
|
+
* { [type]: count } shape で 入る。
|
|
32
|
+
*/
|
|
33
|
+
export type RedactionType = "email" | "creditCard" | "myNumber" | "phone" | "ipv4" | "ipv6";
|
|
34
|
+
export type RedactionCounts = Partial<Record<RedactionType, number>>;
|
|
28
35
|
/**
|
|
29
36
|
* Apply PII redaction patterns to a plaintext string.
|
|
30
37
|
*
|
|
@@ -32,6 +39,28 @@
|
|
|
32
39
|
* @returns The text with PII patterns replaced by [REDACTED_*] markers.
|
|
33
40
|
*/
|
|
34
41
|
export declare function redactPii(input: string | null | undefined): string;
|
|
42
|
+
/**
|
|
43
|
+
* 2026-06-02 Round D = 同 redaction 処理を 行いつつ、 各 type で 何回 置換
|
|
44
|
+
* が 発生したかを 同時 集計する。 backend redaction_metadata JSON 用 +
|
|
45
|
+
* SDK 側で 「PII 含まれていたか」 判定 (= piiRedacted boolean) 用。
|
|
46
|
+
*
|
|
47
|
+
* matchAll 経由で count を 取り、 続けて replace で carry。 regex は g flag
|
|
48
|
+
* なので 2 回 走らせても 副作用なし。
|
|
49
|
+
*/
|
|
50
|
+
export declare function redactPiiWithCounts(input: string | null | undefined): {
|
|
51
|
+
text: string;
|
|
52
|
+
counts: RedactionCounts;
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* 2026-06-02 Round D = 複数の redaction 結果 (= prompt / completion / 各 tool
|
|
56
|
+
* call) の counts を 加算合成する helper。
|
|
57
|
+
*/
|
|
58
|
+
export declare function mergeRedactionCounts(base: RedactionCounts, addition: RedactionCounts): RedactionCounts;
|
|
59
|
+
/**
|
|
60
|
+
* 2026-06-02 Round D = counts object に 1 件以上の redaction があるか。
|
|
61
|
+
* piiRedacted boolean field の判定軸。
|
|
62
|
+
*/
|
|
63
|
+
export declare function hasAnyRedaction(counts: RedactionCounts): boolean;
|
|
35
64
|
/**
|
|
36
65
|
* Apply PII redaction recursively to a tool call's arguments and result fields.
|
|
37
66
|
* Used by Recorder to scrub structured tool call data before send.
|
package/dist/redaction.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redaction.d.ts","sourceRoot":"","sources":["../src/redaction.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;
|
|
1
|
+
{"version":3,"file":"redaction.d.ts","sourceRoot":"","sources":["../src/redaction.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AA4DH;;;;GAIG;AACH,MAAM,MAAM,aAAa,GACrB,OAAO,GACP,YAAY,GACZ,UAAU,GACV,OAAO,GACP,MAAM,GACN,MAAM,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;AAErE;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAYlE;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC/B;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,eAAe,CAAA;CAAE,CAa3C;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,eAAe,EACrB,QAAQ,EAAE,eAAe,GACxB,eAAe,CAMjB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAKhE;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAWxD"}
|
package/dist/redaction.js
CHANGED
|
@@ -25,11 +25,17 @@
|
|
|
25
25
|
* ので個人情報混入リスクとしては問題なし(マスキング種別が不正確に
|
|
26
26
|
* なるだけ)
|
|
27
27
|
*/
|
|
28
|
+
/**
|
|
29
|
+
* 2026-06-02 Round D = pattern 毎の type tag を 追加 (= migration 0042
|
|
30
|
+
* redaction_metadata に counts JSON を 集計するため、 各 regex がどの
|
|
31
|
+
* カテゴリかを 明示する)。 metadata = { email: N, creditCard: N, ... }。
|
|
32
|
+
*/
|
|
28
33
|
const PATTERNS = [
|
|
29
34
|
// Email = RFC 5322 ベース、 安全側に conservative
|
|
30
35
|
{
|
|
31
36
|
regex: /[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}/g,
|
|
32
37
|
replacement: "[REDACTED_EMAIL]",
|
|
38
|
+
type: "email",
|
|
33
39
|
},
|
|
34
40
|
// Credit card (= 改行・空白を跨ぐ番号もカバー)。
|
|
35
41
|
// Codex Round 1 MEDIUM 修正 = 「\d sep \d sep ...」 構造で carry すると
|
|
@@ -39,12 +45,14 @@ const PATTERNS = [
|
|
|
39
45
|
{
|
|
40
46
|
regex: /\b\d(?:[ \t\r\n-]*\d){12,18}\b/g,
|
|
41
47
|
replacement: "[REDACTED_CC]",
|
|
48
|
+
type: "creditCard",
|
|
42
49
|
},
|
|
43
50
|
// マイナンバー = 12 桁数字、 単語境界で区切る
|
|
44
51
|
// (上の CC パターンが先に走るので 12-13 桁の重複は CC で処理される)
|
|
45
52
|
{
|
|
46
53
|
regex: /\b\d{12}\b/g,
|
|
47
54
|
replacement: "[REDACTED_MYNUMBER]",
|
|
55
|
+
type: "myNumber",
|
|
48
56
|
},
|
|
49
57
|
// 電話番号 = 主要国の代表パターン:
|
|
50
58
|
// - 日本 携帯: 090-XXXX-XXXX / 080-XXXX-XXXX / 070-XXXX-XXXX
|
|
@@ -54,11 +62,13 @@ const PATTERNS = [
|
|
|
54
62
|
{
|
|
55
63
|
regex: /\+?\d{1,3}[-.\s]?\(?\d{2,4}\)?[-.\s]?\d{2,4}[-.\s]?\d{3,4}/g,
|
|
56
64
|
replacement: "[REDACTED_PHONE]",
|
|
65
|
+
type: "phone",
|
|
57
66
|
},
|
|
58
67
|
// IPv4 = 4 オクテット、 0-255 の範囲は厳密 check せず conservative
|
|
59
68
|
{
|
|
60
69
|
regex: /\b(?:\d{1,3}\.){3}\d{1,3}\b/g,
|
|
61
70
|
replacement: "[REDACTED_IPV4]",
|
|
71
|
+
type: "ipv4",
|
|
62
72
|
},
|
|
63
73
|
// IPv6 (フル形 + 短縮形)。 Codex Round 1 MEDIUM 修正で `::1` などの
|
|
64
74
|
// 短縮表記を含めて拾えるよう、 各 hex group を 0-4 桁(= 空 group が
|
|
@@ -69,6 +79,7 @@ const PATTERNS = [
|
|
|
69
79
|
{
|
|
70
80
|
regex: /(?<![\w:.])(?:[0-9a-fA-F]{0,4}:){2,7}[0-9a-fA-F]{1,4}(?![\w:.])/g,
|
|
71
81
|
replacement: "[REDACTED_IPV6]",
|
|
82
|
+
type: "ipv6",
|
|
72
83
|
},
|
|
73
84
|
];
|
|
74
85
|
/**
|
|
@@ -92,6 +103,54 @@ export function redactPii(input) {
|
|
|
92
103
|
}
|
|
93
104
|
return result;
|
|
94
105
|
}
|
|
106
|
+
/**
|
|
107
|
+
* 2026-06-02 Round D = 同 redaction 処理を 行いつつ、 各 type で 何回 置換
|
|
108
|
+
* が 発生したかを 同時 集計する。 backend redaction_metadata JSON 用 +
|
|
109
|
+
* SDK 側で 「PII 含まれていたか」 判定 (= piiRedacted boolean) 用。
|
|
110
|
+
*
|
|
111
|
+
* matchAll 経由で count を 取り、 続けて replace で carry。 regex は g flag
|
|
112
|
+
* なので 2 回 走らせても 副作用なし。
|
|
113
|
+
*/
|
|
114
|
+
export function redactPiiWithCounts(input) {
|
|
115
|
+
if (input == null)
|
|
116
|
+
return { text: "", counts: {} };
|
|
117
|
+
if (typeof input !== "string")
|
|
118
|
+
input = String(input);
|
|
119
|
+
if (input.length === 0)
|
|
120
|
+
return { text: input, counts: {} };
|
|
121
|
+
const counts = {};
|
|
122
|
+
let result = input;
|
|
123
|
+
for (const { regex, replacement, type } of PATTERNS) {
|
|
124
|
+
const matches = result.match(regex);
|
|
125
|
+
const n = matches ? matches.length : 0;
|
|
126
|
+
if (n > 0)
|
|
127
|
+
counts[type] = (counts[type] ?? 0) + n;
|
|
128
|
+
result = result.replace(regex, replacement);
|
|
129
|
+
}
|
|
130
|
+
return { text: result, counts };
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* 2026-06-02 Round D = 複数の redaction 結果 (= prompt / completion / 各 tool
|
|
134
|
+
* call) の counts を 加算合成する helper。
|
|
135
|
+
*/
|
|
136
|
+
export function mergeRedactionCounts(base, addition) {
|
|
137
|
+
const out = { ...base };
|
|
138
|
+
for (const k of Object.keys(addition)) {
|
|
139
|
+
out[k] = (out[k] ?? 0) + (addition[k] ?? 0);
|
|
140
|
+
}
|
|
141
|
+
return out;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* 2026-06-02 Round D = counts object に 1 件以上の redaction があるか。
|
|
145
|
+
* piiRedacted boolean field の判定軸。
|
|
146
|
+
*/
|
|
147
|
+
export function hasAnyRedaction(counts) {
|
|
148
|
+
for (const v of Object.values(counts)) {
|
|
149
|
+
if ((v ?? 0) > 0)
|
|
150
|
+
return true;
|
|
151
|
+
}
|
|
152
|
+
return false;
|
|
153
|
+
}
|
|
95
154
|
/**
|
|
96
155
|
* Apply PII redaction recursively to a tool call's arguments and result fields.
|
|
97
156
|
* Used by Recorder to scrub structured tool call data before send.
|
package/dist/redaction.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redaction.js","sourceRoot":"","sources":["../src/redaction.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"redaction.js","sourceRoot":"","sources":["../src/redaction.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH;;;;GAIG;AACH,MAAM,QAAQ,GAAuE;IACnF,0CAA0C;IAC1C;QACE,KAAK,EAAE,iDAAiD;QACxD,WAAW,EAAE,kBAAkB;QAC/B,IAAI,EAAE,OAAO;KACd;IACD,kCAAkC;IAClC,8DAA8D;IAC9D,sDAAsD;IACtD,sDAAsD;IACtD,kCAAkC;IAClC;QACE,KAAK,EAAE,iCAAiC;QACxC,WAAW,EAAE,eAAe;QAC5B,IAAI,EAAE,YAAY;KACnB;IACD,4BAA4B;IAC5B,4CAA4C;IAC5C;QACE,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,qBAAqB;QAClC,IAAI,EAAE,UAAU;KACjB;IACD,qBAAqB;IACrB,2DAA2D;IAC3D,2CAA2C;IAC3C,+CAA+C;IAC/C,0BAA0B;IAC1B;QACE,KAAK,EAAE,6DAA6D;QACpE,WAAW,EAAE,kBAAkB;QAC/B,IAAI,EAAE,OAAO;KACd;IACD,qDAAqD;IACrD;QACE,KAAK,EAAE,8BAA8B;QACrC,WAAW,EAAE,iBAAiB;QAC9B,IAAI,EAAE,MAAM;KACb;IACD,uDAAuD;IACvD,iDAAiD;IACjD,wDAAwD;IACxD,wEAAwE;IACxE,0DAA0D;IAC1D,UAAU;IACV;QACE,KAAK,EAAE,kEAAkE;QACzE,WAAW,EAAE,iBAAiB;QAC9B,IAAI,EAAE,MAAM;KACb;CACF,CAAC;AAiBF;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,KAAgC;IACxD,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,EAAE,CAAC;IAC7B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,iEAAiE;QACjE,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACrC,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,KAAK,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,QAAQ,EAAE,CAAC;QAC9C,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CACjC,KAAgC;IAEhC,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACnD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACrD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAC3D,MAAM,MAAM,GAAoB,EAAE,CAAC;IACnC,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,KAAK,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,QAAQ,EAAE,CAAC;QACpD,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACpC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,IAAI,CAAC,GAAG,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAClD,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAClC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAClC,IAAqB,EACrB,QAAyB;IAEzB,MAAM,GAAG,GAAoB,EAAE,GAAG,IAAI,EAAE,CAAC;IACzC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAoB,EAAE,CAAC;QACzD,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,MAAuB;IACrD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;IAChC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,IAI9B;IACC,MAAM,GAAG,GAA0D;QACjE,IAAI,EAAE,IAAI,CAAC,IAAI;KAChB,CAAC;IACF,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACjC,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC9B,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -147,6 +147,23 @@ export interface LlmCallRecord {
|
|
|
147
147
|
arguments?: string;
|
|
148
148
|
result?: string;
|
|
149
149
|
}>;
|
|
150
|
+
/**
|
|
151
|
+
* 2026-06-02 Round D v0.4.1 = PII redaction が 1 件以上適用された flag。
|
|
152
|
+
* SDK 側 一次 redaction (= redactPiiWithCounts) で email / creditCard /
|
|
153
|
+
* myNumber / phone / ipv4 / ipv6 の いずれかが 検出 + 置換されたら true。
|
|
154
|
+
* backend 0042 schema の llm_calls.pii_redacted column に carry。
|
|
155
|
+
* disablePiiRedaction = true (= 無加工 carry) の場合は当然 false / unset。
|
|
156
|
+
*/
|
|
157
|
+
piiRedacted?: boolean;
|
|
158
|
+
/**
|
|
159
|
+
* 2026-06-02 Round D v0.4.1 = redaction の カテゴリ別件数 + redactor 識別子
|
|
160
|
+
* JSON narrative。 backend 0042 schema の llm_calls.redaction_metadata
|
|
161
|
+
* column に そのまま 保管、 dashboard / MCP server で 「どの type を いくつ
|
|
162
|
+
* 検出したか」 監査表示に carry。
|
|
163
|
+
*
|
|
164
|
+
* 例: { email: 2, phone: 1, creditCard: 0, redactor: "argosvix-sdk" }
|
|
165
|
+
*/
|
|
166
|
+
redactionMetadata?: Record<string, unknown>;
|
|
150
167
|
}
|
|
151
168
|
export interface PricingEntry {
|
|
152
169
|
/** USD per 1M input tokens. */
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;AAErE,MAAM,WAAW,cAAc;IAC7B,0DAA0D;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yFAAyF;IACzF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,kFAAkF;IAClF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+DAA+D;IAC/D,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mFAAmF;IACnF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;;;;OASG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;;;;OAUG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;;;;OAOG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,aAAa;IAC5B,+CAA+C;IAC/C,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,gGAAgG;IAChG,OAAO,EAAE,MAAM,CAAC;IAChB,+CAA+C;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,0DAA0D;IAC1D,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,iEAAiE;IACjE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,YAAY,CAAC,EAAE;QACb,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,+MAA+M;IAC/M,WAAW,CAAC,EAAE;QACZ,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;AAErE,MAAM,WAAW,cAAc;IAC7B,0DAA0D;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yFAAyF;IACzF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,kFAAkF;IAClF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+DAA+D;IAC/D,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mFAAmF;IACnF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;;;;OASG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;;;;OAUG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;;;;OAOG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,aAAa;IAC5B,+CAA+C;IAC/C,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,gGAAgG;IAChG,OAAO,EAAE,MAAM,CAAC;IAChB,+CAA+C;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,0DAA0D;IAC1D,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,iEAAiE;IACjE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,YAAY,CAAC,EAAE;QACb,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,+MAA+M;IAC/M,WAAW,CAAC,EAAE;QACZ,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,YAAY;IAC3B,+BAA+B;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,WAAW,EAAE,MAAM,CAAC;CACrB"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @argosvix/sdk の version 単一 source-of-truth (= 2026-06-02 v1.5+ C7 軸)。
|
|
3
|
+
*
|
|
4
|
+
* package.json の `version` field と 完全一致させる。 recorder の
|
|
5
|
+
* `redactionMetadata.redactor` field に carry されるため、 dashboard /
|
|
6
|
+
* backend 側で 「どの SDK version が redact したか」 を audit できる軸。
|
|
7
|
+
*
|
|
8
|
+
* 改訂手順:
|
|
9
|
+
* 1. 本 file の SDK_VERSION を更新
|
|
10
|
+
* 2. packages/sdk/package.json の `version` も同 値に更新
|
|
11
|
+
* 3. npm run build && tests pass を確認してから commit
|
|
12
|
+
*/
|
|
13
|
+
export declare const SDK_VERSION: "0.4.2-alpha.1";
|
|
14
|
+
//# sourceMappingURL=version.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,eAAO,MAAM,WAAW,EAAG,eAAwB,CAAC"}
|
package/dist/version.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @argosvix/sdk の version 単一 source-of-truth (= 2026-06-02 v1.5+ C7 軸)。
|
|
3
|
+
*
|
|
4
|
+
* package.json の `version` field と 完全一致させる。 recorder の
|
|
5
|
+
* `redactionMetadata.redactor` field に carry されるため、 dashboard /
|
|
6
|
+
* backend 側で 「どの SDK version が redact したか」 を audit できる軸。
|
|
7
|
+
*
|
|
8
|
+
* 改訂手順:
|
|
9
|
+
* 1. 本 file の SDK_VERSION を更新
|
|
10
|
+
* 2. packages/sdk/package.json の `version` も同 値に更新
|
|
11
|
+
* 3. npm run build && tests pass を確認してから commit
|
|
12
|
+
*/
|
|
13
|
+
export const SDK_VERSION = "0.4.2-alpha.1";
|
|
14
|
+
//# sourceMappingURL=version.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,CAAC,MAAM,WAAW,GAAG,eAAwB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@argosvix/sdk",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.2-alpha.1",
|
|
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",
|