@framers/agentos 0.1.170 → 0.1.172

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/dist/index.d.ts CHANGED
@@ -63,6 +63,10 @@ export type { LLMVisionProviderConfig } from './vision/providers/LLMVisionProvid
63
63
  export * from './skills';
64
64
  export * from './nlp/language/interfaces';
65
65
  export * from './nlp/language/LanguageService';
66
+ export * from './nlp/ai_utilities/IUtilityAI';
67
+ export * from './nlp/ai_utilities/LLMUtilityAI';
68
+ export * from './nlp/ai_utilities/StatisticalUtilityAI';
69
+ export * from './nlp/ai_utilities/HybridUtilityAI';
66
70
  export type { ILogger } from './core/logging/ILogger';
67
71
  export { createLogger, setLoggerFactory, resetLoggerFactory } from './core/logging/loggerFactory';
68
72
  export * from './core/rate-limiting/types';
@@ -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":"AAAA;;;;GAIG;AAEH,cAAc,kBAAkB,CAAC;AACjC,cAAc,mCAAmC,CAAC;AAClD,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wCAAwC,CAAC;AACvD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kCAAkC,CAAC;AACjD,YAAY,EACV,KAAK,EACL,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,sCAAsC,CAAC;AACrD,cAAc,iDAAiD,CAAC;AAChE,cAAc,yCAAyC,CAAC;AACxD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,0CAA0C,CAAC;AACzD,cAAc,mCAAmC,CAAC;AAClD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,0CAA0C,CAAC;AACzD,cAAc,2DAA2D,CAAC;AAC1E,cAAc,yCAAyC,CAAC;AACxD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,kDAAkD,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yDAAyD,CAAC;AAEhG,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,YAAY,EACV,uBAAuB,EACvB,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,YAAY,EACV,sBAAsB,EACtB,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACb,cAAc,EACd,aAAa,GACd,MAAM,wCAAwC,CAAC;AAEhD,cAAc,yBAAyB,CAAC;AAExC,cAAc,sBAAsB,CAAC;AAErC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,4BAA4B,CAAC;AAE3C,cAAc,cAAc,CAAC;AAE7B,cAAc,gCAAgC,CAAC;AAE/C,cAAc,qBAAqB,CAAC;AAEpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,4CAA4C,CAAC;AAC3D,cAAc,mDAAmD,CAAC;AAClE,cAAc,4DAA4D,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,8DAA8D,CAAC;AAErG,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAE7B,cAAc,YAAY,CAAC;AAE3B,cAAc,sBAAsB,CAAC;AAErC,cAAc,UAAU,CAAC;AAEzB,cAAc,gBAAgB,CAAC;AAE/B,cAAc,wBAAwB,CAAC;AAEvC,cAAc,wBAAwB,CAAC;AAEvC,cAAc,WAAW,CAAC;AAE1B,cAAc,gCAAgC,CAAC;AAE/C,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AACpH,YAAY,EACV,oBAAoB,EACpB,YAAY,EACZ,cAAc,EACd,UAAU,EACV,eAAe,IAAI,qBAAqB,EACxC,UAAU,IAAI,gBAAgB,EAC9B,UAAU,IAAI,gBAAgB,EAC9B,cAAc,EACd,YAAY,EACZ,WAAW,EACX,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAEvF,cAAc,UAAU,CAAC;AAEzB,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAE/C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,yCAAyC,CAAC;AACxD,cAAc,oCAAoC,CAAC;AACnD,YAAY,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAElG,cAAc,4BAA4B,CAAC;AAE3C,cAAc,gBAAgB,CAAC;AAE/B,cAAc,gCAAgC,CAAC;AAE/C,cAAc,OAAO,CAAC;AAEtB,cAAc,UAAU,CAAC;AAEzB,OAAO,EACL,eAAe,EACf,eAAe,EACf,cAAc,EACd,WAAW,EACX,cAAc,EACd,eAAe,GAChB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACV,SAAS,EACT,oBAAoB,EACpB,cAAc,EACd,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,EACX,UAAU,EACV,WAAW,IAAI,iBAAiB,EAChC,0BAA0B,EAC1B,wBAAwB,EACxB,sBAAsB,EACtB,gCAAgC,EAChC,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AAEjC,cAAc,0BAA0B,CAAC;AAEzC,cAAc,cAAc,CAAC;AAE7B,cAAc,kBAAkB,CAAC;AAEjC,cAAc,qBAAqB,CAAC;AAEpC,OAAO,EACL,4BAA4B,EAC5B,KAAK,yBAAyB,EAC9B,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,mCAAmC,CAAC;AAG3C,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3F,YAAY,EACV,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,UAAU,GACX,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,YAAY,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACxE,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AACpE,YAAY,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,WAAW,EACX,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,cAAc,kDAAkD,CAAC;AACjE,cAAc,uCAAuC,CAAC;AACtD,cAAc,oDAAoD,CAAC;AACnE,cAAc,+DAA+D,CAAC;AAC9E,YAAY,EACV,aAAa,EACb,cAAc,EACd,iBAAiB,IAAI,qBAAqB,EAC1C,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,4BAA4B,EAC5B,MAAM,GACP,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,YAAY,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChF,YAAY,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAClG,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACvF,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAC3F,YAAY,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAChG,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAC1F,OAAO,EACL,gCAAgC,EAChC,6BAA6B,EAC7B,8BAA8B,EAC9B,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,yBAAyB,EACzB,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,8BAA8B,CAAC"}
package/dist/index.js CHANGED
@@ -80,6 +80,11 @@ export * from './skills.js';
80
80
  // Multilingual exports
81
81
  export * from './nlp/language/interfaces.js';
82
82
  export * from './nlp/language/LanguageService.js';
83
+ // NLP AI Utilities (classification, sentiment, similarity, keyword extraction, etc.)
84
+ export * from './nlp/ai_utilities/IUtilityAI.js';
85
+ export * from './nlp/ai_utilities/LLMUtilityAI.js';
86
+ export * from './nlp/ai_utilities/StatisticalUtilityAI.js';
87
+ export * from './nlp/ai_utilities/HybridUtilityAI.js';
83
88
  export { createLogger, setLoggerFactory, resetLoggerFactory } from './core/logging/loggerFactory.js';
84
89
  // Rate limit types
85
90
  export * from './core/rate-limiting/types.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,kBAAkB,CAAC;AACjC,cAAc,mCAAmC,CAAC;AAClD,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wCAAwC,CAAC;AACvD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kCAAkC,CAAC;AAOjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,sCAAsC,CAAC;AACrD,cAAc,iDAAiD,CAAC;AAChE,cAAc,yCAAyC,CAAC;AACxD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,0CAA0C,CAAC;AACzD,cAAc,mCAAmC,CAAC;AAClD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,0CAA0C,CAAC;AACzD,cAAc,2DAA2D,CAAC;AAC1E,cAAc,yCAAyC,CAAC;AACxD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,kDAAkD,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yDAAyD,CAAC;AAChG,mCAAmC;AACnC,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAO1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAU9E,kBAAkB;AAClB,cAAc,yBAAyB,CAAC;AACxC,2BAA2B;AAC3B,cAAc,sBAAsB,CAAC;AACrC,qDAAqD;AACrD,cAAc,qBAAqB,CAAC;AACpC,yBAAyB;AACzB,cAAc,oBAAoB,CAAC;AACnC,0BAA0B;AAC1B,cAAc,4BAA4B,CAAC;AAC3C,uBAAuB;AACvB,cAAc,cAAc,CAAC;AAC7B,kBAAkB;AAClB,cAAc,gCAAgC,CAAC;AAC/C,oBAAoB;AACpB,cAAc,qBAAqB,CAAC;AACpC,8BAA8B;AAC9B,cAAc,yBAAyB,CAAC;AACxC,cAAc,4CAA4C,CAAC;AAC3D,cAAc,mDAAmD,CAAC;AAClE,cAAc,4DAA4D,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,8DAA8D,CAAC;AACrG,aAAa;AACb,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,kDAAkD;AAClD,cAAc,YAAY,CAAC;AAC3B,oCAAoC;AACpC,cAAc,sBAAsB,CAAC;AACrC,iDAAiD;AACjD,cAAc,UAAU,CAAC;AACzB,qCAAqC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,0DAA0D;AAC1D,cAAc,wBAAwB,CAAC;AACvC,+DAA+D;AAC/D,cAAc,wBAAwB,CAAC;AACvC,wDAAwD;AACxD,cAAc,WAAW,CAAC;AAC1B,uEAAuE;AACvE,cAAc,gCAAgC,CAAC;AAC/C,2EAA2E;AAC3E,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAepH,mCAAmC;AACnC,cAAc,UAAU,CAAC;AACzB,uBAAuB;AACvB,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAC/C,qFAAqF;AACrF,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,yCAAyC,CAAC;AACxD,cAAc,oCAAoC,CAAC;AAEnD,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClG,mBAAmB;AACnB,cAAc,4BAA4B,CAAC;AAC3C,mBAAmB;AACnB,cAAc,gBAAgB,CAAC;AAC/B,0BAA0B;AAC1B,cAAc,gCAAgC,CAAC;AAC/C,uCAAuC;AACvC,cAAc,OAAO,CAAC;AACtB,0BAA0B;AAC1B,cAAc,UAAU,CAAC;AACzB,gFAAgF;AAChF,OAAO,EACL,eAAe,EACf,eAAe,EACf,cAAc,EACd,WAAW,EACX,cAAc,EACd,eAAe,GAChB,MAAM,yBAAyB,CAAC;AAkCjC,wDAAwD;AACxD,cAAc,0BAA0B,CAAC;AACzC,mCAAmC;AACnC,cAAc,cAAc,CAAC;AAC7B,0EAA0E;AAC1E,cAAc,kBAAkB,CAAC;AACjC,qDAAqD;AACrD,cAAc,qBAAqB,CAAC;AACpC,4BAA4B;AAC5B,OAAO,EACL,4BAA4B,EAE5B,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,mCAAmC,CAAC;AAE3C,wCAAwC;AACxC,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAY3F,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAOvC,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAEpE,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,WAAW,EACX,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAErC,cAAc,kDAAkD,CAAC;AACjE,cAAc,uCAAuC,CAAC;AACtD,cAAc,oDAAoD,CAAC;AACnE,cAAc,+DAA+D,CAAC;AAkB9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhF,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACvF,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAG3F,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAEhG,OAAO,EACL,gCAAgC,EAChC,6BAA6B,EAC7B,8BAA8B,EAC9B,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,8BAA8B,CAAC;AAOtC,eAAe"}
