@framers/agentos 0.1.54 → 0.1.56

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 (74) hide show
  1. package/dist/extensions/ExtensionManager.d.ts +1 -0
  2. package/dist/extensions/ExtensionManager.d.ts.map +1 -1
  3. package/dist/extensions/ExtensionManager.js +8 -0
  4. package/dist/extensions/ExtensionManager.js.map +1 -1
  5. package/dist/extensions/ISharedServiceRegistry.d.ts +35 -0
  6. package/dist/extensions/ISharedServiceRegistry.d.ts.map +1 -0
  7. package/dist/extensions/ISharedServiceRegistry.js +2 -0
  8. package/dist/extensions/ISharedServiceRegistry.js.map +1 -0
  9. package/dist/extensions/SharedServiceRegistry.d.ts +15 -0
  10. package/dist/extensions/SharedServiceRegistry.d.ts.map +1 -0
  11. package/dist/extensions/SharedServiceRegistry.js +63 -0
  12. package/dist/extensions/SharedServiceRegistry.js.map +1 -0
  13. package/dist/extensions/index.d.ts +3 -0
  14. package/dist/extensions/index.d.ts.map +1 -1
  15. package/dist/extensions/index.js +4 -0
  16. package/dist/extensions/index.js.map +1 -1
  17. package/dist/extensions/manifest.d.ts +2 -0
  18. package/dist/extensions/manifest.d.ts.map +1 -1
  19. package/dist/extensions/packs/pii-redaction/EntityMerger.d.ts +127 -0
  20. package/dist/extensions/packs/pii-redaction/EntityMerger.d.ts.map +1 -0
  21. package/dist/extensions/packs/pii-redaction/EntityMerger.js +263 -0
  22. package/dist/extensions/packs/pii-redaction/EntityMerger.js.map +1 -0
  23. package/dist/extensions/packs/pii-redaction/PiiDetectionPipeline.d.ts +199 -0
  24. package/dist/extensions/packs/pii-redaction/PiiDetectionPipeline.d.ts.map +1 -0
  25. package/dist/extensions/packs/pii-redaction/PiiDetectionPipeline.js +456 -0
  26. package/dist/extensions/packs/pii-redaction/PiiDetectionPipeline.js.map +1 -0
  27. package/dist/extensions/packs/pii-redaction/PiiRedactionGuardrail.d.ts +121 -0
  28. package/dist/extensions/packs/pii-redaction/PiiRedactionGuardrail.d.ts.map +1 -0
  29. package/dist/extensions/packs/pii-redaction/PiiRedactionGuardrail.js +271 -0
  30. package/dist/extensions/packs/pii-redaction/PiiRedactionGuardrail.js.map +1 -0
  31. package/dist/extensions/packs/pii-redaction/RedactionEngine.d.ts +61 -0
  32. package/dist/extensions/packs/pii-redaction/RedactionEngine.d.ts.map +1 -0
  33. package/dist/extensions/packs/pii-redaction/RedactionEngine.js +207 -0
  34. package/dist/extensions/packs/pii-redaction/RedactionEngine.js.map +1 -0
  35. package/dist/extensions/packs/pii-redaction/index.d.ts +90 -0
  36. package/dist/extensions/packs/pii-redaction/index.d.ts.map +1 -0
  37. package/dist/extensions/packs/pii-redaction/index.js +195 -0
  38. package/dist/extensions/packs/pii-redaction/index.js.map +1 -0
  39. package/dist/extensions/packs/pii-redaction/recognizers/IEntityRecognizer.d.ts +151 -0
  40. package/dist/extensions/packs/pii-redaction/recognizers/IEntityRecognizer.d.ts.map +1 -0
  41. package/dist/extensions/packs/pii-redaction/recognizers/IEntityRecognizer.js +14 -0
  42. package/dist/extensions/packs/pii-redaction/recognizers/IEntityRecognizer.js.map +1 -0
  43. package/dist/extensions/packs/pii-redaction/recognizers/LlmJudgeRecognizer.d.ts +177 -0
  44. package/dist/extensions/packs/pii-redaction/recognizers/LlmJudgeRecognizer.d.ts.map +1 -0
  45. package/dist/extensions/packs/pii-redaction/recognizers/LlmJudgeRecognizer.js +420 -0
  46. package/dist/extensions/packs/pii-redaction/recognizers/LlmJudgeRecognizer.js.map +1 -0
  47. package/dist/extensions/packs/pii-redaction/recognizers/NerModelRecognizer.d.ts +145 -0
  48. package/dist/extensions/packs/pii-redaction/recognizers/NerModelRecognizer.d.ts.map +1 -0
  49. package/dist/extensions/packs/pii-redaction/recognizers/NerModelRecognizer.js +299 -0
  50. package/dist/extensions/packs/pii-redaction/recognizers/NerModelRecognizer.js.map +1 -0
  51. package/dist/extensions/packs/pii-redaction/recognizers/NlpPrefilterRecognizer.d.ts +102 -0
  52. package/dist/extensions/packs/pii-redaction/recognizers/NlpPrefilterRecognizer.d.ts.map +1 -0
  53. package/dist/extensions/packs/pii-redaction/recognizers/NlpPrefilterRecognizer.js +228 -0
  54. package/dist/extensions/packs/pii-redaction/recognizers/NlpPrefilterRecognizer.js.map +1 -0
  55. package/dist/extensions/packs/pii-redaction/recognizers/RegexRecognizer.d.ts +103 -0
  56. package/dist/extensions/packs/pii-redaction/recognizers/RegexRecognizer.d.ts.map +1 -0
  57. package/dist/extensions/packs/pii-redaction/recognizers/RegexRecognizer.js +275 -0
  58. package/dist/extensions/packs/pii-redaction/recognizers/RegexRecognizer.js.map +1 -0
  59. package/dist/extensions/packs/pii-redaction/tools/PiiRedactTool.d.ts +118 -0
  60. package/dist/extensions/packs/pii-redaction/tools/PiiRedactTool.d.ts.map +1 -0
  61. package/dist/extensions/packs/pii-redaction/tools/PiiRedactTool.js +152 -0
  62. package/dist/extensions/packs/pii-redaction/tools/PiiRedactTool.js.map +1 -0
  63. package/dist/extensions/packs/pii-redaction/tools/PiiScanTool.d.ts +98 -0
  64. package/dist/extensions/packs/pii-redaction/tools/PiiScanTool.d.ts.map +1 -0
  65. package/dist/extensions/packs/pii-redaction/tools/PiiScanTool.js +153 -0
  66. package/dist/extensions/packs/pii-redaction/tools/PiiScanTool.js.map +1 -0
  67. package/dist/extensions/packs/pii-redaction/types.d.ts +332 -0
  68. package/dist/extensions/packs/pii-redaction/types.d.ts.map +1 -0
  69. package/dist/extensions/packs/pii-redaction/types.js +83 -0
  70. package/dist/extensions/packs/pii-redaction/types.js.map +1 -0
  71. package/dist/extensions/types.d.ts +5 -0
  72. package/dist/extensions/types.d.ts.map +1 -1
  73. package/dist/extensions/types.js.map +1 -1
  74. package/package.json +11 -1
