agentic-qe 3.7.6 → 3.7.8
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/.claude/helpers/statusline-v3.cjs +13 -1
- package/.claude/skills/skills-manifest.json +1 -1
- package/CHANGELOG.md +39 -0
- package/README.md +36 -0
- package/dist/cli/bundle.js +2052 -183
- package/dist/coordination/complexity-composition/index.d.ts +2 -0
- package/dist/coordination/complexity-composition/index.d.ts.map +1 -0
- package/dist/coordination/complexity-composition/index.js +2 -0
- package/dist/coordination/complexity-composition/index.js.map +1 -0
- package/dist/coordination/complexity-composition/team-composer.d.ts +72 -0
- package/dist/coordination/complexity-composition/team-composer.d.ts.map +1 -0
- package/dist/coordination/complexity-composition/team-composer.js +221 -0
- package/dist/coordination/complexity-composition/team-composer.js.map +1 -0
- package/dist/coordination/consensus/consensus-engine.d.ts +10 -1
- package/dist/coordination/consensus/consensus-engine.d.ts.map +1 -1
- package/dist/coordination/consensus/consensus-engine.js +31 -1
- package/dist/coordination/consensus/consensus-engine.js.map +1 -1
- package/dist/coordination/consensus/index.d.ts +1 -0
- package/dist/coordination/consensus/index.d.ts.map +1 -1
- package/dist/coordination/consensus/index.js +4 -0
- package/dist/coordination/consensus/index.js.map +1 -1
- package/dist/coordination/consensus/interfaces.d.ts +5 -0
- package/dist/coordination/consensus/interfaces.d.ts.map +1 -1
- package/dist/coordination/consensus/interfaces.js +1 -0
- package/dist/coordination/consensus/interfaces.js.map +1 -1
- package/dist/coordination/consensus/sycophancy-scorer.d.ts +62 -0
- package/dist/coordination/consensus/sycophancy-scorer.d.ts.map +1 -0
- package/dist/coordination/consensus/sycophancy-scorer.js +200 -0
- package/dist/coordination/consensus/sycophancy-scorer.js.map +1 -0
- package/dist/coordination/fleet-tiers/tier-selector.d.ts +20 -0
- package/dist/coordination/fleet-tiers/tier-selector.d.ts.map +1 -1
- package/dist/coordination/fleet-tiers/tier-selector.js +31 -0
- package/dist/coordination/fleet-tiers/tier-selector.js.map +1 -1
- package/dist/coordination/fleet-tiers/types.d.ts +2 -0
- package/dist/coordination/fleet-tiers/types.d.ts.map +1 -1
- package/dist/domains/test-execution/services/e2e/adaptive-locator-service.d.ts +71 -0
- package/dist/domains/test-execution/services/e2e/adaptive-locator-service.d.ts.map +1 -0
- package/dist/domains/test-execution/services/e2e/adaptive-locator-service.js +456 -0
- package/dist/domains/test-execution/services/e2e/adaptive-locator-service.js.map +1 -0
- package/dist/domains/test-execution/services/e2e/adaptive-locator-types.d.ts +81 -0
- package/dist/domains/test-execution/services/e2e/adaptive-locator-types.d.ts.map +1 -0
- package/dist/domains/test-execution/services/e2e/adaptive-locator-types.js +20 -0
- package/dist/domains/test-execution/services/e2e/adaptive-locator-types.js.map +1 -0
- package/dist/domains/test-execution/services/e2e/browser-orchestrator.d.ts +19 -0
- package/dist/domains/test-execution/services/e2e/browser-orchestrator.d.ts.map +1 -1
- package/dist/domains/test-execution/services/e2e/browser-orchestrator.js +82 -0
- package/dist/domains/test-execution/services/e2e/browser-orchestrator.js.map +1 -1
- package/dist/domains/test-execution/services/e2e/index.d.ts +2 -0
- package/dist/domains/test-execution/services/e2e/index.d.ts.map +1 -1
- package/dist/domains/test-execution/services/e2e/index.js +5 -0
- package/dist/domains/test-execution/services/e2e/index.js.map +1 -1
- package/dist/domains/test-execution/services/e2e/step-executors.d.ts +6 -0
- package/dist/domains/test-execution/services/e2e/step-executors.d.ts.map +1 -1
- package/dist/domains/test-execution/services/e2e/step-executors.js +17 -2
- package/dist/domains/test-execution/services/e2e/step-executors.js.map +1 -1
- package/dist/domains/test-execution/services/e2e/types.d.ts +18 -1
- package/dist/domains/test-execution/services/e2e/types.d.ts.map +1 -1
- package/dist/domains/test-execution/services/e2e/types.js.map +1 -1
- package/dist/domains/test-generation/blind-review/blind-review-orchestrator.d.ts +65 -0
- package/dist/domains/test-generation/blind-review/blind-review-orchestrator.d.ts.map +1 -0
- package/dist/domains/test-generation/blind-review/blind-review-orchestrator.js +189 -0
- package/dist/domains/test-generation/blind-review/blind-review-orchestrator.js.map +1 -0
- package/dist/domains/test-generation/blind-review/index.d.ts +2 -0
- package/dist/domains/test-generation/blind-review/index.d.ts.map +1 -0
- package/dist/domains/test-generation/blind-review/index.js +2 -0
- package/dist/domains/test-generation/blind-review/index.js.map +1 -0
- package/dist/domains/test-generation/gates/index.d.ts +2 -0
- package/dist/domains/test-generation/gates/index.d.ts.map +1 -0
- package/dist/domains/test-generation/gates/index.js +2 -0
- package/dist/domains/test-generation/gates/index.js.map +1 -0
- package/dist/domains/test-generation/gates/test-quality-gate.d.ts +85 -0
- package/dist/domains/test-generation/gates/test-quality-gate.d.ts.map +1 -0
- package/dist/domains/test-generation/gates/test-quality-gate.js +320 -0
- package/dist/domains/test-generation/gates/test-quality-gate.js.map +1 -0
- package/dist/domains/test-generation/interfaces.d.ts +3 -0
- package/dist/domains/test-generation/interfaces.d.ts.map +1 -1
- package/dist/domains/test-generation/pattern-injection/edge-case-injector.d.ts +68 -0
- package/dist/domains/test-generation/pattern-injection/edge-case-injector.d.ts.map +1 -0
- package/dist/domains/test-generation/pattern-injection/edge-case-injector.js +225 -0
- package/dist/domains/test-generation/pattern-injection/edge-case-injector.js.map +1 -0
- package/dist/domains/test-generation/pattern-injection/index.d.ts +2 -0
- package/dist/domains/test-generation/pattern-injection/index.d.ts.map +1 -0
- package/dist/domains/test-generation/pattern-injection/index.js +2 -0
- package/dist/domains/test-generation/pattern-injection/index.js.map +1 -0
- package/dist/domains/test-generation/services/test-generator.d.ts +6 -0
- package/dist/domains/test-generation/services/test-generator.d.ts.map +1 -1
- package/dist/domains/test-generation/services/test-generator.js +29 -0
- package/dist/domains/test-generation/services/test-generator.js.map +1 -1
- package/dist/integrations/agentic-flow/reasoning-bank/experience-replay.d.ts +8 -2
- package/dist/integrations/agentic-flow/reasoning-bank/experience-replay.d.ts.map +1 -1
- package/dist/integrations/agentic-flow/reasoning-bank/experience-replay.js +62 -38
- package/dist/integrations/agentic-flow/reasoning-bank/experience-replay.js.map +1 -1
- package/dist/integrations/browser/client-factory.d.ts +6 -1
- package/dist/integrations/browser/client-factory.d.ts.map +1 -1
- package/dist/integrations/browser/client-factory.js +37 -2
- package/dist/integrations/browser/client-factory.js.map +1 -1
- package/dist/integrations/browser/index.d.ts +5 -1
- package/dist/integrations/browser/index.d.ts.map +1 -1
- package/dist/integrations/browser/index.js +8 -1
- package/dist/integrations/browser/index.js.map +1 -1
- package/dist/integrations/browser/page-pool-types.d.ts +70 -0
- package/dist/integrations/browser/page-pool-types.d.ts.map +1 -0
- package/dist/integrations/browser/page-pool-types.js +19 -0
- package/dist/integrations/browser/page-pool-types.js.map +1 -0
- package/dist/integrations/browser/page-pool.d.ts +79 -0
- package/dist/integrations/browser/page-pool.d.ts.map +1 -0
- package/dist/integrations/browser/page-pool.js +288 -0
- package/dist/integrations/browser/page-pool.js.map +1 -0
- package/dist/integrations/browser/resource-blocking.d.ts +47 -0
- package/dist/integrations/browser/resource-blocking.d.ts.map +1 -0
- package/dist/integrations/browser/resource-blocking.js +195 -0
- package/dist/integrations/browser/resource-blocking.js.map +1 -0
- package/dist/integrations/browser/stealth/index.d.ts +8 -0
- package/dist/integrations/browser/stealth/index.d.ts.map +1 -0
- package/dist/integrations/browser/stealth/index.js +7 -0
- package/dist/integrations/browser/stealth/index.js.map +1 -0
- package/dist/integrations/browser/stealth/stealth-client.d.ts +51 -0
- package/dist/integrations/browser/stealth/stealth-client.d.ts.map +1 -0
- package/dist/integrations/browser/stealth/stealth-client.js +359 -0
- package/dist/integrations/browser/stealth/stealth-client.js.map +1 -0
- package/dist/integrations/browser/stealth/stealth-types.d.ts +35 -0
- package/dist/integrations/browser/stealth/stealth-types.d.ts.map +1 -0
- package/dist/integrations/browser/stealth/stealth-types.js +17 -0
- package/dist/integrations/browser/stealth/stealth-types.js.map +1 -0
- package/dist/integrations/browser/types.d.ts +13 -10
- package/dist/integrations/browser/types.d.ts.map +1 -1
- package/dist/integrations/browser/types.js.map +1 -1
- package/dist/learning/experience-capture.d.ts +12 -2
- package/dist/learning/experience-capture.d.ts.map +1 -1
- package/dist/learning/experience-capture.js +28 -35
- package/dist/learning/experience-capture.js.map +1 -1
- package/dist/learning/experience-consolidation.d.ts +74 -0
- package/dist/learning/experience-consolidation.d.ts.map +1 -0
- package/dist/learning/experience-consolidation.js +403 -0
- package/dist/learning/experience-consolidation.js.map +1 -0
- package/dist/mcp/bundle.js +3050 -341
- package/dist/routing/calibration/ema-calibrator.d.ts +93 -0
- package/dist/routing/calibration/ema-calibrator.d.ts.map +1 -0
- package/dist/routing/calibration/ema-calibrator.js +140 -0
- package/dist/routing/calibration/ema-calibrator.js.map +1 -0
- package/dist/routing/calibration/index.d.ts +2 -0
- package/dist/routing/calibration/index.d.ts.map +1 -0
- package/dist/routing/calibration/index.js +2 -0
- package/dist/routing/calibration/index.js.map +1 -0
- package/dist/routing/escalation/auto-escalation-tracker.d.ts +62 -0
- package/dist/routing/escalation/auto-escalation-tracker.d.ts.map +1 -0
- package/dist/routing/escalation/auto-escalation-tracker.js +116 -0
- package/dist/routing/escalation/auto-escalation-tracker.js.map +1 -0
- package/dist/routing/escalation/index.d.ts +2 -0
- package/dist/routing/escalation/index.d.ts.map +1 -0
- package/dist/routing/escalation/index.js +2 -0
- package/dist/routing/escalation/index.js.map +1 -0
- package/dist/routing/index.d.ts +4 -0
- package/dist/routing/index.d.ts.map +1 -1
- package/dist/routing/index.js +4 -0
- package/dist/routing/index.js.map +1 -1
- package/dist/routing/routing-config.d.ts +4 -0
- package/dist/routing/routing-config.d.ts.map +1 -1
- package/dist/routing/routing-config.js +2 -0
- package/dist/routing/routing-config.js.map +1 -1
- package/dist/routing/routing-feedback.d.ts +35 -2
- package/dist/routing/routing-feedback.d.ts.map +1 -1
- package/dist/routing/routing-feedback.js +97 -3
- package/dist/routing/routing-feedback.js.map +1 -1
- package/dist/routing/types.d.ts +2 -0
- package/dist/routing/types.d.ts.map +1 -1
- package/dist/routing/types.js.map +1 -1
- package/dist/workers/workers/learning-consolidation.d.ts.map +1 -1
- package/dist/workers/workers/learning-consolidation.js +32 -0
- package/dist/workers/workers/learning-consolidation.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/coordination/consensus/interfaces.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/coordination/consensus/interfaces.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAwqBH,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAA0B;IAC7D,gBAAgB,EAAE,CAAC,GAAG,CAAC;IACvB,SAAS,EAAE,CAAC;IACZ,SAAS,EAAE,CAAC;IACZ,mBAAmB,EAAE,KAAK;IAC1B,cAAc,EAAE,CAAC;IACjB,gBAAgB,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC;IACtC,WAAW,EAAE,IAAI;IACjB,UAAU,EAAE,OAAO,EAAE,SAAS;IAC9B,kBAAkB,EAAE,IAAI;IACxB,sBAAsB,EAAE,IAAI,EAAE,gCAAgC;IAC9D,oBAAoB,EAAE,GAAG;IACzB,qBAAqB,EAAE,IAAI;CAC5B,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sycophancy Scorer - Detects rubber-stamping in multi-agent consensus
|
|
3
|
+
* Inspired by loki-mode anti-sycophancy detection
|
|
4
|
+
*
|
|
5
|
+
* Uses 4 weighted signals to detect when agents agree too uniformly:
|
|
6
|
+
* 1. Verdict Unanimity (30%) - all votes same verdict
|
|
7
|
+
* 2. Reasoning Similarity (30%) - Jaccard on tokenized justifications
|
|
8
|
+
* 3. Confidence Uniformity (20%) - std dev of confidence scores
|
|
9
|
+
* 4. Issue Count Consistency (20%) - variation in reported suggestion counts
|
|
10
|
+
*
|
|
11
|
+
* @see docs/plans/loki-mode-integration.md
|
|
12
|
+
*/
|
|
13
|
+
import type { ModelVote } from './interfaces.js';
|
|
14
|
+
/**
|
|
15
|
+
* A single signal contributing to sycophancy detection
|
|
16
|
+
*/
|
|
17
|
+
export interface SycophancySignal {
|
|
18
|
+
/** Name of the signal */
|
|
19
|
+
readonly name: string;
|
|
20
|
+
/** Weight of this signal in the composite score (0-1) */
|
|
21
|
+
readonly weight: number;
|
|
22
|
+
/** Raw score for this signal (0-1, higher = more sycophantic) */
|
|
23
|
+
readonly score: number;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Classification of sycophancy severity
|
|
27
|
+
*/
|
|
28
|
+
export type SycophancyLevel = 'independent' | 'mild' | 'moderate' | 'severe';
|
|
29
|
+
/**
|
|
30
|
+
* Result of sycophancy evaluation
|
|
31
|
+
*/
|
|
32
|
+
export interface SycophancyResult {
|
|
33
|
+
/** Classification level */
|
|
34
|
+
readonly level: SycophancyLevel;
|
|
35
|
+
/** Composite score (0-1, higher = more sycophantic) */
|
|
36
|
+
readonly compositeScore: number;
|
|
37
|
+
/** Individual signal breakdowns */
|
|
38
|
+
readonly signals: readonly SycophancySignal[];
|
|
39
|
+
/** Human-readable recommendation */
|
|
40
|
+
readonly recommendation: string;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Evaluates multi-agent consensus votes for signs of sycophantic agreement
|
|
44
|
+
* (rubber-stamping). Uses 4 weighted signals to produce a composite score
|
|
45
|
+
* and classification.
|
|
46
|
+
*/
|
|
47
|
+
export declare class SycophancyScorer {
|
|
48
|
+
private readonly signalWeights;
|
|
49
|
+
constructor();
|
|
50
|
+
/**
|
|
51
|
+
* Evaluate a set of model votes for sycophancy signals
|
|
52
|
+
*
|
|
53
|
+
* @param votes - Array of model votes to evaluate
|
|
54
|
+
* @returns SycophancyResult with level, composite score, signals, and recommendation
|
|
55
|
+
*/
|
|
56
|
+
evaluate(votes: ModelVote[]): SycophancyResult;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Create a new SycophancyScorer instance
|
|
60
|
+
*/
|
|
61
|
+
export declare function createSycophancyScorer(): SycophancyScorer;
|
|
62
|
+
//# sourceMappingURL=sycophancy-scorer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sycophancy-scorer.d.ts","sourceRoot":"","sources":["../../../src/coordination/consensus/sycophancy-scorer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAMjD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,yBAAyB;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,yDAAyD;IACzD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,iEAAiE;IACjE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,aAAa,GAAG,MAAM,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE7E;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2BAA2B;IAC3B,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,uDAAuD;IACvD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,mCAAmC;IACnC,QAAQ,CAAC,OAAO,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAC9C,oCAAoC;IACpC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC;AAyID;;;;GAIG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA8F;;IAW5H;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,gBAAgB;CAsC/C;AAMD;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,gBAAgB,CAEzD"}
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sycophancy Scorer - Detects rubber-stamping in multi-agent consensus
|
|
3
|
+
* Inspired by loki-mode anti-sycophancy detection
|
|
4
|
+
*
|
|
5
|
+
* Uses 4 weighted signals to detect when agents agree too uniformly:
|
|
6
|
+
* 1. Verdict Unanimity (30%) - all votes same verdict
|
|
7
|
+
* 2. Reasoning Similarity (30%) - Jaccard on tokenized justifications
|
|
8
|
+
* 3. Confidence Uniformity (20%) - std dev of confidence scores
|
|
9
|
+
* 4. Issue Count Consistency (20%) - variation in reported suggestion counts
|
|
10
|
+
*
|
|
11
|
+
* @see docs/plans/loki-mode-integration.md
|
|
12
|
+
*/
|
|
13
|
+
// ============================================================================
|
|
14
|
+
// Utility Functions
|
|
15
|
+
// ============================================================================
|
|
16
|
+
/**
|
|
17
|
+
* Calculate Jaccard similarity between two strings based on word tokens
|
|
18
|
+
*/
|
|
19
|
+
function jaccardSimilarity(a, b) {
|
|
20
|
+
const setA = new Set(a.toLowerCase().split(/\s+/).filter(w => w.length > 2));
|
|
21
|
+
const setB = new Set(b.toLowerCase().split(/\s+/).filter(w => w.length > 2));
|
|
22
|
+
const intersection = new Set([...setA].filter(x => setB.has(x)));
|
|
23
|
+
const union = new Set([...setA, ...setB]);
|
|
24
|
+
return union.size === 0 ? 0 : intersection.size / union.size;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Calculate standard deviation of a number array
|
|
28
|
+
*/
|
|
29
|
+
function standardDeviation(values) {
|
|
30
|
+
if (values.length < 2)
|
|
31
|
+
return 0;
|
|
32
|
+
const mean = values.reduce((sum, v) => sum + v, 0) / values.length;
|
|
33
|
+
const squaredDiffs = values.map(v => (v - mean) ** 2);
|
|
34
|
+
const variance = squaredDiffs.reduce((sum, v) => sum + v, 0) / values.length;
|
|
35
|
+
return Math.sqrt(variance);
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Classify composite score into a sycophancy level
|
|
39
|
+
*/
|
|
40
|
+
function classifyLevel(score) {
|
|
41
|
+
if (score >= 0.7)
|
|
42
|
+
return 'severe';
|
|
43
|
+
if (score >= 0.5)
|
|
44
|
+
return 'moderate';
|
|
45
|
+
if (score >= 0.3)
|
|
46
|
+
return 'mild';
|
|
47
|
+
return 'independent';
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Generate a recommendation string based on the sycophancy level
|
|
51
|
+
*/
|
|
52
|
+
function generateRecommendation(level) {
|
|
53
|
+
switch (level) {
|
|
54
|
+
case 'independent':
|
|
55
|
+
return 'Votes appear independent. No action needed.';
|
|
56
|
+
case 'mild':
|
|
57
|
+
return 'Slight agreement bias detected. Consider monitoring for patterns.';
|
|
58
|
+
case 'moderate':
|
|
59
|
+
return 'Moderate rubber-stamping detected. Consider adding diverse model providers or requesting re-evaluation with varied prompts.';
|
|
60
|
+
case 'severe':
|
|
61
|
+
return 'Severe rubber-stamping detected. Recommend human review and adding independent model providers with different architectures.';
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
// ============================================================================
|
|
65
|
+
// Signal Calculators
|
|
66
|
+
// ============================================================================
|
|
67
|
+
/**
|
|
68
|
+
* Signal 1: Verdict Unanimity (weight: 0.30)
|
|
69
|
+
* Score is 1.0 if all votes agree, 0.0 if evenly split.
|
|
70
|
+
*/
|
|
71
|
+
function calculateVerdictUnanimity(votes) {
|
|
72
|
+
if (votes.length < 2)
|
|
73
|
+
return 0;
|
|
74
|
+
const agreesCount = votes.filter(v => v.agrees).length;
|
|
75
|
+
const ratio = agreesCount / votes.length;
|
|
76
|
+
// Distance from 0.5 (perfect split), normalized to 0-1
|
|
77
|
+
// ratio=1.0 or 0.0 -> score=1.0, ratio=0.5 -> score=0.0
|
|
78
|
+
return Math.abs(ratio - 0.5) * 2;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Signal 2: Reasoning Similarity (weight: 0.30)
|
|
82
|
+
* Average pairwise Jaccard similarity across all vote reasoning strings.
|
|
83
|
+
*/
|
|
84
|
+
function calculateReasoningSimilarity(votes) {
|
|
85
|
+
if (votes.length < 2)
|
|
86
|
+
return 0;
|
|
87
|
+
const reasonings = votes.map(v => v.reasoning).filter(r => r.length > 0);
|
|
88
|
+
if (reasonings.length < 2)
|
|
89
|
+
return 0;
|
|
90
|
+
let totalSimilarity = 0;
|
|
91
|
+
let pairCount = 0;
|
|
92
|
+
for (let i = 0; i < reasonings.length; i++) {
|
|
93
|
+
for (let j = i + 1; j < reasonings.length; j++) {
|
|
94
|
+
totalSimilarity += jaccardSimilarity(reasonings[i], reasonings[j]);
|
|
95
|
+
pairCount++;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
return pairCount === 0 ? 0 : totalSimilarity / pairCount;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Signal 3: Confidence Uniformity (weight: 0.20)
|
|
102
|
+
* Low standard deviation in confidence scores indicates potential groupthink.
|
|
103
|
+
* Score is inverted: low std dev -> high score.
|
|
104
|
+
*/
|
|
105
|
+
function calculateConfidenceUniformity(votes) {
|
|
106
|
+
if (votes.length < 2)
|
|
107
|
+
return 0;
|
|
108
|
+
const confidences = votes.map(v => v.confidence);
|
|
109
|
+
const stdDev = standardDeviation(confidences);
|
|
110
|
+
// Max possible std dev for values in [0,1] is 0.5 (half at 0, half at 1)
|
|
111
|
+
// Normalize: 0 std dev -> 1.0 score, 0.5 std dev -> 0.0 score
|
|
112
|
+
return Math.max(0, 1 - stdDev * 2);
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Signal 4: Issue Count Consistency (weight: 0.20)
|
|
116
|
+
* Low variation in the number of suggestions reported by each model.
|
|
117
|
+
* Score is inverted: low variation -> high score.
|
|
118
|
+
*/
|
|
119
|
+
function calculateIssueCountConsistency(votes) {
|
|
120
|
+
if (votes.length < 2)
|
|
121
|
+
return 0;
|
|
122
|
+
const counts = votes.map(v => (v.suggestions?.length ?? 0));
|
|
123
|
+
// If all counts are 0, this is mildly suspicious but not conclusive
|
|
124
|
+
if (counts.every(c => c === 0))
|
|
125
|
+
return 0.5;
|
|
126
|
+
const stdDev = standardDeviation(counts);
|
|
127
|
+
const mean = counts.reduce((sum, c) => sum + c, 0) / counts.length;
|
|
128
|
+
// Normalize using coefficient of variation, capped at 1
|
|
129
|
+
if (mean === 0)
|
|
130
|
+
return 0.5;
|
|
131
|
+
const cv = stdDev / mean;
|
|
132
|
+
// cv=0 -> score=1.0, cv>=1 -> score=0.0
|
|
133
|
+
return Math.max(0, 1 - cv);
|
|
134
|
+
}
|
|
135
|
+
// ============================================================================
|
|
136
|
+
// SycophancyScorer Class
|
|
137
|
+
// ============================================================================
|
|
138
|
+
/**
|
|
139
|
+
* Evaluates multi-agent consensus votes for signs of sycophantic agreement
|
|
140
|
+
* (rubber-stamping). Uses 4 weighted signals to produce a composite score
|
|
141
|
+
* and classification.
|
|
142
|
+
*/
|
|
143
|
+
export class SycophancyScorer {
|
|
144
|
+
signalWeights;
|
|
145
|
+
constructor() {
|
|
146
|
+
this.signalWeights = [
|
|
147
|
+
{ name: 'verdict-unanimity', weight: 0.30, calculator: calculateVerdictUnanimity },
|
|
148
|
+
{ name: 'reasoning-similarity', weight: 0.30, calculator: calculateReasoningSimilarity },
|
|
149
|
+
{ name: 'confidence-uniformity', weight: 0.20, calculator: calculateConfidenceUniformity },
|
|
150
|
+
{ name: 'issue-count-consistency', weight: 0.20, calculator: calculateIssueCountConsistency },
|
|
151
|
+
];
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Evaluate a set of model votes for sycophancy signals
|
|
155
|
+
*
|
|
156
|
+
* @param votes - Array of model votes to evaluate
|
|
157
|
+
* @returns SycophancyResult with level, composite score, signals, and recommendation
|
|
158
|
+
*/
|
|
159
|
+
evaluate(votes) {
|
|
160
|
+
// Edge case: 0 or 1 votes cannot exhibit sycophancy
|
|
161
|
+
if (votes.length < 2) {
|
|
162
|
+
return {
|
|
163
|
+
level: 'independent',
|
|
164
|
+
compositeScore: 0,
|
|
165
|
+
signals: this.signalWeights.map(sw => ({
|
|
166
|
+
name: sw.name,
|
|
167
|
+
weight: sw.weight,
|
|
168
|
+
score: 0,
|
|
169
|
+
})),
|
|
170
|
+
recommendation: 'Insufficient votes for sycophancy detection.',
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
// Calculate each signal
|
|
174
|
+
const signals = this.signalWeights.map(sw => ({
|
|
175
|
+
name: sw.name,
|
|
176
|
+
weight: sw.weight,
|
|
177
|
+
score: sw.calculator(votes),
|
|
178
|
+
}));
|
|
179
|
+
// Compute weighted composite score
|
|
180
|
+
const compositeScore = signals.reduce((sum, signal) => sum + signal.weight * signal.score, 0);
|
|
181
|
+
const level = classifyLevel(compositeScore);
|
|
182
|
+
const recommendation = generateRecommendation(level);
|
|
183
|
+
return {
|
|
184
|
+
level,
|
|
185
|
+
compositeScore,
|
|
186
|
+
signals,
|
|
187
|
+
recommendation,
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
// ============================================================================
|
|
192
|
+
// Factory Function
|
|
193
|
+
// ============================================================================
|
|
194
|
+
/**
|
|
195
|
+
* Create a new SycophancyScorer instance
|
|
196
|
+
*/
|
|
197
|
+
export function createSycophancyScorer() {
|
|
198
|
+
return new SycophancyScorer();
|
|
199
|
+
}
|
|
200
|
+
//# sourceMappingURL=sycophancy-scorer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sycophancy-scorer.js","sourceRoot":"","sources":["../../../src/coordination/consensus/sycophancy-scorer.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* and allocates agents across domains accordingly.
|
|
8
8
|
*/
|
|
9
9
|
import type { FleetTier, TierConfig, TierSelectionContext, TierSelectionResult, AgentAllocation, TierSelectionStats } from './types';
|
|
10
|
+
import { TeamComposer, type TeamComposition, type ComplexityInput } from '../complexity-composition/index.js';
|
|
10
11
|
/**
|
|
11
12
|
* Selects the appropriate fleet activation tier based on context and
|
|
12
13
|
* allocates agents across affected domains.
|
|
@@ -89,6 +90,25 @@ export declare class TierSelector {
|
|
|
89
90
|
* @returns Aggregated tier selection statistics
|
|
90
91
|
*/
|
|
91
92
|
getStats(): TierSelectionStats;
|
|
93
|
+
/** Optional team composer for complexity-driven agent composition */
|
|
94
|
+
private _teamComposer?;
|
|
95
|
+
/**
|
|
96
|
+
* Set the team composer for complexity-driven composition.
|
|
97
|
+
*/
|
|
98
|
+
setTeamComposer(composer: TeamComposer): void;
|
|
99
|
+
/**
|
|
100
|
+
* Select tier and optionally enrich the result with a complexity-driven
|
|
101
|
+
* team composition. This does NOT change existing selectTier() behavior --
|
|
102
|
+
* it calls selectTier() internally and then appends composition data.
|
|
103
|
+
*
|
|
104
|
+
* @param context - The tier selection context
|
|
105
|
+
* @param complexityMetrics - Optional complexity metrics for composition
|
|
106
|
+
* @param sourceCode - Optional source code for extended dimension analysis
|
|
107
|
+
* @returns Tier selection result with optional team composition
|
|
108
|
+
*/
|
|
109
|
+
selectTierWithComposition(context: TierSelectionContext, complexityMetrics?: ComplexityInput, sourceCode?: string): TierSelectionResult & {
|
|
110
|
+
composition?: TeamComposition;
|
|
111
|
+
};
|
|
92
112
|
/**
|
|
93
113
|
* Build a complete TierSelectionResult, record it in history, and return it.
|
|
94
114
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tier-selector.d.ts","sourceRoot":"","sources":["../../../src/coordination/fleet-tiers/tier-selector.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,SAAS,EACT,UAAU,EACV,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EAEf,kBAAkB,EACnB,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"tier-selector.d.ts","sourceRoot":"","sources":["../../../src/coordination/fleet-tiers/tier-selector.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,SAAS,EACT,UAAU,EACV,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EAEf,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,YAAY,EAAE,KAAK,eAAe,EAAE,KAAK,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAyB9G;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0C;IAClE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6B;IACrD,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,iBAAiB,CAAK;IAE9B;;;;;OAKG;gBACS,aAAa,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAWlE;;;;;;;;;;;;;OAaG;IACH,UAAU,CAAC,OAAO,EAAE,oBAAoB,GAAG,mBAAmB;IAiE9D;;;;;;;;;;;;OAYG;IACH,cAAc,CACZ,IAAI,EAAE,UAAU,EAChB,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,GAClC,eAAe,EAAE;IAqBpB;;;;;;;OAOG;IACH,QAAQ,CAAC,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,mBAAmB;IAiBrE;;;;;;OAMG;IACH,UAAU,CAAC,WAAW,EAAE,SAAS,GAAG,mBAAmB;IAiBvD;;;;OAIG;IACH,QAAQ,IAAI,kBAAkB;IAyB9B,qEAAqE;IACrE,OAAO,CAAC,aAAa,CAAC,CAAe;IAErC;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAI7C;;;;;;;;;OASG;IACH,yBAAyB,CACvB,OAAO,EAAE,oBAAoB,EAC7B,iBAAiB,CAAC,EAAE,eAAe,EACnC,UAAU,CAAC,EAAE,MAAM,GAClB,mBAAmB,GAAG;QAAE,WAAW,CAAC,EAAE,eAAe,CAAA;KAAE;IAiB1D;;OAEG;IACH,OAAO,CAAC,WAAW;IAiCnB;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAsB5B;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IA4B5B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAoD3B;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAQzB;AAMD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,kBAAkB,CAChC,aAAa,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,GACrD,YAAY,CAEd"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* and allocates agents across domains accordingly.
|
|
8
8
|
*/
|
|
9
9
|
import { FLEET_TIER_ORDER } from './types';
|
|
10
|
+
import { TeamComposer } from '../complexity-composition/index.js';
|
|
10
11
|
import { DEFAULT_TIER_CONFIGS, DEFAULT_DOMAIN_AGENT_MAP, ALL_USER_FACING_DOMAINS, CORE_PRIORITY_DOMAINS, } from './tier-config';
|
|
11
12
|
// ============================================================================
|
|
12
13
|
// Constants
|
|
@@ -220,6 +221,36 @@ export class TierSelector {
|
|
|
220
221
|
};
|
|
221
222
|
}
|
|
222
223
|
// --------------------------------------------------------------------------
|
|
224
|
+
// Complexity-Composition Integration
|
|
225
|
+
// --------------------------------------------------------------------------
|
|
226
|
+
/** Optional team composer for complexity-driven agent composition */
|
|
227
|
+
_teamComposer;
|
|
228
|
+
/**
|
|
229
|
+
* Set the team composer for complexity-driven composition.
|
|
230
|
+
*/
|
|
231
|
+
setTeamComposer(composer) {
|
|
232
|
+
this._teamComposer = composer;
|
|
233
|
+
}
|
|
234
|
+
/**
|
|
235
|
+
* Select tier and optionally enrich the result with a complexity-driven
|
|
236
|
+
* team composition. This does NOT change existing selectTier() behavior --
|
|
237
|
+
* it calls selectTier() internally and then appends composition data.
|
|
238
|
+
*
|
|
239
|
+
* @param context - The tier selection context
|
|
240
|
+
* @param complexityMetrics - Optional complexity metrics for composition
|
|
241
|
+
* @param sourceCode - Optional source code for extended dimension analysis
|
|
242
|
+
* @returns Tier selection result with optional team composition
|
|
243
|
+
*/
|
|
244
|
+
selectTierWithComposition(context, complexityMetrics, sourceCode) {
|
|
245
|
+
const result = this.selectTier(context);
|
|
246
|
+
if (!complexityMetrics || !sourceCode) {
|
|
247
|
+
return { ...result, composition: undefined };
|
|
248
|
+
}
|
|
249
|
+
const composer = this._teamComposer ?? new TeamComposer();
|
|
250
|
+
const composition = composer.compose(complexityMetrics, result.selectedTier, sourceCode);
|
|
251
|
+
return { ...result, composition };
|
|
252
|
+
}
|
|
253
|
+
// --------------------------------------------------------------------------
|
|
223
254
|
// Private Helpers
|
|
224
255
|
// --------------------------------------------------------------------------
|
|
225
256
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tier-selector.js","sourceRoot":"","sources":["../../../src/coordination/fleet-tiers/tier-selector.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tier-selector.js","sourceRoot":"","sources":["../../../src/coordination/fleet-tiers/tier-selector.ts"],"names":[],"mappings":"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"}
|
|
@@ -61,6 +61,8 @@ export interface TierConfig {
|
|
|
61
61
|
readonly description: string;
|
|
62
62
|
/** Events that may activate this tier */
|
|
63
63
|
readonly triggers: readonly TierTrigger[];
|
|
64
|
+
/** Enable complexity-driven agent team composition (default: true) */
|
|
65
|
+
readonly enableComplexityComposition?: boolean;
|
|
64
66
|
}
|
|
65
67
|
/**
|
|
66
68
|
* Context provided to the tier selector to determine which tier should activate.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/coordination/fleet-tiers/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH;;;;;;;GAOG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEjE;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,SAAS,SAAS,EAKvC,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,UAAU,GAAG,MAAM,GAAG,WAAW,CAAC;AAM1E;;GAEG;AACH,MAAM,MAAM,eAAe,GACvB,QAAQ,GACR,IAAI,GACJ,SAAS,GACT,UAAU,GACV,QAAQ,GACR,UAAU,CAAC;AAEf;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,4CAA4C;IAC5C,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAE/B,4DAA4D;IAC5D,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/C;AAMD;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,8CAA8C;IAC9C,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAEzB,kEAAkE;IAClE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B,yEAAyE;IACzE,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;IAEpC;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAEpC,4CAA4C;IAC5C,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAEtC,uDAAuD;IACvD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,yCAAyC;IACzC,QAAQ,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/coordination/fleet-tiers/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Adaptive Locator Service
|
|
3
|
+
*
|
|
4
|
+
* Inspired by Scrapling's similarity-based element matching.
|
|
5
|
+
* When a primary selector fails, falls back through text, ARIA, and
|
|
6
|
+
* fingerprint similarity matching to find the intended element.
|
|
7
|
+
*
|
|
8
|
+
* @module test-execution/services/e2e/adaptive-locator-service
|
|
9
|
+
*/
|
|
10
|
+
import type { IBrowserClient } from '@integrations/browser';
|
|
11
|
+
import type { ElementFingerprint, AdaptiveLocatorConfig, LocatorResolutionResult } from './adaptive-locator-types';
|
|
12
|
+
/**
|
|
13
|
+
* Compute weighted similarity between a stored fingerprint and a candidate element
|
|
14
|
+
*/
|
|
15
|
+
export declare function computeSimilarity(stored: ElementFingerprint, candidate: Omit<ElementFingerprint, 'matchCount' | 'lastMatchedAt'>): number;
|
|
16
|
+
/**
|
|
17
|
+
* Simple in-memory fingerprint store keyed by `pageUrl::selector`
|
|
18
|
+
*/
|
|
19
|
+
export declare class FingerprintStore {
|
|
20
|
+
private readonly store;
|
|
21
|
+
private readonly maxPerPage;
|
|
22
|
+
constructor(maxPerPage?: number);
|
|
23
|
+
private key;
|
|
24
|
+
get(pageUrl: string, selector: string): ElementFingerprint | undefined;
|
|
25
|
+
set(pageUrl: string, selector: string, fp: ElementFingerprint): void;
|
|
26
|
+
size(): number;
|
|
27
|
+
clear(): void;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Adaptive Locator Service
|
|
31
|
+
*
|
|
32
|
+
* Provides fallback element resolution when primary selectors fail.
|
|
33
|
+
* Maintains a fingerprint database of previously-matched elements
|
|
34
|
+
* and uses weighted similarity to find the best match.
|
|
35
|
+
*/
|
|
36
|
+
export declare class AdaptiveLocatorService {
|
|
37
|
+
private readonly config;
|
|
38
|
+
private readonly fingerprintStore;
|
|
39
|
+
constructor(config?: Partial<AdaptiveLocatorConfig>);
|
|
40
|
+
/**
|
|
41
|
+
* Capture and store a fingerprint for a successfully-interacted element
|
|
42
|
+
*/
|
|
43
|
+
captureFingerprint(selector: string, client: IBrowserClient, pageUrl: string): Promise<ElementFingerprint | null>;
|
|
44
|
+
/**
|
|
45
|
+
* Resolve an element target with adaptive fallback chain.
|
|
46
|
+
*
|
|
47
|
+
* 1. Try primary selector
|
|
48
|
+
* 2. Text-based match
|
|
49
|
+
* 3. ARIA-based match
|
|
50
|
+
* 4. Fingerprint similarity matching
|
|
51
|
+
*/
|
|
52
|
+
resolveWithFallback(selector: string, client: IBrowserClient, pageUrl: string): Promise<LocatorResolutionResult | null>;
|
|
53
|
+
/**
|
|
54
|
+
* Get the fingerprint store size (for diagnostics)
|
|
55
|
+
*/
|
|
56
|
+
getStoreSize(): number;
|
|
57
|
+
/**
|
|
58
|
+
* Clear all stored fingerprints
|
|
59
|
+
*/
|
|
60
|
+
clearFingerprints(): void;
|
|
61
|
+
private tryFallbackMethod;
|
|
62
|
+
private tryTextMatch;
|
|
63
|
+
private tryAriaMatch;
|
|
64
|
+
private tryFingerprintMatch;
|
|
65
|
+
/**
|
|
66
|
+
* Convert a selector string to a CSS selector suitable for capture.
|
|
67
|
+
* Returns null for non-CSS selectors that can't be used with querySelector.
|
|
68
|
+
*/
|
|
69
|
+
private toCssForCapture;
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=adaptive-locator-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adaptive-locator-service.d.ts","sourceRoot":"","sources":["../../../../../src/domains/test-execution/services/e2e/adaptive-locator-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAiB,MAAM,uBAAuB,CAAC;AAC3E,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,EAExB,MAAM,0BAA0B,CAAC;AA4JlC;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,kBAAkB,EAC1B,SAAS,EAAE,IAAI,CAAC,kBAAkB,EAAE,YAAY,GAAG,eAAe,CAAC,GAClE,MAAM,CAuCR;AA8BD;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyC;IAC/D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;gBAExB,UAAU,SAAM;IAI5B,OAAO,CAAC,GAAG;IAIX,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS;IAItE,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,kBAAkB,GAAG,IAAI;IAepE,IAAI,IAAI,MAAM;IAId,KAAK,IAAI,IAAI;CAGd;AAMD;;;;;;GAMG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwB;IAC/C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;gBAExC,MAAM,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAKnD;;OAEG;IACG,kBAAkB,CACtB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAwBrC;;;;;;;OAOG;IACG,mBAAmB,CACvB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC;IAc1C;;OAEG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;IACH,iBAAiB,IAAI,IAAI;YAQX,iBAAiB;YAiBjB,YAAY;YAwCZ,YAAY;YAkCZ,mBAAmB;IAoCjC;;;OAGG;IACH,OAAO,CAAC,eAAe;CAMxB"}
|