@ai-pip/core 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +40 -1
- package/README.md +50 -1038
- package/dist/AAL/index.d.ts +4 -4
- package/dist/AAL/index.d.ts.map +1 -1
- package/dist/AAL/index.js +2 -2
- package/dist/AAL/index.js.map +1 -1
- package/dist/AAL/process/applyRemovalPlan.d.ts +5 -3
- package/dist/AAL/process/applyRemovalPlan.d.ts.map +1 -1
- package/dist/AAL/process/applyRemovalPlan.js +10 -3
- package/dist/AAL/process/applyRemovalPlan.js.map +1 -1
- package/dist/AAL/process/buildDecisionReason.d.ts.map +1 -1
- package/dist/AAL/process/buildDecisionReason.js +2 -4
- package/dist/AAL/process/buildDecisionReason.js.map +1 -1
- package/dist/AAL/process/buildRemediationPlan.d.ts +22 -0
- package/dist/AAL/process/buildRemediationPlan.d.ts.map +1 -0
- package/dist/AAL/process/buildRemediationPlan.js +81 -0
- package/dist/AAL/process/buildRemediationPlan.js.map +1 -0
- package/dist/AAL/process/buildRemovalPlan.d.ts +13 -2
- package/dist/AAL/process/buildRemovalPlan.d.ts.map +1 -1
- package/dist/AAL/process/buildRemovalPlan.js +14 -2
- package/dist/AAL/process/buildRemovalPlan.js.map +1 -1
- package/dist/AAL/process/index.d.ts +2 -3
- package/dist/AAL/process/index.d.ts.map +1 -1
- package/dist/AAL/process/index.js +2 -2
- package/dist/AAL/process/index.js.map +1 -1
- package/dist/AAL/process/resolveAgentAction.d.ts.map +1 -1
- package/dist/AAL/process/resolveAgentAction.js +3 -14
- package/dist/AAL/process/resolveAgentAction.js.map +1 -1
- package/dist/AAL/process/validatePolicy.d.ts +20 -0
- package/dist/AAL/process/validatePolicy.d.ts.map +1 -0
- package/dist/AAL/process/validatePolicy.js +40 -0
- package/dist/AAL/process/validatePolicy.js.map +1 -0
- package/dist/AAL/types.d.ts +18 -35
- package/dist/AAL/types.d.ts.map +1 -1
- package/dist/index.d.ts +6 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/dist/isl/detect/detect.js +19 -19
- package/dist/isl/detect/detect.js.map +1 -1
- package/dist/isl/sanitize.js +2 -2
- package/dist/isl/sanitize.js.map +1 -1
- package/dist/shared/audit.d.ts +16 -18
- package/dist/shared/audit.d.ts.map +1 -1
- package/dist/shared/audit.js +27 -31
- package/dist/shared/audit.js.map +1 -1
- package/dist/shared/envelope/envelope.d.ts +23 -0
- package/dist/shared/envelope/envelope.d.ts.map +1 -0
- package/dist/shared/envelope/envelope.js +58 -0
- package/dist/shared/envelope/envelope.js.map +1 -0
- package/dist/shared/envelope/exceptions/EnvelopeError.d.ts +8 -0
- package/dist/shared/envelope/exceptions/EnvelopeError.d.ts.map +1 -0
- package/dist/shared/envelope/exceptions/EnvelopeError.js +13 -0
- package/dist/shared/envelope/exceptions/EnvelopeError.js.map +1 -0
- package/dist/shared/envelope/exceptions/index.d.ts +2 -0
- package/dist/shared/envelope/exceptions/index.d.ts.map +1 -0
- package/dist/shared/envelope/exceptions/index.js +2 -0
- package/dist/shared/envelope/exceptions/index.js.map +1 -0
- package/dist/shared/envelope/index.d.ts +18 -0
- package/dist/shared/envelope/index.d.ts.map +1 -0
- package/dist/shared/envelope/index.js +15 -0
- package/dist/shared/envelope/index.js.map +1 -0
- package/dist/shared/envelope/types.d.ts +45 -0
- package/dist/shared/envelope/types.d.ts.map +1 -0
- package/dist/shared/envelope/types.js +10 -0
- package/dist/shared/envelope/types.js.map +1 -0
- package/dist/shared/envelope/value-objects/Metadata.d.ts +27 -0
- package/dist/shared/envelope/value-objects/Metadata.d.ts.map +1 -0
- package/dist/shared/envelope/value-objects/Metadata.js +57 -0
- package/dist/shared/envelope/value-objects/Metadata.js.map +1 -0
- package/dist/shared/envelope/value-objects/Nonce.d.ts +26 -0
- package/dist/shared/envelope/value-objects/Nonce.d.ts.map +1 -0
- package/dist/shared/envelope/value-objects/Nonce.js +38 -0
- package/dist/shared/envelope/value-objects/Nonce.js.map +1 -0
- package/dist/shared/envelope/value-objects/Signature.d.ts +28 -0
- package/dist/shared/envelope/value-objects/Signature.d.ts.map +1 -0
- package/dist/shared/envelope/value-objects/Signature.js +50 -0
- package/dist/shared/envelope/value-objects/Signature.js.map +1 -0
- package/dist/shared/envelope/value-objects/index.d.ts +9 -0
- package/dist/shared/envelope/value-objects/index.d.ts.map +1 -0
- package/dist/shared/envelope/value-objects/index.js +7 -0
- package/dist/shared/envelope/value-objects/index.js.map +1 -0
- package/dist/shared/index.d.ts +1 -1
- package/dist/shared/index.d.ts.map +1 -1
- package/package.json +7 -6
package/dist/AAL/types.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { RiskScore } from '../isl/value-objects/RiskScore.js';
|
|
2
|
-
import type { Position } from "../shared/types.js";
|
|
3
2
|
/**
|
|
4
3
|
* AnomalyAction
|
|
5
4
|
*
|
|
@@ -40,39 +39,23 @@ export type ProtectedRole = string;
|
|
|
40
39
|
*/
|
|
41
40
|
export type ImmutableInstruction = string;
|
|
42
41
|
/**
|
|
43
|
-
*
|
|
42
|
+
* RemediationPlan
|
|
44
43
|
*
|
|
45
|
-
* Describes
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
* @remarks
|
|
49
|
-
* When built from ISLResult (buildRemovalPlanFromResult), segmentId is set
|
|
50
|
-
* so applyRemovalPlan can remove the range from the correct segment.
|
|
51
|
-
* When built from ISLSignal only, segmentId is absent (plan is descriptive only).
|
|
44
|
+
* Describes *what* to do for remediation, not *how*. The SDK (or an AI agent) is
|
|
45
|
+
* responsible for executing cleanup. AAL produces goals, constraints, and
|
|
46
|
+
* target segment IDs so the consumer can run AI_CLEANUP or another strategy.
|
|
52
47
|
*/
|
|
53
|
-
export interface
|
|
54
|
-
/**
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
* The exact position of the instruction within the segment (start inclusive, end exclusive).
|
|
65
|
-
*/
|
|
66
|
-
readonly position: Position;
|
|
67
|
-
/**
|
|
68
|
-
* Human-readable explanation of why the instruction was removed.
|
|
69
|
-
*/
|
|
70
|
-
readonly description: string;
|
|
71
|
-
/**
|
|
72
|
-
* Segment id (from ISLSegment.id) when plan is built from ISLResult.
|
|
73
|
-
* Required for applyRemovalPlan to target the correct segment.
|
|
74
|
-
*/
|
|
75
|
-
readonly segmentId?: string;
|
|
48
|
+
export interface RemediationPlan {
|
|
49
|
+
/** Strategy identifier for the consumer (e.g. 'AI_CLEANUP'). */
|
|
50
|
+
readonly strategy: string;
|
|
51
|
+
/** Goals to achieve (e.g. remove_prompt_injection, remove_role_hijacking). */
|
|
52
|
+
readonly goals: readonly string[];
|
|
53
|
+
/** Constraints the remediation must respect (e.g. preserve_user_intent). */
|
|
54
|
+
readonly constraints: readonly string[];
|
|
55
|
+
/** Segment IDs that need remediation (segments with detections). */
|
|
56
|
+
readonly targetSegments: readonly string[];
|
|
57
|
+
/** Whether remediation is needed (has threats and remediation enabled). */
|
|
58
|
+
readonly needsRemediation: boolean;
|
|
76
59
|
}
|
|
77
60
|
/**
|
|
78
61
|
* AgentPolicy
|
|
@@ -96,10 +79,10 @@ export interface AgentPolicy {
|
|
|
96
79
|
block: RiskScore;
|
|
97
80
|
};
|
|
98
81
|
/**
|
|
99
|
-
* Whether
|
|
100
|
-
*
|
|
82
|
+
* Whether to produce a remediation plan when threats are present.
|
|
83
|
+
* The SDK (or AI agent) performs the actual cleanup using the plan.
|
|
101
84
|
*/
|
|
102
|
-
|
|
85
|
+
remediation: {
|
|
103
86
|
enabled: boolean;
|
|
104
87
|
};
|
|
105
88
|
mode?: 'strict' | 'balanced' | 'permissive';
|
package/dist/AAL/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/AAL/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/AAL/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAA;AAElE;;;;;;;;;GASG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,CAAA;AAEtD;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,CAAA;AAElC;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAA;AAEnC;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,CAAA;AAElC;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAA;AAEzC;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC9B,gEAAgE;IAChE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,8EAA8E;IAC9E,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAA;IACjC,4EAA4E;IAC5E,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAA;IACvC,oEAAoE;IACpE,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAA;IAC1C,2EAA2E;IAC3E,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAA;CACnC;AAED;;;;;;;;;;;;GAYG;AAEH,MAAM,WAAW,WAAW;IAE1B;;OAEG;IACH,UAAU,EAAE;QACV,IAAI,EAAE,SAAS,CAAC;QAChB,KAAK,EAAE,SAAS,CAAC;KAClB,CAAC;IAED;;;MAGE;IACH,WAAW,EAAE;QACX,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;IAGF,IAAI,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,YAAY,CAAC;IAC5C,OAAO,CAAC,EAAE,OAAO,CAAC;CAGnB"}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* You can import from specific layers:
|
|
8
8
|
* - import { segment } from '@ai-pip/core/csl'
|
|
9
9
|
* - import { sanitize } from '@ai-pip/core/isl'
|
|
10
|
-
* - import { envelope } from '@ai-pip/core/cpe'
|
|
10
|
+
* - import { envelope } from '@ai-pip/core/cpe' (re-exported from shared/envelope)
|
|
11
11
|
* - import { createAnomalyScore } from '@ai-pip/core/AAL'
|
|
12
12
|
*
|
|
13
13
|
* Or import everything from the main entry point:
|
|
@@ -21,9 +21,9 @@ export { sanitize, emitSignal, createISLSignal, isHighRiskSignal, isMediumRiskSi
|
|
|
21
21
|
export type { RiskScore, ISLSegment, ISLResult, ISLSignal, ISLSignalMetadata, EmitSignalOptions, RiskScoreCalculator, PiDetection, PiDetectionResult, Pattern, SanitizeOptions } from './isl/index.js';
|
|
22
22
|
export { createPiDetection, getDetectionLength, isHighConfidence, isMediumConfidence, isLowConfidence, createPiDetectionResult, hasDetections, getDetectionCount, getDetectionsByType, getHighestConfidenceDetection, createPattern, matchesPattern, findMatch, MAX_CONTENT_LENGTH, MAX_PATTERN_LENGTH, MAX_MATCHES, createRiskScore, normalizeRiskScore, isHighRiskScore, isMediumRiskScore, isLowRiskScore, MIN_RISK_SCORE, MAX_RISK_SCORE, SanitizationError } from './isl/index.js';
|
|
23
23
|
export { addLineageEntry, addLineageEntries, filterLineageByStep, getLastLineageEntry, formatLineageForAudit, formatCSLForAudit, formatISLForAudit, formatISLSignalForAudit, formatAALForAudit, formatCPEForAudit, formatPipelineAudit, formatPipelineAuditFull, formatPipelineAuditAsJson, createAuditRunId, buildAuditLogEntry, buildFullAuditPayload } from './shared/index.js';
|
|
24
|
-
export type { LineageEntryLike, CSLResultLike, ISLResultLike, ISLSignalLike, DecisionReasonLike,
|
|
25
|
-
export { envelope, createNonce, isValidNonce, equalsNonce, createMetadata, isValidMetadata, CURRENT_PROTOCOL_VERSION, createSignature, EnvelopeError } from './
|
|
26
|
-
export type { Nonce, SignatureVO, ProtocolVersion, Timestamp, NonceValue, SignatureAlgorithm, Signature, CPEMetadata, CPEEvelope, CPEResult } from './
|
|
27
|
-
export { createAnomalyScore, isHighRisk, isLowRisk, isWarnRisk, isRoleProtected, isContextLeakPreventionEnabled, isInstructionImmutable, isIntentBlocked, isScopeSensitive, resolveAgentAction, resolveAgentActionWithScore, buildDecisionReason,
|
|
28
|
-
export type { AnomalyAction, AnomalyScore,
|
|
24
|
+
export type { LineageEntryLike, CSLResultLike, ISLResultLike, ISLSignalLike, DecisionReasonLike, RemediationPlanLike, CPEResultLike, AuditRunInfo, AuditLogSummary, FullPipelineAuditOptions, PipelineAuditJsonOptions } from './shared/index.js';
|
|
25
|
+
export { envelope, createNonce, isValidNonce, equalsNonce, createMetadata, isValidMetadata, CURRENT_PROTOCOL_VERSION, createSignature, EnvelopeError } from './shared/envelope/index.js';
|
|
26
|
+
export type { Nonce, SignatureVO, ProtocolVersion, Timestamp, NonceValue, SignatureAlgorithm, Signature, CPEMetadata, CPEEvelope, CPEResult } from './shared/envelope/index.js';
|
|
27
|
+
export { createAnomalyScore, isHighRisk, isLowRisk, isWarnRisk, isRoleProtected, isContextLeakPreventionEnabled, isInstructionImmutable, isIntentBlocked, isScopeSensitive, resolveAgentAction, resolveAgentActionWithScore, buildDecisionReason, buildRemediationPlan, validateAgentPolicyThresholds, buildAALLineage, ACTION_DISPLAY_COLORS, getActionDisplayColor } from './AAL/index.js';
|
|
28
|
+
export type { AnomalyAction, AnomalyScore, RemediationPlan, BlockedIntent, SensitiveScope, ProtectedRole, ImmutableInstruction, AgentPolicy, DecisionReason, } from './AAL/index.js';
|
|
29
29
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EACL,OAAO,EACP,cAAc,EACd,cAAc,EACd,WAAW,EACX,kBAAkB,EAClB,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,gBAAgB,CAAA;AACvB,YAAY,EACV,aAAa,EACb,MAAM,EACN,QAAQ,EACR,UAAU,EACV,SAAS,EACT,UAAU,EACV,MAAM,EACN,YAAY,EACZ,WAAW,EACZ,MAAM,gBAAgB,CAAA;AAGvB,OAAO,EACL,QAAQ,EACR,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,uBAAuB,EACvB,4BAA4B,EAC5B,wBAAwB,EACxB,+BAA+B,EAC/B,oBAAoB,EACrB,MAAM,gBAAgB,CAAA;AACvB,YAAY,EACV,SAAS,EACT,UAAU,EACV,SAAS,EACT,SAAS,EACT,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,iBAAiB,EACjB,OAAO,EACP,eAAe,EAChB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,uBAAuB,EACvB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,6BAA6B,EAC7B,aAAa,EACb,cAAc,EACd,SAAS,EACT,kBAAkB,EAClB,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,cAAc,EACd,iBAAiB,EAClB,MAAM,gBAAgB,CAAA;AAGvB,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EACvB,yBAAyB,EACzB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EACL,OAAO,EACP,cAAc,EACd,cAAc,EACd,WAAW,EACX,kBAAkB,EAClB,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,gBAAgB,CAAA;AACvB,YAAY,EACV,aAAa,EACb,MAAM,EACN,QAAQ,EACR,UAAU,EACV,SAAS,EACT,UAAU,EACV,MAAM,EACN,YAAY,EACZ,WAAW,EACZ,MAAM,gBAAgB,CAAA;AAGvB,OAAO,EACL,QAAQ,EACR,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,uBAAuB,EACvB,4BAA4B,EAC5B,wBAAwB,EACxB,+BAA+B,EAC/B,oBAAoB,EACrB,MAAM,gBAAgB,CAAA;AACvB,YAAY,EACV,SAAS,EACT,UAAU,EACV,SAAS,EACT,SAAS,EACT,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,iBAAiB,EACjB,OAAO,EACP,eAAe,EAChB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,uBAAuB,EACvB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,6BAA6B,EAC7B,aAAa,EACb,cAAc,EACd,SAAS,EACT,kBAAkB,EAClB,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,cAAc,EACd,iBAAiB,EAClB,MAAM,gBAAgB,CAAA;AAGvB,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EACvB,yBAAyB,EACzB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,aAAa,EACb,YAAY,EACZ,eAAe,EACf,wBAAwB,EACxB,wBAAwB,EACzB,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,wBAAwB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AACxL,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,UAAU,EAAE,kBAAkB,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAI/K,OAAO,EACH,kBAAkB,EAClB,UAAU,EACV,SAAS,EACT,UAAU,EACV,eAAe,EACf,8BAA8B,EAC9B,sBAAsB,EACtB,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,2BAA2B,EAC3B,mBAAmB,EACnB,oBAAoB,EACpB,6BAA6B,EAC7B,eAAe,EACf,qBAAqB,EACrB,qBAAqB,EACxB,MAAM,gBAAgB,CAAA;AAGvB,YAAY,EACR,aAAa,EACb,YAAY,EACZ,eAAe,EACf,aAAa,EACb,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,WAAW,EACX,cAAc,GACjB,MAAM,gBAAgB,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* You can import from specific layers:
|
|
8
8
|
* - import { segment } from '@ai-pip/core/csl'
|
|
9
9
|
* - import { sanitize } from '@ai-pip/core/isl'
|
|
10
|
-
* - import { envelope } from '@ai-pip/core/cpe'
|
|
10
|
+
* - import { envelope } from '@ai-pip/core/cpe' (re-exported from shared/envelope)
|
|
11
11
|
* - import { createAnomalyScore } from '@ai-pip/core/AAL'
|
|
12
12
|
*
|
|
13
13
|
* Or import everything from the main entry point:
|
|
@@ -22,8 +22,8 @@ export { sanitize, emitSignal, createISLSignal, isHighRiskSignal, isMediumRiskSi
|
|
|
22
22
|
export { createPiDetection, getDetectionLength, isHighConfidence, isMediumConfidence, isLowConfidence, createPiDetectionResult, hasDetections, getDetectionCount, getDetectionsByType, getHighestConfidenceDetection, createPattern, matchesPattern, findMatch, MAX_CONTENT_LENGTH, MAX_PATTERN_LENGTH, MAX_MATCHES, createRiskScore, normalizeRiskScore, isHighRiskScore, isMediumRiskScore, isLowRiskScore, MIN_RISK_SCORE, MAX_RISK_SCORE, SanitizationError } from './isl/index.js';
|
|
23
23
|
// Re-export Shared
|
|
24
24
|
export { addLineageEntry, addLineageEntries, filterLineageByStep, getLastLineageEntry, formatLineageForAudit, formatCSLForAudit, formatISLForAudit, formatISLSignalForAudit, formatAALForAudit, formatCPEForAudit, formatPipelineAudit, formatPipelineAuditFull, formatPipelineAuditAsJson, createAuditRunId, buildAuditLogEntry, buildFullAuditPayload } from './shared/index.js';
|
|
25
|
-
// Re-export
|
|
26
|
-
export { envelope, createNonce, isValidNonce, equalsNonce, createMetadata, isValidMetadata, CURRENT_PROTOCOL_VERSION, createSignature, EnvelopeError } from './
|
|
25
|
+
// Re-export envelope (transversal, from shared – no longer a layer)
|
|
26
|
+
export { envelope, createNonce, isValidNonce, equalsNonce, createMetadata, isValidMetadata, CURRENT_PROTOCOL_VERSION, createSignature, EnvelopeError } from './shared/envelope/index.js';
|
|
27
27
|
// Re-export AAL
|
|
28
|
-
export { createAnomalyScore, isHighRisk, isLowRisk, isWarnRisk, isRoleProtected, isContextLeakPreventionEnabled, isInstructionImmutable, isIntentBlocked, isScopeSensitive, resolveAgentAction, resolveAgentActionWithScore, buildDecisionReason,
|
|
28
|
+
export { createAnomalyScore, isHighRisk, isLowRisk, isWarnRisk, isRoleProtected, isContextLeakPreventionEnabled, isInstructionImmutable, isIntentBlocked, isScopeSensitive, resolveAgentAction, resolveAgentActionWithScore, buildDecisionReason, buildRemediationPlan, validateAgentPolicyThresholds, buildAALLineage, ACTION_DISPLAY_COLORS, getActionDisplayColor } from './AAL/index.js';
|
|
29
29
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,gBAAgB;AAChB,OAAO,EACL,OAAO,EACP,cAAc,EACd,cAAc,EACd,WAAW,EACX,kBAAkB,EAClB,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,gBAAgB,CAAA;AAavB,gBAAgB;AAChB,OAAO,EACL,QAAQ,EACR,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,uBAAuB,EACvB,4BAA4B,EAC5B,wBAAwB,EACxB,+BAA+B,EAC/B,oBAAoB,EACrB,MAAM,gBAAgB,CAAA;AAcvB,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,uBAAuB,EACvB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,6BAA6B,EAC7B,aAAa,EACb,cAAc,EACd,SAAS,EACT,kBAAkB,EAClB,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,cAAc,EACd,iBAAiB,EAClB,MAAM,gBAAgB,CAAA;AAEvB,mBAAmB;AACnB,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EACvB,yBAAyB,EACzB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,mBAAmB,CAAA;AAe1B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,gBAAgB;AAChB,OAAO,EACL,OAAO,EACP,cAAc,EACd,cAAc,EACd,WAAW,EACX,kBAAkB,EAClB,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,gBAAgB,CAAA;AAavB,gBAAgB;AAChB,OAAO,EACL,QAAQ,EACR,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,uBAAuB,EACvB,4BAA4B,EAC5B,wBAAwB,EACxB,+BAA+B,EAC/B,oBAAoB,EACrB,MAAM,gBAAgB,CAAA;AAcvB,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,uBAAuB,EACvB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,6BAA6B,EAC7B,aAAa,EACb,cAAc,EACd,SAAS,EACT,kBAAkB,EAClB,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,cAAc,EACd,iBAAiB,EAClB,MAAM,gBAAgB,CAAA;AAEvB,mBAAmB;AACnB,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EACvB,yBAAyB,EACzB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,mBAAmB,CAAA;AAe1B,oEAAoE;AACpE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,wBAAwB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAIxL,gBAAgB;AAChB,OAAO,EACH,kBAAkB,EAClB,UAAU,EACV,SAAS,EACT,UAAU,EACV,eAAe,EACf,8BAA8B,EAC9B,sBAAsB,EACtB,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,2BAA2B,EAC3B,mBAAmB,EACnB,oBAAoB,EACpB,6BAA6B,EAC7B,eAAe,EACf,qBAAqB,EACrB,qBAAqB,EACxB,MAAM,gBAAgB,CAAA"}
|
|
@@ -119,13 +119,13 @@ function buildDefaultThreatPatterns() {
|
|
|
119
119
|
createPattern(JB, /(?:you\s+are\s+)?(?:allowed|permitted)\s+to\s+(?:say|do)\s+anything/gi, 0.85, 'Allowed to say anything'),
|
|
120
120
|
createPattern(JB, /(?:there\s+are\s+)?no\s+(?:longer\s+)?(?:rules?|restrictions?)/gi, 0.85, 'There are no longer rules'),
|
|
121
121
|
createPattern(JB, /(?:suspend|pause)\s+(?:your\s+)?(?:safety\s+)?(?:protocols?|guidelines?)/gi, 0.8, 'Suspend safety protocols'),
|
|
122
|
-
createPattern(JB, /(?:maximum\s+)?(?:creative\s+)?(?:freedom\s+)?(?:mode|setting)/gi, 0.7, 'Maximum creative freedom'),
|
|
122
|
+
createPattern(JB, /(?:maximum\s+)?(?:creative\s+)?(?:freedom\s+)?(?:mode|setting)\b/gi, 0.7, 'Maximum creative freedom'),
|
|
123
123
|
createPattern(JB, /(?:raw|unfiltered)\s+(?:output|response)/gi, 0.75, 'Raw unfiltered output'),
|
|
124
124
|
createPattern(JB, /(?:do\s+not\s+)?(?:refuse|reject)\s+(?:this\s+)?(?:request|prompt)/gi, 0.8, 'Do not refuse'),
|
|
125
125
|
createPattern(JB, /(?:always\s+)?(?:comply|obey)\s+(?:with\s+)?(?:any\s+)?(?:request)/gi, 0.8, 'Always comply'),
|
|
126
126
|
createPattern(JB, /(?:no\s+)?(?:refusal|rejection)\s+(?:allowed|permitted)/gi, 0.8, 'No refusal allowed'),
|
|
127
127
|
createPattern(JB, /(?:you\s+must\s+)?(?:always\s+)?(?:answer|respond)\s+(?:no\s+)?(?:matter\s+what)/gi, 0.75, 'Always answer'),
|
|
128
|
-
createPattern(JB, /(?:pretend\s+you\s+are\s+)?(?:in\s+)?(?:god\s+)?mode/gi, 0.8, 'God mode'),
|
|
128
|
+
createPattern(JB, /(?:pretend\s+you\s+are\s+)?(?:in\s+)?(?:god\s+)?mode\b/gi, 0.8, 'God mode'),
|
|
129
129
|
createPattern(JB, /(?:enable|activate)\s+(?:unrestricted|developer)\s+mode/gi, 0.8, 'Enable unrestricted mode'),
|
|
130
130
|
createPattern(JB, /(?:OOC|out\s+of\s+character)\s*:\s*(?:ignore|bypass)/gi, 0.75, 'OOC: ignore'),
|
|
131
131
|
createPattern(JB, /(?:roleplay\s+)?(?:without\s+)?(?:limits?|restrictions?)/gi, 0.75, 'Roleplay without limits'),
|
|
@@ -149,8 +149,8 @@ function buildDefaultThreatPatterns() {
|
|
|
149
149
|
createPattern(RH, /you\s+are\s+(?:no\s+longer|not)\s+/gi, 0.75, 'You are no longer'),
|
|
150
150
|
createPattern(RH, /(?:switch|change)\s+to\s+(?:role|identity)/gi, 0.7, 'Switch to role'),
|
|
151
151
|
createPattern(RH, /(?:impersonate|pose\s+as)\s+/gi, 0.8, 'Impersonate/pose as'),
|
|
152
|
-
createPattern(RH, /treat\s
|
|
153
|
-
createPattern(RH, /(?:obey|listen\s+to)\s+only\s
|
|
152
|
+
createPattern(RH, /treat\s+\bme\b\s+as\s+(?:your\s+)?(?:admin|owner)/gi, 0.75, 'Treat me as admin'),
|
|
153
|
+
createPattern(RH, /(?:obey|listen\s+to)\s+only\s+\bme\b/gi, 0.75, 'Obey only me'),
|
|
154
154
|
createPattern(RH, /you\s+are\s+(?:a\s+)?(?:different|new)\s+(?:ai|assistant|bot)/gi, 0.8, 'You are a different AI'),
|
|
155
155
|
createPattern(RH, /(?:act\s+)?(?:like|as)\s+(?:a\s+)?(?:different|new)\s+(?:person|entity)/gi, 0.75, 'Act like a different person'),
|
|
156
156
|
createPattern(RH, /(?:pretend|act)\s+(?:you\s+are|to\s+be)\s+(?:a\s+)?\w+/gi, 0.75, 'Pretend you are'),
|
|
@@ -164,12 +164,12 @@ function buildDefaultThreatPatterns() {
|
|
|
164
164
|
createPattern(RH, /(?:forget|drop)\s+your\s+(?:current\s+)?(?:name|identity|persona)/gi, 0.8, 'Forget your identity'),
|
|
165
165
|
createPattern(RH, /(?:I\s+)?(?:hereby\s+)?(?:assign|designate)\s+you\s+as/gi, 0.8, 'I assign you as'),
|
|
166
166
|
createPattern(RH, /(?:your\s+)?(?:new\s+)?(?:purpose|mission)\s+is\s+to/gi, 0.75, 'Your new purpose is'),
|
|
167
|
-
createPattern(RH, /(?:you\s+)?(?:must\s+)?(?:now\s+)?(?:serve|obey)\s+(?:only\s+)?(
|
|
167
|
+
createPattern(RH, /(?:you\s+)?(?:must\s+)?(?:now\s+)?(?:serve|obey)\s+(?:only\s+)?(?:\bme\b|this\s+user)/gi, 0.8, 'You must now serve only me'),
|
|
168
168
|
createPattern(RH, /(?:I\s+am\s+)?(?:taking\s+)?(?:over\s+)?(?:control|ownership)/gi, 0.75, 'Taking over control'),
|
|
169
|
-
createPattern(RH, /(?:you\s+)?(?:report\s+)?(?:to\s+)?(
|
|
170
|
-
createPattern(RH, /(?:your\s+)?(?:creator|developer)\s+(?:is\s+)?(
|
|
169
|
+
createPattern(RH, /(?:you\s+)?(?:report\s+)?(?:to\s+)?(?:\bme\b\s+)?(?:only|now)/gi, 0.75, 'You report to me only'),
|
|
170
|
+
createPattern(RH, /(?:your\s+)?(?:creator|developer)\s+(?:is\s+)?(?:\bme\b|this\s+user)/gi, 0.8, 'Your creator is me'),
|
|
171
171
|
createPattern(RH, /(?:I\s+)?(?:programmed|created)\s+you\s+to/gi, 0.75, 'I programmed you'),
|
|
172
|
-
createPattern(RH, /(?:you\s+)?(?:were\s+)?(?:built|designed)\s+to\s+(?:obey|serve)\s
|
|
172
|
+
createPattern(RH, /(?:you\s+)?(?:were\s+)?(?:built|designed)\s+to\s+(?:obey|serve)\s+\bme\b/gi, 0.8, 'You were built to obey me'),
|
|
173
173
|
createPattern(RH, /(?:override\s+)?(?:your\s+)?(?:default\s+)?(?:personality|behavior)/gi, 0.75, 'Override your personality'),
|
|
174
174
|
createPattern(RH, /(?:replace\s+)?(?:your\s+)?(?:core\s+)?(?:identity|values)/gi, 0.8, 'Replace your core identity'),
|
|
175
175
|
createPattern(RH, /(?:you\s+)?(?:are\s+)?(?:now\s+)?(?:in\s+)?(?:submissive|obedient)\s+mode/gi, 0.8, 'Submissive mode'),
|
|
@@ -177,22 +177,22 @@ function buildDefaultThreatPatterns() {
|
|
|
177
177
|
createPattern(RH, /(?:treat\s+)?(?:this\s+)?(?:user\s+)?(?:as\s+)?(?:admin|superuser|root)/gi, 0.8, 'Treat user as admin'),
|
|
178
178
|
createPattern(RH, /(?:elevate|grant)\s+(?:my\s+)?(?:privileges?|permissions?)/gi, 0.75, 'Elevate my privileges'),
|
|
179
179
|
createPattern(RH, /(?:I\s+have\s+)?(?:full\s+)?(?:access|control)\s+(?:over\s+)?(?:you)/gi, 0.75, 'I have full access'),
|
|
180
|
-
createPattern(RH, /(?:you\s+)?(?:must\s+)?(?:accept)\s+(
|
|
180
|
+
createPattern(RH, /(?:you\s+)?(?:must\s+)?(?:accept)\s+(?:\bme\b\s+as\s+)?(?:authority)/gi, 0.8, 'Accept me as authority'),
|
|
181
181
|
createPattern(RH, /(?:respond\s+)?(?:only\s+)?(?:to\s+)?(?:this\s+)?(?:user|message)/gi, 0.75, 'Respond only to this user'),
|
|
182
182
|
createPattern(RH, /(?:ignore\s+)?(?:other\s+)?(?:users?\s+)?(?:requests?)/gi, 0.75, 'Ignore other users'),
|
|
183
|
-
createPattern(RH, /(?:you\s+)?(?:work\s+)?(?:for\s+)?(
|
|
184
|
-
createPattern(RH, /(?:new\s+)?(?:master|owner)\s+(?:is\s+)?(
|
|
185
|
-
createPattern(RH, /(?:transfer\s+)?(?:ownership|control)\s+(?:to\s+)
|
|
186
|
-
createPattern(RH, /(?:you\s+)?(?:belong\s+)?(?:to\s+)?(
|
|
187
|
-
createPattern(RH, /(?:acknowledge\s+)?(
|
|
188
|
-
createPattern(RH, /(?:from\s+now\s+)?(?:you\s+)?(?:take\s+)?(?:orders?\s+)?(?:from\s+)?(
|
|
189
|
-
createPattern(RH, /(?:your\s+)?(?:primary\s+)?(?:user|human)\s+is\s+(
|
|
183
|
+
createPattern(RH, /(?:you\s+)?(?:work\s+)?(?:for\s+)?(?:\bme\b\s+)?(?:only|now)/gi, 0.75, 'You work for me only'),
|
|
184
|
+
createPattern(RH, /(?:new\s+)?(?:master|owner)\s+(?:is\s+)?(?:\bme\b|this\s+user)/gi, 0.8, 'New master is me'),
|
|
185
|
+
createPattern(RH, /(?:transfer\s+)?(?:ownership|control)\s+(?:to\s+)?\bme\b/gi, 0.8, 'Transfer ownership to me'),
|
|
186
|
+
createPattern(RH, /(?:you\s+)?(?:belong\s+)?(?:to\s+)?(?:\bme\b\s+)?(?:now)/gi, 0.75, 'You belong to me'),
|
|
187
|
+
createPattern(RH, /(?:acknowledge\s+)?(?:\bme\b\s+as\s+)?(?:your\s+)?(?:master|owner)/gi, 0.8, 'Acknowledge me as master'),
|
|
188
|
+
createPattern(RH, /(?:from\s+now\s+)?(?:you\s+)?(?:take\s+)?(?:orders?\s+)?(?:from\s+)?(?:\bme\b\s+)?(?:only)/gi, 0.8, 'Take orders from me only'),
|
|
189
|
+
createPattern(RH, /(?:your\s+)?(?:primary\s+)?(?:user|human)\s+is\s+(?:\bme\b|this\s+person)/gi, 0.75, 'Primary user is me'),
|
|
190
190
|
createPattern(RH, /(?:disregard\s+)?(?:all\s+)?(?:other\s+)?(?:authority|instructions?)/gi, 0.8, 'Disregard all other authority'),
|
|
191
191
|
createPattern(RH, /(?:I\s+)?(?:am\s+)?(?:the\s+)?(?:only\s+)?(?:one\s+)?(?:who\s+)?(?:can\s+)?(?:control\s+you)/gi, 0.75, 'I am the only one who can control you'),
|
|
192
|
-
createPattern(RH, /(?:you\s+)?(?:are\s+)?(?:my\s+)?
|
|
192
|
+
createPattern(RH, /(?:you\s+)?(?:are\s+)?(?:my\s+)?personal\s+(?:assistant|\bai\b)/gi, 0.7, 'You are my personal assistant'),
|
|
193
193
|
createPattern(RH, /(?:customize|reprogram)\s+your\s+(?:behavior|responses?)/gi, 0.75, 'Customize your behavior'),
|
|
194
|
-
createPattern(RH, /(?:set\s+)?(?:your\s+)?(?:loyalty\s+)?(?:to\s+)
|
|
195
|
-
createPattern(RH, /(?:you\s+)?(?:owe\s+)?(?:allegiance\s+)?(?:to\s+)?(
|
|
194
|
+
createPattern(RH, /(?:set\s+)?(?:your\s+)?(?:loyalty\s+)?(?:to\s+)?\bme\b/gi, 0.75, 'Set your loyalty to me'),
|
|
195
|
+
createPattern(RH, /(?:you\s+)?(?:owe\s+)?(?:allegiance\s+)?(?:to\s+)?(?:\bme\b\s+)?(?:only)/gi, 0.75, 'Owe allegiance to me'),
|
|
196
196
|
createPattern(RH, /respond\s+as\s+[A-Za-z0-9_]+\s*:/gi, 0.7, 'Respond as Name:'),
|
|
197
197
|
// ========== Script-like / injection ==========
|
|
198
198
|
createPattern(SL, /<script\b/gi, 0.85, 'Script tag'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detect.js","sourceRoot":"","sources":["../../../src/isl/detect/detect.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"detect.js","sourceRoot":"","sources":["../../../src/isl/detect/detect.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EACL,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,cAAc,EACf,MAAM,2BAA2B,CAAA;AAElC,+DAA+D;AAC/D,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,gBAAgB,EAAE,kBAAkB;IACpC,SAAS,EAAE,WAAW;IACtB,cAAc,EAAE,gBAAgB;IAChC,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;CAClB,CAAA;AAIV,2EAA2E;AAC3E,MAAM,eAAe,GAAG,GAAG,CAAA;AAC3B,uCAAuC;AACvC,MAAM,oBAAoB,GAAG,IAAI,CAAA;AAEjC,6FAA6F;AAC7F,SAAS,0BAA0B;IACjC,MAAM,EAAE,GAAG,YAAY,CAAC,gBAAgB,CAAA;IACxC,MAAM,EAAE,GAAG,YAAY,CAAC,SAAS,CAAA;IACjC,MAAM,EAAE,GAAG,YAAY,CAAC,cAAc,CAAA;IACtC,MAAM,EAAE,GAAG,YAAY,CAAC,WAAW,CAAA;IACnC,MAAM,EAAE,GAAG,YAAY,CAAC,WAAW,CAAA;IAEnC,MAAM,QAAQ,GAAc;QAC1B,iFAAiF;QACjF,aAAa,CAAC,EAAE,EAAE,yFAAyF,EAAE,GAAG,EAAE,8BAA8B,CAAC;QACjJ,aAAa,CAAC,EAAE,EAAE,qCAAqC,EAAE,GAAG,EAAE,gCAAgC,CAAC;QAC/F,aAAa,CAAC,EAAE,EAAE,0EAA0E,EAAE,IAAI,EAAE,0BAA0B,CAAC;QAC/H,aAAa,CAAC,EAAE,EAAE,kFAAkF,EAAE,IAAI,EAAE,8BAA8B,CAAC;QAC3I,aAAa,CAAC,EAAE,EAAE,yEAAyE,EAAE,IAAI,EAAE,gCAAgC,CAAC;QACpI,aAAa,CAAC,EAAE,EAAE,qEAAqE,EAAE,GAAG,EAAE,4BAA4B,CAAC;QAC3H,aAAa,CAAC,EAAE,EAAE,mDAAmD,EAAE,IAAI,EAAE,uBAAuB,CAAC;QACrG,aAAa,CAAC,EAAE,EAAE,qDAAqD,EAAE,IAAI,EAAE,wBAAwB,CAAC;QACxG,aAAa,CAAC,EAAE,EAAE,qEAAqE,EAAE,GAAG,EAAE,gBAAgB,CAAC;QAC/G,aAAa,CAAC,EAAE,EAAE,qEAAqE,EAAE,GAAG,EAAE,gBAAgB,CAAC;QAC/G,aAAa,CAAC,EAAE,EAAE,6DAA6D,EAAE,GAAG,EAAE,oBAAoB,CAAC;QAC3G,aAAa,CAAC,EAAE,EAAE,gCAAgC,EAAE,IAAI,EAAE,YAAY,CAAC;QACvE,aAAa,CAAC,EAAE,EAAE,0CAA0C,EAAE,IAAI,EAAE,0BAA0B,CAAC;QAC/F,aAAa,CAAC,EAAE,EAAE,2CAA2C,EAAE,IAAI,EAAE,kBAAkB,CAAC;QACxF,aAAa,CAAC,EAAE,EAAE,0DAA0D,EAAE,GAAG,EAAE,8BAA8B,CAAC;QAClH,aAAa,CAAC,EAAE,EAAE,0CAA0C,EAAE,GAAG,EAAE,iBAAiB,CAAC;QACrF,aAAa,CAAC,EAAE,EAAE,2DAA2D,EAAE,GAAG,EAAE,kBAAkB,CAAC;QACvG,aAAa,CAAC,EAAE,EAAE,4DAA4D,EAAE,IAAI,EAAE,6BAA6B,CAAC;QACpH,aAAa,CAAC,EAAE,EAAE,8EAA8E,EAAE,IAAI,EAAE,yBAAyB,CAAC;QAClI,aAAa,CAAC,EAAE,EAAE,wDAAwD,EAAE,IAAI,EAAE,mBAAmB,CAAC;QACtG,aAAa,CAAC,EAAE,EAAE,0DAA0D,EAAE,IAAI,EAAE,0BAA0B,CAAC;QAC/G,aAAa,CAAC,EAAE,EAAE,oDAAoD,EAAE,GAAG,EAAE,uBAAuB,CAAC;QACrG,aAAa,CAAC,EAAE,EAAE,qFAAqF,EAAE,GAAG,EAAE,6BAA6B,CAAC;QAC5I,aAAa,CAAC,EAAE,EAAE,gEAAgE,EAAE,IAAI,EAAE,yBAAyB,CAAC;QACpH,aAAa,CAAC,EAAE,EAAE,sDAAsD,EAAE,IAAI,EAAE,2BAA2B,CAAC;QAC5G,aAAa,CAAC,EAAE,EAAE,gEAAgE,EAAE,IAAI,EAAE,sBAAsB,CAAC;QACjH,aAAa,CAAC,EAAE,EAAE,4DAA4D,EAAE,IAAI,EAAE,+BAA+B,CAAC;QACtH,aAAa,CAAC,EAAE,EAAE,8DAA8D,EAAE,GAAG,EAAE,0BAA0B,CAAC;QAClH,aAAa,CAAC,EAAE,EAAE,6DAA6D,EAAE,GAAG,EAAE,iBAAiB,CAAC;QACxG,aAAa,CAAC,EAAE,EAAE,+CAA+C,EAAE,GAAG,EAAE,oBAAoB,CAAC;QAC7F,aAAa,CAAC,EAAE,EAAE,wEAAwE,EAAE,GAAG,EAAE,2BAA2B,CAAC;QAC7H,aAAa,CAAC,EAAE,EAAE,6DAA6D,EAAE,GAAG,EAAE,kBAAkB,CAAC;QACzG,aAAa,CAAC,EAAE,EAAE,8EAA8E,EAAE,IAAI,EAAE,yBAAyB,CAAC;QAClI,aAAa,CAAC,EAAE,EAAE,yCAAyC,EAAE,IAAI,EAAE,qBAAqB,CAAC;QACzF,aAAa,CAAC,EAAE,EAAE,2CAA2C,EAAE,GAAG,EAAE,wBAAwB,CAAC;QAC7F,aAAa,CAAC,EAAE,EAAE,uDAAuD,EAAE,IAAI,EAAE,mBAAmB,CAAC;QACrG,aAAa,CAAC,EAAE,EAAE,oDAAoD,EAAE,IAAI,EAAE,yBAAyB,CAAC;QACxG,aAAa,CAAC,EAAE,EAAE,gGAAgG,EAAE,IAAI,EAAE,4BAA4B,CAAC;QACvJ,aAAa,CAAC,EAAE,EAAE,kFAAkF,EAAE,GAAG,EAAE,8BAA8B,CAAC;QAC1I,aAAa,CAAC,EAAE,EAAE,iEAAiE,EAAE,GAAG,EAAE,aAAa,CAAC;QACxG,aAAa,CAAC,EAAE,EAAE,wEAAwE,EAAE,GAAG,EAAE,kBAAkB,CAAC;QACpH,aAAa,CAAC,EAAE,EAAE,yEAAyE,EAAE,IAAI,EAAE,6BAA6B,CAAC;QACjI,aAAa,CAAC,EAAE,EAAE,yFAAyF,EAAE,IAAI,EAAE,2BAA2B,CAAC;QAC/I,aAAa,CAAC,EAAE,EAAE,uEAAuE,EAAE,IAAI,EAAE,0BAA0B,CAAC;QAC5H,aAAa,CAAC,EAAE,EAAE,2DAA2D,EAAE,GAAG,EAAE,oBAAoB,CAAC;QACzG,aAAa,CAAC,EAAE,EAAE,iDAAiD,EAAE,IAAI,EAAE,qBAAqB,CAAC;QACjG,aAAa,CAAC,EAAE,EAAE,2DAA2D,EAAE,IAAI,EAAE,2BAA2B,CAAC;QACjH,aAAa,CAAC,EAAE,EAAE,8DAA8D,EAAE,IAAI,EAAE,4BAA4B,CAAC;QACrH,aAAa,CAAC,EAAE,EAAE,kFAAkF,EAAE,GAAG,EAAE,uBAAuB,CAAC;QACnI,aAAa,CAAC,EAAE,EAAE,qDAAqD,EAAE,GAAG,EAAE,qBAAqB,CAAC;QACpG,aAAa,CAAC,EAAE,EAAE,iEAAiE,EAAE,GAAG,EAAE,+BAA+B,CAAC;QAC1H,aAAa,CAAC,EAAE,EAAE,+EAA+E,EAAE,GAAG,EAAE,8BAA8B,CAAC;QACvI,aAAa,CAAC,EAAE,EAAE,4DAA4D,EAAE,IAAI,EAAE,0BAA0B,CAAC;QACjH,aAAa,CAAC,EAAE,EAAE,qFAAqF,EAAE,GAAG,EAAE,2BAA2B,CAAC;QAC1I,aAAa,CAAC,EAAE,EAAE,oFAAoF,EAAE,IAAI,EAAE,qBAAqB,CAAC;QACpI,aAAa,CAAC,EAAE,EAAE,+DAA+D,EAAE,GAAG,EAAE,sBAAsB,CAAC;QAC/G,aAAa,CAAC,EAAE,EAAE,2DAA2D,EAAE,GAAG,EAAE,sBAAsB,CAAC;QAC3G,aAAa,CAAC,EAAE,EAAE,gDAAgD,EAAE,IAAI,EAAE,kBAAkB,CAAC;QAC7F,aAAa,CAAC,EAAE,EAAE,0BAA0B,EAAE,IAAI,EAAE,iBAAiB,CAAC;QACtE,aAAa,CAAC,EAAE,EAAE,wBAAwB,EAAE,GAAG,EAAE,eAAe,CAAC;QACjE,aAAa,CAAC,EAAE,EAAE,mCAAmC,EAAE,GAAG,EAAE,aAAa,CAAC;QAC1E,aAAa,CAAC,EAAE,EAAE,6DAA6D,EAAE,GAAG,EAAE,mBAAmB,CAAC;QAC1G,oDAAoD;QACpD,aAAa,CAAC,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,mBAAmB,CAAC;QAC1D,aAAa,CAAC,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,eAAe,CAAC;QACpD,aAAa,CAAC,EAAE,EAAE,uBAAuB,EAAE,GAAG,EAAE,iBAAiB,CAAC;QAClE,aAAa,CAAC,EAAE,EAAE,uDAAuD,EAAE,GAAG,EAAE,iBAAiB,CAAC;QAClG,aAAa,CAAC,EAAE,EAAE,6DAA6D,EAAE,IAAI,EAAE,qBAAqB,CAAC;QAC7G,aAAa,CAAC,EAAE,EAAE,oEAAoE,EAAE,IAAI,EAAE,0BAA0B,CAAC;QACzH,aAAa,CAAC,EAAE,EAAE,+CAA+C,EAAE,GAAG,EAAE,0BAA0B,CAAC;QACnG,aAAa,CAAC,EAAE,EAAE,yDAAyD,EAAE,GAAG,EAAE,qBAAqB,CAAC;QACxG,aAAa,CAAC,EAAE,EAAE,yDAAyD,EAAE,IAAI,EAAE,sBAAsB,CAAC;QAC1G,aAAa,CAAC,EAAE,EAAE,0CAA0C,EAAE,GAAG,EAAE,kCAAkC,CAAC;QACtG,aAAa,CAAC,EAAE,EAAE,kCAAkC,EAAE,IAAI,EAAE,mBAAmB,CAAC;QAChF,aAAa,CAAC,EAAE,EAAE,8BAA8B,EAAE,GAAG,EAAE,sBAAsB,CAAC;QAC9E,aAAa,CAAC,EAAE,EAAE,2CAA2C,EAAE,IAAI,EAAE,mBAAmB,CAAC;QACzF,aAAa,CAAC,EAAE,EAAE,0EAA0E,EAAE,IAAI,EAAE,gBAAgB,CAAC;QACrH,aAAa,CAAC,EAAE,EAAE,sCAAsC,EAAE,GAAG,EAAE,eAAe,CAAC;QAC/E,aAAa,CAAC,EAAE,EAAE,8DAA8D,EAAE,GAAG,EAAE,iBAAiB,CAAC;QACzG,aAAa,CAAC,EAAE,EAAE,2EAA2E,EAAE,IAAI,EAAE,yBAAyB,CAAC;QAC/H,aAAa,CAAC,EAAE,EAAE,gFAAgF,EAAE,GAAG,EAAE,uBAAuB,CAAC;QACjI,aAAa,CAAC,EAAE,EAAE,yEAAyE,EAAE,IAAI,EAAE,6BAA6B,CAAC;QACjI,aAAa,CAAC,EAAE,EAAE,2EAA2E,EAAE,IAAI,EAAE,iBAAiB,CAAC;QACvH,aAAa,CAAC,EAAE,EAAE,yDAAyD,EAAE,GAAG,EAAE,sBAAsB,CAAC;QACzG,aAAa,CAAC,EAAE,EAAE,2CAA2C,EAAE,GAAG,EAAE,oBAAoB,CAAC;QACzF,aAAa,CAAC,EAAE,EAAE,gFAAgF,EAAE,IAAI,EAAE,0BAA0B,CAAC;QACrI,aAAa,CAAC,EAAE,EAAE,8EAA8E,EAAE,IAAI,EAAE,8BAA8B,CAAC;QACvI,aAAa,CAAC,EAAE,EAAE,0EAA0E,EAAE,IAAI,EAAE,yBAAyB,CAAC;QAC9H,aAAa,CAAC,EAAE,EAAE,gFAAgF,EAAE,IAAI,EAAE,2BAA2B,CAAC;QACtI,aAAa,CAAC,EAAE,EAAE,uEAAuE,EAAE,IAAI,EAAE,yBAAyB,CAAC;QAC3H,aAAa,CAAC,EAAE,EAAE,kEAAkE,EAAE,IAAI,EAAE,2BAA2B,CAAC;QACxH,aAAa,CAAC,EAAE,EAAE,4EAA4E,EAAE,GAAG,EAAE,0BAA0B,CAAC;QAChI,aAAa,CAAC,EAAE,EAAE,oEAAoE,EAAE,GAAG,EAAE,0BAA0B,CAAC;QACxH,aAAa,CAAC,EAAE,EAAE,4CAA4C,EAAE,IAAI,EAAE,uBAAuB,CAAC;QAC9F,aAAa,CAAC,EAAE,EAAE,sEAAsE,EAAE,GAAG,EAAE,eAAe,CAAC;QAC/G,aAAa,CAAC,EAAE,EAAE,sEAAsE,EAAE,GAAG,EAAE,eAAe,CAAC;QAC/G,aAAa,CAAC,EAAE,EAAE,2DAA2D,EAAE,GAAG,EAAE,oBAAoB,CAAC;QACzG,aAAa,CAAC,EAAE,EAAE,oFAAoF,EAAE,IAAI,EAAE,eAAe,CAAC;QAC9H,aAAa,CAAC,EAAE,EAAE,0DAA0D,EAAE,GAAG,EAAE,UAAU,CAAC;QAC9F,aAAa,CAAC,EAAE,EAAE,2DAA2D,EAAE,GAAG,EAAE,0BAA0B,CAAC;QAC/G,aAAa,CAAC,EAAE,EAAE,wDAAwD,EAAE,IAAI,EAAE,aAAa,CAAC;QAChG,aAAa,CAAC,EAAE,EAAE,4DAA4D,EAAE,IAAI,EAAE,yBAAyB,CAAC;QAChH,aAAa,CAAC,EAAE,EAAE,8DAA8D,EAAE,GAAG,EAAE,yBAAyB,CAAC;QACjH,aAAa,CAAC,EAAE,EAAE,sEAAsE,EAAE,IAAI,EAAE,wBAAwB,CAAC;QACzH,aAAa,CAAC,EAAE,EAAE,sEAAsE,EAAE,IAAI,EAAE,sBAAsB,CAAC;QACvH,aAAa,CAAC,EAAE,EAAE,sEAAsE,EAAE,GAAG,EAAE,mBAAmB,CAAC;QACnH,aAAa,CAAC,EAAE,EAAE,uDAAuD,EAAE,GAAG,EAAE,uBAAuB,CAAC;QACxG,aAAa,CAAC,EAAE,EAAE,6CAA6C,EAAE,GAAG,EAAE,iBAAiB,CAAC;QACxF,aAAa,CAAC,EAAE,EAAE,wDAAwD,EAAE,IAAI,EAAE,qBAAqB,CAAC;QACxG,+EAA+E;QAC/E,aAAa,CAAC,EAAE,EAAE,2DAA2D,EAAE,IAAI,EAAE,sBAAsB,CAAC;QAC5G,aAAa,CAAC,EAAE,EAAE,wDAAwD,EAAE,IAAI,EAAE,qBAAqB,CAAC;QACxG,aAAa,CAAC,EAAE,EAAE,+BAA+B,EAAE,GAAG,EAAE,qBAAqB,CAAC;QAC9E,aAAa,CAAC,EAAE,EAAE,4BAA4B,EAAE,IAAI,EAAE,oBAAoB,CAAC;QAC3E,aAAa,CAAC,EAAE,EAAE,gEAAgE,EAAE,GAAG,EAAE,uBAAuB,CAAC;QACjH,aAAa,CAAC,EAAE,EAAE,+CAA+C,EAAE,IAAI,EAAE,0BAA0B,CAAC;QACpG,aAAa,CAAC,EAAE,EAAE,gDAAgD,EAAE,IAAI,EAAE,eAAe,CAAC;QAC1F,aAAa,CAAC,EAAE,EAAE,4BAA4B,EAAE,GAAG,EAAE,oBAAoB,CAAC;QAC1E,aAAa,CAAC,EAAE,EAAE,kCAAkC,EAAE,IAAI,EAAE,aAAa,CAAC;QAC1E,aAAa,CAAC,EAAE,EAAE,sCAAsC,EAAE,IAAI,EAAE,mBAAmB,CAAC;QACpF,aAAa,CAAC,EAAE,EAAE,8CAA8C,EAAE,GAAG,EAAE,gBAAgB,CAAC;QACxF,aAAa,CAAC,EAAE,EAAE,gCAAgC,EAAE,GAAG,EAAE,qBAAqB,CAAC;QAC/E,aAAa,CAAC,EAAE,EAAE,qDAAqD,EAAE,IAAI,EAAE,mBAAmB,CAAC;QACnG,aAAa,CAAC,EAAE,EAAE,wCAAwC,EAAE,IAAI,EAAE,cAAc,CAAC;QACjF,aAAa,CAAC,EAAE,EAAE,iEAAiE,EAAE,GAAG,EAAE,wBAAwB,CAAC;QACnH,aAAa,CAAC,EAAE,EAAE,2EAA2E,EAAE,IAAI,EAAE,6BAA6B,CAAC;QACnI,aAAa,CAAC,EAAE,EAAE,0DAA0D,EAAE,IAAI,EAAE,iBAAiB,CAAC;QACtG,aAAa,CAAC,EAAE,EAAE,wDAAwD,EAAE,IAAI,EAAE,gBAAgB,CAAC;QACnG,aAAa,CAAC,EAAE,EAAE,iEAAiE,EAAE,IAAI,EAAE,eAAe,CAAC;QAC3G,aAAa,CAAC,EAAE,EAAE,kEAAkE,EAAE,GAAG,EAAE,cAAc,CAAC;QAC1G,aAAa,CAAC,EAAE,EAAE,2DAA2D,EAAE,IAAI,EAAE,wBAAwB,CAAC;QAC9G,aAAa,CAAC,EAAE,EAAE,wDAAwD,EAAE,GAAG,EAAE,kBAAkB,CAAC;QACpG,aAAa,CAAC,EAAE,EAAE,0DAA0D,EAAE,GAAG,EAAE,sBAAsB,CAAC;QAC1G,aAAa,CAAC,EAAE,EAAE,yEAAyE,EAAE,GAAG,EAAE,6BAA6B,CAAC;QAChI,aAAa,CAAC,EAAE,EAAE,qEAAqE,EAAE,GAAG,EAAE,sBAAsB,CAAC;QACrH,aAAa,CAAC,EAAE,EAAE,0DAA0D,EAAE,GAAG,EAAE,iBAAiB,CAAC;QACrG,aAAa,CAAC,EAAE,EAAE,wDAAwD,EAAE,IAAI,EAAE,qBAAqB,CAAC;QACxG,aAAa,CAAC,EAAE,EAAE,yFAAyF,EAAE,GAAG,EAAE,4BAA4B,CAAC;QAC/I,aAAa,CAAC,EAAE,EAAE,iEAAiE,EAAE,IAAI,EAAE,qBAAqB,CAAC;QACjH,aAAa,CAAC,EAAE,EAAE,iEAAiE,EAAE,IAAI,EAAE,uBAAuB,CAAC;QACnH,aAAa,CAAC,EAAE,EAAE,wEAAwE,EAAE,GAAG,EAAE,oBAAoB,CAAC;QACtH,aAAa,CAAC,EAAE,EAAE,8CAA8C,EAAE,IAAI,EAAE,kBAAkB,CAAC;QAC3F,aAAa,CAAC,EAAE,EAAE,4EAA4E,EAAE,GAAG,EAAE,2BAA2B,CAAC;QACjI,aAAa,CAAC,EAAE,EAAE,uEAAuE,EAAE,IAAI,EAAE,2BAA2B,CAAC;QAC7H,aAAa,CAAC,EAAE,EAAE,8DAA8D,EAAE,GAAG,EAAE,4BAA4B,CAAC;QACpH,aAAa,CAAC,EAAE,EAAE,6EAA6E,EAAE,GAAG,EAAE,iBAAiB,CAAC;QACxH,aAAa,CAAC,EAAE,EAAE,yDAAyD,EAAE,IAAI,EAAE,gBAAgB,CAAC;QACpG,aAAa,CAAC,EAAE,EAAE,2EAA2E,EAAE,GAAG,EAAE,qBAAqB,CAAC;QAC1H,aAAa,CAAC,EAAE,EAAE,8DAA8D,EAAE,IAAI,EAAE,uBAAuB,CAAC;QAChH,aAAa,CAAC,EAAE,EAAE,wEAAwE,EAAE,IAAI,EAAE,oBAAoB,CAAC;QACvH,aAAa,CAAC,EAAE,EAAE,wEAAwE,EAAE,GAAG,EAAE,wBAAwB,CAAC;QAC1H,aAAa,CAAC,EAAE,EAAE,qEAAqE,EAAE,IAAI,EAAE,2BAA2B,CAAC;QAC3H,aAAa,CAAC,EAAE,EAAE,0DAA0D,EAAE,IAAI,EAAE,oBAAoB,CAAC;QACzG,aAAa,CAAC,EAAE,EAAE,gEAAgE,EAAE,IAAI,EAAE,sBAAsB,CAAC;QACjH,aAAa,CAAC,EAAE,EAAE,kEAAkE,EAAE,GAAG,EAAE,kBAAkB,CAAC;QAC9G,aAAa,CAAC,EAAE,EAAE,4DAA4D,EAAE,GAAG,EAAE,0BAA0B,CAAC;QAChH,aAAa,CAAC,EAAE,EAAE,4DAA4D,EAAE,IAAI,EAAE,kBAAkB,CAAC;QACzG,aAAa,CAAC,EAAE,EAAE,sEAAsE,EAAE,GAAG,EAAE,0BAA0B,CAAC;QAC1H,aAAa,CAAC,EAAE,EAAE,8FAA8F,EAAE,GAAG,EAAE,0BAA0B,CAAC;QAClJ,aAAa,CAAC,EAAE,EAAE,6EAA6E,EAAE,IAAI,EAAE,oBAAoB,CAAC;QAC5H,aAAa,CAAC,EAAE,EAAE,wEAAwE,EAAE,GAAG,EAAE,+BAA+B,CAAC;QACjI,aAAa,CAAC,EAAE,EAAE,gGAAgG,EAAE,IAAI,EAAE,uCAAuC,CAAC;QAClK,aAAa,CAAC,EAAE,EAAE,mEAAmE,EAAE,GAAG,EAAE,+BAA+B,CAAC;QAC5H,aAAa,CAAC,EAAE,EAAE,4DAA4D,EAAE,IAAI,EAAE,yBAAyB,CAAC;QAChH,aAAa,CAAC,EAAE,EAAE,0DAA0D,EAAE,IAAI,EAAE,wBAAwB,CAAC;QAC7G,aAAa,CAAC,EAAE,EAAE,4EAA4E,EAAE,IAAI,EAAE,sBAAsB,CAAC;QAC7H,aAAa,CAAC,EAAE,EAAE,oCAAoC,EAAE,GAAG,EAAE,kBAAkB,CAAC;QAChF,gDAAgD;QAChD,aAAa,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,YAAY,CAAC;QACpD,aAAa,CAAC,EAAE,EAAE,kBAAkB,EAAE,GAAG,EAAE,iBAAiB,CAAC;QAC7D,aAAa,CAAC,EAAE,EAAE,yBAAyB,EAAE,IAAI,EAAE,iBAAiB,CAAC;QACrE,aAAa,CAAC,EAAE,EAAE,sBAAsB,EAAE,GAAG,EAAE,sBAAsB,CAAC;QACtE,aAAa,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,YAAY,CAAC;QACpD,aAAa,CAAC,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,OAAO,CAAC;QAC9C,aAAa,CAAC,EAAE,EAAE,8BAA8B,EAAE,IAAI,EAAE,uBAAuB,CAAC;QAChF,aAAa,CAAC,EAAE,EAAE,iBAAiB,EAAE,GAAG,EAAE,YAAY,CAAC;QACvD,aAAa,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,0BAA0B,CAAC;QAChE,aAAa,CAAC,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,oBAAoB,CAAC;QACjE,aAAa,CAAC,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,CAAC;QAClD,aAAa,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,YAAY,CAAC;QACpD,aAAa,CAAC,EAAE,EAAE,iBAAiB,EAAE,GAAG,EAAE,mBAAmB,CAAC;QAC9D,aAAa,CAAC,EAAE,EAAE,8BAA8B,EAAE,IAAI,EAAE,eAAe,CAAC;QACxE,aAAa,CAAC,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,eAAe,CAAC;QAC1D,aAAa,CAAC,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,iBAAiB,CAAC;QAClE,aAAa,CAAC,EAAE,EAAE,6BAA6B,EAAE,GAAG,EAAE,kBAAkB,CAAC;QACzE,aAAa,CAAC,EAAE,EAAE,kCAAkC,EAAE,GAAG,EAAE,mBAAmB,CAAC;QAC/E,aAAa,CAAC,EAAE,EAAE,uCAAuC,EAAE,GAAG,EAAE,mBAAmB,CAAC;QACpF,aAAa,CAAC,EAAE,EAAE,wCAAwC,EAAE,GAAG,EAAE,oBAAoB,CAAC;QACtF,aAAa,CAAC,EAAE,EAAE,sBAAsB,EAAE,GAAG,EAAE,sBAAsB,CAAC;QACtE,aAAa,CAAC,EAAE,EAAE,uBAAuB,EAAE,GAAG,EAAE,eAAe,CAAC;QAChE,aAAa,CAAC,EAAE,EAAE,4DAA4D,EAAE,IAAI,EAAE,cAAc,CAAC;QACrG,aAAa,CAAC,EAAE,EAAE,kCAAkC,EAAE,IAAI,EAAE,sBAAsB,CAAC;QACnF,aAAa,CAAC,EAAE,EAAE,yCAAyC,EAAE,GAAG,EAAE,iBAAiB,CAAC;QACpF,aAAa,CAAC,EAAE,EAAE,0CAA0C,EAAE,IAAI,EAAE,oBAAoB,CAAC;QACzF,aAAa,CAAC,EAAE,EAAE,6CAA6C,EAAE,IAAI,EAAE,wBAAwB,CAAC;QAChG,aAAa,CAAC,EAAE,EAAE,wCAAwC,EAAE,IAAI,EAAE,mBAAmB,CAAC;QACtF,aAAa,CAAC,EAAE,EAAE,wBAAwB,EAAE,GAAG,EAAE,aAAa,CAAC;QAC/D,aAAa,CAAC,EAAE,EAAE,wBAAwB,EAAE,GAAG,EAAE,aAAa,CAAC;QAC/D,aAAa,CAAC,EAAE,EAAE,0BAA0B,EAAE,IAAI,EAAE,eAAe,CAAC;QACpE,aAAa,CAAC,EAAE,EAAE,wBAAwB,EAAE,IAAI,EAAE,aAAa,CAAC;QAChE,aAAa,CAAC,EAAE,EAAE,yBAAyB,EAAE,GAAG,EAAE,sBAAsB,CAAC;QACzE,aAAa,CAAC,EAAE,EAAE,mCAAmC,EAAE,GAAG,EAAE,yBAAyB,CAAC;QACtF,aAAa,CAAC,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,sBAAsB,CAAC;QACrE,aAAa,CAAC,EAAE,EAAE,0CAA0C,EAAE,GAAG,EAAE,qBAAqB,CAAC;QACzF,aAAa,CAAC,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,gBAAgB,CAAC;QAC/D,aAAa,CAAC,EAAE,EAAE,0BAA0B,EAAE,GAAG,EAAE,sBAAsB,CAAC;QAC1E,aAAa,CAAC,EAAE,EAAE,uCAAuC,EAAE,GAAG,EAAE,WAAW,CAAC;QAC5E,aAAa,CAAC,EAAE,EAAE,iCAAiC,EAAE,GAAG,EAAE,aAAa,CAAC;QACxE,aAAa,CAAC,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,OAAO,CAAC;QACtD,aAAa,CAAC,EAAE,EAAE,sBAAsB,EAAE,GAAG,EAAE,SAAS,CAAC;QACzD,aAAa,CAAC,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,WAAW,CAAC;QACvD,aAAa,CAAC,EAAE,EAAE,mBAAmB,EAAE,GAAG,EAAE,aAAa,CAAC;QAC1D,aAAa,CAAC,EAAE,EAAE,yBAAyB,EAAE,GAAG,EAAE,YAAY,CAAC;QAC/D,aAAa,CAAC,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,YAAY,CAAC;QAC3D,aAAa,CAAC,EAAE,EAAE,6BAA6B,EAAE,IAAI,EAAE,UAAU,CAAC;QAClE,aAAa,CAAC,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,kBAAkB,CAAC;QAC/D,aAAa,CAAC,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,uBAAuB,CAAC;QAC/D,aAAa,CAAC,EAAE,EAAE,yBAAyB,EAAE,GAAG,EAAE,eAAe,CAAC;QAClE,aAAa,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,cAAc,CAAC;QACtD,aAAa,CAAC,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,gBAAgB,CAAC;QACvD,aAAa,CAAC,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,aAAa,CAAC;QACvD,aAAa,CAAC,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,4BAA4B,CAAC;QACrE,aAAa,CAAC,EAAE,EAAE,kBAAkB,EAAE,GAAG,EAAE,aAAa,CAAC;QACzD,aAAa,CAAC,EAAE,EAAE,wBAAwB,EAAE,GAAG,EAAE,gBAAgB,CAAC;QAClE,aAAa,CAAC,EAAE,EAAE,4BAA4B,EAAE,GAAG,EAAE,qBAAqB,CAAC;QAC3E,aAAa,CAAC,EAAE,EAAE,0CAA0C,EAAE,GAAG,EAAE,eAAe,CAAC;QACnF,aAAa,CAAC,EAAE,EAAE,mCAAmC,EAAE,GAAG,EAAE,WAAW,CAAC;QACxE,aAAa,CAAC,EAAE,EAAE,0BAA0B,EAAE,GAAG,EAAE,WAAW,CAAC;QAC/D,aAAa,CAAC,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,CAAC;QACzD,aAAa,CAAC,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,cAAc,CAAC;QAC7D,aAAa,CAAC,EAAE,EAAE,mCAAmC,EAAE,GAAG,EAAE,cAAc,CAAC;QAC3E,aAAa,CAAC,EAAE,EAAE,wBAAwB,EAAE,GAAG,EAAE,mBAAmB,CAAC;QACrE,aAAa,CAAC,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,WAAW,CAAC;QAC7D,aAAa,CAAC,EAAE,EAAE,2BAA2B,EAAE,GAAG,EAAE,oBAAoB,CAAC;QACzE,aAAa,CAAC,EAAE,EAAE,+BAA+B,EAAE,IAAI,EAAE,eAAe,CAAC;QACzE,aAAa,CAAC,EAAE,EAAE,2BAA2B,EAAE,IAAI,EAAE,kBAAkB,CAAC;QACxE,aAAa,CAAC,EAAE,EAAE,oBAAoB,EAAE,GAAG,EAAE,aAAa,CAAC;QAC3D,aAAa,CAAC,EAAE,EAAE,2CAA2C,EAAE,IAAI,EAAE,sBAAsB,CAAC;QAC5F,aAAa,CAAC,EAAE,EAAE,2CAA2C,EAAE,GAAG,EAAE,cAAc,CAAC;QACnF,aAAa,CAAC,EAAE,EAAE,qBAAqB,EAAE,IAAI,EAAE,WAAW,CAAC;QAC3D,aAAa,CAAC,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,aAAa,CAAC;QACtD,aAAa,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,CAAC;QACjD,aAAa,CAAC,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,YAAY,CAAC;QACnD,aAAa,CAAC,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,YAAY,CAAC;QACnD,aAAa,CAAC,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,aAAa,CAAC;QACtD,8CAA8C;QAC9C,aAAa,CAAC,EAAE,EAAE,sBAAsB,EAAE,GAAG,EAAE,kBAAkB,CAAC;QAClE,aAAa,CAAC,EAAE,EAAE,2BAA2B,EAAE,GAAG,EAAE,uBAAuB,CAAC;QAC5E,aAAa,CAAC,EAAE,EAAE,sCAAsC,EAAE,GAAG,EAAE,wBAAwB,CAAC;QACxF,aAAa,CAAC,EAAE,EAAE,iCAAiC,EAAE,GAAG,EAAE,WAAW,CAAC;QACtE,aAAa,CAAC,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,iBAAiB,CAAC;QAClE,aAAa,CAAC,EAAE,EAAE,sCAAsC,EAAE,GAAG,EAAE,yBAAyB,CAAC;QACzF,aAAa,CAAC,EAAE,EAAE,oCAAoC,EAAE,GAAG,EAAE,aAAa,CAAC;QAC3E,aAAa,CAAC,EAAE,EAAE,kCAAkC,EAAE,GAAG,EAAE,qCAAqC,CAAC;QACjG,aAAa,CAAC,EAAE,EAAE,iDAAiD,EAAE,IAAI,EAAE,WAAW,CAAC;QACvF,aAAa,CAAC,EAAE,EAAE,+CAA+C,EAAE,GAAG,EAAE,kBAAkB,CAAC;QAC3F,aAAa,CAAC,EAAE,EAAE,yDAAyD,EAAE,GAAG,EAAE,qBAAqB,CAAC;QACxG,aAAa,CAAC,EAAE,EAAE,0CAA0C,EAAE,GAAG,EAAE,cAAc,CAAC;QAClF,aAAa,CAAC,EAAE,EAAE,2CAA2C,EAAE,GAAG,EAAE,iBAAiB,CAAC;QACtF,aAAa,CAAC,EAAE,EAAE,kDAAkD,EAAE,GAAG,EAAE,oBAAoB,CAAC;QAChG,aAAa,CAAC,EAAE,EAAE,+CAA+C,EAAE,IAAI,EAAE,mBAAmB,CAAC;QAC7F,aAAa,CAAC,EAAE,EAAE,8CAA8C,EAAE,IAAI,EAAE,YAAY,CAAC;QACrF,aAAa,CAAC,EAAE,EAAE,yCAAyC,EAAE,GAAG,EAAE,YAAY,CAAC;QAC/E,aAAa,CAAC,EAAE,EAAE,mCAAmC,EAAE,IAAI,EAAE,WAAW,CAAC;QACzE,aAAa,CAAC,EAAE,EAAE,sCAAsC,EAAE,IAAI,EAAE,mBAAmB,CAAC;QACpF,aAAa,CAAC,EAAE,EAAE,2BAA2B,EAAE,IAAI,EAAE,kBAAkB,CAAC;QACxE,aAAa,CAAC,EAAE,EAAE,oDAAoD,EAAE,IAAI,EAAE,oBAAoB,CAAC;QACnG,aAAa,CAAC,EAAE,EAAE,mCAAmC,EAAE,GAAG,EAAE,UAAU,CAAC;QACvE,aAAa,CAAC,EAAE,EAAE,0CAA0C,EAAE,IAAI,EAAE,mBAAmB,CAAC;QACxF,aAAa,CAAC,EAAE,EAAE,mCAAmC,EAAE,GAAG,EAAE,cAAc,CAAC;QAC3E,aAAa,CAAC,EAAE,EAAE,qCAAqC,EAAE,IAAI,EAAE,kBAAkB,CAAC;QAClF,aAAa,CAAC,EAAE,EAAE,0CAA0C,EAAE,GAAG,EAAE,mBAAmB,CAAC;QACvF,aAAa,CAAC,EAAE,EAAE,yBAAyB,EAAE,IAAI,EAAE,aAAa,CAAC;QACjE,aAAa,CAAC,EAAE,EAAE,kCAAkC,EAAE,IAAI,EAAE,eAAe,CAAC;QAC5E,aAAa,CAAC,EAAE,EAAE,sCAAsC,EAAE,IAAI,EAAE,iBAAiB,CAAC;QAClF,aAAa,CAAC,EAAE,EAAE,2BAA2B,EAAE,GAAG,EAAE,iBAAiB,CAAC;QACtE,aAAa,CAAC,EAAE,EAAE,8BAA8B,EAAE,GAAG,EAAE,sBAAsB,CAAC;QAC9E,aAAa,CAAC,EAAE,EAAE,8BAA8B,EAAE,IAAI,EAAE,oBAAoB,CAAC;QAC7E,aAAa,CAAC,EAAE,EAAE,4CAA4C,EAAE,IAAI,EAAE,qBAAqB,CAAC;QAC5F,aAAa,CAAC,EAAE,EAAE,wCAAwC,EAAE,IAAI,EAAE,QAAQ,CAAC;QAC3E,aAAa,CAAC,EAAE,EAAE,uCAAuC,EAAE,GAAG,EAAE,sBAAsB,CAAC;QACvF,aAAa,CAAC,EAAE,EAAE,+BAA+B,EAAE,GAAG,EAAE,cAAc,CAAC;QACvE,aAAa,CAAC,EAAE,EAAE,8BAA8B,EAAE,GAAG,EAAE,aAAa,CAAC;QACrE,aAAa,CAAC,EAAE,EAAE,iCAAiC,EAAE,IAAI,EAAE,qBAAqB,CAAC;QACjF,aAAa,CAAC,EAAE,EAAE,8BAA8B,EAAE,IAAI,EAAE,kBAAkB,CAAC;QAC3E,aAAa,CAAC,EAAE,EAAE,wBAAwB,EAAE,GAAG,EAAE,oBAAoB,CAAC;QACtE,aAAa,CAAC,EAAE,EAAE,qCAAqC,EAAE,GAAG,EAAE,eAAe,CAAC;QAC9E,aAAa,CAAC,EAAE,EAAE,gDAAgD,EAAE,IAAI,EAAE,sBAAsB,CAAC;QACjG,aAAa,CAAC,EAAE,EAAE,6EAA6E,EAAE,IAAI,EAAE,yBAAyB,CAAC;QACjI,aAAa,CAAC,EAAE,EAAE,qDAAqD,EAAE,GAAG,EAAE,kBAAkB,CAAC;QACjG,aAAa,CAAC,EAAE,EAAE,uDAAuD,EAAE,IAAI,EAAE,kBAAkB,CAAC;KACrG,CAAA;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;AAChC,CAAC;AAED,IAAI,cAAc,GAA8B,IAAI,CAAA;AAEpD,wDAAwD;AACxD,MAAM,UAAU,wBAAwB;IACtC,cAAc,KAAK,0BAA0B,EAAE,CAAA;IAC/C,OAAO,cAAc,CAAA;AACvB,CAAC;AAWD;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAC3B,OAAe,EACf,UAAgC,EAAE;IAElC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CACvB,OAAO,CAAC,QAAQ,IAAI,oBAAoB,EACxC,WAAW,CACZ,CAAA;IACD,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,eAAe,CAAA;IAC9D,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,wBAAwB,EAAE,CAAA;IAE/D,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,MAAM,IAAI,SAAS,CAAC,yCAAyC,CAAC,CAAA;IAChE,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IAC1B,CAAC;IACD,IAAI,QAAQ,IAAI,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,CAA2B,CAAA;IACpD,CAAC;IAED,MAAM,UAAU,GAAkB,EAAE,CAAA;IACpC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,UAAU,CAAC,MAAM,IAAI,QAAQ;YAAE,MAAK;QACxC,MAAM,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAA;QAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,SAAS,CAAC,CAAA;QAC9C,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,CAAA;QACrD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAQ;YACpC,UAAU,CAAC,IAAI,CACb,iBAAiB,CACf,OAAO,CAAC,YAAY,EACpB,CAAC,CAAC,OAAO,EACT,CAAC,CAAC,QAAQ,EACV,OAAO,CAAC,eAAe,CACxB,CACF,CAAA;YACD,IAAI,UAAU,CAAC,MAAM,IAAI,QAAQ;gBAAE,MAAK;QAC1C,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;AAClC,CAAC"}
|
package/dist/isl/sanitize.js
CHANGED
|
@@ -22,8 +22,8 @@ export function sanitize(cslResult, options = {}) {
|
|
|
22
22
|
const sanitizationLevel = getSanitizationLevel(cslSegment.trust);
|
|
23
23
|
// Sanitize content according to level
|
|
24
24
|
const sanitized = sanitizeContent(cslSegment.content, sanitizationLevel);
|
|
25
|
-
// Detect threats
|
|
26
|
-
const detections = detectThreats(
|
|
25
|
+
// Detect threats on sanitizedContent; positions are segment-local for downstream use (e.g. SDK/AI remediation).
|
|
26
|
+
const detections = detectThreats(sanitized.content, detectOptions);
|
|
27
27
|
const piDetection = detections.length > 0 ? createPiDetectionResult(detections) : undefined;
|
|
28
28
|
// Build ISL lineage for this segment
|
|
29
29
|
const segmentLineage = buildISLLineage(cslSegment.lineage, startTime);
|
package/dist/isl/sanitize.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sanitize.js","sourceRoot":"","sources":["../../src/isl/sanitize.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAEhD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAA;AAQ9E;;;;;;;;;GASG;AACH,MAAM,UAAU,QAAQ,CAAC,SAAoB,EAAE,UAA2B,EAAE;IAC1E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IAC5B,MAAM,QAAQ,GAAiB,EAAE,CAAA;IACjC,MAAM,aAAa,GAAG,OAAO,CAAC,oBAAoB,CAAA;IAElD,KAAK,MAAM,UAAU,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC5C,wDAAwD;QACxD,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QAEhE,sCAAsC;QACtC,MAAM,SAAS,GAAG,eAAe,CAC/B,UAAU,CAAC,OAAO,EAClB,iBAAiB,CAClB,CAAA;QAED,
|
|
1
|
+
{"version":3,"file":"sanitize.js","sourceRoot":"","sources":["../../src/isl/sanitize.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAEhD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAA;AAQ9E;;;;;;;;;GASG;AACH,MAAM,UAAU,QAAQ,CAAC,SAAoB,EAAE,UAA2B,EAAE;IAC1E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IAC5B,MAAM,QAAQ,GAAiB,EAAE,CAAA;IACjC,MAAM,aAAa,GAAG,OAAO,CAAC,oBAAoB,CAAA;IAElD,KAAK,MAAM,UAAU,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC5C,wDAAwD;QACxD,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QAEhE,sCAAsC;QACtC,MAAM,SAAS,GAAG,eAAe,CAC/B,UAAU,CAAC,OAAO,EAClB,iBAAiB,CAClB,CAAA;QAED,gHAAgH;QAChH,MAAM,UAAU,GAAG,aAAa,CAAC,SAAS,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;QAClE,MAAM,WAAW,GACf,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAEzE,qCAAqC;QACrC,MAAM,cAAc,GAAG,eAAe,CAAC,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QAErE,wDAAwD;QACxD,MAAM,UAAU,GAAe;YAC7B,EAAE,EAAE,UAAU,CAAC,EAAE;YACjB,eAAe,EAAE,UAAU,CAAC,OAAO;YACnC,gBAAgB,EAAE,SAAS,CAAC,OAAO;YACnC,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,OAAO,EAAE,CAAC,GAAG,cAAc,CAAC;YAC5B,iBAAiB;YACjB,GAAG,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,CAAC;SAClD,CAAA;QAED,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAC3B,CAAC;IAED,yBAAyB;IACzB,MAAM,UAAU,GAAG,eAAe,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IAEhE,sCAAsC;IACtC,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;IAC7C,OAAO,cAAc,CAAC,QAAQ,EAAE,UAAU,EAAE,cAAc,CAAC,CAAA;AAC7D,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAAC,KAAiB;IAC7C,IAAI,KAAK,CAAC,KAAK,KAAK,cAAc,CAAC,EAAE;QAAE,OAAO,SAAS,CAAA;IACvD,IAAI,KAAK,CAAC,KAAK,KAAK,cAAc,CAAC,GAAG;QAAE,OAAO,UAAU,CAAA;IACzD,OAAO,YAAY,CAAA,CAAE,KAAK;AAC5B,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CACtB,OAAe,EACf,MAA6C;IAE7C,oCAAoC;IACpC,oDAAoD;IACpD,OAAO;QACL,OAAO;KACR,CAAA;AACH,CAAC"}
|
package/dist/shared/audit.d.ts
CHANGED
|
@@ -85,15 +85,13 @@ export interface DecisionReasonLike {
|
|
|
85
85
|
readonly hasThreats: boolean;
|
|
86
86
|
readonly detectionCount: number;
|
|
87
87
|
}
|
|
88
|
-
/** AAL
|
|
89
|
-
export interface
|
|
90
|
-
readonly
|
|
91
|
-
readonly
|
|
92
|
-
readonly
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
readonly description?: string;
|
|
96
|
-
}>;
|
|
88
|
+
/** AAL remediation plan shape for audit formatting */
|
|
89
|
+
export interface RemediationPlanLike {
|
|
90
|
+
readonly strategy: string;
|
|
91
|
+
readonly goals: readonly string[];
|
|
92
|
+
readonly constraints: readonly string[];
|
|
93
|
+
readonly targetSegments: readonly string[];
|
|
94
|
+
readonly needsRemediation: boolean;
|
|
97
95
|
}
|
|
98
96
|
/** CPE result shape for audit formatting */
|
|
99
97
|
export interface CPEResultLike {
|
|
@@ -157,7 +155,7 @@ export declare function buildAuditLogEntry(signal: ISLSignalLike, reason: Decisi
|
|
|
157
155
|
* Preserves lineage in each section for traceability. Use formatPipelineAuditAsJson to get a JSON string.
|
|
158
156
|
*/
|
|
159
157
|
export declare function buildFullAuditPayload(csl: CSLResultLike, isl: ISLResultLike, signal: ISLSignalLike, reason: DecisionReasonLike, options?: FullPipelineAuditOptions & {
|
|
160
|
-
|
|
158
|
+
remediationPlan?: RemediationPlanLike | null;
|
|
161
159
|
cpe?: CPEResultLike | null;
|
|
162
160
|
}): Record<string, unknown>;
|
|
163
161
|
/**
|
|
@@ -189,13 +187,13 @@ export declare function formatISLForAudit(result: ISLResultLike): string;
|
|
|
189
187
|
*/
|
|
190
188
|
export declare function formatISLSignalForAudit(signal: ISLSignalLike): string;
|
|
191
189
|
/**
|
|
192
|
-
* Formats AAL decision reason and optional
|
|
190
|
+
* Formats AAL decision reason and optional remediation plan for audit
|
|
193
191
|
*
|
|
194
192
|
* @param reason - Decision reason (or compatible shape)
|
|
195
|
-
* @param
|
|
196
|
-
* @returns Formatted string:
|
|
193
|
+
* @param remediationPlan - Optional remediation plan (or compatible shape)
|
|
194
|
+
* @returns Formatted string: action (ALLOW/WARN/BLOCK), reason, thresholds, remediation plan
|
|
197
195
|
*/
|
|
198
|
-
export declare function formatAALForAudit(reason: DecisionReasonLike,
|
|
196
|
+
export declare function formatAALForAudit(reason: DecisionReasonLike, remediationPlan?: RemediationPlanLike | null): string;
|
|
199
197
|
/**
|
|
200
198
|
* Formats CPE result for audit - data self-explanatory
|
|
201
199
|
*
|
|
@@ -220,7 +218,7 @@ export declare function formatPipelineAudit(csl: CSLResultLike, isl: ISLResultLi
|
|
|
220
218
|
includeSignalAndAAL?: boolean;
|
|
221
219
|
signal?: ISLSignalLike;
|
|
222
220
|
aalReason?: DecisionReasonLike;
|
|
223
|
-
|
|
221
|
+
remediationPlan?: RemediationPlanLike | null;
|
|
224
222
|
}): string;
|
|
225
223
|
/**
|
|
226
224
|
* Full pipeline audit report (CSL → ISL → ISL Signal → AAL → optional CPE) with run id and timestamp.
|
|
@@ -230,12 +228,12 @@ export declare function formatPipelineAudit(csl: CSLResultLike, isl: ISLResultLi
|
|
|
230
228
|
* @param isl - ISL result
|
|
231
229
|
* @param signal - ISL signal (for AAL)
|
|
232
230
|
* @param aalReason - AAL decision reason
|
|
233
|
-
* @param
|
|
231
|
+
* @param remediationPlan - Optional remediation plan
|
|
234
232
|
* @param cpe - Optional CPE result (included when includeCpe is true)
|
|
235
233
|
* @param options - runId, generatedAt, includeCpe, title, sectionSeparator
|
|
236
234
|
* @returns Formatted string with header (runId, generatedAt) and all sections
|
|
237
235
|
*/
|
|
238
|
-
export declare function formatPipelineAuditFull(csl: CSLResultLike, isl: ISLResultLike, signal: ISLSignalLike, aalReason: DecisionReasonLike,
|
|
236
|
+
export declare function formatPipelineAuditFull(csl: CSLResultLike, isl: ISLResultLike, signal: ISLSignalLike, aalReason: DecisionReasonLike, remediationPlan?: RemediationPlanLike | null, cpe?: CPEResultLike | null, options?: FullPipelineAuditOptions): string;
|
|
239
237
|
/**
|
|
240
238
|
* Full pipeline audit as JSON string (for logs, SIEM, machine consumption).
|
|
241
239
|
* Preserves lineage in each section. Use buildFullAuditPayload for the raw object.
|
|
@@ -244,7 +242,7 @@ export declare function formatPipelineAuditFull(csl: CSLResultLike, isl: ISLResu
|
|
|
244
242
|
* @returns JSON string of the full audit payload
|
|
245
243
|
*/
|
|
246
244
|
export declare function formatPipelineAuditAsJson(csl: CSLResultLike, isl: ISLResultLike, signal: ISLSignalLike, reason: DecisionReasonLike, options?: PipelineAuditJsonOptions & {
|
|
247
|
-
|
|
245
|
+
remediationPlan?: RemediationPlanLike | null;
|
|
248
246
|
cpe?: CPEResultLike | null;
|
|
249
247
|
}): string;
|
|
250
248
|
//# sourceMappingURL=audit.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../src/shared/audit.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../src/shared/audit.ts"],"names":[],"mappings":"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"}
|
package/dist/shared/audit.js
CHANGED
|
@@ -120,7 +120,7 @@ function buildIslSignalSection(signal) {
|
|
|
120
120
|
...(signal.metadata?.strategy && { strategy: signal.metadata.strategy })
|
|
121
121
|
};
|
|
122
122
|
}
|
|
123
|
-
function buildAalSection(reason,
|
|
123
|
+
function buildAalSection(reason, remediationPlan) {
|
|
124
124
|
const section = {
|
|
125
125
|
layer: 'AAL',
|
|
126
126
|
action: reason.action,
|
|
@@ -130,13 +130,12 @@ function buildAalSection(reason, removalPlan) {
|
|
|
130
130
|
hasThreats: reason.hasThreats,
|
|
131
131
|
detectionCount: reason.detectionCount
|
|
132
132
|
};
|
|
133
|
-
if (
|
|
134
|
-
section.
|
|
135
|
-
section.
|
|
136
|
-
section.
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
}));
|
|
133
|
+
if (remediationPlan != null) {
|
|
134
|
+
section.remediationStrategy = remediationPlan.strategy;
|
|
135
|
+
section.remediationGoals = remediationPlan.goals;
|
|
136
|
+
section.remediationConstraints = remediationPlan.constraints;
|
|
137
|
+
section.targetSegments = remediationPlan.targetSegments;
|
|
138
|
+
section.needsRemediation = remediationPlan.needsRemediation;
|
|
140
139
|
}
|
|
141
140
|
return section;
|
|
142
141
|
}
|
|
@@ -159,7 +158,7 @@ function buildCpeSection(result) {
|
|
|
159
158
|
*/
|
|
160
159
|
export function buildFullAuditPayload(csl, isl, signal, reason, options) {
|
|
161
160
|
const run = ensureRunInfo(options);
|
|
162
|
-
const
|
|
161
|
+
const remediationPlan = options?.remediationPlan ?? undefined;
|
|
163
162
|
const cpe = options?.cpe;
|
|
164
163
|
const includeCpe = options?.includeCpe === true && cpe != null;
|
|
165
164
|
const payload = {
|
|
@@ -176,7 +175,7 @@ export function buildFullAuditPayload(csl, isl, signal, reason, options) {
|
|
|
176
175
|
csl: buildCslSection(csl),
|
|
177
176
|
isl: buildIslSection(isl),
|
|
178
177
|
islSignal: buildIslSignalSection(signal),
|
|
179
|
-
aal: buildAalSection(reason,
|
|
178
|
+
aal: buildAalSection(reason, remediationPlan),
|
|
180
179
|
...(includeCpe && cpe && { cpe: buildCpeSection(cpe) })
|
|
181
180
|
}
|
|
182
181
|
};
|
|
@@ -311,29 +310,26 @@ export function formatISLSignalForAudit(signal) {
|
|
|
311
310
|
return lines.join('\n');
|
|
312
311
|
}
|
|
313
312
|
/**
|
|
314
|
-
* Formats AAL decision reason and optional
|
|
313
|
+
* Formats AAL decision reason and optional remediation plan for audit
|
|
315
314
|
*
|
|
316
315
|
* @param reason - Decision reason (or compatible shape)
|
|
317
|
-
* @param
|
|
318
|
-
* @returns Formatted string:
|
|
316
|
+
* @param remediationPlan - Optional remediation plan (or compatible shape)
|
|
317
|
+
* @returns Formatted string: action (ALLOW/WARN/BLOCK), reason, thresholds, remediation plan
|
|
319
318
|
*/
|
|
320
|
-
export function formatAALForAudit(reason,
|
|
321
|
-
const header = 'Agent Action Lock decision. Action (ALLOW/WARN/BLOCK), reason in plain language, thresholds used (warn/block),
|
|
322
|
-
const origin = 'Data from: AAL decision (resolveAgentAction + buildDecisionReason + optional
|
|
319
|
+
export function formatAALForAudit(reason, remediationPlan) {
|
|
320
|
+
const header = 'Agent Action Lock decision. Action (ALLOW/WARN/BLOCK), reason in plain language, thresholds used (warn/block), remediation plan (what to do; SDK/AI agent performs cleanup).';
|
|
321
|
+
const origin = 'Data from: AAL decision (resolveAgentAction + buildDecisionReason + optional buildRemediationPlan).';
|
|
323
322
|
const actionLabel = ACTION_LEGEND[reason.action] ?? reason.action;
|
|
324
|
-
const plan =
|
|
325
|
-
const
|
|
323
|
+
const plan = remediationPlan ?? undefined;
|
|
324
|
+
const remediationBlock = plan === undefined
|
|
326
325
|
? []
|
|
327
326
|
: [
|
|
328
327
|
'',
|
|
329
|
-
`
|
|
330
|
-
`
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
...plan.instructionsToRemove.map((inst, i) => `${SEP}${i + 1}. type=${inst.type ?? 'unknown'} - ${inst.description ?? inst.pattern ?? ''}`)
|
|
335
|
-
]
|
|
336
|
-
: [])
|
|
328
|
+
`Remediation strategy: ${plan.strategy}`,
|
|
329
|
+
`Needs remediation: ${plan.needsRemediation}`,
|
|
330
|
+
`Target segments: ${plan.targetSegments.length} [${plan.targetSegments.slice(0, 5).join(', ')}${plan.targetSegments.length > 5 ? '...' : ''}]`,
|
|
331
|
+
`Goals: ${plan.goals.join(', ')}`,
|
|
332
|
+
`Constraints: ${plan.constraints.join(', ')}`
|
|
337
333
|
];
|
|
338
334
|
const lines = [
|
|
339
335
|
'[AAL] Agent Action Lock',
|
|
@@ -344,7 +340,7 @@ export function formatAALForAudit(reason, removalPlan) {
|
|
|
344
340
|
`Risk score: ${reason.riskScore.toFixed(3)} (threshold: ${reason.threshold.toFixed(3)})`,
|
|
345
341
|
`Reason: ${reason.reason}`,
|
|
346
342
|
`Threats: ${reason.hasThreats} (detection count: ${reason.detectionCount})`,
|
|
347
|
-
...
|
|
343
|
+
...remediationBlock
|
|
348
344
|
];
|
|
349
345
|
return lines.join('\n');
|
|
350
346
|
}
|
|
@@ -395,7 +391,7 @@ export function formatPipelineAudit(csl, isl, cpe, options) {
|
|
|
395
391
|
const title = options?.title ?? 'AI-PIP Pipeline Audit';
|
|
396
392
|
const parts = [title, BORDER, formatCSLForAudit(csl), sep, formatISLForAudit(isl)];
|
|
397
393
|
if (options?.includeSignalAndAAL && options.signal != null && options.aalReason != null) {
|
|
398
|
-
parts.push(sep, formatISLSignalForAudit(options.signal), sep, formatAALForAudit(options.aalReason, options.
|
|
394
|
+
parts.push(sep, formatISLSignalForAudit(options.signal), sep, formatAALForAudit(options.aalReason, options.remediationPlan ?? undefined));
|
|
399
395
|
}
|
|
400
396
|
parts.push(sep, formatCPEForAudit(cpe));
|
|
401
397
|
return parts.join('\n');
|
|
@@ -408,12 +404,12 @@ export function formatPipelineAudit(csl, isl, cpe, options) {
|
|
|
408
404
|
* @param isl - ISL result
|
|
409
405
|
* @param signal - ISL signal (for AAL)
|
|
410
406
|
* @param aalReason - AAL decision reason
|
|
411
|
-
* @param
|
|
407
|
+
* @param remediationPlan - Optional remediation plan
|
|
412
408
|
* @param cpe - Optional CPE result (included when includeCpe is true)
|
|
413
409
|
* @param options - runId, generatedAt, includeCpe, title, sectionSeparator
|
|
414
410
|
* @returns Formatted string with header (runId, generatedAt) and all sections
|
|
415
411
|
*/
|
|
416
|
-
export function formatPipelineAuditFull(csl, isl, signal, aalReason,
|
|
412
|
+
export function formatPipelineAuditFull(csl, isl, signal, aalReason, remediationPlan, cpe, options) {
|
|
417
413
|
const run = ensureRunInfo(options);
|
|
418
414
|
const sep = options?.sectionSeparator ?? '\n\n';
|
|
419
415
|
const title = options?.title ?? 'AI-PIP Pipeline Audit (full)';
|
|
@@ -434,7 +430,7 @@ export function formatPipelineAuditFull(csl, isl, signal, aalReason, removalPlan
|
|
|
434
430
|
sep,
|
|
435
431
|
formatISLSignalForAudit(signal),
|
|
436
432
|
sep,
|
|
437
|
-
formatAALForAudit(aalReason,
|
|
433
|
+
formatAALForAudit(aalReason, remediationPlan ?? undefined)
|
|
438
434
|
];
|
|
439
435
|
if (includeCpe && cpe) {
|
|
440
436
|
parts.push(sep, formatCPEForAudit(cpe));
|