instar 1.3.1247 → 1.3.1249

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.
Files changed (57) hide show
  1. package/dist/commands/server.d.ts.map +1 -1
  2. package/dist/commands/server.js +20 -0
  3. package/dist/commands/server.js.map +1 -1
  4. package/dist/commands/testAsSelfValidation.js +1 -1
  5. package/dist/commands/testAsSelfValidation.js.map +1 -1
  6. package/dist/core/ExecutionJournal.d.ts.map +1 -1
  7. package/dist/core/ExecutionJournal.js +2 -0
  8. package/dist/core/ExecutionJournal.js.map +1 -1
  9. package/dist/core/JevSignalShadow.d.ts +98 -0
  10. package/dist/core/JevSignalShadow.d.ts.map +1 -0
  11. package/dist/core/JevSignalShadow.js +230 -0
  12. package/dist/core/JevSignalShadow.js.map +1 -0
  13. package/dist/core/MessagingToneGate.d.ts +10 -0
  14. package/dist/core/MessagingToneGate.d.ts.map +1 -1
  15. package/dist/core/MessagingToneGate.js +18 -0
  16. package/dist/core/MessagingToneGate.js.map +1 -1
  17. package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
  18. package/dist/core/PostUpdateMigrator.js +17 -0
  19. package/dist/core/PostUpdateMigrator.js.map +1 -1
  20. package/dist/core/durableSecretScrub.d.ts +6 -4
  21. package/dist/core/durableSecretScrub.d.ts.map +1 -1
  22. package/dist/core/durableSecretScrub.js +28 -6
  23. package/dist/core/durableSecretScrub.js.map +1 -1
  24. package/dist/core/redactUrl.d.ts.map +1 -1
  25. package/dist/core/redactUrl.js +1 -0
  26. package/dist/core/redactUrl.js.map +1 -1
  27. package/dist/core/types.d.ts +18 -0
  28. package/dist/core/types.d.ts.map +1 -1
  29. package/dist/core/types.js.map +1 -1
  30. package/dist/data/standards-guard-index.json +1 -1
  31. package/dist/data/standards-guard-index.meta.json +2 -2
  32. package/dist/data/standards-registry.meta.json +1 -1
  33. package/dist/messaging/outbound-credential-guard.d.ts.map +1 -1
  34. package/dist/messaging/outbound-credential-guard.js +31 -8
  35. package/dist/messaging/outbound-credential-guard.js.map +1 -1
  36. package/dist/monitoring/ClaimObservation.js +1 -1
  37. package/dist/monitoring/ClaimObservation.js.map +1 -1
  38. package/dist/monitoring/PromiseBeacon.js +1 -1
  39. package/dist/monitoring/PromiseBeacon.js.map +1 -1
  40. package/dist/server/routes.d.ts.map +1 -1
  41. package/dist/server/routes.js +30 -0
  42. package/dist/server/routes.js.map +1 -1
  43. package/dist/threadline/ContentClassifier.d.ts.map +1 -1
  44. package/dist/threadline/ContentClassifier.js +4 -0
  45. package/dist/threadline/ContentClassifier.js.map +1 -1
  46. package/dist/threadline/openConversationBrief.js +1 -1
  47. package/dist/threadline/openConversationBrief.js.map +1 -1
  48. package/package.json +1 -1
  49. package/scripts/audit-secret-patterns.mjs +1 -0
  50. package/scripts/jev-shadow-report.mjs +89 -0
  51. package/src/data/builtin-manifest.json +63 -63
  52. package/src/data/standards-guard-index.json +1 -1
  53. package/src/data/standards-guard-index.meta.json +2 -2
  54. package/src/data/standards-registry.meta.json +1 -1
  55. package/upgrades/{1.3.1247.md → 1.3.1249.md} +65 -0
  56. package/upgrades/side-effects/jev-signal-shadow.md +138 -0
  57. package/upgrades/side-effects/outbound-credential-wall-modern-key-formats.md +178 -0