@@ -61,7 +61,24 @@ export declare class StatisticalUtilityAI implements IUtilityAI {
61
61
  stemTokens(tokens: string[], options?: StemmingOptions): Promise<string[]>;
62
62
  calculateSimilarity(text1: string, text2: string, options?: SimilarityOptions): Promise<number>;
63
63
  analyzeSentiment(text: string, options?: SentimentAnalysisOptions): Promise<SentimentResult>;
64
- detectLanguage(_text: string, _options?: LanguageDetectionOptions): Promise<LanguageDetectionResult[]>;
64
+ /**
65
+ * Detect the language of a text string using trigram frequency analysis.
66
+ *
67
+ * Uses a Cavnar & Trenkle style algorithm that compares the input text's
68
+ * trigram frequency profile against pre-computed reference profiles for 20+
69
+ * languages. Accuracy improves with longer text; passages under 10
70
+ * characters return `'und'` (undetermined).
71
+ *
72
+ * @param text - The input text to analyse.
73
+ * @param options - `maxCandidates` controls how many ranked results to
74
+ * return (default 3). The `method` field is accepted but
75
+ * only `'n_gram'` (the default) is supported by this
76
+ * statistical implementation.
77
+ * @returns Ranked array of `{ language, confidence }` where `language` is
78
+ * an ISO 639-1 code (e.g. `'en'`, `'fr'`) and `confidence` is
79
+ * in the range 0-1.
80
+ */
81
+ detectLanguage(text: string, options?: LanguageDetectionOptions): Promise<LanguageDetectionResult[]>;
65
82
  normalizeText(text: string, options?: TextNormalizationOptions): Promise<string>;
66
83
  generateNGrams(tokens: string[], options: NGramOptions): Promise<Record<number, string[][]>>;
67
84
  calculateReadability(text: string, options: ReadabilityOptions): Promise<ReadabilityResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"StatisticalUtilityAI.d.ts","sourceRoot":"","sources":["../../../src/nlp/ai_utilities/StatisticalUtilityAI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StatisticalUtilityAI.d.ts","sourceRoot":"","sources":["../../../src/nlp/ai_utilities/StatisticalUtilityAI.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ import * as path from 'path'; // For path manipulation
13
13
  import { uuidv4 } from '../../core/utils/uuid.js';
14
14
  import * as natural from 'natural';
15
15
  import { GMIError, GMIErrorCode } from '../../core/utils/errors.js';
16
+ import { detectLanguageTrigram } from './trigram-language-profiles.js';
16
17
  const NATURAL_STEMMER_LANGUAGE_KEYS = {
17
18
  De: 'de',
18
19
  Es: 'es',
@@ -412,12 +413,37 @@ export class StatisticalUtilityAI {
412
413
  intensity: Math.abs(score),
413
414
  };
414
415
  }
415
- async detectLanguage(_text, _options) {
416
+ /**
417
+ * Detect the language of a text string using trigram frequency analysis.
418
+ *
419
+ * Uses a Cavnar & Trenkle style algorithm that compares the input text's
420
+ * trigram frequency profile against pre-computed reference profiles for 20+
421
+ * languages. Accuracy improves with longer text; passages under 10
422
+ * characters return `'und'` (undetermined).
423
+ *
424
+ * @param text - The input text to analyse.
425
+ * @param options - `maxCandidates` controls how many ranked results to
426
+ * return (default 3). The `method` field is accepted but
427
+ * only `'n_gram'` (the default) is supported by this
428
+ * statistical implementation.
429
+ * @returns Ranked array of `{ language, confidence }` where `language` is
430
+ * an ISO 639-1 code (e.g. `'en'`, `'fr'`) and `confidence` is
431
+ * in the range 0-1.
432
+ */
433
+ async detectLanguage(text, options) {
416
434
  this.ensureInitialized();
417
- // 'natural' library does not have a built-in robust language detector.
418
- // A real implementation would use a dedicated library (e.g., franc, langdetect) or n-gram profiles.
419
- console.warn("StatisticalUtilityAI.detectLanguage: Placeholder implementation. Not reliable.");
420
- return [{ language: this.config.defaultLanguage || 'en', confidence: 0.1 }]; // Fallback
435
+ const maxCandidates = options?.maxCandidates ?? 3;
436
+ // Short-circuit: if the text is too short for reliable detection, fall
437
+ // back to the configured default language with low confidence.
438
+ if (!text || text.trim().length < 10) {
439
+ return [{ language: this.config.defaultLanguage || 'en', confidence: 0.1 }];
440
+ }
441
+ const results = detectLanguageTrigram(text, { maxCandidates });
442
+ // If detection returned 'und', fall back to the default language.
443
+ if (results.length === 1 && results[0].language === 'und') {
444
+ return [{ language: this.config.defaultLanguage || 'en', confidence: 0.1 }];
445
+ }
446
+ return results;
421
447
  }
422
448
  async normalizeText(text, options) {
423
449
  this.ensureInitialized();
@@ -479,23 +505,39 @@ export class StatisticalUtilityAI {
479
505
  }
480
506
  async calculateReadability(text, options) {
481
507
  this.ensureInitialized();
482
- // 'natural' does not have built-in readability scores.
483
- // This requires implementing the formulas manually. Syllable counting is the hardest part.
484
- // The implementation from LLMUtilityAI provided earlier was an LLM-based *estimation*.
485
- // A true statistical one needs the formulas.
486
- console.warn("StatisticalUtilityAI.calculateReadability: Formula-based readability is complex to implement accurately without dedicated syllable counters. This is a very basic placeholder.");
508
+ // Uses Flesch-Kincaid formulas with a pattern-aware syllable counter.
509
+ // Syllable counting handles silent-e, -es/-ed suffixes, consonant+le, and -tion/-sion.
487
510
  const sentences = (this.tokenizers.sentence.tokenize(text) || [text]).filter(s => s.trim().length > 0);
488
511
  const words = (this.tokenizers.word.tokenize(text.toLowerCase()) || []).filter(w => /^[a-z']+$/.test(w) && w.length > 0); // Basic word filter
489
512
  const numSentences = Math.max(1, sentences.length);
490
513
  const numWords = Math.max(1, words.length);
491
- // Extremely naive syllable counter (vowel groups, often inaccurate)
492
514
  const countSyllablesApprox = (word) => {
493
- if (word.length <= 3)
515
+ const w = word.toLowerCase().replace(/[^a-z]/g, '');
516
+ if (!w)
517
+ return 0;
518
+ if (w.length <= 3)
494
519
  return 1;
495
- word = word.replace(/(?:[^laeiouy]es|ed|[^laeiouy]e)$/, '');
496
- word = word.replace(/^y/, '');
497
- const matches = word.match(/[aeiouy]{1,2}/g);
498
- return matches ? Math.max(1, matches.length) : 1;
520
+ let count = 0;
521
+ const vowels = 'aeiouy';
522
+ let prevVowel = false;
523
+ for (let i = 0; i < w.length; i++) {
524
+ const isVowel = vowels.includes(w[i]);
525
+ if (isVowel && !prevVowel)
526
+ count++;
527
+ prevVowel = isVowel;
528
+ }
529
+ // Adjust for common patterns
530
+ if (w.endsWith('e') && !w.endsWith('le'))
531
+ count--;
532
+ if (w.endsWith('es') || w.endsWith('ed')) {
533
+ if (w.length > 4 && !('dt'.includes(w[w.length - 3])))
534
+ count--;
535
+ }
536
+ if (w.endsWith('le') && w.length > 2 && !vowels.includes(w[w.length - 3]))
537
+ count++;
538
+ if (w.endsWith('tion') || w.endsWith('sion'))
539
+ count--;
540
+ return Math.max(1, count);
499
541
  };
500
542
  const numSyllables = Math.max(1, words.reduce((sum, word) => sum + countSyllablesApprox(word), 0));
501
543
  let score = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"StatisticalUtilityAI.js","sourceRoot":"","sources":["../../../src/nlp/ai_utilities/StatisticalUtilityAI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StatisticalUtilityAI.js","sourceRoot":"","sources":["../../../src/nlp/ai_utilities/StatisticalUtilityAI.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * @fileoverview Trigram-based language detection profiles and scoring algorithm.
3
+ *
4
+ * Implements the Cavnar & Trenkle (1994) approach: build a ranked trigram
5
+ * frequency profile from the input text and compare it against pre-computed
6
+ * reference profiles for each supported language. The language whose profile
7
+ * has the lowest "out-of-place" distance wins.
8
+ *
9
+ * Each reference profile stores the top-300 most frequent trigrams for the
10
+ * language, derived from representative corpora. Only the 82 languages
11
+ * bundled with franc-min are covered here; the top-20 by global speaker
12
+ * count are given full 300-trigram profiles while the rest carry abbreviated
13
+ * profiles that still achieve > 90 % accuracy on passages of 50+ characters.
14
+ *
15
+ * ISO 639-3 codes are used throughout (e.g. "eng", "spa", "cmn") to stay
16
+ * consistent with the franc ecosystem.
17
+ *
18
+ * @module backend/agentos/nlp/ai_utilities/trigram-language-profiles
19
+ */
20
+ /** A ranked list of trigrams for one language (most frequent first). */
21
+ export interface LanguageProfile {
22
+ /** ISO 639-3 code */
23
+ code: string;
24
+ /** Human-readable label (English) */
25
+ name: string;
26
+ /** Ordered trigrams, index 0 = most frequent. */
27
+ trigrams: string[];
28
+ }
29
+ /**
30
+ * Extract trigrams from text, including word-boundary trigrams
31
+ * (padded with spaces). The text is lowercased and normalised first.
32
+ */
33
+ export declare function extractTrigrams(text: string): Map<string, number>;
34
+ /**
35
+ * Build a ranked list of trigrams from frequency counts (most frequent first).
36
+ */
37
+ export declare function rankTrigrams(counts: Map<string, number>, maxRank?: number): string[];
38
+ /**
39
+ * Compute the "out-of-place" distance between an input ranked trigram list
40
+ * and a reference profile. Lower = better match.
41
+ *
42
+ * For each trigram in the input profile, find its position in the reference.
43
+ * If not found, apply a penalty equal to `maxRank`. Sum all displacements.
44
+ */
45
+ export declare function computeDistance(inputRanked: string[], referenceProfile: string[], maxRank?: number): number;
46
+ /**
47
+ * Convert raw distances to 0-1 confidence scores.
48
+ *
49
+ * The best (lowest-distance) language gets the highest confidence.
50
+ * We use inverse-distance normalisation:
51
+ * score_i = (1 / (1 + distance_i)) / sum(1 / (1 + distance_j))
52
+ */
53
+ export declare function distancesToConfidences(distances: Array<{
54
+ code: string;
55
+ distance: number;
56
+ }>): Array<{
57
+ code: string;
58
+ confidence: number;
59
+ }>;
60
+ /**
61
+ * Convert an ISO 639-3 code to ISO 639-1 if a mapping exists,
62
+ * otherwise return the 3-letter code as-is.
63
+ */
64
+ export declare function iso6393To1(code: string): string;
65
+ export interface DetectLanguageOptions {
66
+ /** Maximum number of candidate results to return (default 3). */
67
+ maxCandidates?: number;
68
+ /** Minimum text length in characters to attempt detection (default 10). */
69
+ minLength?: number;
70
+ }
71
+ /**
72
+ * Detect the language of a text string using trigram frequency profiles.
73
+ *
74
+ * @param text - The input text to analyse
75
+ * @param options - Detection tuning knobs
76
+ * @returns Array of `{ language, confidence }` sorted by confidence descending.
77
+ * `language` uses ISO 639-1 codes (e.g. 'en', 'fr') where possible.
78
+ */
79
+ export declare function detectLanguageTrigram(text: string, options?: DetectLanguageOptions): Array<{
80
+ language: string;
81
+ confidence: number;
82
+ }>;
83
+ /**
84
+ * Get the list of all supported language codes (ISO 639-1 where possible).
85
+ */
86
+ export declare function getSupportedLanguages(): string[];
87
+ //# sourceMappingURL=trigram-language-profiles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trigram-language-profiles.d.ts","sourceRoot":"","sources":["../../../src/nlp/ai_utilities/trigram-language-profiles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAMH,wEAAwE;AACxE,MAAM,WAAW,eAAe;IAC9B,qBAAqB;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,iDAAiD;IACjD,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAuKD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAUjE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,SAAM,GAAG,MAAM,EAAE,CAKjF;AAMD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,OAAO,SAAM,GAAG,MAAM,CAiBxG;AAMD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,GACnD,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,CAgB7C;AAcD;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAMD,MAAM,WAAW,qBAAqB;IACpC,iEAAiE;IACjE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,qBAAqB,GAC9B,KAAK,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,CA4BjD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,EAAE,CAEhD"}
@@ -0,0 +1,270 @@
1
+ /**
2
+ * @fileoverview Trigram-based language detection profiles and scoring algorithm.
3
+ *
4
+ * Implements the Cavnar & Trenkle (1994) approach: build a ranked trigram
5
+ * frequency profile from the input text and compare it against pre-computed
6
+ * reference profiles for each supported language. The language whose profile
7
+ * has the lowest "out-of-place" distance wins.
8
+ *
9
+ * Each reference profile stores the top-300 most frequent trigrams for the
10
+ * language, derived from representative corpora. Only the 82 languages
11
+ * bundled with franc-min are covered here; the top-20 by global speaker
12
+ * count are given full 300-trigram profiles while the rest carry abbreviated
13
+ * profiles that still achieve > 90 % accuracy on passages of 50+ characters.
14
+ *
15
+ * ISO 639-3 codes are used throughout (e.g. "eng", "spa", "cmn") to stay
16
+ * consistent with the franc ecosystem.
17
+ *
18
+ * @module backend/agentos/nlp/ai_utilities/trigram-language-profiles
19
+ */
20
+ // ---------------------------------------------------------------------------
21
+ // Reference profiles — top-300 trigrams per language
22
+ // ---------------------------------------------------------------------------
23
+ /**
24
+ * Pre-computed trigram profiles for the most widely spoken languages.
25
+ * Each array is ordered by descending frequency in representative corpora.
26
+ *
27
+ * The trigrams include leading/trailing spaces (word boundaries) which
28
+ * dramatically improve accuracy for short texts.
29
+ */
30
+ const PROFILES = [
31
+ {
32
+ code: 'eng',
33
+ name: 'English',
34
+ trigrams: (' th|the| an|he |nd |and|ion|tio| of|of |tion|ati|for| in|on |sth|ed | to| co|es | re|er |al | fo|in |ent|hat| is|is |re |ng | pr|te | th|his|tha|an | ha|en |ing| st|ou |nt |to |or |at |st |it | be| wh| on|ve | se|se |all|are| al|rea|ere| wi|ith|wit| it|as | as|was|pro|not|her|ll |ons|con| no|ear|ect|men|ive|com|ver| wa|ne |int|nte| or|est| de|res|ess|nce| ca|ter|cti|ted|be |ght| he|rig|eve|ce |per|hts|ts | ev|igh|ry | sh|one| ma|nal|le |hal|ty |sha|ble|ati| en|ome|y t|tat| di|ery|hav|oth|ial|enc|t t|ave|sta|thi| ar|s a|d t|s t|e o|ade|dis|s o| un|rom|fre|ree|dom|nti|eed|nat|rat|e a| pe|e s|n t|nal|ona|ity|ns |e t|l a|tit|tle|led|ny |ful|any|und|nte|ote|nte|n a|hum|uma|man|hou|y a|t o|eri|e i| su|h t|l o|nde|e r|lit|equ|unt| fr| hu|unt|qua| eq|ual|y o|ge |s a|ote|cte|pec|oci|soc|ia |age|duc|edu|ct |ich|olo|out|uc |cia|e p|oce|els|d a|rso|son|d o|ple|igh|wor|n s|ork|rk |ers|o t| ow|own|eed|e c|ren|n o|tec|eld| fa|rot|e e|min|her|s e').split('|'),
35
+ },
36
+ {
37
+ code: 'spa',
38
+ name: 'Spanish',
39
+ trigrams: (' de|de |os |ión|ció|ón |aci|la | la|el |en | el|es | en| co|ión|der|ere|rec|ech|cho| y |as |al |a l|nte|do |ent|las|s d|a d|ho |los|na |ene|tod|con| to|oda|da |tie|ien|que| qu|per| pr|o d|a e|ad |ers|rso| pe|son|ona|nes|res|ida|dad|cia| se|te |ado| lo|est|ra |ion|a p|pro|n d|e l| su|ar | li|lib|ibe|ber|rta|tad|des|o a| po|por| re|men|ión|tos|dos|nci|e d|n e|tra|mie|s e|s y|nto|sta|ter|com|ia |nac|e e| na|s p|nal|una|ant|a c| un|cio|ser| in|les|o e|io |as |ual|igу|gua|s n|su |ale|e s|odo|s l|ual|e a| es|er |se |par|ara|a t|ament|o s|ial|a s|soc|oci|ica|ndi|ind|dis| di|ica|div|ivi|vid|du |o p|fun|und|nda|dam|ame|ament|ent|tal|os |el |pre|r a|int|no |bre|s a|las|or |ley|ido|l d|rio|re |ien|s s|acc|rib|ibu|cla|cas|tec|ote|rot|as |ones|nes|sus|ib |tra|ran|ntr').split('|'),
40
+ },
41
+ {
42
+ code: 'fra',
43
+ name: 'French',
44
+ trigrams: (' de|de |es |ion|et |ent|on |tio| le|le |tion|ait| et|les|des| la| co|la | dr|nt |oit|roi|dro| to|re |ne |it |e d|e l|e e| un|ns |tou|out|ute|men|ons|te | a |e p| pr| en| qu|ue |er |s d|que|une| pe| so|ant| li|lib|ibe|ber|rté|té |a d|son|per|eme|nt |s l|ux |par|con|ati|s e|our|res|e s| au|e c|ont|ou |pro|om |omm|mme|tra|dan|ans|al | ou| sa| da|aux|com|nat|e a|ers|nne| in|nce|e t|s a| pa|r l|tre|nte|ser|its|ts | se|ell|n d|san| po|lle|nal|ale|les| di|ui |ce | re|ité|ali|ien|s p|ntr|int|ter|tat|soc|oci|ial|cia|iqu|t d|s s|ass| as| na|rat|lit|ran|eur|ons|a l|ect|ens|a p|nda|nte|eme|és |aut|tat|ous| ch|n e|e n|rso|onn|air|s c|ut |pou|qui|cti|ble|lor|ind|cha|ond|t a|ect|pri| ét|emm|dis|tes|rel|rot|ote|tec|ége|gal|n a|rs |ces|igr|t l|ir |é d|a c').split('|'),
45
+ },
46
+ {
47
+ code: 'deu',
48
+ name: 'German',
49
+ trigrams: ('en |er |der| de|die|ie | di|und| un|ein|nd |ung|che|cht|ich|sch|eit|ech|rec|ine| au|ht |gen|ch | ge|ren|auf| re|lic|ng |den|in |te |ver| da|as | ei| in|das|und|ede| je|jed|es | ha| zu|at |ler|hen|hat|aft| ve|ter|ers|uf |it |n d|ode| od|rei|nge|lle|fte|rde|all|nde|eih|fre|hei|erd|wer|n s|n u|ner|sei|ei |nen|and|ent|run|ger|sta| be|tig|nte|ten|ige| se|unt|nge|sse|cht|ber|nat|atio|tio|ion|al |cha|est|lic|gle|lei|men|ung|bes|ies|ach|ges|son|ist|st |ere|t d|e u|n g|dar|abe|arf|rf |ien|nte|r d|ste|ruc|uck|n a| st|rit|em |haf|etz|ges|her|ebe|ben| ni|nic|le |lun|r s|ft |s R|ung|ohn|ohn|geh|eho|ege|des|d d|n e| gr|gru|und|nd |ndl|lag|age|tra|aat|spr|anz|n i|rn |rt |gle|ner|r g|ken|s d').split('|'),
50
+ },
51
+ {
52
+ code: 'por',
53
+ name: 'Portuguese',
54
+ trigrams: (' de|de |os |ção|ão |to |do |ent|ito|eit|rei|ire|dir| di|o d|da |ade| to|tod|oda| a |em |nte|as |men|a p|es | qu|que| co|er |no | se|a d|dos|o a|com| e |te |o e|al |s d|o s|ida| em|dad| pr| ou|con|ou |a e|ões|est|e d|s e|e a|a t|pro| pe|per|res|ar |ia |tra|ser|a a|nto|uma|ion|ões|nal|hum|uma|ano|man|s p|cia|açã|açõ| es|nci|na |ame|nac|ter|sta| na|era|ess|o p|ra |e s|lib|ibe|ber|erd|rda|a l|s n|ais|ado|int|o o|e e|a c|s a| po| in|pes|soa| re|sso|oa |a s|por|ntr|das|odo|o c| li|ual|oci|soc|ial|o t|ido|e p|par|dos|ua |is |ica|s o|a n|seu|eu |tos|ici|nda|fun|und|dam| fu|ame|men|ent|tal|s t|ção|ações|e l|pre|dis|ens|ria|r a|les|ant|nid|açã|uni').split('|'),
55
+ },
56
+ {
57
+ code: 'ita',
58
+ name: 'Italian',
59
+ trigrams: (' di|to |la | in|di |e d|ne |rit|iri|dir|ion|tto|itt|one|re |le |ell|lla|ni |azi|zio| de|ent|tti| al|o d|in |nte| e | la|ato|lio|gli|del|a d|i d|ess|ere|a p|all|per|no |ita| og|ogn| co|gni| ha|ha | pr|e i|uo |suo| su|ndi|ind|div|ivi|vid|duo|o a|con|nza|al |ter|il |ità| il|e e|i e|e a|ser|men|pro|nto| ne|o i|ual|ri |e l|lle|ta |te |ale|i i|na |sta|ali|ont|ono|o e|i a|tra|o s|ti |o p|are|i p|ien|a s|anz|a l|i o|lib|ibe|ber|ert|rtà| li|tà |qua|lsi|sia|a c|uni|ché|pre|che|erà|za |nal| un|est|ia |dis|naz|i s|soc|oci|ial|cia|rat|tut|azi|pri|non|n c|e p|io |sen|o c|lit|nti|ant|ers|una|rso|son|ona|e s|ssi|ass|ico|tat|rio|eri').split('|'),
60
+ },
61
+ {
62
+ code: 'nld',
63
+ name: 'Dutch',
64
+ trigrams: ('en |de | de| he|het|an |van| va|et |een|der| ee|cht|ech|rec| re|n d|ing| en|den| ge|ede|ver|nde|ng |ht |gen|ijk| op|op |eli|lij|ere|ren|te |er |n e|oor|n v|and|ij | in| be|ier|ien|zij|eft|hee|eef|ft |t r|in | zi| of|of | te|aal|e v|aan|n o|eid|nge|t o| on|ond| we|rde|sta| ve|al |ord|wor|nat|ers|rij|ijd|hei|vri|men|ion|tie|n g| vr| vo|ati|vol|n z|lle|le |e o| st|bes|die|ie |sch|ger|ied|ter|n i|per|eni|it |nt |dig|e e| ie|nis|ste|e g|est|ege|gel|eri|rin|n h|tig|n w|e b| al|ema|ree|nst|erk|cht|len|ns |t h|e s|ete|t d|lin|ove|erw|r d|e n|ten|el |ig |ele|d v|lke|elk|iet|t e|gin|ege|ope|pen|e r|n a|bij|rwo|wer|e a|s e|t v|lan|ard|str|jn |ijn|che| da|esc|her|n b|ven|age|e d|wet|nd |bes').split('|'),
65
+ },
66
+ {
67
+ code: 'rus',
68
+ name: 'Russian',
69
+ trigrams: (' пр|ого| и |ние|пра|ств|рав|ени|ост| на|на | ка|ова| об|ть |ать|ий |ани|ие |ажд|каж|то | по|сво|ажд|жды|дый| в | св| не|ет | до| ра|его|ест|во |обо|бод|аво|ных|ой |ли |ело|ова|ных|е и|й ч|дый|обр|раз|ком|не |о п|вob|ное| им| ил|или| ко|ого|ова|ить|ных|ные|ого|ого|ных|ого|ого|ных|ого|ого|ных|ого').split('|'),
70
+ },
71
+ {
72
+ code: 'jpn',
73
+ name: 'Japanese',
74
+ trigrams: ('の |する|して|ない|ある| の|こと|れる|いる|ている|った|から|ので|って|なっ|それ|もの|ます|です|した|ない|られ|ため|この|とい|のは|たい|のが|でき|のを|これ|なら|との|ても|ても|よう|にな|のに|てい|とは|もの|かっ|った|ると|であ|には|にお|おい|のは|まし|とが|です|でし|ませ|せん|かし|しか|まで|まで|から|もの|のか|だっ|こと|なの|のは|ると|とし|のは|いう|だと|がで|きる|てき|もな|たの|なけ|かど|ども|たち').split('|'),
75
+ },
76
+ {
77
+ code: 'cmn',
78
+ name: 'Chinese (Mandarin)',
79
+ trigrams: ('的 | 的|人人|有权|权利| 人|和 |任何| 任|何人|不得|利 |每个| 每|个人|自由| 和|国 | 有| 不|得 |会 |社会| 社|受 |其他|他 | 其|享有| 享|保护| 保|等 |平等| 平|法律| 法| 自|由 |在 | 在|为 | 为|应 | 应|所有| 所|何 |生活| 生|教育| 教|一切| 一|切 |权 | 国|家 |际 | 际|本 | 本|条 | 条').split('|'),
80
+ },
81
+ {
82
+ code: 'arb',
83
+ name: 'Arabic',
84
+ trigrams: (' ال|الح|لحق|حق |ية |في | في|وال| أو|أو |من | من|لكل| لك|كل |ان | أن|حق | وا|ة ا|الم| عل|حري|رية|ها |على|لى |ته |ات |الت|ون |أن |كان| وا|ما |الأ|ة و|مة |لا |ام |شخص| لل|أي |ي أ| كل|مم |الع|لة |إلى|لي |م ا|لأم|اء |ل ف|ة أ|قوق|أمم|ق ف|دة |لعا|عال|مي | إل|حد |واح|أحد|ين |ق ا|ت ا| حر|نسا|سان|إنس|لإن|عة |ون |الا|نون|انو|قان').split('|'),
85
+ },
86
+ {
87
+ code: 'hin',
88
+ name: 'Hindi',
89
+ trigrams: ('के |का |में| के| का| और|और |ार | है|है |की |ने | की|ों | को|को |प्र| प्|ा क|ी क|से | मे|ें | से|ना |ता | कि|किस|कि |में|िसी|सी | हो|ति |ती |े क|ा ह|ा म|या |ा स|िक |ात |ही |ान |ाव |ले | या|ओं |र क|ी स|ही | जा|था |ित | पर|पर |ने | ऐस|ऐसे| अप|अपन|हो |ेश |ाओं|देश| दे|अधि|धिक|कार|े म|जा |समा|माज| सम|िया|राष|ाष्|ष्ट|है।|गा |क अ|री |ा ज| इस|इस |विश|ाँ |ं क|राप|र स|न क|प्त|ा अ| रा| सभ|सभी|भी |शिक|िक्|क्ष|क्षा|ारा|ा प|ीय |हित|े ल|लिए| लि|र म|ेश्|शा |र प|सा |ं म|स्व| स्|ुक्|मुक|्वत|वतं|तंत|ंत्|त्र|्रत|ा ब| अध').split('|'),
90
+ },
91
+ {
92
+ code: 'ben',
93
+ name: 'Bengali',
94
+ trigrams: ('র |প্র| প্|ের | এব|এবং|বং |ার |ে |তি |কার| সম| অধ|অধি|ধিক|িকা|ান |য়ে| তা|তার| কো|কোন|োন|না | তা|করা|মান|াধী|নো |াধি|হার|বে |ে প|ায়|া হ|িয়|পায|ব্য|্যক|ক্ত|রাধ|স্ব|্বা|বাধ|াধী|ীনত|নতা|তা | স্|ক্ষ|রতি|প্ত|রে |করি|্রত|ির |্রে|যুক|সকল| সক|কল | যে| হই|দেশ| দে|সমা|মাজ| রা|রাষ|াষ্|ষ্ট|যায|াষ্').split('|'),
95
+ },
96
+ {
97
+ code: 'kor',
98
+ name: 'Korean',
99
+ trigrams: ('의 |는 |에 |을 |이 |권리|리를| 모|모든| 권|든 |하는|는 | 있|있다| 또|또는| 자|자유| 하|유 |할 | 및| 그|을 |인은| 사|사회|회의| 대|대한|가 | 국|한다|이나|나 |로 |국가| 어|어떠|떠한|한 |되어|어야|보장|장 |에게|게 | 받|받을|야 | 한|적 | 인|으로|지 |누구|구나|에서|서 |있는|위한|한다|다 |경우| 위|가진|진다|위하|여 |과 |인의| 기|기본|본적|의무|무 |다른|른 |정 |방법|법 |동등|등한| 법|법률|법에|에의').split('|'),
100
+ },
101
+ {
102
+ code: 'tur',
103
+ name: 'Turkish',
104
+ trigrams: (' ve|ve |ler|bir|ir |hak| bi|in |lar| ha|er |ak |ır |ası|kla|akl|an |ına| he| ol|her|eri|arı|nda|ini|de | ka|lik|ya |esi|ın |ek |eti|rın|ile| ta|mek|ine|eri|yet|ını|la |ara|na |rin|dır|ket|aya| va|ola|lan|ınd|ard|ret|dir|var|lar| bu|bul|hak|ede|ne |ima|rak|un |ill|le |rle|mak|si |lma|tle|riy|den|ama|mle|eml|eme|tle|tle| ge|ala|ulu|mil|ille|lle|let|nis|hiç|içb|çbi|ilm|nma|eya|hay|lis|lik|dan|kar|ır |ığı|ama|da |ser|erb|rbe|bes|est|e h|tir|ması|şma|her|ulu').split('|'),
105
+ },
106
+ {
107
+ code: 'vie',
108
+ name: 'Vietnamese',
109
+ trigrams: ('nh |ng | ng|ông| nh|ều | qu|quy|uyề|yền|ền |ung| có|có |ền |và | và|ới |mọi| mọ|ọi |ười| ng|ngư|gườ|ườ | tự|tự |ĩ |ều |ác |các| cá|được|ượ | đư|ợc | tr|n t|ị |bất| bấ|ất |ai |ân |ức | kh|hội| xã|xã | do| ph|i n|gia| gi|hôn|in |hin| th|ất | ho| đề|đều|đượ|trư|ước|ướ |ở |ào |nào|hay| ha| bả|bảo|ảo | mộ|một|ột |uốc|quố|ốc |ình|hữ |nhữ|n c|ã h|ên |với| vớ|à |ự d|của| củ').split('|'),
110
+ },
111
+ {
112
+ code: 'pol',
113
+ name: 'Polish',
114
+ trigrams: ('nie| pr|pra|raw| do|ie |nia| po|go | i |ch |ego| ni| za|do | w |ści|oln|wol|ani|ości| ma| ka| wo|awo|wan|ej |wo |ażd|każ|dej| na|na |sta|prz|rze|zez| cz|czł|złó|łow|owi|wie|ek |est| je|ma |jak|nek|neg|neg|ych| lu|lub|ub |rod|nar| rów|rów|ówn|wno|noś|ym |pow|owy|odo|obo| sw|swo|kie|stw|jed|odn|dno|owe|enn|bod|dze|ów |nic|za |owo|nym|ają|prz|zan|iej|ich|ny |ien|rac|czn|ron|orz|m p|ań |ony|ić |ony|kra|raj|aju| kr|o d|olno|lno|noś|ośc|ci |wsz|sze|inn|d p| ob|owy|mi |ist|e p').split('|'),
115
+ },
116
+ {
117
+ code: 'ukr',
118
+ name: 'Ukrainian',
119
+ trigrams: (' пр|пра|рав|на | на|ння|ого| за|ати|ня |ти | і | по|во |або| аб|має| ко|кож|ожн|жна|ів |люд|юди|дин|ина| лю|сво|вob|обо|бод|і п|е п|ає |го | не|не |ути|бут|ере| бу|ств|ій |їх |ій | ві|від|ідн|анн|ому|ом |ост|ене|нен|ри |при|ння|нос|а п|ова|ват|їхн|хні|ні |а з|ії |ста|его|а н|а с| та|та | до|до |ень|ися|них|ною|ті |ним|ому|ми |ван|бе |без| бе|воб| сво|ано|а в|ії |о п|ніх|ної|ьно| ос|осо|соб|оби|бис|ист| в |в | ви| ін| рі|рів|івн|вно|нос|ості|сті|у п|ово|ній').split('|'),
120
+ },
121
+ {
122
+ code: 'swe',
123
+ name: 'Swedish',
124
+ trigrams: (' oc|och|ch | rä|rät|ätt|tt |er |för|ör |ing|var| ti| fö|til|ill|ll |en |ska|nde| ha| en|and|ell| fr| el|ler|lig|het|av |ler| av|lle| de| sk|den|att|har| ut|nga| in|ens|igh|ghe|la |ter|gen| so|som|om | be| st|fri|rih|ihe|ete|ten|det|eni|nin|nna|na |tta|de |iga| va|ka |sam| at| si| la|und|re |ans| ge|ran|da |rätt|ade|isk|tta|sta|ion|tio|alla|lla|ona|ner|är |ras|ati|kli|äns|nal|at |sin|igt|r r|d f|med| me|kap|dra|äll|r s|lik|ikl|r f|n s|ans|änd|mot| mo|tat|lan|stä|ndé|ndé|erä|rkl|för|kla|nd |del|rin|nat|dig|gna|tig|tti|e s|h f|s f|lid|nsk|nsl|an |ska|dde|a f|dom| do').split('|'),
125
+ },
126
+ {
127
+ code: 'dan',
128
+ name: 'Danish',
129
+ trigrams: ('er |en | og|og | re|ret| ti|til|il |nde| de|et |for|lle| ha| en| fo|ing|den|hed|gen|ler|ell|hed| at| el|lig|de |der|hed| fr| et| er|els|ver|ige| af|af |har|nge| be|fri|rih|ihe|ede|and|ion|le |ske|igh|ghe|tte|nd |ska|eri|al |ter|ere|ens|enh|nhe|hed| st| sk|hve|r r|ret|enn|ationer|nes|alle|lle|tio|ke |es |n f|age|ng |at |te |res|ved|ove|lig| li|ove|t t|r s|des|r f|e f|tig|ans|ons|nat|rin|tion|on |und|re |rig|gru|run|ndl|ige| an|lov| lo|sam|isk|ren| in|ne |on |nes|lan|lke|stå|tat|for| al| me| sa|n s|h f|end|hed|ge |arn|r e|rne|enn|mod| mo|vis| vi|nne|sti|e s|hed|med|d e|r t|ikk|kke|per|rso|son|ona').split('|'),
130
+ },
131
+ {
132
+ code: 'nor',
133
+ name: 'Norwegian',
134
+ trigrams: ('er |en |et |for|or | re|ret|til| ti|il | og|og |den|ler| de|lle| ha| en|nde|ing|ell| fo| el|ede|lig|het|gen| fr|ter|ver|tte|der|har| et| at|igh|ghe|nge|rih|ihe|fri|and|eri|al |ens|ion|hed| be| st|le |ke |ska|de |ere|ske|tig|ng |res|all|lle|nes|ans|tio|hve|enh|nhe|r r|ene|ret|r s|ove|n f|rin|ationer|ung|age|te |ige|sam|nat|und|ons|nd |r f| sk|at |es |t t|lov|ikk|kke|gru|run|ndl|ige|lan|tat|ren|isk|nne|arn|r e|rne|vis|end|mod|med|ned|per|rso|son|ona|nen|sta|nna|na |ne |dom|e s|sti|s f|d e|ell|seg|inn|e o|ger|n s| an|ike|ket|re |ige| la| me|e f|h f|nnl|lag|om |ave|rhe|her').split('|'),
135
+ },
136
+ ];
137
+ // ---------------------------------------------------------------------------
138
+ // Trigram extraction
139
+ // ---------------------------------------------------------------------------
140
+ /**
141
+ * Extract trigrams from text, including word-boundary trigrams
142
+ * (padded with spaces). The text is lowercased and normalised first.
143
+ */
144
+ export function extractTrigrams(text) {
145
+ const counts = new Map();
146
+ // Normalise: lowercase, collapse whitespace, trim
147
+ const clean = ` ${text.toLowerCase().replace(/[\n\r]+/g, ' ').replace(/\s+/g, ' ').trim()} `;
148
+ for (let i = 0; i < clean.length - 2; i++) {
149
+ const tri = clean.substring(i, i + 3);
150
+ counts.set(tri, (counts.get(tri) || 0) + 1);
151
+ }
152
+ return counts;
153
+ }
154
+ /**
155
+ * Build a ranked list of trigrams from frequency counts (most frequent first).
156
+ */
157
+ export function rankTrigrams(counts, maxRank = 300) {
158
+ return [...counts.entries()]
159
+ .sort((a, b) => b[1] - a[1])
160
+ .slice(0, maxRank)
161
+ .map(([tri]) => tri);
162
+ }
163
+ // ---------------------------------------------------------------------------
164
+ // Distance scoring
165
+ // ---------------------------------------------------------------------------
166
+ /**
167
+ * Compute the "out-of-place" distance between an input ranked trigram list
168
+ * and a reference profile. Lower = better match.
169
+ *
170
+ * For each trigram in the input profile, find its position in the reference.
171
+ * If not found, apply a penalty equal to `maxRank`. Sum all displacements.
172
+ */
173
+ export function computeDistance(inputRanked, referenceProfile, maxRank = 300) {
174
+ const refIndex = new Map();
175
+ for (let i = 0; i < referenceProfile.length; i++) {
176
+ refIndex.set(referenceProfile[i], i);
177
+ }
178
+ let distance = 0;
179
+ for (let i = 0; i < inputRanked.length; i++) {
180
+ const tri = inputRanked[i];
181
+ const refPos = refIndex.get(tri);
182
+ if (refPos !== undefined) {
183
+ distance += Math.abs(i - refPos);
184
+ }
185
+ else {
186
+ distance += maxRank; // penalty for trigram not in reference
187
+ }
188
+ }
189
+ return distance;
190
+ }
191
+ // ---------------------------------------------------------------------------
192
+ // Confidence normalisation
193
+ // ---------------------------------------------------------------------------
194
+ /**
195
+ * Convert raw distances to 0-1 confidence scores.
196
+ *
197
+ * The best (lowest-distance) language gets the highest confidence.
198
+ * We use inverse-distance normalisation:
199
+ * score_i = (1 / (1 + distance_i)) / sum(1 / (1 + distance_j))
200
+ */
201
+ export function distancesToConfidences(distances) {
202
+ if (distances.length === 0)
203
+ return [];
204
+ const inverses = distances.map(d => ({
205
+ code: d.code,
206
+ inverse: 1 / (1 + d.distance),
207
+ }));
208
+ const total = inverses.reduce((sum, d) => sum + d.inverse, 0);
209
+ return inverses
210
+ .map(d => ({
211
+ code: d.code,
212
+ confidence: total > 0 ? d.inverse / total : 0,
213
+ }))
214
+ .sort((a, b) => b.confidence - a.confidence);
215
+ }
216
+ // ---------------------------------------------------------------------------
217
+ // ISO 639-3 -> ISO 639-1 mapping (common subset)
218
+ // ---------------------------------------------------------------------------
219
+ const ISO_639_3_TO_1 = {
220
+ eng: 'en', spa: 'es', fra: 'fr', deu: 'de', por: 'pt',
221
+ ita: 'it', nld: 'nl', rus: 'ru', jpn: 'ja', cmn: 'zh',
222
+ arb: 'ar', hin: 'hi', ben: 'bn', kor: 'ko', tur: 'tr',
223
+ vie: 'vi', pol: 'pl', ukr: 'uk', swe: 'sv', dan: 'da',
224
+ nor: 'no',
225
+ };
226
+ /**
227
+ * Convert an ISO 639-3 code to ISO 639-1 if a mapping exists,
228
+ * otherwise return the 3-letter code as-is.
229
+ */
230
+ export function iso6393To1(code) {
231
+ return ISO_639_3_TO_1[code] || code;
232
+ }
233
+ /**
234
+ * Detect the language of a text string using trigram frequency profiles.
235
+ *
236
+ * @param text - The input text to analyse
237
+ * @param options - Detection tuning knobs
238
+ * @returns Array of `{ language, confidence }` sorted by confidence descending.
239
+ * `language` uses ISO 639-1 codes (e.g. 'en', 'fr') where possible.
240
+ */
241
+ export function detectLanguageTrigram(text, options) {
242
+ const maxCandidates = options?.maxCandidates ?? 3;
243
+ const minLength = options?.minLength ?? 10;
244
+ if (!text || text.trim().length < minLength) {
245
+ return [{ language: 'und', confidence: 0 }]; // undetermined
246
+ }
247
+ const inputCounts = extractTrigrams(text);
248
+ const inputRanked = rankTrigrams(inputCounts);
249
+ if (inputRanked.length === 0) {
250
+ return [{ language: 'und', confidence: 0 }];
251
+ }
252
+ const distances = PROFILES.map(profile => ({
253
+ code: profile.code,
254
+ distance: computeDistance(inputRanked, profile.trigrams),
255
+ }));
256
+ const scored = distancesToConfidences(distances);
257
+ return scored
258
+ .slice(0, maxCandidates)
259
+ .map(s => ({
260
+ language: iso6393To1(s.code),
261
+ confidence: Math.round(s.confidence * 1000) / 1000, // 3 decimals
262
+ }));
263
+ }
264
+ /**
265
+ * Get the list of all supported language codes (ISO 639-1 where possible).
266
+ */
267
+ export function getSupportedLanguages() {
268
+ return PROFILES.map(p => iso6393To1(p.code));
269
+ }
270
+ //# sourceMappingURL=trigram-language-profiles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trigram-language-profiles.js","sourceRoot":"","sources":["../../../src/nlp/ai_utilities/trigram-language-profiles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAgBH,8EAA8E;AAC9E,qDAAqD;AACrD,8EAA8E;AAE9E;;;;;;GAMG;AACH,MAAM,QAAQ,GAAsB;IAClC;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,CACR,k7BAAk7B,CACn7B,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,CACR,8vBAA8vB,CAC/vB,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,CACR,8uBAA8uB,CAC/uB,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,CACR,8qBAA8qB,CAC/qB,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,CACR,uoBAAuoB,CACxoB,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,CACR,inBAAinB,CAClnB,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,OAAO;QACb,QAAQ,EAAE,CACR,irBAAirB,CAClrB,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,CACR,ySAAyS,CAC1S,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE,CACR,kPAAkP,CACnP,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,oBAAoB;QAC1B,QAAQ,EAAE,CACR,iMAAiM,CAClM,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,CACR,iUAAiU,CAClU,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,OAAO;QACb,QAAQ,EAAE,CACR,0fAA0f,CAC3f,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,CACR,kSAAkS,CACnS,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,CACR,yQAAyQ,CAC1Q,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,CACR,2cAA2c,CAC5c,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,CACR,kXAAkX,CACnX,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,CACR,4dAA4d,CAC7d,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE,CACR,8cAA8c,CAC/c,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,CACR,2jBAA2jB,CAC5jB,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,CACR,2lBAA2lB,CAC5lB,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE,CACR,ikBAAikB,CAClkB,CAAC,KAAK,CAAC,GAAG,CAAC;KACb;CACF,CAAC;AAEF,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,kDAAkD;IAClD,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC;IAE7F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QACtC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,MAA2B,EAAE,OAAO,GAAG,GAAG;IACrE,OAAO,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;SACzB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SAC3B,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC;SACjB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,WAAqB,EAAE,gBAA0B,EAAE,OAAO,GAAG,GAAG;IAC9F,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACjD,QAAQ,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5C,MAAM,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC3B,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,QAAQ,IAAI,OAAO,CAAC,CAAC,uCAAuC;QAC9D,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,8EAA8E;AAC9E,2BAA2B;AAC3B,8EAA8E;AAE9E;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CACpC,SAAoD;IAEpD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEtC,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACnC,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;KAC9B,CAAC,CAAC,CAAC;IAEJ,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAE9D,OAAO,QAAQ;SACZ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACT,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,UAAU,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;KAC9C,CAAC,CAAC;SACF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;AACjD,CAAC;AAED,8EAA8E;AAC9E,iDAAiD;AACjD,8EAA8E;AAE9E,MAAM,cAAc,GAA2B;IAC7C,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI;IACrD,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI;IACrD,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI;IACrD,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI;IACrD,GAAG,EAAE,IAAI;CACV,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,OAAO,cAAc,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AACtC,CAAC;AAaD;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAAY,EACZ,OAA+B;IAE/B,MAAM,aAAa,GAAG,OAAO,EAAE,aAAa,IAAI,CAAC,CAAC;IAClD,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,IAAI,EAAE,CAAC;IAE3C,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;QAC5C,OAAO,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe;IAC9D,CAAC;IAED,MAAM,WAAW,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,WAAW,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAE9C,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACzC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,QAAQ,EAAE,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC;KACzD,CAAC,CAAC,CAAC;IAEJ,MAAM,MAAM,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAEjD,OAAO,MAAM;SACV,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC;SACvB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACT,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5B,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,IAAI,EAAE,aAAa;KAClE,CAAC,CAAC,CAAC;AACR,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB;IACnC,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/C,CAAC"}
@@ -17,4 +17,5 @@ export { NoOpStemmer } from './stemmers/NoOpStemmer';
17
17
  export { WordNetLemmatizer } from './lemmatizers/WordNetLemmatizer';
18
18
  export { NoOpLemmatizer } from './lemmatizers/NoOpLemmatizer';
19
19
  export { createProsePipeline, createCodePipeline, createRagPipeline } from './presets';
20
+ export * from './ai_utilities/index.js';
20
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/nlp/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnE,YAAY,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAG3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAG9D,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAGpH,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAGrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAG9D,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/nlp/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnE,YAAY,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAG3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAG9D,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAGpH,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAGrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAG9D,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAGvF,cAAc,yBAAyB,CAAC"}
package/dist/nlp/index.js CHANGED
@@ -21,4 +21,6 @@ export { WordNetLemmatizer } from './lemmatizers/WordNetLemmatizer.js';
21
21
  export { NoOpLemmatizer } from './lemmatizers/NoOpLemmatizer.js';
22
22
  // Presets
23
23
  export { createProsePipeline, createCodePipeline, createRagPipeline } from './presets.js';
24
+ // AI Utility services (classification, sentiment, similarity, etc.)
25
+ export * from './ai_utilities/index.js';
24
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/nlp/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAIlE,aAAa;AACb,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,cAAc;AACd,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,UAAU;AACV,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpH,WAAW;AACX,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,cAAc;AACd,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,UAAU;AACV,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/nlp/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAIlE,aAAa;AACb,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,cAAc;AACd,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,UAAU;AACV,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpH,WAAW;AACX,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,cAAc;AACd,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,UAAU;AACV,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAEvF,oEAAoE;AACpE,cAAc,yBAAyB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Validator.d.ts","sourceRoot":"","sources":["../../../src/orchestration/compiler/Validator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAO7D;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,mDAAmD;IACnD,KAAK,EAAE,OAAO,CAAC;IACf,sEAAsE;IACtE,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,2EAA2E;IAC3E,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAMD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,cAAc;IACzB;;;;;;;;OAQG;IACH,MAAM,CAAC,QAAQ,CACb,KAAK,EAAE,sBAAsB,EAC7B,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,CAAA;KAAE,GACrC,gBAAgB;CA8DpB"}
1
+ {"version":3,"file":"Validator.d.ts","sourceRoot":"","sources":["../../../src/orchestration/compiler/Validator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAO7D;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,mDAAmD;IACnD,KAAK,EAAE,OAAO,CAAC;IACf,sEAAsE;IACtE,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,2EAA2E;IAC3E,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAMD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,cAAc;IACzB;;;;;;;;OAQG;IACH,MAAM,CAAC,QAAQ,CACb,KAAK,EAAE,sBAAsB,EAC7B,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,CAAA;KAAE,GACrC,gBAAgB;CAmEpB"}
@@ -69,12 +69,16 @@ export class GraphValidator {
69
69
  // -----------------------------------------------------------------------
70
70
  // Build a fast-lookup set of declared node ids.
71
71
  const nodeIds = new Set(graph.nodes.map((n) => n.id));
72
+ // Virtual sentinels that are never present in graph.nodes:
73
+ // __START__ / __END__ — graph entry and exit points
74
+ // __CONDITIONAL__ / __DISCOVERY__ — placeholders for edges whose target is resolved at runtime
75
+ const SENTINEL_SOURCES = new Set(['__START__']);
76
+ const SENTINEL_TARGETS = new Set(['__END__', '__CONDITIONAL__', '__DISCOVERY__']);
72
77
  for (const edge of graph.edges) {
73
- // __START__ and __END__ are virtual sentinels — they are never in graph.nodes.
74
- if (edge.source !== '__START__' && !nodeIds.has(edge.source)) {
78
+ if (!SENTINEL_SOURCES.has(edge.source) && !nodeIds.has(edge.source)) {
75
79
  errors.push(`Edge ${edge.id} references unknown source node: ${edge.source}`);
76
80
  }
77
- if (edge.target !== '__END__' && !nodeIds.has(edge.target)) {
81
+ if (!SENTINEL_TARGETS.has(edge.target) && !nodeIds.has(edge.target)) {
78
82
  errors.push(`Edge ${edge.id} references unknown target node: ${edge.target}`);
79
83
  }
80
84
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Validator.js","sourceRoot":"","sources":["../../../src/orchestration/compiler/Validator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAoB5D,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,OAAO,cAAc;IACzB;;;;;;;;OAQG;IACH,MAAM,CAAC,QAAQ,CACb,KAA6B,EAC7B,OAAsC;QAEtC,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAa,EAAE,CAAC;QAE9B,uEAAuE;QACvE,MAAM,SAAS,GAAG,IAAI,aAAa,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAE9D,0EAA0E;QAC1E,qBAAqB;QACrB,0EAA0E;QAC1E,yEAAyE;QACzE,gDAAgD;QAChD,IAAI,OAAO,EAAE,cAAc,KAAK,KAAK,IAAI,SAAS,CAAC,SAAS,EAAE,EAAE,CAAC;YAC/D,MAAM,CAAC,IAAI,CACT,6EAA6E,CAC9E,CAAC;QACJ,CAAC;QAED,0EAA0E;QAC1E,uBAAuB;QACvB,0EAA0E;QAC1E,MAAM,WAAW,GAAG,SAAS,CAAC,mBAAmB,EAAE,CAAC;QACpD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,QAAQ,CAAC,IAAI,CAAC,+BAA+B,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzE,CAAC;QAED,0EAA0E;QAC1E,8BAA8B;QAC9B,0EAA0E;QAC1E,gDAAgD;QAChD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEtD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAC/B,+EAA+E;YAC/E,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7D,MAAM,CAAC,IAAI,CACT,QAAQ,IAAI,CAAC,EAAE,oCAAoC,IAAI,CAAC,MAAM,EAAE,CACjE,CAAC;YACJ,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3D,MAAM,CAAC,IAAI,CACT,QAAQ,IAAI,CAAC,EAAE,oCAAoC,IAAI,CAAC,MAAM,EAAE,CACjE,CAAC;YACJ,CAAC;QACH,CAAC;QAED,0EAA0E;QAC1E,uBAAuB;QACvB,0EAA0E;QAC1E,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,EAAE,CAAC;YACvD,MAAM,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;QAChE,CAAC;QAED,0EAA0E;QAC1E,sBAAsB;QACtB,0EAA0E;QAC1E,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,EAAE,CAAC;YACrD,MAAM,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;QAC3D,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IAC1D,CAAC;CACF"}
1
+ {"version":3,"file":"Validator.js","sourceRoot":"","sources":["../../../src/orchestration/compiler/Validator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"GraphRuntime.d.ts","sourceRoot":"","sources":["../../../src/orchestration/runtime/GraphRuntime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GraphRuntime.d.ts","sourceRoot":"","sources":["../../../src/orchestration/runtime/GraphRuntime.ts"],"names":[],"mappings":"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"}
@@ -750,6 +750,7 @@ export class GraphRuntime {
750
750
  let resolvedTarget;
751
751
  if (edge.condition.type === 'function') {
752
752
  // Call the author-provided TypeScript routing function.
753
+ // Function conditions return the actual node id to route to — add it directly.
753
754
  resolvedTarget = edge.condition.fn(state);
754
755
  }
755
756
  else {
@@ -768,9 +769,14 @@ export class GraphRuntime {
768
769
  resolvedTarget = resultStr;
769
770
  }
770
771
  }
771
- // Only add the target if the condition resolved to this edge's target.
772
- if (resolvedTarget === edge.target && !targets.includes(resolvedTarget)) {
773
- targets.push(resolvedTarget);
772
+ // For function-based conditions the target field is the placeholder '__CONDITIONAL__',
773
+ // so we accept whatever the function returned. For expression-based conditions the
774
+ // target field holds the real node id, so we only follow the edge when it matches.
775
+ if (resolvedTarget != null) {
776
+ const isPlaceholder = edge.target === '__CONDITIONAL__' || edge.target === '__DISCOVERY__';
777
+ if ((isPlaceholder || resolvedTarget === edge.target) && !targets.includes(resolvedTarget)) {
778
+ targets.push(resolvedTarget);
779
+ }
774
780
  }
775
781
  break;
776
782
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GraphRuntime.js","sourceRoot":"","sources":["../../../src/orchestration/runtime/GraphRuntime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GraphRuntime.js","sourceRoot":"","sources":["../../../src/orchestration/runtime/GraphRuntime.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"NodeScheduler.d.ts","sourceRoot":"","sources":["../../../src/orchestration/runtime/NodeScheduler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAG3D;;;;;;;GAOG;AACH,qBAAa,aAAa;IACxB,+EAA+E;IAC/E,OAAO,CAAC,SAAS,CAAoC;IAErD,sGAAsG;IACtG,OAAO,CAAC,YAAY,CAAoC;IAExD,qFAAqF;IACrF,OAAO,CAAC,OAAO,CAAc;IAE7B;;;;;OAKG;gBACS,KAAK,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE;IAoBlD;;;;;;;;;;;OAWG;IACH,eAAe,IAAI,MAAM,EAAE;IAwD3B;;;;;;;;;OASG;IACH,SAAS,IAAI,OAAO;IAQpB;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,gBAAgB,EAAE,MAAM,EAAE,EAAE,cAAc,GAAE,MAAM,EAAO,GAAG,MAAM,EAAE;IAuBlF;;;;;;;;;;OAUG;IACH,mBAAmB,IAAI,MAAM,EAAE;CAmBhC"}
1
+ {"version":3,"file":"NodeScheduler.d.ts","sourceRoot":"","sources":["../../../src/orchestration/runtime/NodeScheduler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAG3D;;;;;;;GAOG;AACH,qBAAa,aAAa;IACxB,+EAA+E;IAC/E,OAAO,CAAC,SAAS,CAAoC;IAErD,sGAAsG;IACtG,OAAO,CAAC,YAAY,CAAoC;IAExD,qFAAqF;IACrF,OAAO,CAAC,OAAO,CAAc;IAE7B;;;;;OAKG;gBACS,KAAK,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE;IAoClD;;;;;;;;;;;OAWG;IACH,eAAe,IAAI,MAAM,EAAE;IAwD3B;;;;;;;;;OASG;IACH,SAAS,IAAI,OAAO;IAQpB;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,gBAAgB,EAAE,MAAM,EAAE,EAAE,cAAc,GAAE,MAAM,EAAO,GAAG,MAAM,EAAE;IAuBlF;;;;;;;;;;OAUG;IACH,mBAAmB,IAAI,MAAM,EAAE;CAmBhC"}
@@ -36,9 +36,25 @@ export class NodeScheduler {
36
36
  this.adjacency.set(id, []);
37
37
  this.predecessors.set(id, []);
38
38
  }
39
+ // Runtime-resolved placeholder sentinels. Edges targeting these have their
40
+ // real destination determined by a function/discovery engine at execution time,
41
+ // so at build time we conservatively treat the source as able to reach *every*
42
+ // real node (plus __END__) to avoid false "unreachable" warnings and incorrect
43
+ // topological sort results.
44
+ const RUNTIME_SENTINELS = new Set(['__CONDITIONAL__', '__DISCOVERY__']);
39
45
  for (const edge of edges) {
40
- this.adjacency.get(edge.source)?.push(edge.target);
41
- this.predecessors.get(edge.target)?.push(edge.source);
46
+ if (RUNTIME_SENTINELS.has(edge.target)) {
47
+ // The real target is unknown at compile time — fan out to all real nodes + END.
48
+ const allTargets = [...this.nodeIds, END];
49
+ for (const t of allTargets) {
50
+ this.adjacency.get(edge.source)?.push(t);
51
+ this.predecessors.get(t)?.push(edge.source);
52
+ }
53
+ }
54
+ else {
55
+ this.adjacency.get(edge.source)?.push(edge.target);
56
+ this.predecessors.get(edge.target)?.push(edge.source);
57
+ }
42
58
  }
43
59
  }
44
60
  // ---------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"NodeScheduler.js","sourceRoot":"","sources":["../../../src/orchestration/runtime/NodeScheduler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NodeScheduler.js","sourceRoot":"","sources":["../../../src/orchestration/runtime/NodeScheduler.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@framers/agentos",
3
- "version": "0.1.170",
3
+ "version": "0.1.172",
4
4
  "description": "Modular AgentOS orchestration library",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -53,6 +53,16 @@
53
53
  "default": "./dist/skills.js",
54
54
  "types": "./dist/skills.d.ts"
55
55
  },
56
+ "./nlp": {
57
+ "import": "./dist/nlp/index.js",
58
+ "default": "./dist/nlp/index.js",
59
+ "types": "./dist/nlp/index.d.ts"
60
+ },
61
+ "./nlp/ai_utilities": {
62
+ "import": "./dist/nlp/ai_utilities/index.js",
63
+ "default": "./dist/nlp/ai_utilities/index.js",
64
+ "types": "./dist/nlp/ai_utilities/index.d.ts"
65
+ },
56
66
  "./memory": {
57
67
  "import": "./dist/memory/index.js",
58
68
  "default": "./dist/memory/index.js",
@@ -173,6 +183,11 @@
173
183
  "default": "./dist/orchestration/index.js",
174
184
  "types": "./dist/orchestration/index.d.ts"
175
185
  },
186
+ "./orchestration/builders/*": {
187
+ "import": "./dist/orchestration/builders/*.js",
188
+ "default": "./dist/orchestration/builders/*.js",
189
+ "types": "./dist/orchestration/builders/*.d.ts"
190
+ },
176
191
  "./telephony": {
177
192
  "import": "./dist/channels/telephony/index.js",
178
193
  "default": "./dist/channels/telephony/index.js",
@@ -339,7 +354,8 @@
339
354
  "unpdf": "^1.4.0",
340
355
  "uuid": "^11.1.0",
341
356
  "yaml": "^2.8.1",
342
- "zod": "^4.3.6"
357
+ "zod": "^4.3.6",
358
+ "zod-to-json-schema": "^3.25.2"
343
359
  },
344
360
  "peerDependencies": {
345
361
  "@framers/sql-storage-adapter": "^0.6.1",