@@ -17,6 +17,7 @@ export declare class ExtensionManager {
17
17
  private readonly options;
18
18
  private readonly overrides?;
19
19
  private readonly secrets;
20
+ private readonly services;
20
21
  private readonly loadedPacks;
21
22
  private readonly loadedPackKeys;
22
23
  private readonly loadedPackRecords;
@@ -1 +1 @@
1
- {"version":3,"file":"ExtensionManager.d.ts","sourceRoot":"","sources":["../../src/extensions/ExtensionManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExtensionManager.d.ts","sourceRoot":"","sources":["../../src/extensions/ExtensionManager.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { EventEmitter } from 'node:events';
2
2
  import * as path from 'node:path';
3
3
  import { pathToFileURL } from 'node:url';
4
4
  import { ExtensionRegistry } from './ExtensionRegistry.js';
5
+ import { SharedServiceRegistry } from './SharedServiceRegistry.js';
5
6
  import { EXTENSION_KIND_WORKFLOW_EXECUTOR, EXTENSION_KIND_PLANNING_STRATEGY, EXTENSION_KIND_HITL_HANDLER, EXTENSION_KIND_COMM_CHANNEL, EXTENSION_KIND_MEMORY_PROVIDER, EXTENSION_KIND_MESSAGING_CHANNEL, EXTENSION_KIND_PROVENANCE, EXTENSION_KIND_STT_PROVIDER, EXTENSION_KIND_TTS_PROVIDER, EXTENSION_KIND_VAD_PROVIDER, EXTENSION_KIND_WAKE_WORD_PROVIDER, } from './types.js';
6
7
  import { getSecretDefinition } from '../config/extensionSecrets.js';
7
8
  const DEFAULT_EXTENSIONS_KIND_TOOL = 'tool';
@@ -28,6 +29,7 @@ export class ExtensionManager {
28
29
  this.emitter = new EventEmitter();
29
30
  this.registries = new Map();
30
31
  this.secrets = new Map();
32
+ this.services = new SharedServiceRegistry();
31
33
  this.loadedPacks = [];
32
34
  this.loadedPackKeys = new Set();
33
35
  this.loadedPackRecords = [];
@@ -219,6 +221,9 @@ export class ExtensionManager {
219
221
  this.loadedPacks.length = 0;
220
222
  this.loadedPackKeys.clear();
221
223
  this.loadedPackRecords.length = 0;
224
+ await this.services.releaseAll().catch((err) => {
225
+ console.warn(`ExtensionManager: Failed releasing shared services during shutdown`, err);
226
+ });
222
227
  }
223
228
  ensureDefaultRegistries() {
224
229
  this.getRegistry(DEFAULT_EXTENSIONS_KIND_TOOL);
@@ -279,6 +284,7 @@ export class ExtensionManager {
279
284
  options: entry.options,
280
285
  logger: lifecycleContext.logger,
281
286
  getSecret: lifecycleContext.getSecret,
287
+ services: lifecycleContext.services,
282
288
  };
283
289
  return factory(packContext);
284
290
  }
@@ -308,6 +314,7 @@ export class ExtensionManager {
308
314
  options: entry.options,
309
315
  logger: enrichedLifecycleContext.logger,
310
316
  getSecret: enrichedLifecycleContext.getSecret,
317
+ services: enrichedLifecycleContext.services,
311
318
  };
312
319
  try {
313
320
  for (const descriptor of pack.descriptors) {
@@ -362,6 +369,7 @@ export class ExtensionManager {
362
369
  return {
363
370
  ...(context ?? {}),
364
371
  getSecret: (id) => this.resolveSecret(id),
372
+ services: context?.services ?? this.services,
365
373
  };
366
374
  }
367
375
  resolveSecret(id) {
@@ -1 +1 @@
1
- {"version":3,"file":"ExtensionManager.js","sourceRoot":"","sources":["../../src/extensions/ExtensionManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExtensionManager.js","sourceRoot":"","sources":["../../src/extensions/ExtensionManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Cleanup and discovery metadata for a shared service.
3
+ */
4
+ export interface SharedServiceOptions {
5
+ /**
6
+ * Cleanup callback invoked when the service is released.
7
+ */
8
+ dispose?: (instance: unknown) => Promise<void> | void;
9
+ /**
10
+ * Optional tags describing the service for diagnostics or tooling.
11
+ */
12
+ tags?: string[];
13
+ }
14
+ /**
15
+ * Registry for sharing heavyweight service instances across extensions.
16
+ */
17
+ export interface ISharedServiceRegistry {
18
+ /**
19
+ * Return an existing service or lazily create it once.
20
+ */
21
+ getOrCreate<T>(serviceId: string, factory: () => Promise<T> | T, options?: SharedServiceOptions): Promise<T>;
22
+ /**
23
+ * Return true when a service has already been initialized.
24
+ */
25
+ has(serviceId: string): boolean;
26
+ /**
27
+ * Dispose a specific service if it exists.
28
+ */
29
+ release(serviceId: string): Promise<void>;
30
+ /**
31
+ * Dispose all registered services.
32
+ */
33
+ releaseAll(): Promise<void>;
34
+ }
35
+ //# sourceMappingURL=ISharedServiceRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISharedServiceRegistry.d.ts","sourceRoot":"","sources":["../../src/extensions/ISharedServiceRegistry.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACtD;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,WAAW,CAAC,CAAC,EACX,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EAC7B,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,CAAC,CAAC,CAAC;IAEd;;OAEG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IAEhC;;OAEG;IACH,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ISharedServiceRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ISharedServiceRegistry.js","sourceRoot":"","sources":["../../src/extensions/ISharedServiceRegistry.ts"],"names":[],"mappings":""}
@@ -0,0 +1,15 @@
1
+ import type { ISharedServiceRegistry, SharedServiceOptions } from './ISharedServiceRegistry';
2
+ /**
3
+ * Thread-safe shared-service registry for extension lifecycle context.
4
+ */
5
+ export declare class SharedServiceRegistry implements ISharedServiceRegistry {
6
+ private readonly instances;
7
+ private readonly pending;
8
+ private readonly disposers;
9
+ private readonly tagMap;
10
+ getOrCreate<T>(serviceId: string, factory: () => Promise<T> | T, options?: SharedServiceOptions): Promise<T>;
11
+ has(serviceId: string): boolean;
12
+ release(serviceId: string): Promise<void>;
13
+ releaseAll(): Promise<void>;
14
+ }
15
+ //# sourceMappingURL=SharedServiceRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SharedServiceRegistry.d.ts","sourceRoot":"","sources":["../../src/extensions/SharedServiceRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAE7F;;GAEG;AACH,qBAAa,qBAAsB,YAAW,sBAAsB;IAClE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8B;IACxD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuC;IAC/D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkE;IAC5F,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+B;IAEzC,WAAW,CAAC,CAAC,EACxB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EAC7B,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,CAAC,CAAC;IAiCN,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAIzB,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBzC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAIzC"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Thread-safe shared-service registry for extension lifecycle context.
3
+ */
4
+ export class SharedServiceRegistry {
5
+ constructor() {
6
+ this.instances = new Map();
7
+ this.pending = new Map();
8
+ this.disposers = new Map();
9
+ this.tagMap = new Map();
10
+ }
11
+ async getOrCreate(serviceId, factory, options) {
12
+ if (this.instances.has(serviceId)) {
13
+ return this.instances.get(serviceId);
14
+ }
15
+ const existing = this.pending.get(serviceId);
16
+ if (existing) {
17
+ return existing;
18
+ }
19
+ const promise = Promise.resolve(factory())
20
+ .then((instance) => {
21
+ this.instances.set(serviceId, instance);
22
+ this.pending.delete(serviceId);
23
+ if (options?.dispose) {
24
+ this.disposers.set(serviceId, options.dispose);
25
+ }
26
+ if (options?.tags) {
27
+ this.tagMap.set(serviceId, [...options.tags]);
28
+ }
29
+ return instance;
30
+ })
31
+ .catch((error) => {
32
+ this.pending.delete(serviceId);
33
+ throw error;
34
+ });
35
+ this.pending.set(serviceId, promise);
36
+ return promise;
37
+ }
38
+ has(serviceId) {
39
+ return this.instances.has(serviceId);
40
+ }
41
+ async release(serviceId) {
42
+ const pending = this.pending.get(serviceId);
43
+ if (pending) {
44
+ await Promise.allSettled([pending]);
45
+ }
46
+ const instance = this.instances.get(serviceId);
47
+ if (instance === undefined) {
48
+ return;
49
+ }
50
+ const disposer = this.disposers.get(serviceId);
51
+ if (disposer) {
52
+ await Promise.resolve(disposer(instance));
53
+ }
54
+ this.instances.delete(serviceId);
55
+ this.disposers.delete(serviceId);
56
+ this.tagMap.delete(serviceId);
57
+ }
58
+ async releaseAll() {
59
+ await Promise.allSettled([...this.pending.values()]);
60
+ await Promise.allSettled([...this.instances.keys()].map((serviceId) => this.release(serviceId)));
61
+ }
62
+ }
63
+ //# sourceMappingURL=SharedServiceRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SharedServiceRegistry.js","sourceRoot":"","sources":["../../src/extensions/SharedServiceRegistry.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,OAAO,qBAAqB;IAAlC;QACmB,cAAS,GAAG,IAAI,GAAG,EAAmB,CAAC;QACvC,YAAO,GAAG,IAAI,GAAG,EAA4B,CAAC;QAC9C,cAAS,GAAG,IAAI,GAAG,EAAuD,CAAC;QAC3E,WAAM,GAAG,IAAI,GAAG,EAAoB,CAAC;IAoExD,CAAC;IAlEQ,KAAK,CAAC,WAAW,CACtB,SAAiB,EACjB,OAA6B,EAC7B,OAA8B;QAE9B,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAM,CAAC;QAC5C,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAsB,CAAC;QAChC,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;aACvC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;YACjB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YACxC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAE/B,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;gBACrB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YACjD,CAAC;YACD,IAAI,OAAO,EAAE,IAAI,EAAE,CAAC;gBAClB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YAChD,CAAC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC/B,MAAM,KAAK,CAAC;QACd,CAAC,CAAC,CAAC;QAEL,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAA2B,CAAC,CAAC;QACzD,OAAO,OAAO,CAAC;IACjB,CAAC;IAEM,GAAG,CAAC,SAAiB;QAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,SAAiB;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QACtC,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC5C,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACjC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAChC,CAAC;IAEM,KAAK,CAAC,UAAU;QACrB,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACrD,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IACnG,CAAC;CACF"}
@@ -1,9 +1,12 @@
1
1
  export * from './types';
2
2
  export * from './events';
3
+ export * from './ISharedServiceRegistry';
4
+ export * from './SharedServiceRegistry';
3
5
  export * from './ExtensionRegistry';
4
6
  export * from './ExtensionManager';
5
7
  export * from './manifest';
6
8
  export * from './RegistryConfig';
7
9
  export { MultiRegistryLoader } from './MultiRegistryLoader';
8
10
  export { ExtensionLoader } from './ExtensionLoader';
11
+ export { createPiiRedactionPack, createExtensionPack as createPiiExtensionPack } from './packs/pii-redaction';
9
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/extensions/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/extensions/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,IAAI,sBAAsB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,9 +1,13 @@
1
1
  export * from './types.js';
2
2
  export * from './events.js';
3
+ export * from './ISharedServiceRegistry.js';
4
+ export * from './SharedServiceRegistry.js';
3
5
  export * from './ExtensionRegistry.js';
4
6
  export * from './ExtensionManager.js';
5
7
  export * from './manifest.js';
6
8
  export * from './RegistryConfig.js';
7
9
  export { MultiRegistryLoader } from './MultiRegistryLoader.js';
8
10
  export { ExtensionLoader } from './ExtensionLoader.js';
11
+ // PII Redaction extension pack
12
+ export { createPiiRedactionPack, createExtensionPack as createPiiExtensionPack } from './packs/pii-redaction/index.js';
9
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/extensions/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/extensions/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,+BAA+B;AAC/B,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,IAAI,sBAAsB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { ExtensionDescriptor, ExtensionLifecycleContext, ExtensionSourceMetadata } from './types';
2
+ import type { ISharedServiceRegistry } from './ISharedServiceRegistry';
2
3
  export type ExtensionPackResolver = {
3
4
  package: string;
4
5
  version?: string;
@@ -45,6 +46,7 @@ export interface ExtensionPackContext {
45
46
  options?: Record<string, unknown>;
46
47
  logger?: import('../logging/ILogger').ILogger;
47
48
  getSecret?: (secretId: string) => string | undefined;
49
+ services?: ISharedServiceRegistry;
48
50
  }
49
51
  export interface ExtensionPack {
50
52
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../src/extensions/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAEvG,MAAM,MAAM,qBAAqB,GAC7B;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GACrC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;IAAE,OAAO,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,GAAG,aAAa,CAAA;CAAE,CAAC;AAE9D,MAAM,MAAM,0BAA0B,GAAG,qBAAqB,GAAG;IAC/D;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,0BAA0B,EAAE,CAAC;IACpC,SAAS,CAAC,EAAE,kBAAkB,CAAC;CAChC;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;CAChD;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,oBAAoB;IACnC,aAAa,CAAC,EAAE,0BAA0B,CAAC;IAC3C,MAAM,CAAC,EAAE,uBAAuB,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,MAAM,CAAC,EAAE,OAAO,oBAAoB,EAAE,OAAO,CAAC;IAC9C,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;CACtD;AAGD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,mBAAmB,EAAE,CAAC;IACnC,UAAU,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,yBAAyB,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IAC3G,YAAY,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,yBAAyB,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;CAC9G"}
1
+ {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../src/extensions/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AACvG,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAEvE,MAAM,MAAM,qBAAqB,GAC7B;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GACrC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;IAAE,OAAO,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,GAAG,aAAa,CAAA;CAAE,CAAC;AAE9D,MAAM,MAAM,0BAA0B,GAAG,qBAAqB,GAAG;IAC/D;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,0BAA0B,EAAE,CAAC;IACpC,SAAS,CAAC,EAAE,kBAAkB,CAAC;CAChC;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;CAChD;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,oBAAoB;IACnC,aAAa,CAAC,EAAE,0BAA0B,CAAC;IAC3C,MAAM,CAAC,EAAE,uBAAuB,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,MAAM,CAAC,EAAE,OAAO,oBAAoB,EAAE,OAAO,CAAC;IAC9C,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACrD,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACnC;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,mBAAmB,EAAE,CAAC;IACnC,UAAU,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,yBAAyB,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IAC3G,YAAY,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,yBAAyB,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;CAC9G"}
@@ -0,0 +1,127 @@
1
+ /**
2
+ * @file EntityMerger.ts
3
+ * @description Post-processing step that de-duplicates, filters, and merges
4
+ * {@link PiiEntity} spans emitted by the multi-tier detection pipeline.
5
+ *
6
+ * When multiple recognisers (regex, NER, LLM judge) run over the same text
7
+ * they frequently emit overlapping or duplicate spans. This module resolves
8
+ * those conflicts deterministically so that downstream redaction always
9
+ * receives a clean, non-overlapping, sorted list of entities.
10
+ *
11
+ * ## Processing pipeline
12
+ * 1. **Denylist boost** — entities whose text matches a denylist entry are
13
+ * promoted to score `1.0`, guaranteeing they survive threshold filtering.
14
+ * 2. **Allowlist filter** — entities whose text matches an allowlist entry are
15
+ * unconditionally removed before any other processing.
16
+ * 3. **Sort** — remaining entities are sorted by start offset; ties are broken
17
+ * by span length descending so that longer (more specific) spans are
18
+ * processed first in the overlap-resolution pass.
19
+ * 4. **Overlap resolution** — a single-pass scan collapses overlapping and
20
+ * adjacent spans into the best representative entity (details below).
21
+ * 5. **Threshold filter** — entities whose final score is below
22
+ * `confidenceThreshold` are removed.
23
+ * 6. **Final sort** — output is sorted by start offset for stable iteration.
24
+ *
25
+ * @module pii-redaction/EntityMerger
26
+ */
27
+ import type { PiiEntity } from './types';
28
+ /**
29
+ * Options controlling how {@link mergeEntities} filters and merges a raw list
30
+ * of {@link PiiEntity} detections.
31
+ *
32
+ * All properties are optional; omitting them applies neutral defaults (no
33
+ * allow/denylist, no threshold filtering).
34
+ */
35
+ export interface MergeOptions {
36
+ /**
37
+ * Case-insensitive list of literal text values to **exclude** from the
38
+ * output. Any entity whose `.text` matches one of these strings (after
39
+ * lowercasing) is silently dropped, even if it would otherwise pass all
40
+ * other filters.
41
+ *
42
+ * Typical use-case: whitelisting known-safe values such as
43
+ * `'support@company.com'` that appear in boilerplate and should never be
44
+ * redacted.
45
+ *
46
+ * @example `['support@example.com', '127.0.0.1']`
47
+ */
48
+ allowlist?: string[];
49
+ /**
50
+ * Case-insensitive list of literal text values that should **always** be
51
+ * redacted. Any entity whose `.text` matches one of these strings (after
52
+ * lowercasing) has its score boosted to `1.0`, ensuring it survives
53
+ * threshold filtering regardless of the original confidence score.
54
+ *
55
+ * Typical use-case: internal project codenames or employee IDs that the
56
+ * organisation treats as sensitive.
57
+ *
58
+ * @example `['PROJ-SECRET', 'acme-internal']`
59
+ */
60
+ denylist?: string[];
61
+ /**
62
+ * Minimum confidence score (inclusive) an entity must have after all
63
+ * other transformations to be included in the output.
64
+ *
65
+ * Entities with `score < confidenceThreshold` are discarded. When omitted
66
+ * (or `undefined`) no threshold filtering is applied and all entities with
67
+ * any score are retained.
68
+ *
69
+ * Must be in the range `[0, 1]` when provided.
70
+ *
71
+ * @default undefined (no threshold applied)
72
+ */
73
+ confidenceThreshold?: number;
74
+ }
75
+ /**
76
+ * Merges a raw list of {@link PiiEntity} detections produced by one or more
77
+ * recognisers into a clean, non-overlapping, threshold-filtered output list.
78
+ *
79
+ * The function is **pure** — it does not mutate any of its inputs.
80
+ *
81
+ * ### Merge rules (applied in order)
82
+ *
83
+ * 1. **Denylist boost**: If an entity's `.text` (lowercased) appears in
84
+ * `options.denylist` (lowercased), its `score` is set to `1.0`.
85
+ *
86
+ * 2. **Allowlist filter**: If an entity's `.text` (lowercased) appears in
87
+ * `options.allowlist` (lowercased), the entity is removed entirely.
88
+ *
89
+ * 3. **Sort**: Entities are sorted by `start` offset ascending; ties broken
90
+ * by span length descending so longer spans are preferred in step 4.
91
+ *
92
+ * 4. **Overlap resolution** (single-pass, left-to-right):
93
+ * - *Exact or subset overlap* (current span is fully inside last span, or
94
+ * they share the same offsets): keep whichever has the higher score.
95
+ * - *Current is longer AND score ≥ last*: the current span replaces the
96
+ * last accumulated span (it provides more context at equal or better
97
+ * confidence).
98
+ * - *Adjacent spans* (gap between end of last and start of current is ≤ 2
99
+ * characters **and** both have the same `entityType`): the two spans are
100
+ * merged into a single entity whose text bridges the gap.
101
+ * - *Otherwise*: both spans are kept as separate entities.
102
+ *
103
+ * 5. **Confidence threshold filter**: Entities with `score <
104
+ * options.confidenceThreshold` are removed.
105
+ *
106
+ * 6. **Final sort**: Output is sorted by `start` offset ascending.
107
+ *
108
+ * @param entities - Raw (possibly overlapping, unsorted) entity list from the
109
+ * detection pipeline.
110
+ * @param options - Optional filtering / merging knobs. Safe to omit.
111
+ * @param text - The original input string. Required only when adjacent
112
+ * merging may occur (needed to fill gap characters).
113
+ * Defaults to `''` which produces a gap of spaces.
114
+ * @returns A new array of non-overlapping {@link PiiEntity} objects sorted by
115
+ * `start` offset.
116
+ *
117
+ * @example
118
+ * ```ts
119
+ * const clean = mergeEntities(rawEntities, {
120
+ * allowlist: ['support@example.com'],
121
+ * denylist: ['secret-project'],
122
+ * confidenceThreshold: 0.6,
123
+ * }, originalText);
124
+ * ```
125
+ */
126
+ export declare function mergeEntities(entities: PiiEntity[], options?: MergeOptions, text?: string): PiiEntity[];
127
+ //# sourceMappingURL=EntityMerger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EntityMerger.d.ts","sourceRoot":"","sources":["../../../../src/extensions/packs/pii-redaction/EntityMerger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAMzC;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IAErB;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAEpB;;;;;;;;;;;OAWG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAgFD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,SAAS,EAAE,EACrB,OAAO,GAAE,YAAiB,EAC1B,IAAI,SAAK,GACR,SAAS,EAAE,CAqIb"}