@@ -75,10 +75,12 @@ interface ScrubPattern {
75
75
  }
76
76
  /**
77
77
  * The authoritative pattern set — the UNION of the three pre-existing copies
78
- * (spec Frontloaded Decision #1). ORDER MATTERS for overlap resolution: the
79
- * more-specific prefix patterns (anthropic before generic openai `sk-`, stripe
80
- * `sk_` before generic) sit earlier so the greedy first-wins overlap resolver
81
- * labels a span with its most-specific kind.
78
+ * (spec Frontloaded Decision #1). Overlap precedence is decided by the resolver,
79
+ * NOT by array order: overlapping spans are sorted by start position, then
80
+ * longest match wins; array order only breaks an exact start+end tie (stable
81
+ * sort). The more-specific prefix patterns still sit before the generic ones so
82
+ * those exact ties label a span with its most-specific kind — do not "restore"
83
+ * order-based precedence on the strength of an older reading of this comment.
82
84
  *
83
85
  * LINEARITY CONTRACT (spec §2): every pattern uses SINGLE quantifiers over
84
86
  * character classes with no nesting — no `(x+)+` / `(x*)*` shapes — so a
@@ -1 +1 @@
1
- {"version":3,"file":"durableSecretScrub.d.ts","sourceRoot":"","sources":["../../src/core/durableSecretScrub.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH,+EAA+E;AAC/E,MAAM,MAAM,iBAAiB,GACzB,eAAe,GACf,YAAY,GACZ,cAAc,GACd,aAAa,GACb,gBAAgB,GAChB,YAAY,GACZ,gBAAgB,GAChB,oBAAoB,GACpB,KAAK,GACL,iBAAiB,GACjB,cAAc,GACd,yBAAyB,GACzB,gBAAgB,CAAC;AAErB,8EAA8E;AAC9E,MAAM,MAAM,uBAAuB,GAAG,aAAa,GAAG,UAAU,CAAC;AAEjE;6DAC6D;AAC7D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,iBAAiB,GAAG,uBAAuB,CAAC;IAClD,4EAA4E;IAC5E,MAAM,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,2EAA2E;IAC3E,IAAI,EAAE,MAAM,CAAC;IACb,yEAAyE;IACzE,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,wFAAwF;IACxF,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,6EAA6E;IAC7E,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;mDAGmD;AACnD,UAAU,YAAY;IACpB,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,uBAAuB,EAAE,SAAS,YAAY,EA2CjD,CAAC;AAEX;;mCAEmC;AACnC,eAAO,MAAM,uBAAuB,UAAY,CAAC;AAEjD,MAAM,WAAW,oBAAoB;IACnC,gFAAgF;IAChF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAaD;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,oBAAyB,GACjC,mBAAmB,CAmErB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,uBAAwB,SAAQ,aAAa;IAC5D,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC;IACtC,MAAM,EAAE,CAAC,CAAC;IACV,UAAU,EAAE,uBAAuB,EAAE,CAAC;IACtC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,wBAAgB,eAAe,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/D,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,EAC5B,OAAO,GAAE,oBAAyB,GACjC,qBAAqB,CAAC,CAAC,CAAC,CA4B1B"}
1
+ {"version":3,"file":"durableSecretScrub.d.ts","sourceRoot":"","sources":["../../src/core/durableSecretScrub.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH,+EAA+E;AAC/E,MAAM,MAAM,iBAAiB,GACzB,eAAe,GACf,YAAY,GACZ,cAAc,GACd,aAAa,GACb,gBAAgB,GAChB,YAAY,GACZ,gBAAgB,GAChB,oBAAoB,GACpB,KAAK,GACL,iBAAiB,GACjB,cAAc,GACd,yBAAyB,GACzB,gBAAgB,CAAC;AAErB,8EAA8E;AAC9E,MAAM,MAAM,uBAAuB,GAAG,aAAa,GAAG,UAAU,CAAC;AAEjE;6DAC6D;AAC7D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,iBAAiB,GAAG,uBAAuB,CAAC;IAClD,4EAA4E;IAC5E,MAAM,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,2EAA2E;IAC3E,IAAI,EAAE,MAAM,CAAC;IACb,yEAAyE;IACzE,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,wFAAwF;IACxF,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,6EAA6E;IAC7E,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;mDAGmD;AACnD,UAAU,YAAY;IACpB,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,uBAAuB,EAAE,SAAS,YAAY,EA+DjD,CAAC;AAEX;;mCAEmC;AACnC,eAAO,MAAM,uBAAuB,UAAY,CAAC;AAEjD,MAAM,WAAW,oBAAoB;IACnC,gFAAgF;IAChF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAaD;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,oBAAyB,GACjC,mBAAmB,CAmErB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,uBAAwB,SAAQ,aAAa;IAC5D,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC;IACtC,MAAM,EAAE,CAAC,CAAC;IACV,UAAU,EAAE,uBAAuB,EAAE,CAAC;IACtC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,wBAAgB,eAAe,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/D,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,EAC5B,OAAO,GAAE,oBAAyB,GACjC,qBAAqB,CAAC,CAAC,CAAC,CA4B1B"}
@@ -43,10 +43,12 @@
43
43
  */
