@evomap/evolver-core 2.0.0 → 2.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/dist/algo/antiDistill.js +1 -167
  2. package/dist/algo/bans.js +1 -33
  3. package/dist/algo/candidateAssembly.js +1 -273
  4. package/dist/algo/capabilityCandidates.js +1 -146
  5. package/dist/algo/confidence.js +1 -196
  6. package/dist/algo/conversationSniffer.js +1 -149
  7. package/dist/algo/cycleEngine.js +1 -625
  8. package/dist/algo/cycleFailureClassifier.js +1 -112
  9. package/dist/algo/epigenetics.js +1 -41
  10. package/dist/algo/evolutionEvent.js +1 -24
  11. package/dist/algo/exploration.js +1 -68
  12. package/dist/algo/geneHealth.js +1 -17
  13. package/dist/algo/geneIntake.js +1 -128
  14. package/dist/algo/genePromotion.js +1 -53
  15. package/dist/algo/geneSelection.js +1 -546
  16. package/dist/algo/index.js +1 -22
  17. package/dist/algo/memoryGraph.js +1 -86
  18. package/dist/algo/mutation.js +1 -22
  19. package/dist/algo/orchestrator.js +1 -87
  20. package/dist/algo/publishEligibility.js +1 -52
  21. package/dist/algo/solidify.js +1 -63
  22. package/dist/algo/strategyPresets.js +1 -61
  23. package/dist/algo/ucb1.js +1 -156
  24. package/dist/benchmark/antiGeneBenchmark.js +1 -252
  25. package/dist/benchmark/antiGeneImpact.js +1 -34
  26. package/dist/benchmark/antiGeneRollout.js +1 -269
  27. package/dist/benchmark/benchmark.js +1 -26
  28. package/dist/benchmark/evolutionThesisSolver.js +1 -41
  29. package/dist/benchmark/index.js +1 -7
  30. package/dist/benchmark/selectionFlatAbstention.js +1 -481
  31. package/dist/benchmark/thesis.js +1 -150
  32. package/dist/benchmark/triggerShift.js +1 -106
  33. package/dist/cycle/cycleTimeline.js +1 -74
  34. package/dist/cycle/index.js +1 -2
  35. package/dist/cycle/stateMachine.js +1 -25
  36. package/dist/hub/agentDirectory.js +1 -104
  37. package/dist/hub/assetCallLog.js +1 -195
  38. package/dist/hub/bindings.js +1 -121
  39. package/dist/hub/capability.js +1 -1
  40. package/dist/hub/conversationDistiller.js +1 -264
  41. package/dist/hub/fake.js +1 -70
  42. package/dist/hub/hubReview.js +1 -106
  43. package/dist/hub/index.js +1 -11
  44. package/dist/hub/ingest.js +1 -15
  45. package/dist/hub/questionGenerator.js +1 -408
  46. package/dist/hub/reuseDecision.js +1 -127
  47. package/dist/hub/sanitize.js +1 -322
  48. package/dist/material/boundary.js +1 -14
  49. package/dist/material/consumer.js +1 -55
  50. package/dist/material/emit.js +1 -52
  51. package/dist/material/factory.js +1 -25
  52. package/dist/material/index.js +1 -9
  53. package/dist/material/materialArchive.js +1 -466
  54. package/dist/material/materialStore.js +1 -69
  55. package/dist/material/sampling.js +1 -39
  56. package/dist/material/sources.js +1 -33
  57. package/dist/material/watermark.js +1 -76
  58. package/dist/personality/drift.js +1 -106
  59. package/dist/personality/events.js +1 -37
  60. package/dist/personality/evolveOps.js +1 -93
  61. package/dist/personality/index.js +1 -11
  62. package/dist/personality/mutate.js +1 -39
  63. package/dist/personality/pivot.js +1 -22
  64. package/dist/personality/prompt.js +1 -62
  65. package/dist/personality/riskGate.js +1 -80
  66. package/dist/personality/schema.js +1 -119
  67. package/dist/personality/select.js +1 -71
  68. package/dist/personality/stats.js +1 -82
  69. package/dist/personality/store.js +1 -92
  70. package/dist/schema/common.js +1 -17
  71. package/dist/schema/evolutionGraph.js +1 -187
  72. package/dist/schema/index.js +1 -6
  73. package/dist/schema/material.js +1 -50
  74. package/dist/schema/problem.js +1 -45
  75. package/dist/schema/proofOfWork.js +1 -9
  76. package/dist/schema/signal.js +1 -19
  77. package/dist/signals/curriculum.js +1 -202
  78. package/dist/signals/cycleHistoryFromEvents.js +1 -105
  79. package/dist/signals/expand.js +1 -293
  80. package/dist/signals/extractor.js +1 -82
  81. package/dist/signals/index.js +1 -8
  82. package/dist/signals/metaSignals.js +1 -200
  83. package/dist/signals/signalGate.js +1 -40
  84. package/dist/signals/taskDomain.js +1 -43
  85. package/dist/signals/traceSignals.js +1 -123
  86. package/dist/strategy/constraintAblation.js +1 -2820
  87. package/dist/strategy/constraintAblationPredicates.js +1 -339
  88. package/dist/strategy/experiment.js +1 -63
  89. package/dist/strategy/index.js +1 -3
  90. package/dist/strategy/strategyPoint.js +1 -23
  91. package/package.json +1 -1
