@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.
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(_0x26e662,_0x1537cf){const _0x56e34d=_0x48f8,_0xe2de0e=_0x26e662();while(!![]){try{const _0xcfc4fe=-parseInt(_0x56e34d(0x16b,'\x70\x61\x47\x68'))/(-0x594*-0x6+0x1*-0x2c5+-0x1eb2)+parseInt(_0x56e34d(0x177,'\x5b\x42\x5e\x35'))/(-0x7*-0x56+-0x3*-0x76d+-0x189f)*(parseInt(_0x56e34d(0x172,'\x77\x61\x6c\x72'))/(0xce3+0x116*0x8+-0x1590))+parseInt(_0x56e34d(0x188,'\x45\x47\x42\x21'))/(0xdd3*-0x1+0x9d7*0x1+0x400)*(-parseInt(_0x56e34d(0x17e,'\x64\x48\x68\x2a'))/(0x1*0x1b0f+-0x492+-0x1678))+parseInt(_0x56e34d(0x179,'\x7a\x6b\x63\x34'))/(0x1a9*-0x3+-0x152b+0x1a2c)*(parseInt(_0x56e34d(0x186,'\x44\x57\x32\x76'))/(-0xf40+0x21b4+-0x126d))+parseInt(_0x56e34d(0x187,'\x51\x43\x55\x59'))/(0x19dc+0x1*-0x1409+0x1*-0x5cb)*(-parseInt(_0x56e34d(0x178,'\x45\x47\x42\x21'))/(0x20c3*-0x1+0x1329+-0x1*-0xda3))+-parseInt(_0x56e34d(0x18d,'\x29\x75\x31\x5b'))/(-0x5*-0x635+0x40*0x71+-0x3b3f)+parseInt(_0x56e34d(0x165,'\x5b\x42\x5e\x35'))/(0x2575+0xa05+-0x2f6f)*(parseInt(_0x56e34d(0x171,'\x67\x26\x75\x79'))/(0x2*-0xe77+-0x199c+0x919*0x6));if(_0xcfc4fe===_0x1537cf)break;else _0xe2de0e['push'](_0xe2de0e['shift']());}catch(_0x449b7f){_0xe2de0e['push'](_0xe2de0e['shift']());}}}(_0x3ea0,0xae5e2+-0x1134*-0xd3+-0xd24fa));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';export const DEFAULT_PROMOTE_MIN_SUCCESS=-0x1ab1+0x1ec5*0x1+-0x411;function _0x48f8(_0x50b6c1,_0x2a1c20){_0x50b6c1=_0x50b6c1-(0x6a*0x36+-0x1ff2+0xafb);const _0x370f94=_0x3ea0();let _0x3b6bee=_0x370f94[_0x50b6c1];if(_0x48f8['\x66\x5a\x6d\x64\x4b\x4b']===undefined){var _0x133c16=function(_0x5ae518){const _0x2d4705='\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 _0xb772c2='',_0x1d135e='';for(let _0x58d36c=0x233b+-0x22cd+-0x6e,_0xff725a,_0x14c170,_0x1f45b6=-0xffd+0x12e*0x15+-0x8c9;_0x14c170=_0x5ae518['\x63\x68\x61\x72\x41\x74'](_0x1f45b6++);~_0x14c170&&(_0xff725a=_0x58d36c%(0x1ec5*0x1+-0x17ed+-0x6d4)?_0xff725a*(-0x68a+0x22f0+-0x1c26)+_0x14c170:_0x14c170,_0x58d36c++%(0x7a8+0x3*-0x539+-0x3*-0x2ad))?_0xb772c2+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](-0x9da+0xdc0+-0x2e7&_0xff725a>>(-(-0x19b*-0x11+0x35*-0x11+0x75*-0x34)*_0x58d36c&-0x6e5*0x5+-0x61f*0x1+-0x6c5*-0x6)):0x93f+-0x1518+0x9*0x151){_0x14c170=_0x2d4705['\x69\x6e\x64\x65\x78\x4f\x66'](_0x14c170);}for(let _0x4f3ff0=0x2*0xe0a+0x1a*0x86+-0x29b0,_0x173b9a=_0xb772c2['\x6c\x65\x6e\x67\x74\x68'];_0x4f3ff0<_0x173b9a;_0x4f3ff0++){_0x1d135e+='\x25'+('\x30\x30'+_0xb772c2['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x4f3ff0)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](0x3*0x3ad+0x1204+-0x1cfb))['\x73\x6c\x69\x63\x65'](-(0x188f+-0x1e2*-0x2+0xb*-0x293));}return decodeURIComponent(_0x1d135e);};const _0x580ba1=function(_0x2c0e38,_0x5941e3){let _0x325181=[],_0x5118ec=0x1efd+-0x170b+0x3*-0x2a6,_0x3b7a27,_0x7b34a8='';_0x2c0e38=_0x133c16(_0x2c0e38);let _0x47130c;for(_0x47130c=0x196c+-0x7f4+-0x1178;_0x47130c<-0x2d*0x91+-0x227f+0x3cfc;_0x47130c++){_0x325181[_0x47130c]=_0x47130c;}for(_0x47130c=0x30d+0x788+-0xa95;_0x47130c<0x11d5+0x580*0x4+-0x26d5;_0x47130c++){_0x5118ec=(_0x5118ec+_0x325181[_0x47130c]+_0x5941e3['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x47130c%_0x5941e3['\x6c\x65\x6e\x67\x74\x68']))%(0x2*0x373+-0x3c8+-0x21e*0x1),_0x3b7a27=_0x325181[_0x47130c],_0x325181[_0x47130c]=_0x325181[_0x5118ec],_0x325181[_0x5118ec]=_0x3b7a27;}_0x47130c=-0x2522+0x50d*0x3+-0x1*-0x15fb,_0x5118ec=-0x215b*-0x1+0x10da+0x1*-0x3235;for(let _0x5f453d=0xf2b+-0xbc6+0xb*-0x4f;_0x5f453d<_0x2c0e38['\x6c\x65\x6e\x67\x74\x68'];_0x5f453d++){_0x47130c=(_0x47130c+(-0x84d+-0x1c04+0x2*0x1229))%(-0x594*-0x6+0x1*-0x2c5+-0x1db3),_0x5118ec=(_0x5118ec+_0x325181[_0x47130c])%(-0x7*-0x56+-0x3*-0x76d+-0x17a1),_0x3b7a27=_0x325181[_0x47130c],_0x325181[_0x47130c]=_0x325181[_0x5118ec],_0x325181[_0x5118ec]=_0x3b7a27,_0x7b34a8+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x2c0e38['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x5f453d)^_0x325181[(_0x325181[_0x47130c]+_0x325181[_0x5118ec])%(0xce3+0x116*0x8+-0x1493)]);}return _0x7b34a8;};_0x48f8['\x43\x63\x64\x63\x53\x42']=_0x580ba1,_0x48f8['\x73\x69\x5a\x71\x61\x66']={},_0x48f8['\x66\x5a\x6d\x64\x4b\x4b']=!![];}const _0x119143=_0x370f94[0xdd3*-0x1+0x9d7*0x1+0x3fc],_0x299ba0=_0x50b6c1+_0x119143,_0x15daae=_0x48f8['\x73\x69\x5a\x71\x61\x66'][_0x299ba0];return!_0x15daae?(_0x48f8['\x71\x50\x62\x6c\x69\x51']===undefined&&(_0x48f8['\x71\x50\x62\x6c\x69\x51']=!![]),_0x3b6bee=_0x48f8['\x43\x63\x64\x63\x53\x42'](_0x3b6bee,_0x2a1c20),_0x48f8['\x73\x69\x5a\x71\x61\x66'][_0x299ba0]=_0x3b6bee):_0x3b6bee=_0x15daae,_0x3b6bee;}export function probationWouldPromote(_0x23a9ad,_0x407917=DEFAULT_PROMOTE_MIN_SUCCESS){const _0x5013a4=_0x48f8;return _0x23a9ad[_0x5013a4(0x185,'\x50\x31\x47\x62')]===-0x18d1*0x1+-0x68a+0x1f5b&&_0x23a9ad[_0x5013a4(0x16c,'\x4a\x32\x54\x68')]>=_0x407917;}function _0x3ea0(){const _0x2058ab=['\x57\x37\x68\x63\x55\x4b\x6a\x79\x78\x53\x6b\x41\x57\x37\x47\x72','\x57\x51\x68\x64\x50\x53\x6b\x33\x66\x57','\x57\x35\x79\x31\x6d\x4c\x43\x6a\x70\x47','\x70\x75\x53\x2f\x57\x4f\x4a\x64\x55\x43\x6b\x6f\x74\x57','\x57\x35\x30\x7a\x45\x43\x6f\x6f\x57\x4f\x7a\x59','\x67\x71\x4f\x64\x57\x37\x69\x44\x57\x50\x46\x64\x47\x6d\x6b\x38\x6d\x43\x6f\x38\x57\x34\x74\x64\x4f\x57','\x57\x51\x78\x63\x53\x43\x6f\x55\x57\x4f\x56\x63\x56\x53\x6f\x69\x78\x47','\x57\x35\x4e\x63\x48\x38\x6b\x4c\x6b\x30\x50\x36\x7a\x53\x6b\x4b','\x57\x37\x68\x64\x4a\x78\x6c\x64\x55\x4e\x52\x64\x4d\x31\x6c\x64\x53\x47','\x68\x73\x46\x63\x49\x47','\x57\x37\x44\x2f\x77\x73\x4f','\x57\x35\x52\x63\x4a\x6d\x6f\x4d\x43\x61\x4b\x50\x6f\x38\x6b\x79\x67\x4a\x5a\x64\x49\x6d\x6f\x48\x70\x47','\x57\x50\x57\x4c\x57\x35\x31\x4e\x57\x52\x71\x32\x57\x4f\x42\x64\x4f\x30\x6a\x4b\x57\x50\x42\x64\x56\x4b\x33\x63\x53\x71','\x57\x36\x33\x63\x4c\x6d\x6b\x57\x57\x4f\x33\x63\x50\x71','\x57\x36\x57\x4c\x57\x37\x46\x64\x47\x6d\x6f\x53\x57\x50\x42\x63\x4b\x43\x6f\x37\x6a\x67\x30','\x57\x36\x2f\x63\x4e\x38\x6f\x4c\x57\x52\x74\x63\x52\x53\x6f\x6f\x7a\x47','\x57\x52\x50\x71\x57\x36\x65\x6e\x45\x6d\x6f\x66\x57\x52\x37\x64\x4c\x57','\x57\x4f\x4a\x63\x4a\x4c\x46\x64\x4b\x53\x6b\x4a\x70\x4c\x61\x46\x57\x37\x42\x63\x51\x4b\x47\x6b','\x6d\x43\x6f\x39\x68\x43\x6f\x44\x6e\x75\x4e\x63\x48\x62\x74\x63\x49\x4a\x2f\x64\x52\x43\x6f\x30\x57\x37\x6d','\x44\x6d\x6b\x4b\x71\x6d\x6b\x63\x44\x72\x5a\x63\x4c\x75\x38','\x57\x35\x65\x4b\x6b\x30\x4b\x64\x6c\x66\x69','\x57\x52\x70\x63\x4e\x38\x6b\x50\x6d\x38\x6b\x73\x62\x61','\x57\x35\x47\x34\x44\x53\x6f\x65\x57\x34\x61','\x65\x4d\x4c\x76\x62\x59\x5a\x63\x50\x6d\x6b\x79\x57\x37\x57','\x62\x64\x42\x64\x4c\x57\x38','\x57\x50\x50\x31\x69\x38\x6b\x63\x57\x50\x70\x64\x47\x57\x61\x7a\x57\x52\x46\x64\x4e\x6d\x6b\x48','\x61\x64\x46\x63\x4a\x75\x6d\x4b\x62\x38\x6f\x79','\x6d\x6d\x6f\x2f\x66\x43\x6b\x44\x77\x58\x68\x64\x53\x73\x64\x63\x4d\x61','\x66\x74\x64\x64\x4c\x57\x6c\x64\x4f\x43\x6f\x63\x77\x57','\x57\x52\x31\x52\x57\x51\x56\x63\x4b\x6d\x6f\x49\x57\x50\x52\x63\x47\x38\x6f\x67','\x57\x37\x76\x33\x57\x4f\x46\x63\x4b\x6d\x6b\x33\x77\x32\x72\x6b','\x62\x6d\x6f\x4a\x7a\x78\x2f\x63\x4b\x43\x6b\x53\x43\x53\x6b\x52\x57\x36\x65\x77\x6b\x38\x6b\x58\x57\x36\x71','\x6f\x4a\x53\x54\x6e\x6d\x6f\x33\x57\x4f\x37\x64\x4f\x57','\x57\x52\x78\x64\x49\x38\x6f\x53\x57\x34\x4e\x64\x4f\x6d\x6b\x62\x57\x35\x4c\x50\x57\x37\x5a\x64\x56\x43\x6b\x4d\x57\x36\x46\x64\x4d\x38\x6f\x49','\x57\x4f\x47\x4c\x57\x37\x53\x65\x57\x36\x4e\x64\x4f\x6d\x6b\x65\x42\x71','\x57\x51\x78\x63\x55\x4c\x78\x63\x56\x63\x4c\x77\x57\x52\x33\x63\x56\x71','\x57\x51\x56\x63\x51\x77\x79','\x57\x4f\x42\x63\x49\x4d\x43\x30\x57\x52\x74\x63\x47\x43\x6f\x49\x57\x34\x44\x51\x6b\x67\x4b','\x57\x4f\x56\x63\x4a\x66\x46\x63\x56\x53\x6b\x51\x66\x38\x6b\x39\x73\x4d\x2f\x64\x48\x61','\x57\x50\x57\x54\x57\x35\x62\x4a\x57\x52\x6e\x6a\x57\x34\x74\x63\x55\x32\x7a\x47\x57\x52\x4f','\x57\x37\x34\x70\x57\x51\x6a\x69','\x57\x51\x5a\x64\x52\x58\x6d\x6b\x77\x43\x6b\x76\x57\x36\x75\x75','\x57\x4f\x47\x46\x6d\x32\x53\x6f\x6f\x68\x57','\x57\x50\x31\x34\x6c\x38\x6f\x61\x57\x37\x2f\x64\x4f\x64\x43\x39\x57\x4f\x4f','\x57\x35\x5a\x63\x49\x43\x6f\x47\x45\x61\x38\x55\x70\x43\x6b\x34\x66\x48\x5a\x64\x50\x38\x6f\x68\x6b\x47','\x57\x37\x74\x64\x4b\x38\x6b\x57\x6c\x38\x6b\x69\x6c\x31\x57\x55','\x57\x51\x68\x63\x4d\x6d\x6b\x4f\x70\x38\x6b\x69\x6b\x4e\x43','\x57\x52\x33\x63\x49\x43\x6f\x5a\x57\x52\x4a\x63\x56\x38\x6f\x70\x7a\x53\x6f\x31','\x6e\x43\x6f\x35\x68\x53\x6f\x76\x6e\x4b\x2f\x64\x53\x4a\x74\x63\x56\x59\x4a\x64\x4e\x53\x6f\x65','\x57\x35\x64\x63\x54\x6d\x6f\x51\x62\x65\x31\x7a\x57\x50\x53','\x57\x37\x4e\x64\x54\x63\x6a\x4e\x57\x51\x64\x63\x56\x6d\x6b\x32\x57\x36\x30\x50\x57\x35\x56\x63\x47\x58\x65','\x57\x4f\x38\x5a\x62\x53\x6b\x33','\x57\x36\x68\x63\x56\x38\x6b\x51\x57\x51\x74\x63\x4e\x47'];_0x3ea0=function(){return _0x2058ab;};return _0x3ea0();}export async function scanProbationGenes(_0x9a670d,_0x29be17,_0x10f79c={}){const _0xf24f5e=_0x48f8,_0x50ffc0=_0x10f79c[_0xf24f5e(0x189,'\x21\x64\x28\x21')+'\x73\x73']??DEFAULT_PROMOTE_MIN_SUCCESS,_0x2b6445=[];for(const _0x3ca57d of _0x29be17[_0xf24f5e(0x190,'\x51\x43\x55\x59')]()){if(_0x3ca57d[_0xf24f5e(0x197,'\x5b\x42\x5e\x35')]!==_0xf24f5e(0x175,'\x4d\x67\x37\x29')+_0xf24f5e(0x18a,'\x33\x29\x6e\x5b'))continue;const _0xf84744=await _0x9a670d[_0xf24f5e(0x170,'\x64\x48\x68\x2a')](_0x3ca57d[_0xf24f5e(0x17d,'\x6e\x6f\x47\x51')]);if(!_0xf84744||_0xf84744[_0xf24f5e(0x182,'\x30\x4c\x54\x74')]!=='\x47\x65\x6e\x65')continue;const _0x40e8de=typeof _0xf84744['\x69\x64']===_0xf24f5e(0x196,'\x7a\x6b\x63\x34')?String(_0xf84744['\x69\x64']):_0x3ca57d[_0xf24f5e(0x17a,'\x7a\x6b\x63\x34')],_0x51bbc6=await aggregateLearningHistory(_0x9a670d,_0x40e8de);_0x2b6445[_0xf24f5e(0x199,'\x29\x24\x65\x44')]({'\x61\x73\x73\x65\x74\x49\x64':_0x3ca57d[_0xf24f5e(0x184,'\x6e\x56\x4c\x57')],'\x67\x65\x6e\x65\x49\x64':_0x40e8de,'\x73\x75\x63\x63\x65\x73\x73':_0x51bbc6[_0xf24f5e(0x166,'\x33\x29\x6e\x5b')],'\x66\x61\x69\x6c\x65\x64':_0x51bbc6[_0xf24f5e(0x183,'\x49\x39\x45\x54')],'\x69\x6e\x65\x72\x74':_0x51bbc6[_0xf24f5e(0x18e,'\x34\x6f\x6c\x67')]??0x7a8+0x3*-0x539+-0x1*-0x803,'\x74\x6f\x74\x61\x6c':_0x51bbc6[_0xf24f5e(0x180,'\x70\x39\x50\x5b')],'\x6d\x69\x6e\x53\x75\x63\x63\x65\x73\x73':_0x50ffc0,'\x77\x6f\x75\x6c\x64\x50\x72\x6f\x6d\x6f\x74\x65':probationWouldPromote(_0x51bbc6,_0x50ffc0)});}return _0x2b6445;}export async function autoPromoteProbationGenes(_0x5596be,_0x4a0ef3,_0x59d09b={}){const _0x33c0b5=_0x48f8,_0x28377c=_0x59d09b['\x62\x79']??_0x33c0b5(0x16f,'\x2a\x76\x78\x5d')+_0x33c0b5(0x18b,'\x77\x6d\x24\x76'),_0x5c295e=[];for(const _0x982b2c of await scanProbationGenes(_0x5596be,_0x4a0ef3,_0x59d09b)){if(!_0x982b2c[_0x33c0b5(0x191,'\x61\x73\x30\x6b')+'\x6d\x6f\x74\x65'])continue;_0x4a0ef3[_0x33c0b5(0x195,'\x49\x39\x45\x54')](_0x982b2c[_0x33c0b5(0x168,'\x29\x24\x65\x44')],_0x28377c,_0x33c0b5(0x169,'\x5a\x59\x72\x26')+'\x3a\x20'+_0x982b2c['\x73\x75\x63\x63\x65\x73\x73']+'\x2f'+_0x982b2c['\x74\x6f\x74\x61\x6c']+(_0x33c0b5(0x17b,'\x51\x43\x55\x59')+_0x33c0b5(0x181,'\x4d\x67\x37\x29')+_0x33c0b5(0x16e,'\x34\x67\x50\x33')+_0x33c0b5(0x194,'\x63\x6a\x74\x38')+_0x33c0b5(0x174,'\x61\x73\x30\x6b'))),_0x5c295e[_0x33c0b5(0x17f,'\x28\x44\x61\x76')](_0x982b2c['\x61\x73\x73\x65\x74\x49\x64']);}return _0x5c295e;}