44
44
  /**
45
45
  * The authoritative pattern set — the UNION of the three pre-existing copies
46
- * (spec Frontloaded Decision #1). ORDER MATTERS for overlap resolution: the
47
- * more-specific prefix patterns (anthropic before generic openai `sk-`, stripe
48
- * `sk_` before generic) sit earlier so the greedy first-wins overlap resolver
49
- * labels a span with its most-specific kind.
46
+ * (spec Frontloaded Decision #1). Overlap precedence is decided by the resolver,
47
+ * NOT by array order: overlapping spans are sorted by start position, then
48
+ * longest match wins; array order only breaks an exact start+end tie (stable
49
+ * sort). The more-specific prefix patterns still sit before the generic ones so
50
+ * those exact ties label a span with its most-specific kind — do not "restore"
51
+ * order-based precedence on the strength of an older reading of this comment.
50
52
  *
51
53
  * LINEARITY CONTRACT (spec §2): every pattern uses SINGLE quantifiers over
52
54
  * character classes with no nesting — no `(x+)+` / `(x*)*` shapes — so a
@@ -63,8 +65,20 @@ export const DURABLE_SECRET_PATTERNS = [
63
65
  { kind: 'stripe-key', regex: /sk_(?:live|test)_[A-Za-z0-9]{12,}/gd },
64
66
  // Generic provider keys: sk-/pk-/rk- prefixed (OpenAI + generic).
65
67
  { kind: 'openai-key', regex: /\b(?:sk|pk|rk)-[A-Za-z0-9]{16,}/gd },
68
+ // Modern sk-family provider keys: OpenAI project / service-account / admin /
69
+ // None forms, and OpenRouter (sk-or-v1-). The generic pattern above cannot
70
+ // see these: it needs 16 unbroken alphanumerics straight after `sk-`, and each
71
+ // of these puts a short word and a hyphen there. Anchored by a lookbehind, not
72
+ // \b: \b misses an underscore-joined key (MY_KEY_sk-proj-…), while NO anchor
73
+ // refuses kebab slugs whose word ends in "sk" (task-proj-<long-slug>). Spec:
74
+ // docs/specs/outbound-credential-wall-modern-key-formats.md.
75
+ { kind: 'openai-key', regex: /(?<![A-Za-z0-9])sk-(?:proj|svcacct|admin|None|or-v1)-[A-Za-z0-9_-]{32,}/gd },
66
76
  // GitHub PAT / OAuth / app tokens (ghp_/gho_/ghu_/ghs_/ghr_).
67
77
  { kind: 'github-token', regex: /\bgh[pousr]_[A-Za-z0-9]{20,}/gd },
78
+ // GitHub fine-grained personal access tokens (issued ~82 chars; the 40 floor
79
+ // sits far below real length and far above any identifier). Same anchor
80
+ // reasoning as the sk-family entry above.
81
+ { kind: 'github-token', regex: /(?<![A-Za-z0-9])github_pat_[A-Za-z0-9_]{40,}/gd },
68
82
  // Google API keys (AIza + 35 url-safe chars).
69
83
  { kind: 'google-api-key', regex: /\bAIza[A-Za-z0-9_-]{35}/gd },
70
84
  // Slack tokens: xoxb-/xoxp-/xoxa-/xoxr-/xoxs- + segments.
@@ -81,14 +95,22 @@ export const DURABLE_SECRET_PATTERNS = [
81
95
  },
82
96
  // JWTs: three base64url segments. Known FP suspect on dotted identifiers
83
97
  // (spec rollout step 2) — surfaced per-pattern-kind in the dry-run soak.
84
- { kind: 'jwt', regex: /\b[A-Za-z0-9_-]{16,}\.[A-Za-z0-9_-]{6,}\.[A-Za-z0-9_-]{16,}\b/gd },
98
+ // First segment capped at 1024: an uncapped `{16,}` rescans the rest of an
99
+ // unbroken run from EVERY word boundary inside it, which is quadratic (814 ms
100
+ // at 64 KB, minutes at the 1 MB scrub ceiling). The cap makes each attempt
101
+ // bounded and loses no detection — a JWT header segment is far shorter.
102
+ { kind: 'jwt', regex: /\b[A-Za-z0-9_-]{16,1024}\.[A-Za-z0-9_-]{6,}\.[A-Za-z0-9_-]{16,}\b/gd },
85
103
  // Bearer tokens.
86
104
  { kind: 'bearer-token', regex: /Bearer\s+[A-Za-z0-9_\-.]{20,}/gd },
87
105
  // URLs with embedded credentials (scheme://user:pass@host) — redact the
88
106
  // credential group (group 1), keep the scheme/host structure readable.
89
107
  {
90
108
  kind: 'url-embedded-credential',
91
- regex: /([a-z][a-z0-9+.-]*:\/\/)[^/\s:@]+:[^/\s@]+@/gd,
109
+ // Scheme capped at 64: an uncapped `*` let every position in a long run
110
+ // start a scan to the run's end — quadratic, on the non-overridable wall
111
+ // (2.4 s at 64 KB). The regex still starts within 64 chars of the `://`,
112
+ // so every credentialed URL is still detected.
113
+ regex: /([a-z][a-z0-9+.-]{0,63}:\/\/)[^/\s:@]+:[^/\s@]+@/gd,
92
114
  group: undefined, // whole match replaced; the scheme is short + re-derivable
93
115
  },
94
116
  // Labelled secret pairs (token=…, api_key: …, password "…") — redact only the
@@ -1 +1 @@
1
- {"version":3,"file":"durableSecretScrub.js","sourceRoot":"","sources":["../../src/core/durableSecretScrub.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"durableSecretScrub.js","sourceRoot":"","sources":["../../src/core/durableSecretScrub.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"redactUrl.d.ts","sourceRoot":"","sources":["../../src/core/redactUrl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAiBH;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,GAAG,MAAM,CA6BrD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMrD"}
1
+ {"version":3,"file":"redactUrl.d.ts","sourceRoot":"","sources":["../../src/core/redactUrl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAkBH;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,GAAG,MAAM,CA6BrD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMrD"}
@@ -35,6 +35,7 @@ const TOKEN_PATTERNS = [
35
35
  /xox[baprs]-[A-Za-z0-9-]{10,}/g, // Slack tokens
36
36
  /\d{8,10}:[A-Za-z0-9_-]{30,}/g, // Telegram bot tokens (id:secret) — no \b: the API path form is /bot<id>:<secret>/
37
37
  /sk-[A-Za-z0-9]{20,}/g, // OpenAI-style keys
38
+ /sk-(?:proj|svcacct|admin|None|or-v1)-[A-Za-z0-9_-]{32,}/g, // modern sk-family (OpenAI project/svcacct/admin/None, OpenRouter)
38
39
  ];
39
40
  /**
40
41
  * Redact the userinfo (user:password@) segment of a single URL string.
@@ -1 +1 @@
1
- {"version":3,"file":"redactUrl.js","sourceRoot":"","sources":["../../src/core/redactUrl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,MAAM,QAAQ,GAAG,KAAK,CAAC;AAEvB;;;;GAIG;AACH,MAAM,cAAc,GAAa;IAC/B,8BAA8B,EAAS,yDAAyD;IAChG,+BAA+B,EAAS,0BAA0B;IAClE,+BAA+B,EAAS,eAAe;IACvD,8BAA8B,EAAU,mFAAmF;IAC3H,sBAAsB,EAAkB,oBAAoB;CAC7D,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,KAAmB;IAC3C,MAAM,GAAG,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IAEjE,6EAA6E;IAC7E,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACxC,MAAM,QAAQ,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC;YACnE,0EAA0E;YAC1E,0DAA0D;YAC1D,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;gBACrB,MAAM,WAAW,GAAG,SAAS,GAAG,CAAC,CAAC;gBAClC,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;gBAC5C,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;oBACjB,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACjE,CAAC;YACH,CAAC;QACH,CAAC;QACD,0EAA0E;QAC1E,mDAAmD;QACnD,OAAO,uBAAuB,CAAC,GAAG,CAAC,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,wEAAwE;QACxE,+DAA+D;QAC/D,OAAO,uBAAuB,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,sEAAsE;IACtE,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACrD,8EAA8E;IAC9E,OAAO,uBAAuB,CAAC,gBAAgB,CAAC,CAAC;AACnD,CAAC;AAED,qFAAqF;AACrF,SAAS,qBAAqB,CAAC,IAAY;IACzC,gFAAgF;IAChF,OAAO,IAAI,CAAC,OAAO,CACjB,4CAA4C,EAC5C,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,MAAM,GAAG,QAAQ,GAAG,CACxC,CAAC;AACJ,CAAC;AAED,qEAAqE;AACrE,SAAS,uBAAuB,CAAC,IAAY;IAC3C,IAAI,GAAG,GAAG,IAAI,CAAC;IACf,KAAK,MAAM,EAAE,IAAI,cAAc,EAAE,CAAC;QAChC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"redactUrl.js","sourceRoot":"","sources":["../../src/core/redactUrl.ts"],"names":[],"mappings":"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"}
@@ -3703,6 +3703,24 @@ export interface InstarConfig {
3703
3703
  * migration. See src/core/LlmCircuitBreaker.ts.
3704
3704
  */
3705
3705
  intelligence?: {
3706
+ /**
3707
+ * Jev signal-layer shadow (docs/specs/jev-signal-layer-shadow.md). DARK by
3708
+ * default. Measure-only: compares Jev (TypeSafe AI) against the B1–B7
3709
+ * deterministic detectors on real tone-gate candidates and decides nothing.
3710
+ * Inert unless enabled AND soakEndsAt is a future ISO instant AND the vault
3711
+ * holds `typesafe_api_key`. Read live per candidate (no restart).
3712
+ */
3713
+ jevSignalShadow?: {
3714
+ enabled?: boolean;
3715
+ /** 0..1 share of candidates shadowed (default 1). */
3716
+ sampleRate?: number;
3717
+ /** Pinned model id — never an alias (default "jev-1.13.0"). */
3718
+ model?: string;
3719
+ /** Hard abort per call (default 1500). */
3720
+ timeoutMs?: number;
3721
+ /** The mechanical soak bound: inert at or after this instant, and when null. */
3722
+ soakEndsAt?: string | null;
3723
+ };
3706
3724
  circuitBreaker?: {
3707
3725
  /** Master switch for the rate-limit circuit breaker (default: true). */
3708
3726
  enabled?: boolean;