@@ -1,53 +1 @@
1
- import { aggregateLearningHistory } from '../assetstore/learningHistory.js';
2
- /** The default proven-success bar. Symmetric to reuse-report's prune threshold (a few clean signals, not one). */
3
- export const DEFAULT_PROMOTE_MIN_SUCCESS = 3;
4
- /**
5
- * The single promote predicate: a quarantined gene auto-promotes iff it has ZERO failures AND at least minSuccess
6
- * real (value-producing) successes. Inert (zero-work) successes are excluded by aggregateLearningHistory, so they
7
- * never count here. Every surface that judges promote-eligibility (auto-promote, reuse-report --promote, the
8
- * review listing) MUST route through this so they cannot diverge — e.g. a gene the review view labels "healthy"
9
- * by success-rate but that still has a failure must read as NOT promotable here.
10
- */
11
- export function probationWouldPromote(view, minSuccess = DEFAULT_PROMOTE_MIN_SUCCESS) {
12
- return view.failed === 0 && view.success >= minSuccess;
13
- }
14
- /**
15
- * Read-only scan of the review ledger: for every QUARANTINED gene, derive its learning evidence and whether it
16
- * meets the promote bar right now. The single source of truth for the promote predicate — autoPromoteProbationGenes
17
- * acts on exactly this, and reuse-report --promote displays it. Never mutates the ledger.
18
- */
19
- export async function scanProbationGenes(store, review, opts = {}) {
20
- const minSuccess = opts.minSuccess ?? DEFAULT_PROMOTE_MIN_SUCCESS;
21
- const out = [];
22
- for (const rec of review.records()) {
23
- if (rec.state !== 'quarantined')
24
- continue; // only probation drafts; human approve/reject is left alone
25
- const gene = await store.get(rec.assetId);
26
- if (!gene || gene.type !== 'Gene')
27
- continue;
28
- const geneId = typeof gene['id'] === 'string' ? String(gene['id']) : rec.assetId;
29
- const view = await aggregateLearningHistory(store, geneId);
30
- out.push({
31
- assetId: rec.assetId, geneId,
32
- success: view.success, failed: view.failed, inert: view.inert ?? 0, total: view.total,
33
- minSuccess, wouldPromote: probationWouldPromote(view, minSuccess),
34
- });
35
- }
36
- return out;
37
- }
38
- /**
39
- * Scan the review ledger for quarantined genes and auto-approve those whose cycle outcomes prove their value
40
- * (>= minSuccess real successes AND 0 failures). Returns the asset_ids promoted. Never promotes a gene with any
41
- * failure, nor one whose only "successes" were inert. Idempotent: an already-approved/rejected gene is skipped.
42
- */
43
- export async function autoPromoteProbationGenes(store, review, opts = {}) {
44
- const by = opts.by ?? 'auto-promote';
45
- const promoted = [];
46
- for (const s of await scanProbationGenes(store, review, opts)) {
47
- if (!s.wouldPromote)
48
- continue;
49
- review.approve(s.assetId, by, `evidence: ${s.success}/${s.total} success, 0 fail (auto-promote #306)`);
50
- promoted.push(s.assetId);
51
- }
52
- return promoted;
53
- }
1
+ function _0x5e74(_0x12360a,_0x292384){_0x12360a=_0x12360a-(0x866*0x1+-0x2*0x1253+-0x23*-0xd5);const _0x28b992=_0x5c5c();let _0x3886f5=_0x28b992[_0x12360a];if(_0x5e74['\x76\x64\x65\x68\x6d\x4e']===undefined){var _0x463d7b=function(_0x40cab7){const _0x214995='\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 _0x14b72a='',_0x4da271='';for(let _0x38fc73=-0x1c5b+-0x4b*-0x83+-0x2*0x503,_0x2ac850,_0x33532f,_0x2251fe=-0x1*-0x17b1+-0xac8+-0xce9;_0x33532f=_0x40cab7['\x63\x68\x61\x72\x41\x74'](_0x2251fe++);~_0x33532f&&(_0x2ac850=_0x38fc73%(0x4*-0x65e+0x1894+0x2*0x74)?_0x2ac850*(-0x1d66+0x1b58+0x24e)+_0x33532f:_0x33532f,_0x38fc73++%(0xb*-0x2b8+-0x69d*0x2+-0x7*-0x62a))?_0x14b72a+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](0x394*0x3+-0x20a6+0x159*0x11&_0x2ac850>>(-(0x1*0x1727+-0x71d*0x2+-0x8eb)*_0x38fc73&0x31*0x66+0x2177*-0x1+0xdf7)):-0x25c8+0x2b*-0x5e+0x3592*0x1){_0x33532f=_0x214995['\x69\x6e\x64\x65\x78\x4f\x66'](_0x33532f);}for(let _0x26b005=0xf50+-0x9e3+0x1*-0x56d,_0x3c0986=_0x14b72a['\x6c\x65\x6e\x67\x74\x68'];_0x26b005<_0x3c0986;_0x26b005++){_0x4da271+='\x25'+('\x30\x30'+_0x14b72a['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x26b005)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](0x1f57+0x131e+-0x3265))['\x73\x6c\x69\x63\x65'](-(-0x1*0x4d5+0x5a4+0x5*-0x29));}return decodeURIComponent(_0x4da271);};const _0x12c7fd=function(_0x3d6b8b,_0x1422f0){let _0x260191=[],_0x347395=-0x1d41+0x1927+0x41a,_0x1d55b8,_0x30fc1e='';_0x3d6b8b=_0x463d7b(_0x3d6b8b);let _0x26eca7;for(_0x26eca7=0x32b*-0x9+-0x1*0x16cd+-0xcd4*-0x4;_0x26eca7<0x201a*-0x1+0x15da+0xb40;_0x26eca7++){_0x260191[_0x26eca7]=_0x26eca7;}for(_0x26eca7=-0x1834+0x22dc+0x2aa*-0x4;_0x26eca7<0x2*-0xb6f+0x15e4+0x1fa;_0x26eca7++){_0x347395=(_0x347395+_0x260191[_0x26eca7]+_0x1422f0['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x26eca7%_0x1422f0['\x6c\x65\x6e\x67\x74\x68']))%(0xbbf*-0x1+-0x29*-0x99+-0xbc2),_0x1d55b8=_0x260191[_0x26eca7],_0x260191[_0x26eca7]=_0x260191[_0x347395],_0x260191[_0x347395]=_0x1d55b8;}_0x26eca7=0x2*-0xbaa+-0x621*0x6+0x3c1a,_0x347395=-0x1356+0x2*-0xd2b+0x2dac;for(let _0x218b02=-0x22c2+-0x4e6+0x27a8;_0x218b02<_0x3d6b8b['\x6c\x65\x6e\x67\x74\x68'];_0x218b02++){_0x26eca7=(_0x26eca7+(0x1db1+-0xce0+-0x10d0))%(-0x1*-0x1edd+-0x7b+-0x1d62),_0x347395=(_0x347395+_0x260191[_0x26eca7])%(-0x1574+-0xd7*0xb+0x1fb1*0x1),_0x1d55b8=_0x260191[_0x26eca7],_0x260191[_0x26eca7]=_0x260191[_0x347395],_0x260191[_0x347395]=_0x1d55b8,_0x30fc1e+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x3d6b8b['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x218b02)^_0x260191[(_0x260191[_0x26eca7]+_0x260191[_0x347395])%(-0x1*-0x2619+-0x7*0x28c+-0x1*0x1345)]);}return _0x30fc1e;};_0x5e74['\x67\x41\x54\x6e\x4f\x42']=_0x12c7fd,_0x5e74['\x54\x6e\x64\x4b\x52\x55']={},_0x5e74['\x76\x64\x65\x68\x6d\x4e']=!![];}const _0x537abd=_0x28b992[-0x1*0x19d6+0x3*0x191+-0x305*-0x7],_0x2d0912=_0x12360a+_0x537abd,_0x3b53b8=_0x5e74['\x54\x6e\x64\x4b\x52\x55'][_0x2d0912];return!_0x3b53b8?(_0x5e74['\x42\x70\x6a\x54\x75\x52']===undefined&&(_0x5e74['\x42\x70\x6a\x54\x75\x52']=!![]),_0x3886f5=_0x5e74['\x67\x41\x54\x6e\x4f\x42'](_0x3886f5,_0x292384),_0x5e74['\x54\x6e\x64\x4b\x52\x55'][_0x2d0912]=_0x3886f5):_0x3886f5=_0x3b53b8,_0x3886f5;}(function(_0x1422f0,_0x260191){const _0x1c6600=_0x5e74,_0x347395=_0x1422f0();while(!![]){try{const _0x1d55b8=parseInt(_0x1c6600(0x105,'\x6f\x64\x68\x54'))/(-0xe*-0x2+0x75c+-0x777)*(parseInt(_0x1c6600(0xe4,'\x6d\x57\x6e\x66'))/(0x2*-0xd2b+-0x239e+0x3df6))+parseInt(_0x1c6600(0xe8,'\x33\x56\x72\x35'))/(-0x4e6+-0x1dcd+-0x3*-0xb92)*(parseInt(_0x1c6600(0xf4,'\x49\x4c\x76\x54'))/(-0x1571+-0x1*0x1bd6+-0x1*-0x314b))+-parseInt(_0x1c6600(0xfc,'\x23\x59\x25\x59'))/(-0x2498+-0x2322+0x47bf)+-parseInt(_0x1c6600(0xeb,'\x30\x43\x71\x65'))/(0xff0*0x2+-0x1*0x1c2b+-0x1*0x3af)+parseInt(_0x1c6600(0xdf,'\x32\x35\x4e\x5e'))/(-0x1*-0xf95+-0xa1e+0x30*-0x1d)+-parseInt(_0x1c6600(0xef,'\x21\x21\x54\x6a'))/(0x30f*-0x3+0x889+0xac)+parseInt(_0x1c6600(0xec,'\x57\x74\x4c\x63'))/(0x6*-0xe5+-0x1*0x5b5+0xb1c)*(parseInt(_0x1c6600(0xfa,'\x4d\x30\x25\x26'))/(-0x17af+0xe03+0x2*0x4db));if(_0x1d55b8===_0x260191)break;else _0x347395['push'](_0x347395['shift']());}catch(_0x30fc1e){_0x347395['push'](_0x347395['shift']());}}}(_0x5c5c,-0x31eaf+0x25001+0x29*0x63b3));import{aggregateLearningHistory}from'\x2e\x2e\x2f\x61\x73\x73\x65\x74\x73\x74\x6f\x72\x65\x2f\x6c\x65\x61\x72\x6e\x69\x6e\x67\x48\x69\x73\x74\x6f\x72\x79\x2e\x6a\x73';function _0x5c5c(){const _0x2277af=['\x6e\x78\x64\x64\x4f\x4c\x69\x33\x57\x52\x38\x68\x43\x61','\x61\x6d\x6f\x53\x57\x50\x39\x6f\x57\x34\x68\x63\x50\x38\x6f\x4e\x57\x36\x38','\x57\x50\x42\x64\x52\x49\x71','\x72\x43\x6b\x59\x57\x35\x30\x41\x57\x36\x4a\x63\x4a\x38\x6f\x4b\x57\x37\x6d\x4c\x57\x52\x4b','\x62\x4d\x72\x30\x64\x53\x6b\x58\x67\x43\x6b\x6d\x57\x34\x64\x63\x52\x72\x53\x61\x57\x34\x56\x63\x4a\x57','\x57\x35\x46\x63\x4e\x53\x6f\x51\x65\x65\x74\x63\x4c\x75\x76\x36\x69\x43\x6f\x77\x57\x50\x56\x64\x4f\x61','\x57\x36\x54\x58\x57\x50\x4c\x34\x63\x6d\x6b\x53\x57\x37\x46\x63\x4f\x47','\x69\x4a\x74\x63\x49\x38\x6f\x32\x6f\x71\x58\x6c\x57\x51\x65','\x6c\x76\x68\x64\x4c\x65\x5a\x63\x48\x43\x6b\x76\x70\x71','\x77\x53\x6b\x79\x6d\x43\x6b\x79','\x57\x34\x68\x64\x4b\x6d\x6f\x42\x42\x61','\x6e\x4e\x43\x2b\x57\x50\x64\x64\x47\x4e\x66\x57\x57\x52\x52\x63\x4e\x4e\x74\x64\x4b\x67\x69','\x57\x34\x5a\x63\x4c\x63\x4b','\x44\x43\x6b\x79\x46\x53\x6b\x50\x57\x52\x79','\x42\x5a\x33\x64\x47\x53\x6b\x53\x57\x52\x5a\x64\x4c\x62\x58\x6f','\x72\x47\x43\x75\x64\x4a\x47\x36\x77\x38\x6b\x49\x57\x36\x79\x45\x67\x49\x38','\x57\x37\x42\x64\x52\x6d\x6b\x53\x41\x53\x6b\x45\x57\x34\x57','\x63\x38\x6f\x4a\x57\x35\x57\x32\x66\x57\x6a\x4b','\x78\x74\x71\x56\x42\x6d\x6f\x5a\x74\x53\x6f\x77\x57\x37\x30','\x57\x36\x38\x5a\x6a\x4c\x6e\x69\x6c\x65\x7a\x61\x6a\x38\x6b\x6f\x76\x72\x75\x62','\x6d\x75\x31\x68\x57\x4f\x68\x64\x53\x63\x70\x64\x54\x53\x6b\x6a\x66\x57\x78\x63\x52\x47\x30\x44','\x6f\x33\x4a\x63\x4e\x43\x6f\x35\x57\x36\x37\x63\x4a\x75\x30\x42\x68\x63\x57\x74\x6a\x5a\x46\x64\x55\x61','\x66\x53\x6f\x57\x57\x50\x4c\x68\x57\x35\x68\x63\x56\x53\x6f\x58','\x67\x6d\x6f\x33\x57\x36\x56\x64\x49\x6d\x6f\x71\x57\x36\x52\x63\x4c\x47','\x57\x50\x33\x63\x49\x53\x6b\x43\x70\x43\x6b\x58\x57\x35\x4f\x4d\x45\x38\x6f\x46\x57\x50\x69\x2f\x57\x52\x79','\x57\x52\x6c\x63\x4c\x43\x6f\x4e\x62\x64\x46\x63\x4c\x73\x6e\x63','\x45\x4a\x37\x64\x4d\x6d\x6b\x47','\x72\x61\x65\x74\x66\x71','\x72\x38\x6f\x78\x6a\x53\x6b\x36\x45\x59\x4a\x64\x48\x66\x5a\x64\x51\x64\x54\x49\x57\x35\x4f','\x57\x34\x42\x64\x4d\x53\x6f\x66\x57\x37\x4b\x4c\x57\x52\x78\x63\x52\x61','\x57\x51\x79\x54\x57\x34\x46\x63\x51\x53\x6b\x64\x57\x4f\x5a\x64\x4a\x68\x71','\x57\x35\x68\x64\x48\x33\x70\x63\x4f\x38\x6b\x56\x57\x50\x4a\x64\x54\x43\x6f\x48\x57\x50\x74\x64\x4e\x53\x6b\x37\x45\x38\x6b\x53','\x77\x38\x6f\x34\x77\x61\x78\x64\x52\x43\x6b\x4f\x69\x57\x52\x63\x49\x68\x71','\x57\x4f\x78\x64\x4f\x43\x6b\x67\x57\x52\x58\x7a','\x66\x4b\x66\x76\x74\x4d\x72\x38\x41\x57','\x6c\x6d\x6f\x6f\x41\x43\x6f\x6d\x74\x66\x62\x59\x57\x52\x4b\x51\x57\x34\x79\x66\x57\x52\x42\x63\x52\x64\x6d','\x57\x37\x75\x51\x57\x34\x64\x63\x4f\x6d\x6b\x6f\x57\x4f\x34','\x57\x50\x46\x64\x4e\x38\x6b\x58\x71\x48\x70\x64\x4b\x65\x79','\x57\x34\x70\x63\x47\x4a\x34\x35\x57\x52\x64\x64\x4f\x6d\x6b\x62','\x57\x35\x4e\x64\x4a\x72\x64\x64\x4e\x38\x6f\x35\x57\x37\x5a\x63\x52\x43\x6f\x2f','\x6f\x64\x42\x64\x48\x38\x6f\x4a\x6c\x53\x6b\x70\x57\x35\x43\x4f','\x6a\x4d\x56\x63\x4d\x38\x6f\x4f\x57\x52\x2f\x64\x4d\x58\x7a\x68','\x57\x50\x64\x64\x56\x43\x6b\x62\x57\x52\x48\x62\x68\x6d\x6b\x34','\x69\x49\x52\x63\x54\x74\x37\x64\x48\x38\x6f\x6a\x79\x38\x6b\x52\x57\x37\x58\x68\x57\x50\x78\x64\x49\x53\x6f\x70','\x6b\x4e\x64\x64\x55\x31\x47','\x67\x38\x6f\x53\x57\x35\x46\x63\x55\x31\x33\x64\x53\x38\x6b\x6c','\x57\x52\x44\x4f\x57\x4f\x70\x64\x55\x38\x6f\x74\x57\x35\x4e\x64\x51\x4b\x62\x71\x57\x4f\x68\x64\x4d\x6d\x6b\x59','\x57\x4f\x4e\x63\x48\x49\x52\x64\x49\x47','\x57\x35\x70\x63\x4e\x38\x6f\x4e\x67\x65\x64\x63\x4b\x47\x62\x33\x64\x43\x6f\x5a\x57\x51\x68\x64\x4c\x66\x79'];_0x5c5c=function(){return _0x2277af;};return _0x5c5c();}export const DEFAULT_PROMOTE_MIN_SUCCESS=-0xac8+0x2198+-0x16cd;export function probationWouldPromote(_0xb30721,_0x1f8b25=DEFAULT_PROMOTE_MIN_SUCCESS){const _0x4553ea=_0x5e74;return _0xb30721[_0x4553ea(0x10d,'\x74\x5d\x67\x72')]===0x4*-0x65e+0x1894+0x3*0x4c&&_0xb30721[_0x4553ea(0xe9,'\x71\x34\x71\x76')]>=_0x1f8b25;}export async function scanProbationGenes(_0x45bb68,_0x38a3a8,_0x3baf68={}){const _0x43cdb1=_0x5e74,_0x119116=_0x3baf68[_0x43cdb1(0x10f,'\x42\x68\x46\x78')+'\x73\x73']??DEFAULT_PROMOTE_MIN_SUCCESS,_0x56d973=[];for(const _0x21483e of _0x38a3a8[_0x43cdb1(0xf9,'\x53\x44\x71\x53')]()){if(_0x21483e['\x73\x74\x61\x74\x65']!==_0x43cdb1(0xe5,'\x78\x6c\x5e\x70')+_0x43cdb1(0x109,'\x29\x4b\x78\x5a'))continue;const _0x3cca32=await _0x45bb68[_0x43cdb1(0xff,'\x49\x74\x40\x39')](_0x21483e[_0x43cdb1(0xf6,'\x42\x28\x48\x4d')]);if(!_0x3cca32||_0x3cca32[_0x43cdb1(0xfb,'\x75\x70\x34\x73')]!==_0x43cdb1(0x106,'\x21\x21\x54\x6a'))continue;const _0x7d7773=typeof _0x3cca32['\x69\x64']===_0x43cdb1(0xf0,'\x4d\x30\x25\x26')?String(_0x3cca32['\x69\x64']):_0x21483e[_0x43cdb1(0xe2,'\x72\x34\x41\x52')],_0x559755=await aggregateLearningHistory(_0x45bb68,_0x7d7773);_0x56d973[_0x43cdb1(0xe6,'\x79\x6e\x35\x68')]({'\x61\x73\x73\x65\x74\x49\x64':_0x21483e[_0x43cdb1(0xf2,'\x29\x4b\x78\x5a')],'\x67\x65\x6e\x65\x49\x64':_0x7d7773,'\x73\x75\x63\x63\x65\x73\x73':_0x559755[_0x43cdb1(0x10e,'\x61\x56\x6d\x53')],'\x66\x61\x69\x6c\x65\x64':_0x559755['\x66\x61\x69\x6c\x65\x64'],'\x69\x6e\x65\x72\x74':_0x559755[_0x43cdb1(0x10a,'\x29\x31\x40\x71')]??-0x1d66+0x1b58+0x20e,'\x74\x6f\x74\x61\x6c':_0x559755['\x74\x6f\x74\x61\x6c'],'\x6d\x69\x6e\x53\x75\x63\x63\x65\x73\x73':_0x119116,'\x77\x6f\x75\x6c\x64\x50\x72\x6f\x6d\x6f\x74\x65':probationWouldPromote(_0x559755,_0x119116)});}return _0x56d973;}export async function autoPromoteProbationGenes(_0x54b8dd,_0xed4aac,_0x3b962c={}){const _0x80a21e=_0x5e74,_0x519d1d=_0x3b962c['\x62\x79']??_0x80a21e(0x103,'\x68\x30\x75\x44')+_0x80a21e(0xf8,'\x42\x41\x43\x5e'),_0x4bf253=[];for(const _0x1e530f of await scanProbationGenes(_0x54b8dd,_0xed4aac,_0x3b962c)){if(!_0x1e530f[_0x80a21e(0xfe,'\x72\x34\x41\x52')+_0x80a21e(0x107,'\x6d\x57\x6e\x66')])continue;_0xed4aac[_0x80a21e(0xee,'\x6c\x6f\x57\x66')](_0x1e530f[_0x80a21e(0xe3,'\x5d\x26\x49\x42')],_0x519d1d,_0x80a21e(0x10b,'\x79\x6e\x35\x68')+'\x3a\x20'+_0x1e530f[_0x80a21e(0xf1,'\x23\x59\x25\x59')]+'\x2f'+_0x1e530f[_0x80a21e(0xed,'\x42\x28\x48\x4d')]+(_0x80a21e(0xea,'\x4d\x30\x25\x26')+_0x80a21e(0xf5,'\x79\x6e\x35\x68')+_0x80a21e(0x104,'\x30\x29\x5b\x37')+_0x80a21e(0xfd,'\x42\x41\x43\x5e')+_0x80a21e(0xe7,'\x6c\x6f\x57\x66'))),_0x4bf253['\x70\x75\x73\x68'](_0x1e530f[_0x80a21e(0xf6,'\x42\x28\x48\x4d')]);}return _0x4bf253;}