@rasputin-ai/core 0.7.1 → 0.7.2-beta.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/README.md +3 -3
- package/dist/create-client/create-client.d.ts.map +1 -1
- package/dist/derivation/rasputin-redacted.d.ts +3 -0
- package/dist/derivation/rasputin-redacted.d.ts.map +1 -0
- package/dist/derivation/redact-env-secret-values.d.ts +10 -0
- package/dist/derivation/redact-env-secret-values.d.ts.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +356 -164
- package/dist/sdk-meta.d.ts +1 -1
- package/dist/sdk-meta.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
# Rasputin AI SDK — Core
|
|
2
|
-
|
|
3
|
-
Low-level error capture, stack parsing, source maps, and ingest transport. Most applications should use [@rasputin-ai/node](https://www.npmjs.com/package/@rasputin-ai/node), [@rasputin-ai/elysia](https://www.npmjs.com/package/@rasputin-ai/elysia), or [@rasputin-ai/browser](https://www.npmjs.com/package/@rasputin-ai/browser) instead.
|
|
1
|
+
# Rasputin AI SDK — Core
|
|
2
|
+
|
|
3
|
+
Low-level error capture, stack parsing, source maps, and ingest transport. Most applications should use [@rasputin-ai/node](https://www.npmjs.com/package/@rasputin-ai/node), [@rasputin-ai/elysia](https://www.npmjs.com/package/@rasputin-ai/elysia), or [@rasputin-ai/browser](https://www.npmjs.com/package/@rasputin-ai/browser) instead.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-client.d.ts","sourceRoot":"","sources":["../../src/create-client/create-client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"create-client.d.ts","sourceRoot":"","sources":["../../src/create-client/create-client.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAwBhG,kFAAkF;AAClF,eAAO,MAAM,sBAAsB,YAGlC,CAAC;AAaF;;;GAGG;AACH,eAAO,MAAM,YAAY,GACxB,SAAS,eAAe,EACxB,QAAO,iBAAsB,KAC3B,cAoKF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rasputin-redacted.d.ts","sourceRoot":"","sources":["../../src/derivation/rasputin-redacted.ts"],"names":[],"mappings":"AAAA,oIAAoI;AACpI,eAAO,MAAM,iBAAiB,EAAG,qBAA8B,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
type EnvSecretMatcher = {
|
|
2
|
+
redact: (text: string) => string;
|
|
3
|
+
needleCount: number;
|
|
4
|
+
};
|
|
5
|
+
export declare const MAX_ENV_SECRET_NEEDLE_LENGTH = 512;
|
|
6
|
+
export declare const collectEnvSecretValues: (env?: NodeJS.ProcessEnv) => string[];
|
|
7
|
+
export declare const createExactSecretMatcher: (secrets: readonly string[]) => EnvSecretMatcher;
|
|
8
|
+
export declare const createEnvSecretMatcher: (env?: NodeJS.ProcessEnv) => EnvSecretMatcher;
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=redact-env-secret-values.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"redact-env-secret-values.d.ts","sourceRoot":"","sources":["../../src/derivation/redact-env-secret-values.ts"],"names":[],"mappings":"AAOA,KAAK,gBAAgB,GAAG;IACvB,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;CACpB,CAAC;AAIF,eAAO,MAAM,4BAA4B,MAAM,CAAC;AAsHhD,eAAO,MAAM,sBAAsB,GAAI,MAAK,MAAM,CAAC,UAAwB,KAAG,MAAM,EA4CnF,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAI,SAAS,SAAS,MAAM,EAAE,KAAG,gBAgCrE,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,MAAK,MAAM,CAAC,UAAwB,KAAG,gBAM7E,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -10,7 +10,9 @@ export { createIngestEvent } from './create-ingest-event/create-ingest-event';
|
|
|
10
10
|
export type { RequestContext } from './create-ingest-event/create-ingest-event-types';
|
|
11
11
|
export type { RuntimeAwaitedEvent, RuntimeCaptureCoverage, RuntimeCaptureProfile, RuntimeExecutionEvent, RuntimeExecutionKind, RuntimeExecutionMetadata, RuntimeExecutionRecorderMetrics, RuntimeExecutionRequest, RuntimeExecutionState, RuntimeExpressionObservedEvent, RuntimeFunctionCallsSuppressedEvent, RuntimeFunctionEnterEvent, RuntimeFunctionExitEvent, RuntimeFunctionThrowEvent, RuntimeHistoryLink, RuntimeProvenance, RuntimeStateSizeTruncation, RuntimeThrowLocation, } from './create-ingest-event/runtime-execution-state-types';
|
|
12
12
|
export { hashInstrumentationManifest } from './derivation/hash-instrumentation-manifest';
|
|
13
|
+
export { RASPUTIN_REDACTED } from './derivation/rasputin-redacted';
|
|
13
14
|
export { isRasputinTaggedValue, RASPUTIN_WIRE_TAG, type RasputinTaggedValue, rasputinOmitted, rasputinRedacted, rasputinTagKind, rasputinTruncated, rasputinUnavailable, rasputinUnknown, } from './derivation/rasputin-wire-tag';
|
|
15
|
+
export { createEnvSecretMatcher, MAX_ENV_SECRET_NEEDLE_LENGTH, } from './derivation/redact-env-secret-values';
|
|
14
16
|
export { defaultSensitivePropertyNames, propertyNameIsSensitive, } from './derivation/sensitive-property-name';
|
|
15
17
|
export type { InstrumentationArgIdentifier, InstrumentationManifestCallSite, InstrumentationManifestContent, InstrumentationManifestDestructure, InstrumentationManifestFunction, InstrumentationParamBinding, InstrumentationSkipReason, SourceVerification, SourceVerificationIssue, } from './instrumentation-manifest/instrumentation-manifest-types';
|
|
16
18
|
export { INSTRUMENTATION_MANIFEST_SCHEMA_VERSION } from './instrumentation-manifest/instrumentation-manifest-types';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -361,6 +361,356 @@ var finalizeResolution = (resolution, stackFrames) => {
|
|
|
361
361
|
return "exact";
|
|
362
362
|
};
|
|
363
363
|
|
|
364
|
+
// src/derivation/rasputin-redacted.ts
|
|
365
|
+
var RASPUTIN_REDACTED = "[RASPUTIN_REDACTED]";
|
|
366
|
+
|
|
367
|
+
// src/derivation/sensitive-property-name.ts
|
|
368
|
+
var DEFAULT_SENSITIVE_PROPERTY_NAMES = [
|
|
369
|
+
"password",
|
|
370
|
+
"passwd",
|
|
371
|
+
"pwd",
|
|
372
|
+
"passphrase",
|
|
373
|
+
"token",
|
|
374
|
+
"accesstoken",
|
|
375
|
+
"refreshtoken",
|
|
376
|
+
"sessiontoken",
|
|
377
|
+
"authorization",
|
|
378
|
+
"auth",
|
|
379
|
+
"bearer",
|
|
380
|
+
"cookie",
|
|
381
|
+
"cookies",
|
|
382
|
+
"signedcookies",
|
|
383
|
+
"setcookie",
|
|
384
|
+
"secret",
|
|
385
|
+
"secrets",
|
|
386
|
+
"clientsecret",
|
|
387
|
+
"apikey",
|
|
388
|
+
"xapikey",
|
|
389
|
+
"credential",
|
|
390
|
+
"credentials",
|
|
391
|
+
"privatekey",
|
|
392
|
+
"privkey",
|
|
393
|
+
"pem",
|
|
394
|
+
"jwt",
|
|
395
|
+
"otp",
|
|
396
|
+
"totp",
|
|
397
|
+
"pin",
|
|
398
|
+
"mfacode",
|
|
399
|
+
"sessionid",
|
|
400
|
+
"sid",
|
|
401
|
+
"databaseurl",
|
|
402
|
+
"connectionstring",
|
|
403
|
+
"dsn",
|
|
404
|
+
"mongouri",
|
|
405
|
+
"redisurl",
|
|
406
|
+
"signingkey",
|
|
407
|
+
"encryptionkey",
|
|
408
|
+
"cvv",
|
|
409
|
+
"cvc",
|
|
410
|
+
"cardnumber",
|
|
411
|
+
"ssn",
|
|
412
|
+
"creditcard",
|
|
413
|
+
"securitycode",
|
|
414
|
+
"twofactorcode",
|
|
415
|
+
"masterkey",
|
|
416
|
+
"servicerolekey",
|
|
417
|
+
"stripekey",
|
|
418
|
+
"rawheaders"
|
|
419
|
+
];
|
|
420
|
+
var DEFAULT_SENSITIVE_PROPERTY_NAME_SET = new Set(DEFAULT_SENSITIVE_PROPERTY_NAMES);
|
|
421
|
+
var SENSITIVE_SEGMENTS = /* @__PURE__ */ new Set([
|
|
422
|
+
"password",
|
|
423
|
+
"passwd",
|
|
424
|
+
"pwd",
|
|
425
|
+
"passphrase",
|
|
426
|
+
"token",
|
|
427
|
+
"secret",
|
|
428
|
+
"cookie",
|
|
429
|
+
"cookies",
|
|
430
|
+
"authorization",
|
|
431
|
+
"auth",
|
|
432
|
+
"bearer",
|
|
433
|
+
"credential",
|
|
434
|
+
"credentials",
|
|
435
|
+
"jwt",
|
|
436
|
+
"otp",
|
|
437
|
+
"totp",
|
|
438
|
+
"pin",
|
|
439
|
+
"sid",
|
|
440
|
+
"dsn",
|
|
441
|
+
"pem",
|
|
442
|
+
"privkey",
|
|
443
|
+
"cvv",
|
|
444
|
+
"cvc",
|
|
445
|
+
"ssn",
|
|
446
|
+
"secrets"
|
|
447
|
+
]);
|
|
448
|
+
var SENSITIVE_SUFFIXES = [
|
|
449
|
+
"password",
|
|
450
|
+
"passwd",
|
|
451
|
+
"token",
|
|
452
|
+
"secret",
|
|
453
|
+
"apikey",
|
|
454
|
+
"privatekey",
|
|
455
|
+
"credential",
|
|
456
|
+
"credentials",
|
|
457
|
+
"cookie"
|
|
458
|
+
];
|
|
459
|
+
var compactKey = (key) => {
|
|
460
|
+
let compacted = "";
|
|
461
|
+
for (let index = 0; index < key.length; index++) {
|
|
462
|
+
const code = key.charCodeAt(index);
|
|
463
|
+
if (code === 45 || code === 46 || code === 95) continue;
|
|
464
|
+
compacted += code >= 65 && code <= 90 ? String.fromCharCode(code + 32) : key[index];
|
|
465
|
+
}
|
|
466
|
+
return compacted;
|
|
467
|
+
};
|
|
468
|
+
var stripTrailingDigits = (value) => {
|
|
469
|
+
let end = value.length;
|
|
470
|
+
while (end > 0) {
|
|
471
|
+
const code = value.charCodeAt(end - 1);
|
|
472
|
+
if (code < 48 || code > 57) break;
|
|
473
|
+
end--;
|
|
474
|
+
}
|
|
475
|
+
return end === 0 ? value : value.slice(0, end);
|
|
476
|
+
};
|
|
477
|
+
var segmentsOf = (key) => {
|
|
478
|
+
const segments = [];
|
|
479
|
+
let current = "";
|
|
480
|
+
for (let index = 0; index < key.length; index++) {
|
|
481
|
+
const char = key[index] ?? "";
|
|
482
|
+
const code = key.charCodeAt(index);
|
|
483
|
+
if (code === 45 || code === 46 || code === 95) {
|
|
484
|
+
if (current) segments.push(current.toLowerCase());
|
|
485
|
+
current = "";
|
|
486
|
+
continue;
|
|
487
|
+
}
|
|
488
|
+
if (current && code >= 65 && code <= 90) {
|
|
489
|
+
const prev = current.charCodeAt(current.length - 1);
|
|
490
|
+
const prevIsLower = prev >= 97 && prev <= 122;
|
|
491
|
+
const next = key.charCodeAt(index + 1);
|
|
492
|
+
const nextIsLower = next >= 97 && next <= 122;
|
|
493
|
+
if (prevIsLower || nextIsLower) {
|
|
494
|
+
segments.push(current.toLowerCase());
|
|
495
|
+
current = char;
|
|
496
|
+
continue;
|
|
497
|
+
}
|
|
498
|
+
}
|
|
499
|
+
current += char;
|
|
500
|
+
}
|
|
501
|
+
if (current) segments.push(current.toLowerCase());
|
|
502
|
+
return segments;
|
|
503
|
+
};
|
|
504
|
+
var adjacentPairsSensitive = (left, right) => left === "api" && right === "key" || left === "private" && right === "key" || left === "client" && right === "secret" || left === "set" && right === "cookie" || left === "database" && right === "url" || left === "connection" && right === "string" || left === "mongo" && (right === "uri" || right === "url") || left === "mongodb" && (right === "uri" || right === "url") || left === "redis" && (right === "uri" || right === "url") || left === "postgres" && (right === "uri" || right === "url") || left === "database" && right === "uri" || left === "signing" && right === "key" || left === "master" && right === "key" || left === "stripe" && right === "key" || left === "service" && right === "role" || left === "security" && right === "code" || left === "two" && right === "factor" || left === "encryption" && right === "key" || left === "session" && (right === "id" || right === "key" || right === "token") || left === "card" && right === "number" || left === "mfa" && right === "code";
|
|
505
|
+
var defaultSensitivePropertyNames = () => DEFAULT_SENSITIVE_PROPERTY_NAME_SET;
|
|
506
|
+
var propertyNameIsSensitive = (key) => {
|
|
507
|
+
const compacted = compactKey(key);
|
|
508
|
+
const compactForms = [compacted, stripTrailingDigits(compacted)].filter(
|
|
509
|
+
(value, index, values) => value.length > 0 && values.indexOf(value) === index
|
|
510
|
+
);
|
|
511
|
+
for (const form of compactForms) {
|
|
512
|
+
if (DEFAULT_SENSITIVE_PROPERTY_NAME_SET.has(form)) return true;
|
|
513
|
+
for (const suffix of SENSITIVE_SUFFIXES) {
|
|
514
|
+
if (form.endsWith(suffix)) return true;
|
|
515
|
+
}
|
|
516
|
+
if (form.includes("apikey") || form.includes("xapikey")) return true;
|
|
517
|
+
}
|
|
518
|
+
const segments = segmentsOf(key).map((segment) => stripTrailingDigits(segment) || segment);
|
|
519
|
+
for (const segment of segments) {
|
|
520
|
+
if (SENSITIVE_SEGMENTS.has(segment)) return true;
|
|
521
|
+
}
|
|
522
|
+
for (let index = 0; index < segments.length - 1; index++) {
|
|
523
|
+
const left = segments[index];
|
|
524
|
+
const right = segments[index + 1];
|
|
525
|
+
if (left && right && adjacentPairsSensitive(left, right)) return true;
|
|
526
|
+
}
|
|
527
|
+
return false;
|
|
528
|
+
};
|
|
529
|
+
|
|
530
|
+
// src/derivation/redact-env-secret-values.ts
|
|
531
|
+
var MIN_ENV_SECRET_LENGTH = 6;
|
|
532
|
+
var MAX_ENV_SECRET_NEEDLE_LENGTH = 512;
|
|
533
|
+
var COMMON_CONFIG_VALUES = /* @__PURE__ */ new Set([
|
|
534
|
+
"enabled",
|
|
535
|
+
"disabled",
|
|
536
|
+
"production",
|
|
537
|
+
"development",
|
|
538
|
+
"staging",
|
|
539
|
+
"testing",
|
|
540
|
+
"localhost",
|
|
541
|
+
"undefined"
|
|
542
|
+
]);
|
|
543
|
+
var identityMatcher = {
|
|
544
|
+
redact: (text) => text,
|
|
545
|
+
needleCount: 0
|
|
546
|
+
};
|
|
547
|
+
var envKeyLooksSensitive = (key) => propertyNameIsSensitive(key) || key.replace(/[-._]/g, "").toLowerCase().includes("accesskey");
|
|
548
|
+
var isCollectableSecretValue = (value) => value.length >= MIN_ENV_SECRET_LENGTH && !COMMON_CONFIG_VALUES.has(value.toLowerCase());
|
|
549
|
+
var looksLikeUrl = (value) => {
|
|
550
|
+
const schemeEnd = value.indexOf("://");
|
|
551
|
+
return schemeEnd > 0 && schemeEnd < 32;
|
|
552
|
+
};
|
|
553
|
+
var urlUserinfo = (value) => {
|
|
554
|
+
const schemeEnd = value.indexOf("://");
|
|
555
|
+
if (schemeEnd <= 0) return void 0;
|
|
556
|
+
const rest = value.slice(schemeEnd + 3);
|
|
557
|
+
let authorityEnd = rest.length;
|
|
558
|
+
for (const marker of ["/", "?", "#"]) {
|
|
559
|
+
const at = rest.indexOf(marker);
|
|
560
|
+
if (at >= 0 && at < authorityEnd) authorityEnd = at;
|
|
561
|
+
}
|
|
562
|
+
const authority = rest.slice(0, authorityEnd);
|
|
563
|
+
const userinfoEnd = authority.lastIndexOf("@");
|
|
564
|
+
if (userinfoEnd < 0) return void 0;
|
|
565
|
+
const userinfo = authority.slice(0, userinfoEnd);
|
|
566
|
+
if (!userinfo) return void 0;
|
|
567
|
+
const colon = userinfo.indexOf(":");
|
|
568
|
+
const encodedPassword = colon < 0 ? "" : userinfo.slice(colon + 1);
|
|
569
|
+
if (!encodedPassword) return void 0;
|
|
570
|
+
let password = encodedPassword;
|
|
571
|
+
try {
|
|
572
|
+
password = decodeURIComponent(encodedPassword.replace(/\+/g, " "));
|
|
573
|
+
} catch {
|
|
574
|
+
password = encodedPassword;
|
|
575
|
+
}
|
|
576
|
+
return { password, encodedPassword, userinfo };
|
|
577
|
+
};
|
|
578
|
+
var querySecretValues = (value) => {
|
|
579
|
+
const queryAt = value.indexOf("?");
|
|
580
|
+
if (queryAt < 0) return [];
|
|
581
|
+
const hashAt = value.indexOf("#", queryAt + 1);
|
|
582
|
+
const query = hashAt < 0 ? value.slice(queryAt + 1) : value.slice(queryAt + 1, hashAt);
|
|
583
|
+
if (!query.includes("=")) return [];
|
|
584
|
+
const found = [];
|
|
585
|
+
const parts = query.split("&");
|
|
586
|
+
for (let index = 0; index < parts.length; index++) {
|
|
587
|
+
const part = parts[index];
|
|
588
|
+
if (!part) continue;
|
|
589
|
+
const equals = part.indexOf("=");
|
|
590
|
+
if (equals <= 0) continue;
|
|
591
|
+
const rawKey = part.slice(0, equals);
|
|
592
|
+
let key = rawKey;
|
|
593
|
+
try {
|
|
594
|
+
key = decodeURIComponent(rawKey.replace(/\+/g, " "));
|
|
595
|
+
} catch {
|
|
596
|
+
key = rawKey;
|
|
597
|
+
}
|
|
598
|
+
if (!propertyNameIsSensitive(key) && !propertyNameIsSensitive(rawKey)) continue;
|
|
599
|
+
const rawValue = part.slice(equals + 1);
|
|
600
|
+
if (!rawValue) continue;
|
|
601
|
+
found.push(rawValue);
|
|
602
|
+
try {
|
|
603
|
+
const decoded = decodeURIComponent(rawValue.replace(/\+/g, " "));
|
|
604
|
+
if (decoded !== rawValue) found.push(decoded);
|
|
605
|
+
} catch {
|
|
606
|
+
}
|
|
607
|
+
}
|
|
608
|
+
return found;
|
|
609
|
+
};
|
|
610
|
+
var addNeedle = (needles, value) => {
|
|
611
|
+
if (value.length < MIN_ENV_SECRET_LENGTH) return;
|
|
612
|
+
needles.add(
|
|
613
|
+
value.length > MAX_ENV_SECRET_NEEDLE_LENGTH ? value.slice(0, MAX_ENV_SECRET_NEEDLE_LENGTH) : value
|
|
614
|
+
);
|
|
615
|
+
};
|
|
616
|
+
var addWithRepresentations = (needles, value) => {
|
|
617
|
+
addNeedle(needles, value);
|
|
618
|
+
if (value.length > MAX_ENV_SECRET_NEEDLE_LENGTH) return;
|
|
619
|
+
try {
|
|
620
|
+
const encoded = encodeURIComponent(value);
|
|
621
|
+
if (encoded !== value) addNeedle(needles, encoded);
|
|
622
|
+
const plus = encoded.replace(/%20/g, "+");
|
|
623
|
+
if (plus !== encoded) addNeedle(needles, plus);
|
|
624
|
+
} catch {
|
|
625
|
+
}
|
|
626
|
+
try {
|
|
627
|
+
const jsonEscaped = JSON.stringify(value).slice(1, -1);
|
|
628
|
+
if (jsonEscaped !== value) addNeedle(needles, jsonEscaped);
|
|
629
|
+
} catch {
|
|
630
|
+
}
|
|
631
|
+
};
|
|
632
|
+
var collectEnvSecretValues = (env = process.env) => {
|
|
633
|
+
const needles = /* @__PURE__ */ new Set();
|
|
634
|
+
let keys;
|
|
635
|
+
try {
|
|
636
|
+
keys = Object.keys(env);
|
|
637
|
+
} catch {
|
|
638
|
+
return [];
|
|
639
|
+
}
|
|
640
|
+
for (let index = 0; index < keys.length; index++) {
|
|
641
|
+
const key = keys[index];
|
|
642
|
+
if (!key || key === "PWD") continue;
|
|
643
|
+
let value;
|
|
644
|
+
try {
|
|
645
|
+
value = env[key];
|
|
646
|
+
} catch {
|
|
647
|
+
continue;
|
|
648
|
+
}
|
|
649
|
+
if (typeof value !== "string" || value.length === 0) continue;
|
|
650
|
+
try {
|
|
651
|
+
const userinfo = urlUserinfo(value);
|
|
652
|
+
if (userinfo) {
|
|
653
|
+
addWithRepresentations(needles, userinfo.password);
|
|
654
|
+
if (userinfo.encodedPassword !== userinfo.password) {
|
|
655
|
+
addWithRepresentations(needles, userinfo.encodedPassword);
|
|
656
|
+
}
|
|
657
|
+
if (userinfo.userinfo.length >= MIN_ENV_SECRET_LENGTH) {
|
|
658
|
+
addWithRepresentations(needles, userinfo.userinfo);
|
|
659
|
+
}
|
|
660
|
+
}
|
|
661
|
+
const queryValues = querySecretValues(value);
|
|
662
|
+
for (let queryIndex = 0; queryIndex < queryValues.length; queryIndex++) {
|
|
663
|
+
const part = queryValues[queryIndex];
|
|
664
|
+
if (part) addWithRepresentations(needles, part);
|
|
665
|
+
}
|
|
666
|
+
if (!envKeyLooksSensitive(key) || !isCollectableSecretValue(value)) continue;
|
|
667
|
+
if (looksLikeUrl(value) && !userinfo && queryValues.length === 0) continue;
|
|
668
|
+
addWithRepresentations(needles, value);
|
|
669
|
+
} catch {
|
|
670
|
+
}
|
|
671
|
+
}
|
|
672
|
+
return [...needles];
|
|
673
|
+
};
|
|
674
|
+
var createExactSecretMatcher = (secrets) => {
|
|
675
|
+
const unique = [];
|
|
676
|
+
const exact = /* @__PURE__ */ new Set();
|
|
677
|
+
for (let index = 0; index < secrets.length; index++) {
|
|
678
|
+
const secret = secrets[index];
|
|
679
|
+
if (!secret || secret.length < MIN_ENV_SECRET_LENGTH || exact.has(secret)) continue;
|
|
680
|
+
exact.add(secret);
|
|
681
|
+
unique.push(secret);
|
|
682
|
+
}
|
|
683
|
+
if (unique.length === 0) return identityMatcher;
|
|
684
|
+
unique.sort((left, right) => right.length - left.length);
|
|
685
|
+
const minLen = unique[unique.length - 1]?.length ?? MIN_ENV_SECRET_LENGTH;
|
|
686
|
+
return {
|
|
687
|
+
needleCount: unique.length,
|
|
688
|
+
redact(text) {
|
|
689
|
+
try {
|
|
690
|
+
if (text.length < minLen) return text;
|
|
691
|
+
if (exact.has(text)) return RASPUTIN_REDACTED;
|
|
692
|
+
let result = text;
|
|
693
|
+
for (let index = 0; index < unique.length; index++) {
|
|
694
|
+
const needle = unique[index];
|
|
695
|
+
if (!needle || result.length < needle.length) continue;
|
|
696
|
+
if (result.indexOf(needle) === -1) continue;
|
|
697
|
+
result = result.replaceAll(needle, RASPUTIN_REDACTED);
|
|
698
|
+
}
|
|
699
|
+
return result;
|
|
700
|
+
} catch {
|
|
701
|
+
return text;
|
|
702
|
+
}
|
|
703
|
+
}
|
|
704
|
+
};
|
|
705
|
+
};
|
|
706
|
+
var createEnvSecretMatcher = (env = process.env) => {
|
|
707
|
+
try {
|
|
708
|
+
return createExactSecretMatcher(collectEnvSecretValues(env));
|
|
709
|
+
} catch {
|
|
710
|
+
return identityMatcher;
|
|
711
|
+
}
|
|
712
|
+
};
|
|
713
|
+
|
|
364
714
|
// src/normalize-frames/normalize-frames.ts
|
|
365
715
|
import { isAbsolute as isAbsolute2, resolve as resolve2 } from "node:path";
|
|
366
716
|
import { fileURLToPath as fileURLToPath2 } from "node:url";
|
|
@@ -808,7 +1158,7 @@ var resolveSourceMaps = async (frames) => {
|
|
|
808
1158
|
|
|
809
1159
|
// src/sdk-meta.ts
|
|
810
1160
|
var SDK_NAME = "@rasputin-ai/core";
|
|
811
|
-
var SDK_VERSION = "0.7.1";
|
|
1161
|
+
var SDK_VERSION = "0.7.2-beta.1";
|
|
812
1162
|
|
|
813
1163
|
// src/suppression/identity-needs-message-template.ts
|
|
814
1164
|
var identityNeedsMessageTemplate = (type, code) => {
|
|
@@ -1937,6 +2287,7 @@ var createClient = (options, hooks = {}) => {
|
|
|
1937
2287
|
const activation = resolveClientActivation(options);
|
|
1938
2288
|
if (!activation.enabled) return noopClient();
|
|
1939
2289
|
const { ingestToken, projectApiKey, apiUrl, release } = activation;
|
|
2290
|
+
const redactEnvSecrets = createEnvSecretMatcher().redact;
|
|
1940
2291
|
const environment = options.environment;
|
|
1941
2292
|
const { ingestUrl, deployUrl } = resolveEndpointUrls(apiUrl);
|
|
1942
2293
|
const repoRoot = resolveRepoRoot(options);
|
|
@@ -2008,6 +2359,7 @@ var createClient = (options, hooks = {}) => {
|
|
|
2008
2359
|
resolution: "none",
|
|
2009
2360
|
request: context?.request
|
|
2010
2361
|
});
|
|
2362
|
+
event.message = redactEnvSecrets(event.message);
|
|
2011
2363
|
const decision = suppression.decide({
|
|
2012
2364
|
errorType: event.type,
|
|
2013
2365
|
message: event.message,
|
|
@@ -2139,169 +2491,6 @@ var isRasputinTaggedValue = (value) => {
|
|
|
2139
2491
|
};
|
|
2140
2492
|
var rasputinTagKind = (value) => isRasputinTaggedValue(value) ? value[1] : void 0;
|
|
2141
2493
|
|
|
2142
|
-
// src/derivation/sensitive-property-name.ts
|
|
2143
|
-
var DEFAULT_SENSITIVE_PROPERTY_NAMES = [
|
|
2144
|
-
"password",
|
|
2145
|
-
"passwd",
|
|
2146
|
-
"pwd",
|
|
2147
|
-
"passphrase",
|
|
2148
|
-
"token",
|
|
2149
|
-
"accesstoken",
|
|
2150
|
-
"refreshtoken",
|
|
2151
|
-
"sessiontoken",
|
|
2152
|
-
"authorization",
|
|
2153
|
-
"auth",
|
|
2154
|
-
"bearer",
|
|
2155
|
-
"cookie",
|
|
2156
|
-
"cookies",
|
|
2157
|
-
"signedcookies",
|
|
2158
|
-
"setcookie",
|
|
2159
|
-
"secret",
|
|
2160
|
-
"secrets",
|
|
2161
|
-
"clientsecret",
|
|
2162
|
-
"apikey",
|
|
2163
|
-
"xapikey",
|
|
2164
|
-
"credential",
|
|
2165
|
-
"credentials",
|
|
2166
|
-
"privatekey",
|
|
2167
|
-
"privkey",
|
|
2168
|
-
"pem",
|
|
2169
|
-
"jwt",
|
|
2170
|
-
"otp",
|
|
2171
|
-
"totp",
|
|
2172
|
-
"pin",
|
|
2173
|
-
"mfacode",
|
|
2174
|
-
"sessionid",
|
|
2175
|
-
"sid",
|
|
2176
|
-
"databaseurl",
|
|
2177
|
-
"connectionstring",
|
|
2178
|
-
"dsn",
|
|
2179
|
-
"mongouri",
|
|
2180
|
-
"redisurl",
|
|
2181
|
-
"signingkey",
|
|
2182
|
-
"encryptionkey",
|
|
2183
|
-
"cvv",
|
|
2184
|
-
"cvc",
|
|
2185
|
-
"cardnumber",
|
|
2186
|
-
"ssn",
|
|
2187
|
-
"creditcard",
|
|
2188
|
-
"securitycode",
|
|
2189
|
-
"twofactorcode",
|
|
2190
|
-
"masterkey",
|
|
2191
|
-
"servicerolekey",
|
|
2192
|
-
"stripekey",
|
|
2193
|
-
"rawheaders"
|
|
2194
|
-
];
|
|
2195
|
-
var DEFAULT_SENSITIVE_PROPERTY_NAME_SET = new Set(DEFAULT_SENSITIVE_PROPERTY_NAMES);
|
|
2196
|
-
var SENSITIVE_SEGMENTS = /* @__PURE__ */ new Set([
|
|
2197
|
-
"password",
|
|
2198
|
-
"passwd",
|
|
2199
|
-
"pwd",
|
|
2200
|
-
"passphrase",
|
|
2201
|
-
"token",
|
|
2202
|
-
"secret",
|
|
2203
|
-
"cookie",
|
|
2204
|
-
"cookies",
|
|
2205
|
-
"authorization",
|
|
2206
|
-
"auth",
|
|
2207
|
-
"bearer",
|
|
2208
|
-
"credential",
|
|
2209
|
-
"credentials",
|
|
2210
|
-
"jwt",
|
|
2211
|
-
"otp",
|
|
2212
|
-
"totp",
|
|
2213
|
-
"pin",
|
|
2214
|
-
"sid",
|
|
2215
|
-
"dsn",
|
|
2216
|
-
"pem",
|
|
2217
|
-
"privkey",
|
|
2218
|
-
"cvv",
|
|
2219
|
-
"cvc",
|
|
2220
|
-
"ssn",
|
|
2221
|
-
"secrets"
|
|
2222
|
-
]);
|
|
2223
|
-
var SENSITIVE_SUFFIXES = [
|
|
2224
|
-
"password",
|
|
2225
|
-
"passwd",
|
|
2226
|
-
"token",
|
|
2227
|
-
"secret",
|
|
2228
|
-
"apikey",
|
|
2229
|
-
"privatekey",
|
|
2230
|
-
"credential",
|
|
2231
|
-
"credentials",
|
|
2232
|
-
"cookie"
|
|
2233
|
-
];
|
|
2234
|
-
var compactKey = (key) => {
|
|
2235
|
-
let compacted = "";
|
|
2236
|
-
for (let index = 0; index < key.length; index++) {
|
|
2237
|
-
const code = key.charCodeAt(index);
|
|
2238
|
-
if (code === 45 || code === 46 || code === 95) continue;
|
|
2239
|
-
compacted += code >= 65 && code <= 90 ? String.fromCharCode(code + 32) : key[index];
|
|
2240
|
-
}
|
|
2241
|
-
return compacted;
|
|
2242
|
-
};
|
|
2243
|
-
var stripTrailingDigits = (value) => {
|
|
2244
|
-
let end = value.length;
|
|
2245
|
-
while (end > 0) {
|
|
2246
|
-
const code = value.charCodeAt(end - 1);
|
|
2247
|
-
if (code < 48 || code > 57) break;
|
|
2248
|
-
end--;
|
|
2249
|
-
}
|
|
2250
|
-
return end === 0 ? value : value.slice(0, end);
|
|
2251
|
-
};
|
|
2252
|
-
var segmentsOf = (key) => {
|
|
2253
|
-
const segments = [];
|
|
2254
|
-
let current = "";
|
|
2255
|
-
for (let index = 0; index < key.length; index++) {
|
|
2256
|
-
const char = key[index] ?? "";
|
|
2257
|
-
const code = key.charCodeAt(index);
|
|
2258
|
-
if (code === 45 || code === 46 || code === 95) {
|
|
2259
|
-
if (current) segments.push(current.toLowerCase());
|
|
2260
|
-
current = "";
|
|
2261
|
-
continue;
|
|
2262
|
-
}
|
|
2263
|
-
if (current && code >= 65 && code <= 90) {
|
|
2264
|
-
const prev = current.charCodeAt(current.length - 1);
|
|
2265
|
-
const prevIsLower = prev >= 97 && prev <= 122;
|
|
2266
|
-
const next = key.charCodeAt(index + 1);
|
|
2267
|
-
const nextIsLower = next >= 97 && next <= 122;
|
|
2268
|
-
if (prevIsLower || nextIsLower) {
|
|
2269
|
-
segments.push(current.toLowerCase());
|
|
2270
|
-
current = char;
|
|
2271
|
-
continue;
|
|
2272
|
-
}
|
|
2273
|
-
}
|
|
2274
|
-
current += char;
|
|
2275
|
-
}
|
|
2276
|
-
if (current) segments.push(current.toLowerCase());
|
|
2277
|
-
return segments;
|
|
2278
|
-
};
|
|
2279
|
-
var adjacentPairsSensitive = (left, right) => left === "api" && right === "key" || left === "private" && right === "key" || left === "client" && right === "secret" || left === "set" && right === "cookie" || left === "database" && right === "url" || left === "connection" && right === "string" || left === "mongo" && (right === "uri" || right === "url") || left === "mongodb" && (right === "uri" || right === "url") || left === "redis" && (right === "uri" || right === "url") || left === "postgres" && (right === "uri" || right === "url") || left === "database" && right === "uri" || left === "signing" && right === "key" || left === "master" && right === "key" || left === "stripe" && right === "key" || left === "service" && right === "role" || left === "security" && right === "code" || left === "two" && right === "factor" || left === "encryption" && right === "key" || left === "session" && (right === "id" || right === "key" || right === "token") || left === "card" && right === "number" || left === "mfa" && right === "code";
|
|
2280
|
-
var defaultSensitivePropertyNames = () => DEFAULT_SENSITIVE_PROPERTY_NAME_SET;
|
|
2281
|
-
var propertyNameIsSensitive = (key) => {
|
|
2282
|
-
const compacted = compactKey(key);
|
|
2283
|
-
const compactForms = [compacted, stripTrailingDigits(compacted)].filter(
|
|
2284
|
-
(value, index, values) => value.length > 0 && values.indexOf(value) === index
|
|
2285
|
-
);
|
|
2286
|
-
for (const form of compactForms) {
|
|
2287
|
-
if (DEFAULT_SENSITIVE_PROPERTY_NAME_SET.has(form)) return true;
|
|
2288
|
-
for (const suffix of SENSITIVE_SUFFIXES) {
|
|
2289
|
-
if (form.endsWith(suffix)) return true;
|
|
2290
|
-
}
|
|
2291
|
-
if (form.includes("apikey") || form.includes("xapikey")) return true;
|
|
2292
|
-
}
|
|
2293
|
-
const segments = segmentsOf(key).map((segment) => stripTrailingDigits(segment) || segment);
|
|
2294
|
-
for (const segment of segments) {
|
|
2295
|
-
if (SENSITIVE_SEGMENTS.has(segment)) return true;
|
|
2296
|
-
}
|
|
2297
|
-
for (let index = 0; index < segments.length - 1; index++) {
|
|
2298
|
-
const left = segments[index];
|
|
2299
|
-
const right = segments[index + 1];
|
|
2300
|
-
if (left && right && adjacentPairsSensitive(left, right)) return true;
|
|
2301
|
-
}
|
|
2302
|
-
return false;
|
|
2303
|
-
};
|
|
2304
|
-
|
|
2305
2494
|
// src/instrumentation-manifest/instrumentation-manifest-types.ts
|
|
2306
2495
|
var INSTRUMENTATION_MANIFEST_SCHEMA_VERSION = 3;
|
|
2307
2496
|
|
|
@@ -2333,9 +2522,12 @@ var uploadInstrumentationManifest = async (options) => {
|
|
|
2333
2522
|
};
|
|
2334
2523
|
export {
|
|
2335
2524
|
INSTRUMENTATION_MANIFEST_SCHEMA_VERSION,
|
|
2525
|
+
MAX_ENV_SECRET_NEEDLE_LENGTH,
|
|
2526
|
+
RASPUTIN_REDACTED,
|
|
2336
2527
|
RASPUTIN_WIRE_TAG,
|
|
2337
2528
|
announceDeploy,
|
|
2338
2529
|
createClient,
|
|
2530
|
+
createEnvSecretMatcher,
|
|
2339
2531
|
createIngestEvent,
|
|
2340
2532
|
createSuppression,
|
|
2341
2533
|
createTransport,
|
package/dist/sdk-meta.d.ts
CHANGED
package/dist/sdk-meta.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk-meta.d.ts","sourceRoot":"","sources":["../src/sdk-meta.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,eAAO,MAAM,QAAQ,sBAAsB,CAAC;AAC5C,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"sdk-meta.d.ts","sourceRoot":"","sources":["../src/sdk-meta.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,eAAO,MAAM,QAAQ,sBAAsB,CAAC;AAC5C,eAAO,MAAM,WAAW,iBAAiB,CAAC"}
|