@evomap/evolver-core 2.0.0 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/algo/antiDistill.js +1 -167
- package/dist/algo/bans.js +1 -33
- package/dist/algo/candidateAssembly.js +1 -273
- package/dist/algo/capabilityCandidates.js +1 -146
- package/dist/algo/confidence.js +1 -196
- package/dist/algo/conversationSniffer.js +1 -149
- package/dist/algo/cycleEngine.js +1 -625
- package/dist/algo/cycleFailureClassifier.js +1 -112
- package/dist/algo/epigenetics.js +1 -41
- package/dist/algo/evolutionEvent.js +1 -24
- package/dist/algo/exploration.js +1 -68
- package/dist/algo/geneHealth.js +1 -17
- package/dist/algo/geneIntake.js +1 -128
- package/dist/algo/genePromotion.js +1 -53
- package/dist/algo/geneSelection.js +1 -546
- package/dist/algo/index.js +1 -22
- package/dist/algo/memoryGraph.js +1 -86
- package/dist/algo/mutation.js +1 -22
- package/dist/algo/orchestrator.js +1 -87
- package/dist/algo/publishEligibility.js +1 -52
- package/dist/algo/solidify.js +1 -63
- package/dist/algo/strategyPresets.js +1 -61
- package/dist/algo/ucb1.js +1 -156
- package/dist/benchmark/antiGeneBenchmark.js +1 -252
- package/dist/benchmark/antiGeneImpact.js +1 -34
- package/dist/benchmark/antiGeneRollout.js +1 -269
- package/dist/benchmark/benchmark.js +1 -26
- package/dist/benchmark/evolutionThesisSolver.js +1 -41
- package/dist/benchmark/index.js +1 -7
- package/dist/benchmark/selectionFlatAbstention.js +1 -481
- package/dist/benchmark/thesis.js +1 -150
- package/dist/benchmark/triggerShift.js +1 -106
- package/dist/cycle/cycleTimeline.js +1 -74
- package/dist/cycle/index.js +1 -2
- package/dist/cycle/stateMachine.js +1 -25
- package/dist/hub/agentDirectory.js +1 -104
- package/dist/hub/assetCallLog.js +1 -195
- package/dist/hub/bindings.js +1 -121
- package/dist/hub/capability.js +1 -1
- package/dist/hub/conversationDistiller.js +1 -264
- package/dist/hub/fake.js +1 -70
- package/dist/hub/hubReview.js +1 -106
- package/dist/hub/index.js +1 -11
- package/dist/hub/ingest.js +1 -15
- package/dist/hub/questionGenerator.js +1 -408
- package/dist/hub/reuseDecision.js +1 -127
- package/dist/hub/sanitize.js +1 -322
- package/dist/material/boundary.js +1 -14
- package/dist/material/consumer.js +1 -55
- package/dist/material/emit.js +1 -52
- package/dist/material/factory.js +1 -25
- package/dist/material/index.js +1 -9
- package/dist/material/materialArchive.js +1 -466
- package/dist/material/materialStore.js +1 -69
- package/dist/material/sampling.js +1 -39
- package/dist/material/sources.js +1 -33
- package/dist/material/watermark.js +1 -76
- package/dist/personality/drift.js +1 -106
- package/dist/personality/events.js +1 -37
- package/dist/personality/evolveOps.js +1 -93
- package/dist/personality/index.js +1 -11
- package/dist/personality/mutate.js +1 -39
- package/dist/personality/pivot.js +1 -22
- package/dist/personality/prompt.js +1 -62
- package/dist/personality/riskGate.js +1 -80
- package/dist/personality/schema.js +1 -119
- package/dist/personality/select.js +1 -71
- package/dist/personality/stats.js +1 -82
- package/dist/personality/store.js +1 -92
- package/dist/schema/common.js +1 -17
- package/dist/schema/evolutionGraph.js +1 -187
- package/dist/schema/index.js +1 -6
- package/dist/schema/material.js +1 -50
- package/dist/schema/problem.js +1 -45
- package/dist/schema/proofOfWork.js +1 -9
- package/dist/schema/signal.js +1 -19
- package/dist/signals/curriculum.js +1 -202
- package/dist/signals/cycleHistoryFromEvents.js +1 -105
- package/dist/signals/expand.js +1 -293
- package/dist/signals/extractor.js +1 -82
- package/dist/signals/index.js +1 -8
- package/dist/signals/metaSignals.js +1 -200
- package/dist/signals/signalGate.js +1 -40
- package/dist/signals/taskDomain.js +1 -43
- package/dist/signals/traceSignals.js +1 -123
- package/dist/strategy/constraintAblation.js +1 -2820
- package/dist/strategy/constraintAblationPredicates.js +1 -339
- package/dist/strategy/experiment.js +1 -63
- package/dist/strategy/index.js +1 -3
- package/dist/strategy/strategyPoint.js +1 -23
- package/package.json +1 -1
|
@@ -1,149 +1 @@
|
|
|
1
|
-
import { createHash } from 'node:crypto';
|
|
2
|
-
import { redactString } from '../hub/sanitize.js';
|
|
3
|
-
// The Chinese branches require compound/intentful phrases on purpose: everyday words (能力/流程/成功/通过)
|
|
4
|
-
// occur in nearly every Chinese dev session, and matching them bare made this fallback the DOMINANT distill
|
|
5
|
-
// path — 105 of 118 drafts in one bulk ingest (#562). English gets specificity from \b word boundaries;
|
|
6
|
-
// Chinese has no \b, so specificity must come from the phrase itself.
|
|
7
|
-
const REUSABLE_RE = /\b(reusable|repeatable|workflow|playbook|runbook|capability|procedure|pattern|recipe|documented|future runs?|next time|can reuse|reuse this)\b|复用|可重用|工作流(?!程)|方法论|沉淀/i;
|
|
8
|
-
const PROOF_RE = /\b(validated|verified|passed|green|success(?:ful|fully)?|succeeded|works?|completed|published|uploaded|recorded:true|exit code:?\s*0|all tests passed)\b|(?:验证|校验|测试|检查|构建|编译|运行|执行|部署|发布)(?:都|均|全部)?(?:通过|成功)|全部通过|跑通|已(?:验证|发布|上线)/i;
|
|
9
|
-
const FAILURE_RE = /\b(failed|failure|error|exception|traceback|exit code:?\s*[1-9]|not working|unable to)\b|失败|错误|报错/i;
|
|
10
|
-
const CHINESE_NEGATED_PROOF_PREFIX_SOURCE = '(?:尚未|并未|还没有|尚没有|并没有|没有|未能|无法|不能|不曾|并非|未|没)';
|
|
11
|
-
const CHINESE_NEGATED_PROOF_SOURCE = `(?:${CHINESE_NEGATED_PROOF_PREFIX_SOURCE}\\s*(?:验证|校验|测试|检查|构建|编译|运行|执行|部署|发布)(?:都|均|全部)?\\s*(?:通过|成功)|(?:验证|校验|测试|检查|构建|编译|运行|执行|部署|发布)(?:仍|还|尚)?(?:没有|未能|未)(?:都|均|全部)?\\s*(?:通过|成功))`;
|
|
12
|
-
const CHINESE_NEGATED_PROOF_RE = new RegExp(CHINESE_NEGATED_PROOF_SOURCE, 'i');
|
|
13
|
-
const CHINESE_NEGATED_PROOF_GLOBAL_RE = new RegExp(CHINESE_NEGATED_PROOF_SOURCE, 'gi');
|
|
14
|
-
const EXIT_ZERO_RE = /\bexit code:?\s*0\b/i;
|
|
15
|
-
const EXIT_NON_ZERO_RE = /\bexit code:?\s*[1-9]\d*\b/i;
|
|
16
|
-
const DOMAIN_TOKENS = [
|
|
17
|
-
[/\b(lark|feishu|飞书)\b/i, 'lark'],
|
|
18
|
-
[/\b(github|gh|pull request|bugbot)\b/i, 'github'],
|
|
19
|
-
[/\b(playwright|screenshot|visual)\b/i, 'playwright'],
|
|
20
|
-
[/\b(vitest|jest|test)\b/i, 'test'],
|
|
21
|
-
[/\b(pnpm|npm|yarn)\b/i, 'package-manager'],
|
|
22
|
-
[/\b(hub|publish|marketplace)\b/i, 'hub-publish'],
|
|
23
|
-
[/\b(release|checksum|sha256)\b/i, 'release'],
|
|
24
|
-
[/\b(api|http|endpoint)\b/i, 'api'],
|
|
25
|
-
[/\b(document|docs?|markdown)\b/i, 'docs'],
|
|
26
|
-
];
|
|
27
|
-
function cleanText(value, max = 220) {
|
|
28
|
-
const text = redactString(String(value ?? '').replace(/\s+/g, ' ').trim());
|
|
29
|
-
return text.length > max ? `${text.slice(0, max - 3)}...` : text;
|
|
30
|
-
}
|
|
31
|
-
function turnText(turn) {
|
|
32
|
-
return cleanText([turn.text, turn.toolResult, turn.errorMessage].filter(Boolean).join('\n'), 500);
|
|
33
|
-
}
|
|
34
|
-
function stableId(parts) {
|
|
35
|
-
return `conversation_capability_${createHash('sha1').update(JSON.stringify(parts), 'utf8').digest('hex').slice(0, 12)}`;
|
|
36
|
-
}
|
|
37
|
-
function normalizeSignal(value) {
|
|
38
|
-
return value.toLowerCase().replace(/[^a-z0-9]+/g, '_').replace(/^_+|_+$/g, '').slice(0, 48);
|
|
39
|
-
}
|
|
40
|
-
function collectToolCalls(turns) {
|
|
41
|
-
const seen = new Set();
|
|
42
|
-
for (const turn of turns) {
|
|
43
|
-
const tool = cleanText(turn.toolName ?? '', 80);
|
|
44
|
-
if (tool)
|
|
45
|
-
seen.add(tool);
|
|
46
|
-
}
|
|
47
|
-
return [...seen].slice(0, 8);
|
|
48
|
-
}
|
|
49
|
-
function domainSignals(text, toolCalls) {
|
|
50
|
-
const out = new Set();
|
|
51
|
-
for (const [re, signal] of DOMAIN_TOKENS) {
|
|
52
|
-
if (re.test(text))
|
|
53
|
-
out.add(signal);
|
|
54
|
-
}
|
|
55
|
-
for (const tool of toolCalls) {
|
|
56
|
-
const normalized = normalizeSignal(tool);
|
|
57
|
-
if (normalized)
|
|
58
|
-
out.add(normalized);
|
|
59
|
-
}
|
|
60
|
-
return [...out].slice(0, 6);
|
|
61
|
-
}
|
|
62
|
-
function isToolTurn(turn) {
|
|
63
|
-
return turn.role === 'tool' || Boolean(turn.toolName);
|
|
64
|
-
}
|
|
65
|
-
function hasPositiveProof(text) {
|
|
66
|
-
return PROOF_RE.test(text.replace(CHINESE_NEGATED_PROOF_GLOBAL_RE, ''));
|
|
67
|
-
}
|
|
68
|
-
function hasFailure(text) {
|
|
69
|
-
return FAILURE_RE.test(text) || CHINESE_NEGATED_PROOF_RE.test(text);
|
|
70
|
-
}
|
|
71
|
-
function classifyToolOutcome(turn) {
|
|
72
|
-
const text = turnText(turn);
|
|
73
|
-
if (EXIT_NON_ZERO_RE.test(text))
|
|
74
|
-
return 'failure';
|
|
75
|
-
// A semantic "not yet successful" result is not proof even when the command process itself exited zero.
|
|
76
|
-
if (CHINESE_NEGATED_PROOF_RE.test(text))
|
|
77
|
-
return 'failure';
|
|
78
|
-
if (EXIT_ZERO_RE.test(text))
|
|
79
|
-
return 'success';
|
|
80
|
-
if (hasPositiveProof(text) && !FAILURE_RE.test(text))
|
|
81
|
-
return 'success';
|
|
82
|
-
if (hasFailure(text))
|
|
83
|
-
return 'failure';
|
|
84
|
-
return 'unknown';
|
|
85
|
-
}
|
|
86
|
-
function hasTerminalSuccessfulToolRun(turns) {
|
|
87
|
-
let lastDecisive = 'unknown';
|
|
88
|
-
for (const turn of turns) {
|
|
89
|
-
if (!isToolTurn(turn))
|
|
90
|
-
continue;
|
|
91
|
-
const outcome = classifyToolOutcome(turn);
|
|
92
|
-
if (outcome !== 'unknown')
|
|
93
|
-
lastDecisive = outcome;
|
|
94
|
-
}
|
|
95
|
-
return lastDecisive === 'success';
|
|
96
|
-
}
|
|
97
|
-
function pickEvidence(turns, matcher, max = 3) {
|
|
98
|
-
const evidence = [];
|
|
99
|
-
for (const turn of turns) {
|
|
100
|
-
const text = turnText(turn);
|
|
101
|
-
if (!text || !(typeof matcher === 'function' ? matcher(text) : matcher.test(text)))
|
|
102
|
-
continue;
|
|
103
|
-
evidence.push(cleanText(text, 180));
|
|
104
|
-
if (evidence.length >= max)
|
|
105
|
-
break;
|
|
106
|
-
}
|
|
107
|
-
return evidence;
|
|
108
|
-
}
|
|
109
|
-
function pickSummary(turns, reusableEvidence, proofEvidence) {
|
|
110
|
-
const assistant = turns
|
|
111
|
-
.filter((turn) => turn.role === 'assistant' && !turn.isMeta)
|
|
112
|
-
.map(turnText)
|
|
113
|
-
.find((text) => text.length >= 40 && (REUSABLE_RE.test(text) || hasPositiveProof(text)));
|
|
114
|
-
return cleanText(assistant ?? reusableEvidence[0] ?? proofEvidence[0] ?? 'Verified reusable conversation capability.', 180);
|
|
115
|
-
}
|
|
116
|
-
export function sniffConversationCapabilities(turns, opts = {}) {
|
|
117
|
-
const usableTurns = turns.filter((turn) => !turn.isMeta);
|
|
118
|
-
if (usableTurns.length === 0)
|
|
119
|
-
return [];
|
|
120
|
-
const allText = usableTurns.map(turnText).filter(Boolean).join('\n');
|
|
121
|
-
if (!allText.trim())
|
|
122
|
-
return [];
|
|
123
|
-
const reusableEvidence = pickEvidence(usableTurns, REUSABLE_RE);
|
|
124
|
-
const proofEvidence = pickEvidence(usableTurns, hasPositiveProof);
|
|
125
|
-
if (reusableEvidence.length === 0 || proofEvidence.length === 0)
|
|
126
|
-
return [];
|
|
127
|
-
const failureOnly = hasFailure(allText) && !hasPositiveProof(allText);
|
|
128
|
-
if (failureOnly)
|
|
129
|
-
return [];
|
|
130
|
-
if (!hasTerminalSuccessfulToolRun(usableTurns))
|
|
131
|
-
return [];
|
|
132
|
-
const toolCalls = collectToolCalls(usableTurns);
|
|
133
|
-
const domain = domainSignals(allText, toolCalls);
|
|
134
|
-
const signals = [...new Set(['reusable_capability', 'verified_workflow', ...domain])].slice(0, 8);
|
|
135
|
-
const score = 4 + Math.min(2, reusableEvidence.length) + Math.min(2, proofEvidence.length) + Math.min(2, toolCalls.length);
|
|
136
|
-
const summary = pickSummary(usableTurns, reusableEvidence, proofEvidence);
|
|
137
|
-
const titleSignal = domain[0] ?? 'verified workflow';
|
|
138
|
-
const hit = {
|
|
139
|
-
id: stableId({ summary, signals, evidence: [...reusableEvidence, ...proofEvidence].slice(0, 4) }),
|
|
140
|
-
title: `Verified reusable capability: ${titleSignal}`,
|
|
141
|
-
summary,
|
|
142
|
-
signals,
|
|
143
|
-
evidence: [...reusableEvidence, ...proofEvidence].slice(0, 4),
|
|
144
|
-
score,
|
|
145
|
-
reasons: ['reusable_marker', 'proof_marker', ...(toolCalls.length > 0 ? ['tool_evidence'] : [])],
|
|
146
|
-
toolCalls,
|
|
147
|
-
};
|
|
148
|
-
return [hit].slice(0, opts.maxHits ?? 1);
|
|
149
|
-
}
|
|
1
|
+
const _0x39adb0=_0x3c9f;(function(_0x472bbf,_0x5a0772){const _0x4a06e7=_0x3c9f,_0x507ff5=_0x472bbf();while(!![]){try{const _0x2535be=parseInt(_0x4a06e7(0x239,'\x34\x53\x38\x58'))/(-0x9*-0x22+0x221+-0x352)*(parseInt(_0x4a06e7(0x218,'\x4e\x32\x67\x32'))/(-0x1fe5+-0x91c*-0x1+0x16cb))+-parseInt(_0x4a06e7(0x251,'\x4b\x32\x48\x43'))/(0x1e4e*-0x1+0x955+0x14fc)*(-parseInt(_0x4a06e7(0x1f3,'\x6c\x24\x52\x4b'))/(0x24f0+0xc33+-0x311f*0x1))+parseInt(_0x4a06e7(0x202,'\x45\x36\x78\x57'))/(0xe53+0x26*-0x107+0x18bc)*(parseInt(_0x4a06e7(0x21a,'\x74\x31\x35\x46'))/(-0x206a+0x16*-0x185+0x41de*0x1))+-parseInt(_0x4a06e7(0x238,'\x6e\x33\x5b\x33'))/(-0x23b6+0x1f0e+0x4af)*(-parseInt(_0x4a06e7(0x1f9,'\x73\x23\x6d\x6e'))/(-0x6c*0x59+-0x7*-0x549+-0x95*-0x1))+parseInt(_0x4a06e7(0x262,'\x6f\x6b\x77\x44'))/(-0x1e61+0x104b+0xe1f)+-parseInt(_0x4a06e7(0x23d,'\x6f\x6b\x77\x44'))/(-0x23b+-0xf33+0x1178)*(-parseInt(_0x4a06e7(0x20f,'\x50\x61\x24\x46'))/(-0x961+0x19c3+-0x1057*0x1))+-parseInt(_0x4a06e7(0x204,'\x4e\x32\x67\x32'))/(-0xef6+-0x25a6+0x34a8);if(_0x2535be===_0x5a0772)break;else _0x507ff5['push'](_0x507ff5['shift']());}catch(_0x438bfc){_0x507ff5['push'](_0x507ff5['shift']());}}}(_0x1b6f,0xe9918+-0x157b66+0x156230));function _0x1b6f(){const _0x32ee74=['\x70\x31\x68\x64\x4d\x43\x6f\x37\x57\x50\x69\x42\x68\x53\x6f\x44','\x57\x4f\x35\x65\x62\x65\x6d\x4e\x57\x4f\x4a\x64\x50\x4d\x71','\x57\x51\x54\x4f\x57\x50\x33\x64\x51\x57','\x7a\x55\x41\x4a\x4a\x45\x4d\x52\x4b\x38\x6f\x37\x35\x52\x73\x7a\x36\x6b\x2b\x42\x6f\x55\x41\x48\x55\x57','\x57\x37\x52\x64\x53\x43\x6b\x7a\x57\x37\x66\x50\x57\x52\x4a\x63\x54\x6d\x6f\x2f','\x57\x4f\x79\x32\x57\x4f\x47\x49\x77\x71','\x57\x51\x31\x49\x57\x4f\x6c\x64\x55\x47','\x57\x34\x56\x63\x56\x4a\x64\x64\x4e\x71','\x45\x6f\x73\x34\x4e\x6f\x41\x42\x50\x58\x6c\x4c\x55\x52\x4a\x50\x4e\x34\x43\x61\x35\x50\x59\x49','\x57\x50\x68\x64\x51\x43\x6f\x4d\x6c\x57','\x67\x43\x6b\x45\x6c\x66\x30\x33','\x57\x37\x58\x50\x76\x47','\x46\x43\x6b\x52\x57\x51\x2f\x64\x51\x38\x6b\x61\x57\x35\x44\x57\x42\x61','\x57\x50\x4e\x64\x4b\x64\x4f\x6b\x66\x48\x46\x63\x4e\x61','\x7a\x49\x57\x6b\x63\x73\x64\x63\x51\x53\x6f\x33\x46\x61','\x57\x50\x58\x63\x73\x53\x6f\x32\x57\x34\x79\x2b\x57\x52\x65\x55\x57\x36\x42\x64\x4c\x61','\x45\x53\x6b\x44\x73\x65\x2f\x63\x50\x43\x6f\x50\x78\x72\x56\x63\x4a\x6d\x6f\x6c\x41\x57','\x57\x36\x66\x7a\x65\x53\x6f\x35','\x43\x43\x6f\x31\x6f\x53\x6f\x6d\x57\x50\x37\x64\x56\x43\x6b\x74\x70\x71','\x57\x51\x37\x63\x4f\x6d\x6b\x71\x57\x36\x66\x5a\x57\x52\x4f','\x57\x35\x6a\x6c\x57\x4f\x65\x63\x75\x71\x30\x44\x6e\x47','\x64\x43\x6b\x7a\x46\x71','\x57\x51\x74\x63\x52\x6d\x6b\x71\x57\x36\x69','\x57\x36\x52\x64\x4f\x53\x6f\x49\x57\x36\x65\x7a\x7a\x57','\x6d\x5a\x75\x6f\x66\x73\x74\x63\x55\x38\x6f\x31','\x79\x53\x6f\x44\x57\x51\x42\x64\x55\x47','\x57\x4f\x33\x64\x4e\x64\x4f\x42\x65\x48\x79','\x79\x49\x53\x63\x57\x52\x52\x63\x54\x57','\x35\x37\x59\x66\x79\x2b\x77\x6f\x48\x6f\x77\x37\x54\x57\x46\x64\x4e\x6d\x6f\x61\x76\x61','\x57\x50\x42\x64\x4f\x6d\x6f\x38\x6f\x66\x4f','\x65\x53\x6b\x37\x57\x37\x61\x62\x70\x4a\x74\x63\x4e\x38\x6b\x59','\x57\x36\x52\x64\x52\x53\x6f\x34\x57\x37\x39\x78\x6c\x57','\x57\x52\x68\x63\x51\x43\x6b\x78\x57\x36\x76\x49','\x57\x36\x48\x39\x76\x49\x42\x64\x56\x6d\x6b\x4c','\x57\x51\x48\x39\x57\x50\x78\x63\x53\x61','\x42\x64\x79\x56','\x57\x37\x42\x63\x4b\x6d\x6f\x5a\x71\x38\x6b\x54\x42\x61','\x57\x50\x5a\x64\x51\x48\x70\x63\x47\x53\x6b\x69\x6c\x4d\x4a\x63\x49\x71','\x44\x53\x6b\x6a\x6d\x43\x6f\x47\x6a\x4d\x79','\x44\x33\x31\x57\x64\x43\x6b\x52','\x57\x52\x78\x63\x55\x6d\x6b\x4a\x57\x51\x4c\x69\x61\x73\x39\x46\x6f\x47\x4b','\x57\x36\x5a\x4c\x4a\x6b\x4a\x4c\x55\x50\x57\x45\x57\x36\x61\x48\x7a\x55\x4d\x64\x4a\x47','\x61\x38\x6b\x2f\x57\x37\x53\x66','\x77\x38\x6f\x59\x57\x51\x69\x2f\x6f\x38\x6b\x36\x6d\x57','\x57\x52\x4c\x53\x57\x4f\x46\x64\x53\x38\x6b\x64\x70\x62\x57','\x77\x31\x6c\x64\x52\x53\x6b\x30\x57\x35\x47\x74\x57\x34\x38\x4b\x57\x35\x52\x63\x49\x71','\x57\x35\x56\x64\x52\x38\x6f\x4a','\x57\x36\x56\x64\x53\x65\x37\x4c\x53\x79\x56\x4d\x4e\x34\x4e\x63\x53\x6f\x77\x35\x4b\x2b\x41\x43\x49\x71','\x57\x34\x30\x79\x68\x38\x6b\x4b\x57\x36\x57\x71','\x57\x35\x66\x30\x76\x53\x6b\x2f','\x79\x53\x6f\x78\x57\x52\x52\x64\x4f\x47','\x46\x43\x6f\x4c\x6e\x53\x6b\x63\x57\x4f\x53','\x36\x6b\x2b\x43\x65\x55\x41\x49\x49\x2b\x4d\x4f\x4a\x78\x5a\x4d\x54\x4f\x74\x4f\x52\x4f\x46\x63\x4b\x61','\x57\x4f\x4e\x63\x55\x61\x34\x77','\x70\x38\x6f\x42\x68\x62\x37\x64\x53\x38\x6f\x73\x73\x57','\x73\x38\x6b\x46\x57\x34\x37\x50\x47\x79\x4a\x4f\x56\x7a\x72\x6b\x35\x4f\x55\x77\x35\x79\x55\x4e','\x65\x72\x78\x64\x50\x58\x38\x72\x72\x6d\x6b\x69\x70\x43\x6b\x65\x6d\x49\x54\x68\x43\x71\x38','\x57\x35\x72\x70\x57\x34\x66\x52\x69\x68\x58\x79\x6f\x64\x4f\x33\x57\x35\x52\x64\x4f\x6d\x6f\x50','\x67\x6d\x6f\x68\x57\x37\x58\x52\x57\x50\x52\x64\x54\x6d\x6f\x41\x45\x58\x5a\x64\x4d\x71','\x45\x6d\x6f\x34\x61\x43\x6b\x4e\x57\x50\x53','\x57\x34\x4a\x63\x51\x45\x41\x59\x50\x45\x41\x44\x53\x53\x6b\x7a\x35\x50\x59\x73\x36\x69\x63\x54\x57\x35\x75','\x35\x50\x36\x78\x36\x69\x63\x38\x57\x35\x5a\x4d\x4c\x36\x56\x4d\x53\x4f\x6a\x35\x35\x6c\x4d\x70\x36\x69\x6b\x7a','\x72\x53\x6b\x44\x57\x51\x43','\x78\x38\x6b\x72\x57\x52\x4f\x55','\x66\x66\x33\x64\x4c\x38\x6f\x4e\x57\x51\x57\x43\x61\x43\x6f\x79','\x57\x37\x5a\x63\x4e\x6d\x6f\x58\x75\x6d\x6b\x38\x44\x47','\x57\x37\x74\x64\x52\x53\x6f\x4d\x57\x37\x72\x63\x6a\x64\x6d','\x70\x38\x6f\x70\x63\x58\x74\x64\x55\x43\x6f\x70\x67\x61\x65','\x57\x35\x52\x64\x55\x59\x64\x64\x48\x53\x6f\x56\x57\x51\x64\x63\x4d\x38\x6b\x34','\x35\x50\x59\x38\x68\x63\x68\x63\x48\x57\x42\x50\x47\x6c\x4f\x58\x35\x7a\x36\x63','\x7a\x45\x77\x46\x48\x59\x74\x4c\x48\x4f\x4e\x50\x47\x69\x42\x63\x4f\x43\x6f\x6f\x64\x71','\x57\x34\x61\x63\x6e\x43\x6b\x4b\x57\x36\x53\x66','\x57\x4f\x70\x64\x56\x63\x5a\x63\x4a\x53\x6b\x41\x6a\x47','\x68\x43\x6b\x58\x57\x37\x61\x71\x6c\x59\x34','\x46\x6d\x6b\x6e\x6e\x53\x6f\x52\x6a\x33\x57\x4a','\x57\x50\x42\x64\x54\x32\x61','\x45\x47\x4a\x63\x47\x38\x6b\x4b\x57\x37\x4c\x6f\x77\x6d\x6b\x66\x6e\x6d\x6b\x32\x57\x34\x58\x6a\x57\x35\x33\x63\x54\x47','\x46\x58\x74\x64\x47\x53\x6f\x47\x57\x35\x4f','\x57\x34\x38\x71\x65\x43\x6b\x54\x57\x36\x4f\x77\x57\x52\x4b','\x57\x52\x66\x55\x57\x4f\x57','\x57\x50\x33\x63\x4a\x66\x52\x64\x55\x30\x57\x57\x57\x52\x5a\x64\x4c\x47','\x57\x36\x48\x4a\x77\x73\x4e\x64\x50\x38\x6b\x33\x71\x71','\x71\x77\x37\x63\x52\x76\x44\x55','\x76\x30\x6c\x63\x53\x30\x4f','\x57\x4f\x4b\x2b\x68\x57','\x57\x4f\x5a\x64\x56\x38\x6f\x39','\x35\x4f\x55\x74\x35\x79\x4d\x71\x78\x73\x33\x64\x49\x38\x6f\x5a\x68\x2b\x4d\x51\x52\x57','\x45\x38\x6f\x72\x57\x52\x53','\x57\x36\x6c\x4c\x48\x69\x33\x50\x47\x6c\x62\x64\x77\x4a\x4c\x37\x6b\x61','\x57\x35\x72\x31\x71\x38\x6f\x56','\x57\x52\x4a\x63\x4e\x76\x52\x64\x55\x30\x71\x2b\x57\x52\x64\x64\x4c\x61','\x6e\x4b\x44\x53\x57\x34\x31\x70\x57\x51\x79\x56\x57\x51\x4b','\x6d\x45\x77\x35\x51\x55\x41\x59\x47\x45\x41\x45\x4d\x43\x6f\x33\x35\x52\x67\x6b\x35\x50\x59\x68\x57\x52\x34','\x57\x35\x64\x63\x4f\x6d\x6f\x71','\x57\x35\x4e\x63\x53\x49\x2f\x64\x4e\x43\x6f\x4b\x57\x51\x71','\x57\x36\x68\x64\x4f\x53\x6f\x49\x57\x37\x62\x77\x6a\x71','\x6a\x61\x71\x2f\x57\x4f\x62\x31\x57\x4f\x79\x70\x57\x51\x37\x63\x4b\x6d\x6b\x76','\x6e\x64\x34\x71\x63\x63\x52\x63\x52\x53\x6f\x33\x44\x47','\x57\x52\x42\x63\x51\x53\x6b\x72\x57\x36\x50\x6a\x57\x52\x70\x63\x4c\x38\x6f\x6d','\x63\x61\x64\x63\x54\x43\x6f\x56\x57\x37\x71\x37\x57\x34\x43','\x57\x50\x37\x64\x51\x48\x6c\x63\x4e\x57','\x57\x36\x75\x44\x45\x43\x6f\x35\x57\x50\x4e\x63\x53\x6d\x6b\x6c\x66\x32\x37\x64\x48\x57','\x57\x34\x37\x63\x50\x5a\x62\x64\x57\x52\x31\x6f\x57\x51\x4a\x64\x4d\x49\x54\x57','\x76\x4b\x5a\x63\x55\x65\x4f','\x57\x36\x4f\x61\x57\x51\x53\x45','\x57\x51\x31\x6b\x62\x43\x6f\x4e\x46\x62\x71\x65\x57\x35\x6d','\x61\x43\x6b\x4d\x57\x37\x65\x79\x70\x72\x4e\x63\x47\x43\x6b\x59','\x57\x4f\x4b\x75\x57\x50\x47\x30','\x42\x64\x61\x49\x57\x52\x6c\x63\x52\x6d\x6b\x6d\x65\x53\x6f\x46','\x57\x35\x78\x64\x51\x38\x6f\x59\x6d\x61\x69\x69\x66\x71','\x57\x34\x64\x64\x56\x38\x6f\x34\x70\x58\x69\x6a\x61\x57','\x46\x49\x75\x78\x57\x51\x64\x63\x56\x53\x6f\x45\x76\x53\x6b\x6b\x57\x51\x62\x73\x57\x51\x76\x62','\x57\x52\x62\x51\x57\x50\x6c\x63\x55\x4a\x44\x43','\x70\x6d\x6f\x59\x57\x35\x64\x63\x54\x6d\x6f\x64\x57\x4f\x53\x57\x67\x31\x58\x67\x57\x51\x6c\x63\x4c\x59\x6a\x57','\x45\x4c\x62\x4e\x57\x35\x39\x69\x57\x51\x38','\x57\x51\x78\x63\x50\x57\x62\x76\x57\x36\x42\x63\x4d\x68\x4e\x64\x48\x61','\x63\x43\x6b\x65\x41\x47','\x57\x35\x37\x64\x51\x38\x6f\x31\x70\x72\x61\x46\x61\x47','\x57\x51\x35\x6d\x70\x43\x6b\x54\x57\x51\x64\x63\x50\x43\x6b\x77','\x57\x4f\x42\x4f\x56\x69\x4a\x4d\x53\x34\x37\x4d\x4e\x6b\x37\x64\x53\x45\x77\x5a\x50\x6f\x41\x59\x54\x6f\x41\x45\x4f\x47','\x57\x50\x42\x64\x55\x43\x6f\x32\x6f\x66\x52\x64\x54\x53\x6f\x4e','\x70\x78\x31\x64\x57\x37\x56\x64\x51\x53\x6b\x6d\x41\x38\x6f\x56','\x7a\x45\x41\x57\x4f\x78\x65','\x70\x38\x6f\x63\x66\x48\x37\x64\x53\x57','\x57\x36\x30\x35\x57\x34\x4e\x64\x52\x4e\x43\x65\x57\x35\x39\x4b\x57\x50\x69\x50\x57\x37\x5a\x64\x48\x53\x6b\x47\x42\x71','\x46\x43\x6b\x52\x57\x4f\x5a\x64\x51\x6d\x6b\x35\x57\x35\x6e\x56\x73\x47','\x66\x43\x6b\x37\x57\x37\x30\x65','\x70\x32\x6e\x39\x57\x36\x42\x63\x4a\x6d\x6b\x35\x6b\x43\x6f\x52\x73\x33\x53','\x57\x50\x46\x64\x51\x43\x6f\x47\x6b\x66\x37\x64\x50\x38\x6f\x34\x57\x36\x43','\x57\x52\x4f\x54\x57\x4f\x33\x64\x56\x53\x6b\x67\x6c\x58\x53\x68','\x57\x4f\x74\x63\x56\x53\x6b\x52\x42\x75\x76\x64\x72\x61\x62\x68\x68\x4b\x6c\x64\x47\x4e\x65','\x79\x4e\x48\x31\x67\x53\x6b\x52\x57\x36\x53','\x57\x37\x4c\x44\x67\x6d\x6f\x4d','\x6f\x38\x6f\x32\x57\x50\x6c\x64\x51\x43\x6b\x54\x57\x37\x4c\x53\x72\x61','\x43\x68\x72\x51\x67\x47','\x57\x4f\x46\x64\x52\x59\x74\x64\x4e\x53\x6f\x56\x57\x52\x5a\x63\x53\x6d\x6b\x43','\x35\x6c\x4d\x44\x57\x4f\x78\x4f\x56\x79\x44\x6c\x35\x42\x6f\x73\x6e\x32\x6d\x42','\x45\x38\x6b\x48\x57\x50\x70\x64\x51\x6d\x6b\x77\x57\x35\x66\x4e','\x35\x50\x36\x73\x79\x2b\x41\x46\x4b\x45\x77\x34\x4a\x4c\x6c\x4e\x56\x36\x6c\x4f\x52\x6b\x34\x73','\x57\x37\x4c\x44\x65\x38\x6f\x4d','\x57\x34\x46\x64\x55\x6d\x6f\x59\x6d\x71','\x57\x52\x46\x63\x55\x38\x6f\x4d\x57\x34\x62\x47\x64\x59\x44\x6e','\x70\x31\x68\x64\x4d\x43\x6f\x37\x57\x50\x38\x42\x67\x38\x6f\x62','\x57\x4f\x2f\x63\x56\x47\x72\x6a\x57\x36\x6c\x63\x49\x78\x53','\x65\x6d\x6b\x6b\x57\x35\x58\x54\x57\x51\x4e\x50\x47\x6b\x5a\x4f\x56\x69\x65\x65','\x57\x51\x48\x51\x57\x4f\x2f\x63\x51\x71','\x57\x4f\x74\x64\x56\x38\x6f\x4d\x6d\x4b\x5a\x64\x53\x43\x6f\x31\x57\x36\x57','\x57\x50\x4e\x64\x55\x47\x6c\x63\x49\x6d\x6b\x6c\x6e\x68\x34','\x42\x53\x6b\x6a\x6c\x6d\x6f\x5a','\x57\x35\x37\x63\x51\x43\x6f\x6f\x6c\x53\x6b\x41\x78\x53\x6b\x51\x57\x52\x38'];_0x1b6f=function(){return _0x32ee74;};return _0x1b6f();}import{createHash}from'\x6e\x6f\x64\x65\x3a\x63\x72\x79\x70\x74\x6f';import{redactString}from'\x2e\x2e\x2f\x68\x75\x62\x2f\x73\x61\x6e\x69\x74\x69\x7a\x65\x2e\x6a\x73';const REUSABLE_RE=/\b(reusable|repeatable|workflow|playbook|runbook|capability|procedure|pattern|recipe|documented|future runs?|next time|can reuse|reuse this)\b|复用|可重用|工作流(?!程)|方法论|沉淀/i,PROOF_RE=/\b(validated|verified|passed|green|success(?:ful|fully)?|succeeded|works?|completed|published|uploaded|recorded:true|exit code:?\s*0|all tests passed)\b|(?:验证|校验|测试|检查|构建|编译|运行|执行|部署|发布)(?:都|均|全部)?(?:通过|成功)|全部通过|跑通|已(?:验证|发布|上线)/i,FAILURE_RE=/\b(failed|failure|error|exception|traceback|exit code:?\s*[1-9]|not working|unable to)\b|失败|错误|报错/i,CHINESE_NEGATED_PROOF_PREFIX_SOURCE=_0x39adb0(0x258,'\x68\x5e\x55\x61')+_0x39adb0(0x20a,'\x55\x70\x28\x78')+_0x39adb0(0x1ef,'\x45\x36\x78\x57')+_0x39adb0(0x266,'\x70\x6c\x45\x23')+_0x39adb0(0x231,'\x6e\x23\x64\x4a')+_0x39adb0(0x20d,'\x6e\x77\x32\x5e'),CHINESE_NEGATED_PROOF_SOURCE=_0x39adb0(0x1e7,'\x56\x6e\x58\x59')+CHINESE_NEGATED_PROOF_PREFIX_SOURCE+('\x5c\x73\x2a\x28\x3f\x3a\u9a8c\u8bc1'+_0x39adb0(0x22c,'\x42\x65\x23\x2a')+_0x39adb0(0x21d,'\x57\x6b\x36\x23')+'\u8fd0\u884c\x7c\u6267\u884c\x7c\u90e8\u7f72'+_0x39adb0(0x252,'\x46\x34\x24\x55')+_0x39adb0(0x26f,'\x6e\x77\x32\x5e')+_0x39adb0(0x223,'\x4c\x68\x4b\x72')+_0x39adb0(0x1e9,'\x68\x5e\x55\x61')+_0x39adb0(0x25d,'\x45\x68\x4e\x6f')+'\u68c0\u67e5\x7c\u6784\u5efa\x7c\u7f16\u8bd1'+'\x7c\u8fd0\u884c\x7c\u6267\u884c\x7c\u90e8'+_0x39adb0(0x245,'\x57\x6b\x36\x23')+_0x39adb0(0x21b,'\x46\x34\x24\x55')+_0x39adb0(0x265,'\x73\x23\x6d\x6e')+_0x39adb0(0x26e,'\x6c\x24\x52\x4b')+_0x39adb0(0x1eb,'\x52\x6e\x40\x79')+_0x39adb0(0x260,'\x4c\x68\x4b\x72')+'\x29\x29'),CHINESE_NEGATED_PROOF_RE=new RegExp(CHINESE_NEGATED_PROOF_SOURCE,'\x69'),CHINESE_NEGATED_PROOF_GLOBAL_RE=new RegExp(CHINESE_NEGATED_PROOF_SOURCE,'\x67\x69'),EXIT_ZERO_RE=/\bexit code:?\s*0\b/i,EXIT_NON_ZERO_RE=/\bexit code:?\s*[1-9]\d*\b/i,DOMAIN_TOKENS=[[/\b(lark|feishu|飞书)\b/i,_0x39adb0(0x23a,'\x57\x76\x6b\x23')],[/\b(github|gh|pull request|bugbot)\b/i,_0x39adb0(0x1f2,'\x4b\x32\x48\x43')],[/\b(playwright|screenshot|visual)\b/i,'\x70\x6c\x61\x79\x77\x72\x69\x67'+'\x68\x74'],[/\b(vitest|jest|test)\b/i,_0x39adb0(0x230,'\x74\x31\x35\x46')],[/\b(pnpm|npm|yarn)\b/i,_0x39adb0(0x20c,'\x45\x36\x78\x57')+_0x39adb0(0x208,'\x37\x38\x37\x69')],[/\b(hub|publish|marketplace)\b/i,_0x39adb0(0x23b,'\x6e\x77\x32\x5e')+_0x39adb0(0x1e8,'\x37\x4c\x6b\x37')],[/\b(release|checksum|sha256)\b/i,_0x39adb0(0x236,'\x6c\x67\x6b\x54')],[/\b(api|http|endpoint)\b/i,'\x61\x70\x69'],[/\b(document|docs?|markdown)\b/i,_0x39adb0(0x211,'\x42\x4c\x6a\x39')]];function cleanText(_0x455021,_0x42cdf0=-0x1*-0x2440+0x987+0x1*-0x2ceb){const _0x30fdd6=_0x39adb0,_0x499c6c=redactString(String(_0x455021??'')[_0x30fdd6(0x21c,'\x4e\x32\x67\x32')](/\s+/g,'\x20')[_0x30fdd6(0x21f,'\x37\x38\x37\x69')]());return _0x499c6c[_0x30fdd6(0x205,'\x6c\x24\x52\x4b')]>_0x42cdf0?_0x499c6c['\x73\x6c\x69\x63\x65'](0x2394+-0x1*-0x2ce+0x1331*-0x2,_0x42cdf0-(-0x302+0xccc+-0x9c7))+'\x2e\x2e\x2e':_0x499c6c;}function turnText(_0x55503b){const _0x39122c=_0x39adb0;return cleanText([_0x55503b[_0x39122c(0x217,'\x57\x76\x6b\x23')],_0x55503b[_0x39122c(0x221,'\x73\x59\x35\x68')+'\x6c\x74'],_0x55503b['\x65\x72\x72\x6f\x72\x4d\x65\x73'+_0x39122c(0x1e6,'\x62\x23\x24\x34')]][_0x39122c(0x243,'\x6c\x67\x6b\x54')](Boolean)['\x6a\x6f\x69\x6e']('\x0a'),0x1ef9*-0x1+-0x1*0x1123+0x1*0x3210);}function stableId(_0x256fb0){const _0x802d44=_0x39adb0;return _0x802d44(0x247,'\x42\x4c\x6a\x39')+_0x802d44(0x22a,'\x32\x78\x34\x45')+_0x802d44(0x1ff,'\x24\x33\x6c\x6c')+createHash(_0x802d44(0x25e,'\x55\x70\x28\x78'))[_0x802d44(0x24a,'\x31\x2a\x46\x54')](JSON[_0x802d44(0x1ed,'\x24\x31\x4f\x30')+'\x79'](_0x256fb0),_0x802d44(0x1ec,'\x56\x6e\x58\x59'))[_0x802d44(0x259,'\x6e\x33\x5b\x33')](_0x802d44(0x257,'\x37\x38\x37\x69'))['\x73\x6c\x69\x63\x65'](0x1923+-0x2595+0xc72,0x1*-0x1070+-0x30f+0x138b);}function _0x3c9f(_0x2befa0,_0x1196cf){_0x2befa0=_0x2befa0-(0xa15+0x5*-0x727+0x1b89);const _0x3db818=_0x1b6f();let _0x55f02a=_0x3db818[_0x2befa0];if(_0x3c9f['\x75\x59\x71\x69\x78\x47']===undefined){var _0x3b2b3e=function(_0x40ec47){const _0x2ac8e2='\x61\x62\x63\x64\x65\x66\x67\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f\x70\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7a\x41\x42\x43\x44\x45\x46\x47\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f\x50\x51\x52\x53\x54\x55\x56\x57\x58\x59\x5a\x30\x31\x32\x33\x34\x35\x36\x37\x38\x39\x2b\x2f\x3d';let _0x5127b4='',_0x56eb03='';for(let _0x127198=-0x16f1*-0x1+-0x1f9a+0x8a9,_0xe04b4c,_0x2c2e76,_0x552b3d=-0x2f*0x38+0xbf+-0x1*-0x989;_0x2c2e76=_0x40ec47['\x63\x68\x61\x72\x41\x74'](_0x552b3d++);~_0x2c2e76&&(_0xe04b4c=_0x127198%(-0x74f+-0x5c4+0x3*0x45d)?_0xe04b4c*(0x1fb7+0xb2*-0x1c+-0xbff)+_0x2c2e76:_0x2c2e76,_0x127198++%(-0x6b*-0x2+-0x7ef+0x71d*0x1))?_0x5127b4+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](-0x961*-0x1+-0xae1*0x3+0x1841&_0xe04b4c>>(-(-0x517+0x2058+-0x1b3f)*_0x127198&-0xaed+-0x2*0xed9+0x821*0x5)):0x2555+0x1847+-0x3d9c){_0x2c2e76=_0x2ac8e2['\x69\x6e\x64\x65\x78\x4f\x66'](_0x2c2e76);}for(let _0x1b0034=-0x1e43*0x1+-0x6a*0x37+0x3509,_0x518985=_0x5127b4['\x6c\x65\x6e\x67\x74\x68'];_0x1b0034<_0x518985;_0x1b0034++){_0x56eb03+='\x25'+('\x30\x30'+_0x5127b4['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x1b0034)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](0x3*-0xad+-0x7f*-0x2+-0x1*-0x119))['\x73\x6c\x69\x63\x65'](-(-0x84*0xb+-0x15dd+-0x281*-0xb));}return decodeURIComponent(_0x56eb03);};const _0x496b1a=function(_0x5922f3,_0x42e2fd){let _0xa770bf=[],_0x4cdf44=-0xdc2+-0x17f0+0x25b2,_0x18aa05,_0x15c003='';_0x5922f3=_0x3b2b3e(_0x5922f3);let _0x499ba0;for(_0x499ba0=0xf74*-0x2+-0x1*-0x5cf+0x19*0x101;_0x499ba0<0x36*0xad+0x85*-0x9+-0x1ed1*0x1;_0x499ba0++){_0xa770bf[_0x499ba0]=_0x499ba0;}for(_0x499ba0=-0x881+-0x99f+0x1220;_0x499ba0<-0x321*0xb+-0x1665+0x39d0;_0x499ba0++){_0x4cdf44=(_0x4cdf44+_0xa770bf[_0x499ba0]+_0x42e2fd['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x499ba0%_0x42e2fd['\x6c\x65\x6e\x67\x74\x68']))%(0x2146+-0x356+-0xe78*0x2),_0x18aa05=_0xa770bf[_0x499ba0],_0xa770bf[_0x499ba0]=_0xa770bf[_0x4cdf44],_0xa770bf[_0x4cdf44]=_0x18aa05;}_0x499ba0=0x82c+-0x22c*0x4+0x21*0x4,_0x4cdf44=-0x613*0x1+-0x206a+0x267d;for(let _0x3a9c75=-0x19f1+0x1*0x1dff+-0x40e;_0x3a9c75<_0x5922f3['\x6c\x65\x6e\x67\x74\x68'];_0x3a9c75++){_0x499ba0=(_0x499ba0+(-0x7*0x309+0xd8d+0x7b3))%(0x3*0x9d6+0x12d3+-0x2f55),_0x4cdf44=(_0x4cdf44+_0xa770bf[_0x499ba0])%(-0x2398+0x1*0x1fe9+0x4af),_0x18aa05=_0xa770bf[_0x499ba0],_0xa770bf[_0x499ba0]=_0xa770bf[_0x4cdf44],_0xa770bf[_0x4cdf44]=_0x18aa05,_0x15c003+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x5922f3['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x3a9c75)^_0xa770bf[(_0xa770bf[_0x499ba0]+_0xa770bf[_0x4cdf44])%(0x5b3+0x141c+0x1*-0x18cf)]);}return _0x15c003;};_0x3c9f['\x6b\x41\x68\x56\x54\x5a']=_0x496b1a,_0x3c9f['\x71\x41\x71\x63\x62\x4c']={},_0x3c9f['\x75\x59\x71\x69\x78\x47']=!![];}const _0x54e3c0=_0x3db818[-0x1*0x7b1+0x5*0x5b9+-0x14ec],_0x341a44=_0x2befa0+_0x54e3c0,_0x159412=_0x3c9f['\x71\x41\x71\x63\x62\x4c'][_0x341a44];return!_0x159412?(_0x3c9f['\x6d\x4c\x51\x6c\x6a\x50']===undefined&&(_0x3c9f['\x6d\x4c\x51\x6c\x6a\x50']=!![]),_0x55f02a=_0x3c9f['\x6b\x41\x68\x56\x54\x5a'](_0x55f02a,_0x1196cf),_0x3c9f['\x71\x41\x71\x63\x62\x4c'][_0x341a44]=_0x55f02a):_0x55f02a=_0x159412,_0x55f02a;}function normalizeSignal(_0x593cdc){const _0x46adf5=_0x39adb0;return _0x593cdc[_0x46adf5(0x235,'\x4e\x32\x67\x32')+'\x61\x73\x65']()[_0x46adf5(0x254,'\x4a\x24\x71\x69')](/[^a-z0-9]+/g,'\x5f')[_0x46adf5(0x209,'\x56\x52\x29\x28')](/^_+|_+$/g,'')[_0x46adf5(0x233,'\x51\x75\x5a\x66')](-0x1492+0x13f*-0x7+-0x1d4b*-0x1,-0x1*-0x13a3+-0x86d*-0x1+-0x1be0);}function collectToolCalls(_0x2b0bdd){const _0x38e2a2=_0x39adb0,_0x135b7e=new Set();for(const _0xcc38a9 of _0x2b0bdd){const _0x1cca6b=cleanText(_0xcc38a9[_0x38e2a2(0x1f5,'\x23\x43\x23\x28')]??'',0x9ef*-0x1+-0x1712+-0x3*-0xb1b);if(_0x1cca6b)_0x135b7e[_0x38e2a2(0x1de,'\x73\x23\x6d\x6e')](_0x1cca6b);}return[..._0x135b7e][_0x38e2a2(0x246,'\x37\x4c\x6b\x37')](0xc*0x2de+-0x72*-0x2e+-0x36e4,-0x157c+0x9a7*-0x1+0x1f2b);}function domainSignals(_0x21d010,_0xacef32){const _0x54a82b=_0x39adb0,_0x528a09=new Set();for(const [_0x8a1b85,_0x10ac11]of DOMAIN_TOKENS){if(_0x8a1b85['\x74\x65\x73\x74'](_0x21d010))_0x528a09[_0x54a82b(0x24c,'\x24\x33\x6c\x6c')](_0x10ac11);}for(const _0xf732f of _0xacef32){if(_0x54a82b(0x244,'\x24\x33\x6c\x6c')===_0x54a82b(0x264,'\x6e\x77\x32\x5e'))return _0x5cc0ff[_0x54a82b(0x22b,'\x6d\x59\x47\x73')](_0x2ebf9['\x72\x65\x70\x6c\x61\x63\x65'](_0x254f9c,''));else{const _0x5e4d6f=normalizeSignal(_0xf732f);if(_0x5e4d6f)_0x528a09[_0x54a82b(0x234,'\x31\x2a\x46\x54')](_0x5e4d6f);}}return[..._0x528a09][_0x54a82b(0x1e0,'\x40\x6c\x49\x33')](-0x95f*-0x1+-0x3*-0x337+-0x1304,-0x25bc+0x1*-0x335+-0x28f7*-0x1);}function isToolTurn(_0x25d690){const _0x36dbd7=_0x39adb0;return _0x25d690[_0x36dbd7(0x22f,'\x6d\x59\x47\x73')]===_0x36dbd7(0x25b,'\x59\x38\x67\x6b')||Boolean(_0x25d690[_0x36dbd7(0x210,'\x4e\x32\x67\x32')]);}function hasPositiveProof(_0x217f78){const _0x2c1f41=_0x39adb0;return PROOF_RE[_0x2c1f41(0x232,'\x37\x4c\x6b\x37')](_0x217f78[_0x2c1f41(0x26b,'\x4b\x32\x48\x43')](CHINESE_NEGATED_PROOF_GLOBAL_RE,''));}function hasFailure(_0x26f9aa){const _0x40dc75=_0x39adb0;return FAILURE_RE[_0x40dc75(0x219,'\x6e\x23\x64\x4a')](_0x26f9aa)||CHINESE_NEGATED_PROOF_RE[_0x40dc75(0x1f7,'\x62\x65\x76\x39')](_0x26f9aa);}function classifyToolOutcome(_0x237be5){const _0x20cc9c=_0x39adb0,_0x40cd80=turnText(_0x237be5);if(EXIT_NON_ZERO_RE[_0x20cc9c(0x242,'\x59\x38\x67\x6b')](_0x40cd80))return _0x20cc9c(0x1e1,'\x6e\x33\x5b\x33');if(CHINESE_NEGATED_PROOF_RE[_0x20cc9c(0x224,'\x50\x61\x24\x46')](_0x40cd80))return _0x20cc9c(0x1f6,'\x61\x26\x64\x70');if(EXIT_ZERO_RE[_0x20cc9c(0x268,'\x6b\x71\x47\x7a')](_0x40cd80))return _0x20cc9c(0x226,'\x62\x65\x76\x39');if(hasPositiveProof(_0x40cd80)&&!FAILURE_RE[_0x20cc9c(0x227,'\x42\x65\x23\x2a')](_0x40cd80))return _0x20cc9c(0x25f,'\x34\x53\x38\x58');if(hasFailure(_0x40cd80))return _0x20cc9c(0x200,'\x37\x38\x37\x69');return'\x75\x6e\x6b\x6e\x6f\x77\x6e';}function hasTerminalSuccessfulToolRun(_0x24e6f9){const _0xaf6a77=_0x39adb0;let _0x805bbf=_0xaf6a77(0x1e4,'\x31\x2a\x46\x54');for(const _0x21738a of _0x24e6f9){if(_0xaf6a77(0x1e5,'\x62\x23\x24\x34')===_0xaf6a77(0x22e,'\x6f\x6b\x77\x44')){if(!isToolTurn(_0x21738a))continue;const _0x1d41a3=classifyToolOutcome(_0x21738a);if(_0x1d41a3!==_0xaf6a77(0x222,'\x55\x70\x28\x78'))_0x805bbf=_0x1d41a3;}else{const _0x56e065=_0x39a924(_0x2515e7);if(_0x2807b3['\x74\x65\x73\x74'](_0x56e065))return _0xaf6a77(0x255,'\x6d\x59\x47\x73');if(_0x5742a0[_0xaf6a77(0x1fb,'\x52\x6e\x40\x79')](_0x56e065))return _0xaf6a77(0x1dd,'\x42\x65\x23\x2a');if(_0xb5b5d3[_0xaf6a77(0x219,'\x6e\x23\x64\x4a')](_0x56e065))return _0xaf6a77(0x20b,'\x37\x4c\x6b\x37');if(_0x4bc1a3(_0x56e065)&&!_0x4fa1cb[_0xaf6a77(0x268,'\x6b\x71\x47\x7a')](_0x56e065))return'\x73\x75\x63\x63\x65\x73\x73';if(_0x284683(_0x56e065))return'\x66\x61\x69\x6c\x75\x72\x65';return _0xaf6a77(0x241,'\x32\x25\x5a\x76');}}return _0x805bbf===_0xaf6a77(0x201,'\x37\x38\x37\x69');}function pickEvidence(_0x4722c1,_0x57b4d1,_0x402750=0x27*-0xbb+0x7*0x202+0xe72){const _0x4ac293=_0x39adb0,_0xad12b=[];for(const _0x3eca10 of _0x4722c1){const _0x440e2f=turnText(_0x3eca10);if(!_0x440e2f||!(typeof _0x57b4d1==='\x66\x75\x6e\x63\x74\x69\x6f\x6e'?_0x57b4d1(_0x440e2f):_0x57b4d1[_0x4ac293(0x21e,'\x57\x76\x6b\x23')](_0x440e2f)))continue;_0xad12b[_0x4ac293(0x25a,'\x56\x6e\x58\x59')](cleanText(_0x440e2f,0x635*-0x4+0xb52+-0x71b*-0x2));if(_0xad12b[_0x4ac293(0x248,'\x4b\x32\x48\x43')]>=_0x402750)break;}return _0xad12b;}function pickSummary(_0x1e460c,_0x51e057,_0x4f264f){const _0x19fbd8=_0x39adb0,_0x40a0d3=_0x1e460c[_0x19fbd8(0x216,'\x6e\x23\x64\x4a')](_0x34b2f6=>_0x34b2f6[_0x19fbd8(0x1fa,'\x62\x23\x24\x34')]===_0x19fbd8(0x225,'\x37\x4c\x6b\x37')+'\x74'&&!_0x34b2f6[_0x19fbd8(0x1db,'\x62\x65\x76\x39')])[_0x19fbd8(0x1f0,'\x70\x6c\x45\x23')](turnText)[_0x19fbd8(0x23f,'\x23\x43\x23\x28')](_0x1a53ae=>_0x1a53ae[_0x19fbd8(0x24f,'\x42\x65\x23\x2a')]>=-0x49b+0x20b2+-0x1bef&&(REUSABLE_RE['\x74\x65\x73\x74'](_0x1a53ae)||hasPositiveProof(_0x1a53ae)));return cleanText(_0x40a0d3??_0x51e057[0x6ad*-0x5+-0x12e1+0x3442]??_0x4f264f[0x16d*-0x19+-0x10e7*0x1+0x13*0x2c4]??_0x19fbd8(0x1e3,'\x24\x31\x4f\x30')+_0x19fbd8(0x1ee,'\x6c\x24\x52\x4b')+_0x19fbd8(0x26d,'\x74\x31\x35\x46')+_0x19fbd8(0x26c,'\x34\x53\x38\x58')+_0x19fbd8(0x228,'\x47\x32\x79\x28')+'\x79\x2e',-0x492+-0x1b54+0x6*0x56f);}export function sniffConversationCapabilities(_0x384fa9,_0x17e976={}){const _0x5d45ea=_0x39adb0,_0x2e9f4e=_0x384fa9[_0x5d45ea(0x24d,'\x46\x34\x24\x55')](_0x1ecef7=>!_0x1ecef7[_0x5d45ea(0x270,'\x6e\x33\x5b\x33')]);if(_0x2e9f4e[_0x5d45ea(0x1dc,'\x42\x4c\x6a\x39')]===0xf66+0x1*-0x1c67+0xd01)return[];const _0x5e60c8=_0x2e9f4e[_0x5d45ea(0x1e2,'\x50\x61\x24\x46')](turnText)[_0x5d45ea(0x1f1,'\x74\x31\x35\x46')](Boolean)[_0x5d45ea(0x1fe,'\x6f\x6b\x77\x44')]('\x0a');if(!_0x5e60c8[_0x5d45ea(0x24b,'\x50\x61\x24\x46')]())return[];const _0x286f1a=pickEvidence(_0x2e9f4e,REUSABLE_RE),_0xeff00a=pickEvidence(_0x2e9f4e,hasPositiveProof);if(_0x286f1a[_0x5d45ea(0x203,'\x50\x61\x24\x46')]===-0x8*-0x239+-0x2*-0x69b+-0x1efe||_0xeff00a[_0x5d45ea(0x23c,'\x23\x43\x23\x28')]===-0x18fb+-0x1a6c*0x1+0x3367)return[];const _0x5a537f=hasFailure(_0x5e60c8)&&!hasPositiveProof(_0x5e60c8);if(_0x5a537f)return[];if(!hasTerminalSuccessfulToolRun(_0x2e9f4e))return[];const _0x2ea62f=collectToolCalls(_0x2e9f4e),_0x273844=domainSignals(_0x5e60c8,_0x2ea62f),_0x1c5625=[...new Set([_0x5d45ea(0x1f4,'\x32\x25\x5a\x76')+_0x5d45ea(0x269,'\x73\x59\x35\x68')+_0x5d45ea(0x23e,'\x73\x5e\x68\x7a'),_0x5d45ea(0x24e,'\x62\x65\x76\x39')+_0x5d45ea(0x206,'\x55\x70\x28\x78')+'\x77',..._0x273844])][_0x5d45ea(0x20e,'\x34\x53\x38\x58')](-0x14d2*-0x1+-0x55*0x29+-0x2d*0x29,0x1f05*-0x1+-0x2*-0x593+0x13e7),_0x7d4f45=-0x9cf+0x1495+-0xac2+Math[_0x5d45ea(0x1ea,'\x59\x38\x67\x6b')](0x1100+0x38*-0x7f+0xaca,_0x286f1a['\x6c\x65\x6e\x67\x74\x68'])+Math[_0x5d45ea(0x207,'\x73\x5e\x68\x7a')](-0x1*0xb03+-0xd5e+0x1863,_0xeff00a[_0x5d45ea(0x205,'\x6c\x24\x52\x4b')])+Math[_0x5d45ea(0x267,'\x6b\x71\x47\x7a')](-0x150d+-0x23f3+0x2*0x1c81,_0x2ea62f[_0x5d45ea(0x24f,'\x42\x65\x23\x2a')]),_0x58d2a0=pickSummary(_0x2e9f4e,_0x286f1a,_0xeff00a),_0x185b4b=_0x273844[0x32f+0x4de*-0x1+0x1af]??'\x76\x65\x72\x69\x66\x69\x65\x64'+_0x5d45ea(0x237,'\x32\x25\x5a\x76')+'\x77',_0x24ccfa={'\x69\x64':stableId({'\x73\x75\x6d\x6d\x61\x72\x79':_0x58d2a0,'\x73\x69\x67\x6e\x61\x6c\x73':_0x1c5625,'\x65\x76\x69\x64\x65\x6e\x63\x65':[..._0x286f1a,..._0xeff00a]['\x73\x6c\x69\x63\x65'](0xed9+-0x16a5+0x7cc,0x1ce4+-0x6e1+-0x15ff)}),'\x74\x69\x74\x6c\x65':'\x56\x65\x72\x69\x66\x69\x65\x64'+_0x5d45ea(0x1fc,'\x57\x76\x6b\x23')+_0x5d45ea(0x214,'\x6d\x59\x47\x73')+_0x5d45ea(0x240,'\x4b\x32\x48\x43')+_0x185b4b,'\x73\x75\x6d\x6d\x61\x72\x79':_0x58d2a0,'\x73\x69\x67\x6e\x61\x6c\x73':_0x1c5625,'\x65\x76\x69\x64\x65\x6e\x63\x65':[..._0x286f1a,..._0xeff00a][_0x5d45ea(0x250,'\x6e\x23\x64\x4a')](-0x1030+0xb*-0x23c+0x28c4,-0x7b6+0x1*0x155e+-0xda4*0x1),'\x73\x63\x6f\x72\x65':_0x7d4f45,'\x72\x65\x61\x73\x6f\x6e\x73':[_0x5d45ea(0x213,'\x37\x4c\x6b\x37')+'\x5f\x6d\x61\x72\x6b\x65\x72',_0x5d45ea(0x1fd,'\x42\x4c\x6a\x39')+_0x5d45ea(0x253,'\x42\x4c\x6a\x39'),..._0x2ea62f[_0x5d45ea(0x26a,'\x46\x34\x24\x55')]>-0xf*-0x27e+-0x1d35+0x82d*-0x1?[_0x5d45ea(0x229,'\x73\x59\x35\x68')+_0x5d45ea(0x25c,'\x6e\x77\x32\x5e')]:[]],'\x74\x6f\x6f\x6c\x43\x61\x6c\x6c\x73':_0x2ea62f};return[_0x24ccfa][_0x5d45ea(0x249,'\x23\x43\x23\x28')](-0x82*-0x35+0x1*-0x26da+0xbf0,_0x17e976['\x6d\x61\x78\x48\x69\x74\x73']??0x1a*0x7d+-0x9e1+-0x168*0x2);}
|