apt-mcp-agent-setup 3.5.13 → 3.5.15

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 (149) hide show
  1. package/README.md +12 -12
  2. package/bin/cli.js +1 -1
  3. package/build-input.json +122 -85
  4. package/bundle/NOTICES.md +0 -0
  5. package/bundle/core.enc +0 -0
  6. package/bundle/mcp-rules.enc +0 -0
  7. package/bundle/skills-aso.enc +0 -0
  8. package/bundle/skills-ba.enc +0 -0
  9. package/bundle/skills-base.enc +0 -0
  10. package/bundle/skills-be.enc +0 -0
  11. package/bundle/skills-design.enc +0 -0
  12. package/bundle/skills-fe.enc +0 -0
  13. package/bundle/skills-marketing.enc +0 -0
  14. package/bundle/skills-mobile.enc +0 -0
  15. package/bundle/skills-pm.enc +0 -0
  16. package/docs/technical-sources.md +8 -3
  17. package/integrity-manifest.json +149 -133
  18. package/package.json +1 -1
  19. package/release-check.js +26 -11
  20. package/src/backends/browser-tools.js +1 -1
  21. package/src/backends/index-cache-authority.js +1 -0
  22. package/src/backends/index-command.js +1 -1
  23. package/src/backends/index-maintenance.js +1 -0
  24. package/src/backends/index-store.js +1 -1
  25. package/src/backends/profiles.js +1 -1
  26. package/src/backends/review_graph.py +150 -6
  27. package/src/backends/source-discovery.js +1 -0
  28. package/src/core/admission-fence.js +1 -1
  29. package/src/core/aso-import.js +1 -1
  30. package/src/core/backend-lease-recovery.js +1 -0
  31. package/src/core/caller-context.js +1 -1
  32. package/src/core/catalog.js +1 -1
  33. package/src/core/claude-caller-authority.js +1 -1
  34. package/src/core/claude-invocation.js +1 -1
  35. package/src/core/claude-native.js +1 -1
  36. package/src/core/claude-plan.js +1 -1
  37. package/src/core/claude-transcript-scan.js +1 -1
  38. package/src/core/claude-worker-transcript.js +1 -1
  39. package/src/core/codex-host-metadata.js +1 -1
  40. package/src/core/codex-transcript-receipt.js +1 -1
  41. package/src/core/connection-inspector.js +1 -1
  42. package/src/core/context-metrics.js +1 -1
  43. package/src/core/doctor.js +1 -1
  44. package/src/core/draining-completion.js +1 -1
  45. package/src/core/execution.js +1 -1
  46. package/src/core/git-context.js +1 -1
  47. package/src/core/hook-bridge.js +1 -1
  48. package/src/core/hook-diagnostics.js +1 -0
  49. package/src/core/hook-lease.js +1 -0
  50. package/src/core/host-adapters.js +1 -1
  51. package/src/core/interrupted-operation-audit.js +1 -0
  52. package/src/core/ipc-envelope.js +1 -1
  53. package/src/core/legacy-retirement-proof.js +1 -0
  54. package/src/core/memory-scope.js +1 -1
  55. package/src/core/memory-store.js +1 -1
  56. package/src/core/model-inventory.js +1 -1
  57. package/src/core/model-routing.js +1 -1
  58. package/src/core/native-dispatch.js +1 -1
  59. package/src/core/native-receipt.js +1 -0
  60. package/src/core/node-version.js +1 -1
  61. package/src/core/npm-cli.js +1 -1
  62. package/src/core/owned-command-child.js +1 -1
  63. package/src/core/owned-command.js +1 -1
  64. package/src/core/owned-lock.js +1 -1
  65. package/src/core/owned-process.js +1 -1
  66. package/src/core/pipeline-journal.js +1 -0
  67. package/src/core/presentations.js +1 -1
  68. package/src/core/quality-artifacts.js +1 -1
  69. package/src/core/quality.js +1 -1
  70. package/src/core/read-command.js +1 -1
  71. package/src/core/readonly-skill.js +1 -1
  72. package/src/core/recovery-archive.js +1 -0
  73. package/src/core/resource-transaction.js +1 -1
  74. package/src/core/run-checkpoint.js +1 -1
  75. package/src/core/run-compatibility.js +1 -1
  76. package/src/core/run-state-codec.js +1 -0
  77. package/src/core/runtime-authority.js +1 -1
  78. package/src/core/runtime-info.js +1 -1
  79. package/src/core/runtime-ownership.js +1 -1
  80. package/src/core/session.js +1 -1
  81. package/src/core/skill-companions.js +1 -1
  82. package/src/core/skill-names.js +1 -1
  83. package/src/core/storage-retry.js +1 -1
  84. package/src/core/tool-contracts.js +1 -1
  85. package/src/core/update-control.js +1 -1
  86. package/src/core/upgrade-runs.js +1 -1
  87. package/src/core/upgrade-stop.js +1 -1
  88. package/src/core/windows-job.js +1 -1
  89. package/src/core/windows-legacy-query.ps1 +277 -0
  90. package/src/core/workflow-policy.js +1 -0
  91. package/src/core/workspace-generation.js +1 -1
  92. package/src/core/workspace-path.js +1 -1
  93. package/src/installer/bounded-command.js +1 -1
  94. package/src/installer/candidate-preflight.js +1 -1
  95. package/src/installer/connection-activation.js +1 -1
  96. package/src/installer/connection-supervisor.js +1 -1
  97. package/src/installer/deployment-draft.js +1 -1
  98. package/src/installer/gateway-context.js +1 -1
  99. package/src/installer/gateway-migration.js +1 -1
  100. package/src/installer/gateway-runtime.js +1 -1
  101. package/src/installer/global-setup.js +1 -1
  102. package/src/installer/hook-context-client.js +1 -1
  103. package/src/installer/hook-dispatcher.js +76 -24
  104. package/src/installer/host-hooks.js +1 -1
  105. package/src/installer/index-recovery.js +1 -1
  106. package/src/installer/interrupted-operation-recovery.js +1 -0
  107. package/src/installer/legacy-registration.js +1 -1
  108. package/src/installer/managed-config.js +1 -1
  109. package/src/installer/migration-scope.js +1 -1
  110. package/src/installer/platform-config.js +1 -1
  111. package/src/installer/prerequisites.js +1 -1
  112. package/src/installer/presentations.js +1 -1
  113. package/src/installer/project-outcome.js +1 -1
  114. package/src/installer/project-setup.js +1 -1
  115. package/src/installer/registration-closure.js +1 -1
  116. package/src/installer/registration-plan.js +1 -1
  117. package/src/installer/registration-receipt.js +1 -1
  118. package/src/installer/registrations.js +1 -1
  119. package/src/installer/runtime-activation.js +1 -1
  120. package/src/installer/runtime-child.js +1 -1
  121. package/src/installer/runtime-cleanup.js +1 -1
  122. package/src/installer/runtime-lock.js +1 -1
  123. package/src/installer/runtime-store.js +1 -1
  124. package/src/installer/runtime-supervisor.js +1 -1
  125. package/src/installer/setup-wizard.js +1 -1
  126. package/src/installer/update-addons.js +1 -1
  127. package/src/installer/update-cleanup.js +1 -1
  128. package/src/installer/update-executor.js +1 -1
  129. package/src/installer/update-history.js +1 -0
  130. package/src/installer/update-registration.js +1 -1
  131. package/src/installer/update-request.js +1 -1
  132. package/src/installer/update-scope.js +1 -1
  133. package/src/installer/workspace-registry.js +1 -1
  134. package/src/installer/workspace-transaction.js +1 -1
  135. package/src/installer/workspace-update.js +1 -1
  136. package/src/license/crypto.js +1 -1
  137. package/src/license/fingerprint.js +1 -1
  138. package/src/license/terms.js +1 -1
  139. package/src/license/verify.js +1 -1
  140. package/src/presets/index.js +1 -1
  141. package/src/proxy/backends.js +1 -1
  142. package/src/proxy/browser-sessions.js +1 -1
  143. package/src/proxy/core-tools.js +1 -1
  144. package/src/proxy/pipeline.js +1 -1
  145. package/src/proxy/public-catalog.js +1 -1
  146. package/src/proxy/router.config.js +1 -1
  147. package/src/proxy/router.js +1 -1
  148. package/src/proxy/server.js +1 -1
  149. package/src/proxy/workspace-gateway.js +1 -1
@@ -1 +1 @@
1
- const _0x26dcfc=_0x33a0;(function(_0x156cb9,_0x49d936){const _0x182218=_0x33a0,_0x243d0a=_0x156cb9();while(!![]){try{const _0x1c526e=-parseInt(_0x182218(0x196))/0x1+-parseInt(_0x182218(0x1a9))/0x2*(-parseInt(_0x182218(0x1a8))/0x3)+parseInt(_0x182218(0x19b))/0x4+parseInt(_0x182218(0x18a))/0x5*(-parseInt(_0x182218(0x1b8))/0x6)+-parseInt(_0x182218(0x19d))/0x7+-parseInt(_0x182218(0x1df))/0x8*(parseInt(_0x182218(0x175))/0x9)+parseInt(_0x182218(0x1f0))/0xa*(parseInt(_0x182218(0x1d3))/0xb);if(_0x1c526e===_0x49d936)break;else _0x243d0a['push'](_0x243d0a['shift']());}catch(_0x47fcbf){_0x243d0a['push'](_0x243d0a['shift']());}}}(_0x3a96,0x36e07));const fs=require('fs'),path=require(_0x26dcfc(0x23e)),crypto=require(_0x26dcfc(0x182)),cp=require(_0x26dcfc(0x1f9)),cacheHost=require('os')['hostname']()+':'+process[_0x26dcfc(0x1cf)]+':'+process['arch'],{runIndexCommand,indexTimeout}=require('./index-command'),{identity,sameWorkspace,containsWorkspace}=require(_0x26dcfc(0x1e6)),{acquireRuntimeLock}=require(_0x26dcfc(0x1c6)),run=runIndexCommand,hash=_0x4da3af=>crypto[_0x26dcfc(0x21d)](_0x26dcfc(0x23d))[_0x26dcfc(0x186)](_0x4da3af)[_0x26dcfc(0x232)](_0x26dcfc(0x1b4)),bridge=path[_0x26dcfc(0x231)](__dirname,'review_graph.py'),fail=(_0x5bd33e,_0xc44c03)=>Object[_0x26dcfc(0x16e)](new Error(_0xc44c03),{'code':_0x5bd33e}),spelling=_0x1cd385=>process['platform']===_0x26dcfc(0x1b9)?path[_0x26dcfc(0x1ac)](_0x1cd385)['toLowerCase']():path[_0x26dcfc(0x1ac)](_0x1cd385);function rejectLink(_0x5c45e2){const _0x8e7540=_0x26dcfc;try{if(fs[_0x8e7540(0x1ef)](_0x5c45e2)[_0x8e7540(0x17a)]())throw fail(_0x8e7540(0x241),_0x8e7540(0x245));}catch(_0x4989e9){if(_0x4989e9['code']!==_0x8e7540(0x1f5))throw _0x4989e9;}}function safeDirectory(_0x432f8c,_0x37c9f8){const _0x17dfd2=_0x26dcfc;if(path[_0x17dfd2(0x1e7)](_0x37c9f8)||_0x37c9f8['split'](/[\\/]/)[_0x17dfd2(0x200)]('..'))throw fail('UNSAFE_INDEX',_0x17dfd2(0x189));let _0xe2641b=_0x432f8c;for(const _0x3bcc08 of _0x37c9f8['split'](/[\\/]/)[_0x17dfd2(0x1d0)](Boolean)){_0xe2641b=path[_0x17dfd2(0x231)](_0xe2641b,_0x3bcc08),rejectLink(_0xe2641b);const _0x29524c={};_0x29524c[_0x17dfd2(0x171)]=!![],fs[_0x17dfd2(0x23f)](_0xe2641b,_0x29524c);if(!containsWorkspace(_0x432f8c,_0xe2641b))throw fail(_0x17dfd2(0x241),_0x17dfd2(0x189));}return _0xe2641b;}function atomic(_0x5995bc,_0x2ae076){const _0x23a3e3=_0x26dcfc;rejectLink(_0x5995bc);const _0xcba144=_0x5995bc+'.'+crypto[_0x23a3e3(0x238)]()+_0x23a3e3(0x224);try{const _0x1567f5=fs[_0x23a3e3(0x1a3)](_0xcba144,'wx');try{fs[_0x23a3e3(0x18e)](_0x1567f5,JSON[_0x23a3e3(0x1e0)](_0x2ae076)),fs[_0x23a3e3(0x20c)](_0x1567f5);}finally{fs[_0x23a3e3(0x184)](_0x1567f5);}fs[_0x23a3e3(0x21e)](_0xcba144,_0x5995bc);}finally{const _0x4d35af={};_0x4d35af[_0x23a3e3(0x246)]=!![],fs['rmSync'](_0xcba144,_0x4d35af);}}function read(_0x53fc14){const _0x490cb2=_0x26dcfc;try{return rejectLink(_0x53fc14),JSON[_0x490cb2(0x24a)](fs[_0x490cb2(0x17d)](_0x53fc14,_0x490cb2(0x17e)));}catch(_0x4c72a0){if(_0x4c72a0[_0x490cb2(0x21a)]==='ENOENT')return null;throw _0x4c72a0;}}function classify(_0x1e01f3){const _0x912043=_0x26dcfc;if(/database disk image is malformed|file is not a database|SQLITE_CORRUPT|SQLITE_NOTADB/i[_0x912043(0x180)](_0x1e01f3))return _0x912043(0x19c);if(/not indexed|no index|not initialized|no codegraph project|index (?:missing|invalid|corrupt)/i[_0x912043(0x180)](_0x1e01f3))return _0x912043(0x22d);return _0x912043(0x1fa);}function responseError(_0x535aad){const _0xabacc7=_0x26dcfc,_0x490e7b=_0x535aad?.[_0xabacc7(0x24c)],_0x3bfc57=_0x490e7b?.[_0xabacc7(0x1c5)],_0x1ac9a4=_0x490e7b?.[_0xabacc7(0x234)]?.[_0xabacc7(0x1d0)](_0xdb36f5=>_0xdb36f5[_0xabacc7(0x1bb)]===_0xabacc7(0x193))['map'](_0x2d9b91=>_0x2d9b91[_0xabacc7(0x193)])['join']('\x0a'),_0x16d7cc=_0x535aad?.['error']?.[_0xabacc7(0x1ca)]||typeof _0x535aad?.[_0xabacc7(0x18d)]===_0xabacc7(0x228)&&_0x535aad['error']||_0x3bfc57?.[_0xabacc7(0x18d)]||_0x1ac9a4||_0xabacc7(0x1ed);return fail(classify(_0x16d7cc),String(_0x16d7cc)[_0xabacc7(0x230)](0x0,0x640));}function snapshot(_0x251aab){const _0x5fc4fd=_0x26dcfc,_0x1e87fc=[],_0x22ed9a=new Set(['.git','.svn',_0x5fc4fd(0x1f4),'.memory','.codegraph','.code-review-graph',_0x5fc4fd(0x206),_0x5fc4fd(0x220),_0x5fc4fd(0x1ee),'__pycache__','dist','build']),_0x967773=_0x181324=>{const _0x4ebb83=_0x5fc4fd,_0x46c24c={};_0x46c24c[_0x4ebb83(0x1e3)]=!![];for(const _0x43cc19 of fs[_0x4ebb83(0x223)](_0x181324,_0x46c24c)['sort']((_0x5cbb51,_0x2b07e3)=>_0x5cbb51[_0x4ebb83(0x1b5)]['localeCompare'](_0x2b07e3['name']))){if(_0x22ed9a[_0x4ebb83(0x1de)](_0x43cc19[_0x4ebb83(0x1b5)])||_0x43cc19[_0x4ebb83(0x1b5)][_0x4ebb83(0x1cc)](_0x4ebb83(0x22a))||_0x43cc19[_0x4ebb83(0x1b5)][_0x4ebb83(0x200)](_0x4ebb83(0x1e8))||_0x43cc19['isSymbolicLink']())continue;const _0x55d61a=path['join'](_0x181324,_0x43cc19[_0x4ebb83(0x1b5)]);if(_0x43cc19[_0x4ebb83(0x242)]())_0x967773(_0x55d61a);else{if(_0x43cc19[_0x4ebb83(0x18f)]())_0x1e87fc[_0x4ebb83(0x1d9)]([path[_0x4ebb83(0x212)](_0x251aab,_0x55d61a)[_0x4ebb83(0x1c2)](/\\/g,'/'),hash(fs[_0x4ebb83(0x17d)](_0x55d61a))]);}}};return _0x967773(_0x251aab),hash(JSON[_0x5fc4fd(0x1e0)](_0x1e87fc));}function live(_0x1859b6){const _0x44c70c=_0x26dcfc;if(!Number['isSafeInteger'](_0x1859b6)||_0x1859b6<=0x0)return![];try{return process[_0x44c70c(0x17f)](_0x1859b6,0x0),!![];}catch(_0x1585cd){return _0x1585cd[_0x44c70c(0x21a)]!==_0x44c70c(0x1fd);}}function _0x33a0(_0x9f67b8,_0x4e09dc){_0x9f67b8=_0x9f67b8-0x16a;const _0x3a96f0=_0x3a96();let _0x33a0df=_0x3a96f0[_0x9f67b8];if(_0x33a0['TJKauu']===undefined){var _0x8962fc=function(_0x33942b){const _0x3f2cc5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x154914='',_0x4143cb='';for(let _0x5a4181=0x0,_0x180720,_0xb10593,_0x25d424=0x0;_0xb10593=_0x33942b['charAt'](_0x25d424++);~_0xb10593&&(_0x180720=_0x5a4181%0x4?_0x180720*0x40+_0xb10593:_0xb10593,_0x5a4181++%0x4)?_0x154914+=String['fromCharCode'](0xff&_0x180720>>(-0x2*_0x5a4181&0x6)):0x0){_0xb10593=_0x3f2cc5['indexOf'](_0xb10593);}for(let _0x139e21=0x0,_0x33b2b5=_0x154914['length'];_0x139e21<_0x33b2b5;_0x139e21++){_0x4143cb+='%'+('00'+_0x154914['charCodeAt'](_0x139e21)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4143cb);};_0x33a0['XvYEYL']=_0x8962fc,_0x33a0['npaaxz']={},_0x33a0['TJKauu']=!![];}const _0xe1b090=_0x3a96f0[0x0],_0x58bef3=_0x9f67b8+_0xe1b090,_0x1ff7ad=_0x33a0['npaaxz'][_0x58bef3];return!_0x1ff7ad?(_0x33a0df=_0x33a0['XvYEYL'](_0x33a0df),_0x33a0['npaaxz'][_0x58bef3]=_0x33a0df):_0x33a0df=_0x1ff7ad,_0x33a0df;}class IndexStore{constructor(_0x396563,_0x588968,_0x4f2333){const _0x22f2a2=_0x26dcfc;this['kind']=_0x396563,this[_0x22f2a2(0x213)]=fs['realpathSync'](_0x588968),this[_0x22f2a2(0x170)]=_0x4f2333,this['directory']=safeDirectory(this[_0x22f2a2(0x213)],_0x22f2a2(0x1fc)+_0x396563);if(!containsWorkspace(this[_0x22f2a2(0x213)],this[_0x22f2a2(0x1b1)]))throw fail(_0x22f2a2(0x241),_0x22f2a2(0x1d2));this['lockPath']=path[_0x22f2a2(0x231)](this[_0x22f2a2(0x1b1)],_0x22f2a2(0x1fe)),this['users']=safeDirectory(this[_0x22f2a2(0x213)],'.agents/runtime/backends/'+_0x396563+_0x22f2a2(0x1cd)),this[_0x22f2a2(0x1c1)]=path[_0x22f2a2(0x231)](this[_0x22f2a2(0x181)],crypto[_0x22f2a2(0x238)]()+_0x22f2a2(0x24e));if(_0x396563===_0x22f2a2(0x191)){const _0x10995e=path[_0x22f2a2(0x231)](this[_0x22f2a2(0x213)],_0x22f2a2(0x1c3));if(!fs['existsSync'](_0x10995e))fs['mkdirSync'](_0x10995e);const _0x4fabaa=_0x4f2333[_0x22f2a2(0x179)]||'.agents/.data/graph';if(!/^\.agents\/\.data\/graph(?:-[0-9]+\.[0-9]+\.[0-9]+)?$/[_0x22f2a2(0x180)](_0x4fabaa))throw fail(_0x22f2a2(0x241),_0x22f2a2(0x1fb));this[_0x22f2a2(0x1c0)]={..._0x4f2333['env'],'CRG_DATA_DIR':path[_0x22f2a2(0x231)](this[_0x22f2a2(0x213)],_0x4fabaa)};const _0x11a032=this[_0x22f2a2(0x1f7)]();this[_0x22f2a2(0x1eb)]=_0x11a032[_0x22f2a2(0x1d8)],this[_0x22f2a2(0x218)]=_0x11a032[_0x22f2a2(0x218)],this[_0x22f2a2(0x1f3)]=_0x11a032[_0x22f2a2(0x1c8)];}else{this[_0x22f2a2(0x1c0)]=_0x4f2333[_0x22f2a2(0x1c0)]||{};if(_0x4f2333['cacheDirectory']&&!/^\.codegraph(?:-[a-z0-9]+-[a-z0-9]+)?$/[_0x22f2a2(0x180)](_0x4f2333[_0x22f2a2(0x179)]))throw fail(_0x22f2a2(0x241),'Invalid\x20CodeGraph\x20cache\x20directory');this['cache']=path['join'](this[_0x22f2a2(0x213)],_0x4f2333[_0x22f2a2(0x179)]||_0x22f2a2(0x244)),this[_0x22f2a2(0x218)]=path[_0x22f2a2(0x231)](this[_0x22f2a2(0x1eb)],_0x22f2a2(0x1f2));}this['selectWorkspaceCache']();const _0x28a27c=this[_0x22f2a2(0x1e2)]();try{this['prepare']();}finally{_0x28a27c();}}[_0x26dcfc(0x1f7)](){const _0x466453=_0x26dcfc,_0x57b39c=cp[_0x466453(0x1d5)](this['profile'][_0x466453(0x16f)],[bridge,_0x466453(0x1a6),this[_0x466453(0x213)]],{'env':{...process.env,...this[_0x466453(0x1c0)]},'windowsHide':!![],'encoding':_0x466453(0x17e),'timeout':0x3a98});return JSON[_0x466453(0x24a)](_0x57b39c);}[_0x26dcfc(0x239)](){const _0x4757df=_0x26dcfc,_0x1701fb=read(path['join'](this[_0x4757df(0x1eb)],_0x4757df(0x1ae)));if(!_0x1701fb?.[_0x4757df(0x213)])return;let _0x25f726=![];try{_0x25f726=sameWorkspace(_0x1701fb['workspace'],this[_0x4757df(0x213)]);}catch{}if(_0x25f726)return;if(!containsWorkspace(this[_0x4757df(0x213)],this[_0x4757df(0x1eb)]))throw fail('UNSAFE_INDEX',_0x4757df(0x20e));this[_0x4757df(0x1ff)]={'code':_0x4757df(0x217),'kind':this[_0x4757df(0x1c4)],'cache':this[_0x4757df(0x1eb)]};const _0x5318fe='-w'+hash(identity(this[_0x4757df(0x213)]))[_0x4757df(0x230)](0x0,0x10),_0x21df72=(this['profile'][_0x4757df(0x179)]||(this[_0x4757df(0x1c4)]==='codegraph'?_0x4757df(0x244):_0x4757df(0x23c)))+_0x5318fe;this[_0x4757df(0x170)]={...this[_0x4757df(0x170)],'cacheDirectory':_0x21df72},this[_0x4757df(0x1eb)]=path[_0x4757df(0x231)](this[_0x4757df(0x213)],_0x21df72);if(this[_0x4757df(0x1c4)]===_0x4757df(0x1bf))this[_0x4757df(0x1c0)]={...this[_0x4757df(0x1c0)],'CODEGRAPH_DIR':_0x21df72},this[_0x4757df(0x218)]=path['join'](this[_0x4757df(0x1eb)],_0x4757df(0x1f2));else{this[_0x4757df(0x1c0)]={...this['env'],'CRG_DATA_DIR':this['cache']};const _0x450e37=this['resolveReview']();if(spelling(_0x450e37[_0x4757df(0x1d8)])!==spelling(this[_0x4757df(0x1eb)]))throw fail(_0x4757df(0x172),_0x4757df(0x177));this[_0x4757df(0x218)]=_0x450e37[_0x4757df(0x218)];}this[_0x4757df(0x1f3)]='canonical-workspace-isolation';}[_0x26dcfc(0x20d)](){const _0xfc4644=_0x26dcfc,_0x4e61d6=this['kind']===_0xfc4644(0x1bf)?this[_0xfc4644(0x1eb)]:path['join'](this[_0xfc4644(0x213)],this[_0xfc4644(0x170)]['cacheDirectory']||'.agents/.data/graph'),_0xa39fb0=fs[_0xfc4644(0x1d7)](this[_0xfc4644(0x1eb)]);if(!_0xa39fb0&&spelling(this[_0xfc4644(0x1eb)])===spelling(_0x4e61d6)){safeDirectory(this['workspace'],path[_0xfc4644(0x212)](this['workspace'],this[_0xfc4644(0x1eb)]));if(!containsWorkspace(this[_0xfc4644(0x213)],this[_0xfc4644(0x1eb)]))throw fail('UNSAFE_INDEX',_0xfc4644(0x1c7));atomic(path[_0xfc4644(0x231)](this['cache'],'.apt-managed.json'),{'owner':_0xfc4644(0x225),'workspace':this[_0xfc4644(0x213)],'kind':this[_0xfc4644(0x1c4)],'host':cacheHost});}}[_0x26dcfc(0x20f)](){const _0x3743cf=_0x26dcfc;if(this['owned']())return!![];if(read(path[_0x3743cf(0x231)](this['cache'],_0x3743cf(0x1ae))))return![];const _0x3568a7=this[_0x3743cf(0x1c4)]===_0x3743cf(0x1bf)?_0x3743cf(0x244):'.agents/.data/graph';if(spelling(this[_0x3743cf(0x1eb)])!==spelling(path[_0x3743cf(0x231)](this['workspace'],_0x3568a7)))return![];if(identity(this['cache'])!==spelling(path[_0x3743cf(0x231)](this[_0x3743cf(0x213)],_0x3568a7)))return![];const _0xc470cd=read(path[_0x3743cf(0x231)](this['workspace'],_0x3743cf(0x1e4))),_0x1c1e47=_0x3743cf(0x216),_0x1af38c=_0xc470cd?.[_0x3743cf(0x16a)]?.[_0x1c1e47];if(!_0x1af38c||!_0xc470cd['files']?.['includes'](_0x1c1e47))return![];const _0x420df4=path[_0x3743cf(0x231)](this['workspace'],_0x1c1e47);rejectLink(path[_0x3743cf(0x236)](_0x420df4)),rejectLink(_0x420df4);if(hash(fs['readFileSync'](_0x420df4))!==_0x1af38c)return![];for(const _0x4247d9 of['','-wal',_0x3743cf(0x16d)])rejectLink(this[_0x3743cf(0x218)]+_0x4247d9);this[_0x3743cf(0x1d4)]();if(this[_0x3743cf(0x19a)]())throw fail(_0x3743cf(0x20a),_0x3743cf(0x203));const _0x427429={};return _0x427429['manifestVersion']=_0xc470cd[_0x3743cf(0x21b)],_0x427429[_0x3743cf(0x204)]=_0x1c1e47,_0x427429[_0x3743cf(0x232)]=_0x1af38c,atomic(path[_0x3743cf(0x231)](this[_0x3743cf(0x1eb)],_0x3743cf(0x1ae)),{'owner':_0x3743cf(0x225),'workspace':this['workspace'],'kind':this[_0x3743cf(0x1c4)],'provenance':_0x427429}),!![];}[_0x26dcfc(0x1a2)](){const _0x163d09=_0x26dcfc;try{const _0x5f2ab8=read(path[_0x163d09(0x231)](this['cache'],'.apt-managed.json'));for(const _0x53f0e5 of['',_0x163d09(0x195),_0x163d09(0x16d)])rejectLink(this[_0x163d09(0x218)]+_0x53f0e5);const _0x244e76=identity(this[_0x163d09(0x1eb)]),_0x6c85e0=this['kind']===_0x163d09(0x1bf)?[this['profile']['cacheDirectory']||_0x163d09(0x244),'.codegraph',_0x163d09(0x1a1)]:[this[_0x163d09(0x170)][_0x163d09(0x179)]||_0x163d09(0x23c)];return _0x5f2ab8?.['owner']==='apt-mcp-agent'&&sameWorkspace(_0x5f2ab8['workspace'],this[_0x163d09(0x213)])&&_0x6c85e0['some'](_0x32cb0d=>{const _0x359649=_0x163d09,_0x224e16=path[_0x359649(0x1ac)](this['workspace'],_0x32cb0d);return _0x244e76===(process[_0x359649(0x1cf)]==='win32'?_0x224e16['toLowerCase']():_0x224e16);});}catch{return![];}}[_0x26dcfc(0x1e2)](){const _0x22b742=_0x26dcfc;rejectLink(this[_0x22b742(0x21f)]);const _0x53393c=acquireRuntimeLock(this[_0x22b742(0x21f)],0x0,cacheHost);if(!_0x53393c)throw fail('INDEX_BUSY',_0x22b742(0x176));return _0x53393c;}[_0x26dcfc(0x21c)](_0x5ba5cf=null,_0x1921ab=![]){const _0x3a7293=_0x26dcfc,_0x2cd99d=_0x1921ab?null:this['lock']();try{atomic(this[_0x3a7293(0x1c1)],{'ownerPid':process['pid'],'childPid':_0x5ba5cf,'workspace':this[_0x3a7293(0x213)],'host':cacheHost});}finally{_0x2cd99d?.();}}['unregister'](){const _0x3b6a71=_0x26dcfc,_0x5e09c7={};_0x5e09c7[_0x3b6a71(0x246)]=!![],fs[_0x3b6a71(0x240)](this[_0x3b6a71(0x1c1)],_0x5e09c7);}[_0x26dcfc(0x19a)](){const _0x45c1b4=_0x26dcfc;return fs[_0x45c1b4(0x223)](this['users'])[_0x45c1b4(0x1d0)](_0x3bf334=>_0x3bf334['endsWith'](_0x45c1b4(0x24e)))['some'](_0x326fd5=>{const _0x1256cd=_0x45c1b4,_0xa3c694=path[_0x1256cd(0x231)](this[_0x1256cd(0x181)],_0x326fd5);if(_0xa3c694===this[_0x1256cd(0x1c1)])return![];const _0x380162=read(_0xa3c694);if(_0x380162?.[_0x1256cd(0x213)]){let _0x3a151a=![];try{_0x3a151a=sameWorkspace(_0x380162['workspace'],this[_0x1256cd(0x213)]);}catch{}if(!_0x3a151a)return![];}if(!_0x380162||_0x380162[_0x1256cd(0x1b7)]!==cacheHost||live(_0x380162[_0x1256cd(0x1cb)])||live(_0x380162[_0x1256cd(0x199)]))return!![];return fs['unlinkSync'](_0xa3c694),![];});}[_0x26dcfc(0x1d4)](){const _0x5b4bd0=_0x26dcfc;for(const _0x4c8867 of[_0x5b4bd0(0x1be),_0x5b4bd0(0x16b)]){const _0x1472bb=path[_0x5b4bd0(0x231)](this['cache'],_0x4c8867);if(!fs['existsSync'](_0x1472bb))continue;rejectLink(_0x1472bb);const _0xcff67f=fs[_0x5b4bd0(0x17d)](_0x1472bb,'utf8')[_0x5b4bd0(0x1d1)]();let _0x4fed24;try{_0x4fed24=_0x4c8867===_0x5b4bd0(0x16b)?JSON[_0x5b4bd0(0x24a)](_0xcff67f)[_0x5b4bd0(0x20b)]:Number(_0xcff67f);}catch{}if(!Number[_0x5b4bd0(0x1a7)](_0x4fed24)||_0x4fed24<=0x0||live(_0x4fed24)||Date[_0x5b4bd0(0x1ce)]()-fs[_0x5b4bd0(0x185)](_0x1472bb)[_0x5b4bd0(0x222)]<0x1d4c0)throw fail(_0x5b4bd0(0x20a),_0x5b4bd0(0x247)+_0x4c8867+_0x5b4bd0(0x1e9));}}async[_0x26dcfc(0x174)](){const _0x102a95=_0x26dcfc;if(!fs[_0x102a95(0x1d7)](this[_0x102a95(0x218)])){if([_0x102a95(0x195),_0x102a95(0x16d)][_0x102a95(0x1da)](_0x149d1c=>fs[_0x102a95(0x1d7)](this[_0x102a95(0x218)]+_0x149d1c)))throw fail(_0x102a95(0x19c),_0x102a95(0x17c));return;}for(const _0x16af3e of['',_0x102a95(0x195),_0x102a95(0x16d)])rejectLink(this['database']+_0x16af3e);this[_0x102a95(0x1c4)]===_0x102a95(0x1bf)?await run(this[_0x102a95(0x170)][_0x102a95(0x16f)],[...this['profile'][_0x102a95(0x22c)][_0x102a95(0x230)](0x0,-0x1),'-e','const\x20{DatabaseSync}=require(\x27node:sqlite\x27);const\x20db=new\x20DatabaseSync(process.argv[1],{readOnly:true});try{const\x20rows=db.prepare(\x27PRAGMA\x20integrity_check\x27).all();if(rows.some(r=>Object.values(r)[0]!==\x27ok\x27))throw\x20Error(\x27database\x20disk\x20image\x20is\x20malformed\x27);}finally{db.close()}',this[_0x102a95(0x218)]],{'timeout':indexTimeout()}):await run(this[_0x102a95(0x170)]['command'],['-c','import\x20sqlite3,sys,pathlib;\x20c=sqlite3.connect(pathlib.Path(sys.argv[1]).as_uri()+\x27?mode=ro\x27,uri=True);\x20rows=c.execute(\x27PRAGMA\x20integrity_check\x27).fetchall();\x20c.close();\x20assert\x20all(r[0]==\x27ok\x27\x20for\x20r\x20in\x20rows),\x20\x27database\x20disk\x20image\x20is\x20malformed\x27',this[_0x102a95(0x218)]],{'timeout':indexTimeout()});}async['migrateLegacy'](){const _0x3b68e2=_0x26dcfc;if(this['kind']!==_0x3b68e2(0x1bf)||!this[_0x3b68e2(0x170)][_0x3b68e2(0x179)]||fs[_0x3b68e2(0x1d7)](this[_0x3b68e2(0x218)]))return![];const _0x323032=path[_0x3b68e2(0x231)](this[_0x3b68e2(0x213)],_0x3b68e2(0x244));if(!fs[_0x3b68e2(0x1d7)](path[_0x3b68e2(0x231)](_0x323032,_0x3b68e2(0x1f2))))return![];const _0x4f07b2=Object[_0x3b68e2(0x16e)](Object[_0x3b68e2(0x198)](Object['getPrototypeOf'](this)),this,{'cache':_0x323032,'database':path['join'](_0x323032,_0x3b68e2(0x1f2)),'env':{...this[_0x3b68e2(0x1c0)],'CODEGRAPH_DIR':_0x3b68e2(0x244)}});try{const _0x2f04af=read(path[_0x3b68e2(0x231)](_0x323032,_0x3b68e2(0x1ae)));if(_0x2f04af?.[_0x3b68e2(0x1b7)]!==cacheHost){const _0x14f0ac={};return _0x14f0ac['status']=_0x3b68e2(0x1ab),_0x14f0ac[_0x3b68e2(0x19f)]=_0x3b68e2(0x249),this[_0x3b68e2(0x187)]=_0x14f0ac,![];}_0x4f07b2[_0x3b68e2(0x1d4)]();if(_0x4f07b2['otherUsers']()||!_0x4f07b2[_0x3b68e2(0x1a2)]()&&!_0x4f07b2[_0x3b68e2(0x20f)]())return![];await _0x4f07b2[_0x3b68e2(0x174)]();}catch(_0x2e6cd9){const _0x52c906={};return _0x52c906['status']=_0x3b68e2(0x1ab),_0x52c906[_0x3b68e2(0x19f)]=_0x2e6cd9[_0x3b68e2(0x21a)]||_0x2e6cd9[_0x3b68e2(0x1ca)],this[_0x3b68e2(0x187)]=_0x52c906,![];}if(!this[_0x3b68e2(0x1a2)]()||fs[_0x3b68e2(0x223)](this[_0x3b68e2(0x1eb)])[_0x3b68e2(0x1da)](_0x362076=>_0x362076!==_0x3b68e2(0x1ae)))return![];const _0x385d24=this['cache']+_0x3b68e2(0x1e8)+crypto[_0x3b68e2(0x238)]();fs[_0x3b68e2(0x21e)](this[_0x3b68e2(0x1eb)],_0x385d24);try{fs[_0x3b68e2(0x21e)](_0x323032,this[_0x3b68e2(0x1eb)]);}catch(_0x547355){fs[_0x3b68e2(0x21e)](_0x385d24,this['cache']);throw _0x547355;}return this['legacyMigration']={'status':_0x3b68e2(0x1b0),'from':_0x323032,'to':this['cache']},!![];}async[_0x26dcfc(0x202)](){const _0x2e19d3=_0x26dcfc;if(!this[_0x2e19d3(0x1a2)]()&&!this[_0x2e19d3(0x20f)]())throw fail(_0x2e19d3(0x241),'Cache\x20ownership\x20is\x20not\x20proven;\x20custom\x20indexes\x20must\x20be\x20managed\x20separately');if(this[_0x2e19d3(0x1c4)]===_0x2e19d3(0x1bf)){const _0x55d7e4=snapshot(this['workspace']),_0x4a77fd=fs['existsSync'](this['database']),_0x385202=await run(this[_0x2e19d3(0x170)][_0x2e19d3(0x16f)],[...this['profile'][_0x2e19d3(0x22c)],_0x4a77fd?_0x2e19d3(0x248):_0x2e19d3(0x210),this[_0x2e19d3(0x213)],_0x4a77fd?'--force':'--yes'],{'cwd':this['workspace'],'env':{...process.env,...this[_0x2e19d3(0x1c0)]},'windowsHide':!![],'timeout':indexTimeout(),'maxBuffer':0x4*0x400*0x400});this[_0x2e19d3(0x1af)]=_0x385202[_0x2e19d3(0x233)];if(_0x55d7e4!==snapshot(this[_0x2e19d3(0x213)]))throw fail(_0x2e19d3(0x18b),_0x2e19d3(0x1a5));atomic(path[_0x2e19d3(0x231)](this['directory'],_0x2e19d3(0x1b6)),{'workspace':this['workspace'],'snapshot':_0x55d7e4,'version':this[_0x2e19d3(0x170)][_0x2e19d3(0x21b)],'database':this[_0x2e19d3(0x218)],'builtAt':new Date()[_0x2e19d3(0x208)]()});return;}const _0x52d978=this[_0x2e19d3(0x1f7)]();if(path['resolve'](_0x52d978[_0x2e19d3(0x218)])!==path[_0x2e19d3(0x1ac)](this['database']))throw fail('INDEX_PATH_CHANGED',_0x2e19d3(0x209));const _0x1e6492=snapshot(this[_0x2e19d3(0x213)]);try{const _0x3d0fa0=await run(this[_0x2e19d3(0x170)][_0x2e19d3(0x16f)],[bridge,_0x2e19d3(0x202),this[_0x2e19d3(0x213)]],{'cwd':this[_0x2e19d3(0x213)],'env':{...process.env,...this[_0x2e19d3(0x1c0)]},'windowsHide':!![],'timeout':indexTimeout(),'maxBuffer':0x4*0x400*0x400});JSON[_0x2e19d3(0x24a)](_0x3d0fa0[_0x2e19d3(0x23a)]),this[_0x2e19d3(0x1af)]=_0x3d0fa0[_0x2e19d3(0x233)];}catch(_0x3eff3f){let _0x4e7942=_0x3eff3f[_0x2e19d3(0x1ca)];try{_0x4e7942=JSON[_0x2e19d3(0x24a)](_0x3eff3f['diagnostic']?.[_0x2e19d3(0x23a)])[_0x2e19d3(0x18d)]||_0x4e7942;}catch{}throw Object[_0x2e19d3(0x16e)](fail(_0x3eff3f['code']||classify(_0x4e7942),_0x4e7942),{'diagnostic':_0x3eff3f['diagnostic']});}if(_0x1e6492!==snapshot(this[_0x2e19d3(0x213)]))throw fail(_0x2e19d3(0x18b),_0x2e19d3(0x1a5));atomic(path[_0x2e19d3(0x231)](this[_0x2e19d3(0x1b1)],_0x2e19d3(0x1b6)),{'workspace':this['workspace'],'snapshot':_0x1e6492,'version':this['profile'][_0x2e19d3(0x21b)],'database':this[_0x2e19d3(0x218)],'builtAt':new Date()[_0x2e19d3(0x208)]()});}async['refresh'](){const _0x48e8b2=_0x26dcfc,_0x1eb8eb=this[_0x48e8b2(0x1e2)]();try{const _0x1ad546=read(path[_0x48e8b2(0x231)](this['directory'],_0x48e8b2(0x1b6)));if(!_0x1ad546||_0x1ad546[_0x48e8b2(0x21b)]!==this[_0x48e8b2(0x170)]['version']||_0x1ad546[_0x48e8b2(0x218)]!==this[_0x48e8b2(0x218)]||!fs[_0x48e8b2(0x1d7)](this[_0x48e8b2(0x218)])||_0x1ad546[_0x48e8b2(0x1dd)]!==snapshot(this[_0x48e8b2(0x213)]))await this[_0x48e8b2(0x202)]();return read(path[_0x48e8b2(0x231)](this[_0x48e8b2(0x1b1)],_0x48e8b2(0x1b6)));}finally{_0x1eb8eb();}}async[_0x26dcfc(0x1f1)](_0x430c40=![]){const _0x1f4ba3=_0x26dcfc,_0x5f9a11=_0x430c40?null:this['lock'](),_0x4ba906=path['join'](this[_0x1f4ba3(0x1b1)],'recovery.json');let _0x5807e9;try{if(!this['owned']())throw fail(_0x1f4ba3(0x241),'Cache\x20ownership\x20is\x20not\x20proven');if(this[_0x1f4ba3(0x19a)]())throw fail(_0x1f4ba3(0x20a),_0x1f4ba3(0x1dc));this[_0x1f4ba3(0x1d4)]();if(this[_0x1f4ba3(0x1c4)]===_0x1f4ba3(0x191)&&spelling(this['resolveReview']()[_0x1f4ba3(0x218)])!==spelling(this[_0x1f4ba3(0x218)]))throw fail(_0x1f4ba3(0x1e5),'Review\x20registry\x20changed\x20the\x20active\x20database');const _0x5f18f7=fs[_0x1f4ba3(0x1d7)](this[_0x1f4ba3(0x1eb)])?fs[_0x1f4ba3(0x22f)](this[_0x1f4ba3(0x1eb)]):null,_0x4fa54b=_0x5f18f7?_0x5f18f7+'.apt-backup-'+crypto[_0x1f4ba3(0x238)]():null;_0x5807e9={'status':_0x1f4ba3(0x1aa),'backup':_0x4fa54b,'workspace':this[_0x1f4ba3(0x213)],'at':new Date()[_0x1f4ba3(0x208)]()},atomic(_0x4ba906,_0x5807e9);if(_0x4fa54b)fs[_0x1f4ba3(0x21e)](_0x5f18f7,_0x4fa54b);const _0x5d49c9={};_0x5d49c9[_0x1f4ba3(0x171)]=!![],fs[_0x1f4ba3(0x23f)](this[_0x1f4ba3(0x1eb)],_0x5d49c9),atomic(path[_0x1f4ba3(0x231)](this[_0x1f4ba3(0x1eb)],_0x1f4ba3(0x1ae)),{'owner':'apt-mcp-agent','workspace':this[_0x1f4ba3(0x213)],'kind':this[_0x1f4ba3(0x1c4)]}),await this[_0x1f4ba3(0x202)]();const _0x407fc5={..._0x5807e9};return _0x407fc5[_0x1f4ba3(0x188)]=_0x1f4ba3(0x24b),atomic(_0x4ba906,_0x407fc5),_0x4fa54b;}catch(_0x9dc223){if(_0x5807e9)atomic(_0x4ba906,{..._0x5807e9,'status':'failed','reason':_0x9dc223[_0x1f4ba3(0x1ca)]});throw _0x9dc223;}finally{_0x5f9a11?.();}}async[_0x26dcfc(0x1c9)](_0x1939cd,_0x29f3ef){const _0x46a2b1=_0x26dcfc;if(![_0x46a2b1(0x22d),_0x46a2b1(0x19c)][_0x46a2b1(0x200)](_0x29f3ef['code'])||!this[_0x46a2b1(0x1a2)]())return![];let _0x38f719;try{_0x38f719=this[_0x46a2b1(0x1e2)]();}catch(_0x263a76){const _0x42c400={};return _0x42c400[_0x46a2b1(0x188)]='busy',_0x42c400[_0x46a2b1(0x19f)]=_0x263a76[_0x46a2b1(0x1ca)],_0x1939cd[_0x46a2b1(0x215)]=_0x42c400,![];}const _0x5405d2=path['join'](this['directory'],_0x46a2b1(0x1d6));try{if(this[_0x46a2b1(0x1c4)]===_0x46a2b1(0x191)&&spelling(this[_0x46a2b1(0x1f7)]()[_0x46a2b1(0x218)])!==spelling(this[_0x46a2b1(0x218)]))throw fail(_0x46a2b1(0x1e5),_0x46a2b1(0x209));if(this[_0x46a2b1(0x19a)]()){const _0x1b63ec={};return _0x1b63ec['status']=_0x46a2b1(0x1db),_0x1b63ec['reason']=_0x46a2b1(0x1dc),_0x1939cd[_0x46a2b1(0x215)]=_0x1b63ec,![];}const _0x4d2b79=hash(fs[_0x46a2b1(0x1d7)](this[_0x46a2b1(0x218)])?fs[_0x46a2b1(0x17d)](this[_0x46a2b1(0x218)]):_0x46a2b1(0x221)),_0x4bb0af=read(_0x5405d2);if(_0x4bb0af&&_0x4bb0af[_0x46a2b1(0x188)]!==_0x46a2b1(0x22e)&&(_0x4bb0af[_0x46a2b1(0x1e1)]===_0x4d2b79||_0x4bb0af[_0x46a2b1(0x178)]===_0x4d2b79))return _0x1939cd[_0x46a2b1(0x215)]=_0x4bb0af,![];const _0x5a5adb=fs[_0x46a2b1(0x22f)](this['cache']),_0x204491=_0x5a5adb+_0x46a2b1(0x1e8)+crypto['randomUUID'](),_0x5b0a7a=read(path[_0x46a2b1(0x231)](_0x5a5adb,_0x46a2b1(0x1ae))),_0x4c1b2d={'status':_0x46a2b1(0x1aa),'fingerprint':_0x4d2b79,'backup':_0x204491,'workspace':this['workspace'],'at':new Date()[_0x46a2b1(0x208)]()};atomic(_0x5405d2,_0x4c1b2d),_0x1939cd['indexRecovery']=_0x4c1b2d;const _0x1e6756=_0x1939cd[_0x46a2b1(0x183)]===undefined?undefined:_0x1939cd[_0x46a2b1(0x183)]+0x1;await _0x1939cd[_0x46a2b1(0x23b)]();if(_0x1939cd['generation']!==_0x1e6756)throw fail('RECOVERY_CANCELLED','Backend\x20was\x20stopped\x20during\x20recovery');this[_0x46a2b1(0x1d4)]();if(!this[_0x46a2b1(0x1a2)]())throw fail(_0x46a2b1(0x241),'Cache\x20ownership\x20changed\x20before\x20recovery');fs[_0x46a2b1(0x21e)](_0x5a5adb,_0x204491),fs[_0x46a2b1(0x23f)](_0x5a5adb),atomic(path[_0x46a2b1(0x231)](_0x5a5adb,_0x46a2b1(0x1ae)),_0x5b0a7a),await this[_0x46a2b1(0x202)]();if(_0x1939cd[_0x46a2b1(0x183)]!==_0x1e6756)throw fail(_0x46a2b1(0x1a4),_0x46a2b1(0x201));_0x1939cd[_0x46a2b1(0x24d)](![],!![]);const _0x597416={..._0x4c1b2d};return _0x597416[_0x46a2b1(0x188)]=_0x46a2b1(0x24b),_0x1939cd['indexRecovery']=_0x597416,atomic(_0x5405d2,_0x1939cd[_0x46a2b1(0x215)]),!![];}catch(_0x1e35c5){const _0x1953cd=hash(fs[_0x46a2b1(0x1d7)](this[_0x46a2b1(0x218)])?fs[_0x46a2b1(0x17d)](this[_0x46a2b1(0x218)]):'missing');return _0x1939cd[_0x46a2b1(0x215)]={..._0x1939cd[_0x46a2b1(0x215)]||{},'status':_0x46a2b1(0x1b2),'failedFingerprint':_0x1953cd,'reason':_0x1e35c5[_0x46a2b1(0x1ca)]},atomic(_0x5405d2,_0x1939cd[_0x46a2b1(0x215)]),![];}finally{_0x38f719();}}[_0x26dcfc(0x22e)](_0x4e4632){const _0x4383a9=_0x26dcfc;_0x4e4632[_0x4383a9(0x215)]={..._0x4e4632[_0x4383a9(0x215)],'status':_0x4383a9(0x22e)},atomic(path[_0x4383a9(0x231)](this[_0x4383a9(0x1b1)],_0x4383a9(0x1d6)),_0x4e4632[_0x4383a9(0x215)]);}}function _0x3a96(){const _0x15a46b=['y2XPzw50sw5MBW','lxnOBq','yxnZAwDU','y29TBwfUza','ChjVzMLSzq','CMvJDxjZAxzL','rK9sruLhtL9jtKrfwf9sruDju1rswv9dt05gteLdva','qMfJA2vUzcbKAwqGBM90ihbHC3mGAxrZigz1BMn0Aw9UywWGChjVyMu','y2HLy2TeyxrHyMfZzq','mJa1mJLqqxPSrLu','sw5KzxGGBwfPBNrLBMfUy2uGAxmGyNvZEtSGCMv0CNKGywz0zxiGDgHLign1CNjLBNqGB3bLCMf0Aw9UigzPBMLZAgvZ','uMv2Awv3igDYyxbOihjLz2LZDhj5ig92zxjYAwrLCYb0AguGAxnVBgf0zwqGD29YA3nWywnLignHy2HLoYbVCMLNAw5HBcbKyxrHihDHCYbWCMvZzxj2zwq','zMfPBgvKrMLUz2vYChjPBNq','y2fJAgveAxjLy3rVCNK','AxntEw1IB2XPy0XPBMS','lMfNzw50CY9YDw50Aw1Ll2jHy2TLBMrZ','rgf0ywjHC2uGAxmGBwLZC2LUzYbIDxqGu1fmAxrLihnPzgvJyxjZihjLBwfPBJSGChjLC2vYDMuGDgHLBsbIzwzVCMuGCMvIDwLSzgLUzW','CMvHzezPBgvtEw5J','DxrMoa','A2LSBa','DgvZDa','DxnLCNm','y3j5ChrV','z2vUzxjHDgLVBG','y2XVC2vtEw5J','C3rHDfn5BMm','DxbKyxrL','BgvNywn5twLNCMf0Aw9U','C3rHDhvZ','sw5KzxGGzgLYzwn0B3j5igvZy2fWzxmGD29YA3nWywnL','mJG2nxPNsvDwCG','r1jbueHFq0HbtKDfra','zxHWB3j0CW','zxjYB3i','D3jPDgvgAwXLu3LUyW','AxngAwXL','ChjVDg9JB2XwzxjZAw9U','y29Kzs1YzxzPzxCTz3jHCgG','su5ervHFu0vuvvbFrKfjteve','Dgv4Da','BwfPBG','lxDHBa','ntqYotLju0vdEey','y2XHC3nPzNK','y3jLyxrL','y2HPBgrqAwq','B3rOzxjvC2vYCW','mZyWmJi4zgzUCwLM','su5ervHFq09suLvqva','mtiZmZC4nxfczMPzwq','BwLNCMf0zuXLz2fJEq','CMvHC29U','y2fWywjPBgL0AwvZ','lMfNzw50CY8Uzgf0ys9JB2rL','B3DUzwq','B3bLBLn5BMm','uKvdt1zfuLLFq0foq0vmteve','v29YA3nWywnLignOyw5NzwqGzhvYAw5NigDYyxbOigj1AwXKoYbYzxrYEsbIzwzVCMuGAw1Wywn0igfUywX5C2LZ','Aw5ZCgvJDa','AxntywzLsw50zwDLCG','mtHJsvzWtfC','mJa3ntHVs2rlq1y','CMvJB3zLCMLUzW','ChjLC2vYDMvK','CMvZB2X2zq','lI9WCM9MAwXLCW','lMfWDc1Tyw5Hz2vKlMPZB24','BgfZDej1AwXK','BwLNCMf0zwq','zgLYzwn0B3j5','zMfPBgvK','yxjNDG','Agv4','BMfTzq','CMvJzwLWDc5QC29U','Ag9ZDa','mJC0og1xyLv2qG','D2LUmZi','yNvPBhq','DhLWzq','zxHPDenVzgu','lI4VChjVEhKVyMfJA2vUzhm','y29KzwDYyxbOlMXVy2S','y29KzwDYyxbO','zw52','DxnLCKzPBgu','CMvWBgfJzq','lMnVzguTCMv2Awv3lwDYyxbO','A2LUza','C3rYDwn0DxjLzenVBNrLBNq','lI4Vy29Yzs9VD25Lzc1SB2nR','q2fJAguGzxnJyxbLCYb3B3jRC3bHy2u','C291CMnL','CMvJB3zLCG','BwvZC2fNzq','B3DUzxjqAwq','C3rHCNrZv2L0Aa','l3vZzxjZ','BM93','CgXHDgzVCM0','zMLSDgvY','DhjPBq','qMfJA2vUzcbZDgf0zsbLC2nHCgvZihDVCMTZCgfJzq','mte3n0vOtNz2wa','y2HLy2ToyxrPDMvmB2nRCW','zxHLy0zPBgvtEw5J','CMvJB3zLCNKUANnVBG','zxHPC3rZu3LUyW','zgf0yurPCMvJDg9YEq','ChvZAa','C29Tzq','yNvZEq','qw5VDgHLCIbSAxzLigjHy2TLBMqGAxmGDxnPBMCGDgHLignHy2HL','C25HChnOB3q','AgfZ','ndboEuHYwMG','C3rYAw5NAwz5','zMLUz2vYChjPBNq','Bg9JAW','D2L0AezPBgvuExbLCW','lMfNzw50CY9Tyw5PzMvZDc5QC29U','su5ervHFuefusf9dsefor0ve','lI4Vy29Yzs93B3jRC3bHy2uTCgf0Aa','AxnbyNnVBhv0zq','lMfWDc1IywnRDxaT','ihjLCxvPCMvZigL0CYbVD25PBMCGyMfJA2vUzcb0BYbZDg9W','CMv2Awv3','y2fJAgu','yMfJA3vW','qMfJA2vUzcbXDwvYEsbMywLSzwq','DMvUDG','Bhn0yxrtEw5J','ntm5mtbvtgfAAhi','C3rHBMrHBg9UzvjLyNvPBgq','y29KzwDYyxbOlMrI','Cgf0AfnVDxjJzq','lMfNzw50CW','ru5pru5u','CMvJB3zLCNLtDgf0Dxm','CMvZB2X2zvjLDMLLDW','sw5KzxHtDg9Yzq','y2HPBgrFChjVy2vZCW','qKfds0vorf9rvuvswv9gquLmruq','sw52ywXPzcbYzxzPzxCGz3jHCgGGy2fJAguGzgLYzwn0B3j5','lMfNzw50CY9YDw50Aw1Ll2jHy2TLBMrZlW','rvnsq0G','y2fJAguUBg9JAW','zM9YzwLNBLDVCMTZCgfJzvn0yxrL','Aw5JBhvKzxm','qMfJA2vUzcb3yxmGC3rVChbLzcb3AgLSzsbYzwj1AwXKAw5NigL0CYbPBMrLEa','yNvPBgq','qw5VDgHLCIbIywnRzw5KigLZihvZAw5NihrOzsbSzwDHy3KGy2fJAgu','zgvWBg95zwq','CMvZCg9UC2vfCNjVCG','BM9Kzv9TB2r1BgvZ','qsbSAxzLigjHy2TLBMqGAxmGDxnPBMCGDgHLigLUzgv4oYbYzxn0yxj0igL0igjLzM9YzsbYzwj1AwXKAw5N','Dg9ju09tDhjPBMC','uMv2Awv3ihjLz2LZDhj5ignOyw5NzwqGDgHLigfJDgL2zsbKyxrHyMfZzq','su5ervHFqLvtwq','CgLK','zNn5BMntEw5J','ChjLCgfYzq','rM9YzwLNBIbJDxn0B20Gy2fJAguGAxmGB3v0C2LKzsb3B3jRC3bHy2u','ywrVChrmzwDHy3K','Aw5PDa','CxvHCMfUDgLUAw5N','CMvSyxrPDMu','D29YA3nWywnL','C2vYDMu','Aw5KzxHszwnVDMvYEq','lMfNzw50CY9WCM94Es9IywnRzw5KCY5QCW','rK9sruLhtL9xt1jlu1bbq0vFu1rbveu','zgf0ywjHC2u','zNvUy3rPB25HBfjLywr5','y29Kzq','DMvYC2LVBG','CMvNAxn0zxi','y3jLyxrLsgfZAa','CMvUyw1Lu3LUyW','Bg9JA1bHDgG','lNzLBNy','BwLZC2LUzW','BxrPBwvnCW','CMvHzgrPCLn5BMm','lNrTCa','yxb0lw1JCc1Hz2vUDa','yxb0lwLUzgv4lxzLCMLMAwnHDgLVBG','mJaYnc0Xms0Wnq','C3rYAw5N','Aw5KzxGTyNvPBgqTBgfZDc5QC29U','lMnVzgvNCMfWAc0','zxHLy3v0ywjSzq','yxjNCW','su5ervHFtuLtu0LorW','CMvJB3zLCMvK','CMvHBhbHDgHtEw5J','C2XPy2u','AM9PBG','zgLNzxn0','zgLHz25VC3rPyW','y29UDgvUDa','su5ervHFufjpqKvFrKfjteve','zgLYBMfTzq','Aw5PDgLHBgL6zq','CMfUzg9Tvvvjra','C2vSzwn0v29YA3nWywnLq2fJAgu','C3rKB3v0','C3rVCefUzfDHAxq','lMfNzw50CY8Uzgf0ys9NCMfWAa','C2HHmJu2','Cgf0Aa','BwTKAxjtEw5J','CM1tEw5J','vu5tquzfx0Lorevy','AxneAxjLy3rVCNK','zw5KzwrbDa','lMnVzgvNCMfWAa','sw5KzxGGBwv0ywrHDgeGBxvZDcbUB3qGyMuGysbZEw1IB2XPyYbSAw5R','zM9Yy2u','q2fJAguGBg9JAYa','Aw5KzxG','su5ervHFse9tvf9vtLzfuKLgsuve','CgfYC2u','CMvIDwLSDa','CMvZDwX0','C3rHCNq','lMPZB24','CMvHC29Uq29Kzq','BwfUywDLzezPBgviyxnOzxm','zgfLBw9UlNbPza'];_0x3a96=function(){return _0x15a46b;};return _0x3a96();}const _0x120bf5={};_0x120bf5[_0x26dcfc(0x1f8)]=IndexStore,_0x120bf5[_0x26dcfc(0x1dd)]=snapshot,_0x120bf5[_0x26dcfc(0x205)]=responseError,_0x120bf5[_0x26dcfc(0x197)]=classify,_0x120bf5['atomic']=atomic,module[_0x26dcfc(0x18c)]=_0x120bf5;require[_0x26dcfc(0x194)]===module&&(async()=>{const _0xcf6b3d=_0x26dcfc,_0x4d10f9=require(_0xcf6b3d(0x1ad)),_0x755609=fs[_0xcf6b3d(0x22f)](process[_0xcf6b3d(0x1b3)][0x2]),_0x5da1a6=safeDirectory(_0x755609,_0xcf6b3d(0x17b)),_0x5461e5={'workspace':_0x755609,'startedAt':new Date()[_0xcf6b3d(0x208)](),'status':'running','backends':[]},_0x310196=path[_0xcf6b3d(0x231)](_0x5da1a6,_0xcf6b3d(0x229));atomic(_0x310196,_0x5461e5);for(const [_0x2a474d,_0x6f7fb8]of[[_0xcf6b3d(0x1bf),_0x4d10f9[_0xcf6b3d(0x1bf)]],[_0xcf6b3d(0x191),_0x4d10f9[_0xcf6b3d(0x1ea)]]]){let _0xf66e89,_0x123330;const _0x2bce45={'backend':_0x2a474d,'workspace':_0x755609,'startedAt':new Date()[_0xcf6b3d(0x208)](),'status':'running'};_0x5461e5['backends'][_0xcf6b3d(0x1d9)](_0x2bce45);try{const _0x1d3ff0=_0x6f7fb8(),_0x24503f={};_0x24503f['version']=_0x1d3ff0[_0xcf6b3d(0x21b)],_0x24503f[_0xcf6b3d(0x22b)]=_0x1d3ff0[_0xcf6b3d(0x16f)],Object[_0xcf6b3d(0x16e)](_0x2bce45,_0x24503f),_0xf66e89=new IndexStore(_0x2a474d,_0x755609,_0x1d3ff0);const _0xae92f2={};_0xae92f2[_0xcf6b3d(0x1eb)]=_0xf66e89[_0xcf6b3d(0x1eb)],_0xae92f2[_0xcf6b3d(0x218)]=_0xf66e89['database'],_0xae92f2['pathSource']=_0xf66e89[_0xcf6b3d(0x1f3)]||_0xcf6b3d(0x170),Object[_0xcf6b3d(0x16e)](_0x2bce45,_0xae92f2),_0x123330=_0xf66e89[_0xcf6b3d(0x1e2)]();if(_0xf66e89[_0xcf6b3d(0x19a)]())throw fail(_0xcf6b3d(0x20a),_0xcf6b3d(0x207));await _0xf66e89[_0xcf6b3d(0x19e)](),_0x2bce45[_0xcf6b3d(0x187)]=_0xf66e89[_0xcf6b3d(0x187)]||null,_0xf66e89[_0xcf6b3d(0x1d4)]();try{await _0xf66e89[_0xcf6b3d(0x174)](),await _0xf66e89['build']();}catch(_0x42e2da){if(_0x42e2da[_0xcf6b3d(0x21a)]!=='INDEX_CORRUPT'||!_0xf66e89['owned']()&&!_0xf66e89[_0xcf6b3d(0x20f)]())throw _0x42e2da;_0x2bce45[_0xcf6b3d(0x1f6)]=_0xcf6b3d(0x211),_0x2bce45[_0xcf6b3d(0x1ec)]=await _0xf66e89[_0xcf6b3d(0x1f1)](!![]);}Object['assign'](_0x2bce45,_0xf66e89[_0xcf6b3d(0x1af)],{'status':_0xcf6b3d(0x1ba),'functionalReady':![],'recoveryStatus':_0x2bce45[_0xcf6b3d(0x1f6)]||'not-needed'}),_0x123330(),_0x123330=null;const {BackendProcess:_0x284a24}=require(_0xcf6b3d(0x1bd)),_0x1a0dc8=_0x2a474d===_0xcf6b3d(0x1bf)?[..._0x1d3ff0[_0xcf6b3d(0x22c)],_0xcf6b3d(0x214),'--mcp']:_0x1d3ff0[_0xcf6b3d(0x22c)],_0x4a8574=new _0x284a24(_0x2a474d,_0x1d3ff0[_0xcf6b3d(0x16f)],_0x1a0dc8,{'cwd':_0x755609,'env':{..._0x1d3ff0['env'],..._0xf66e89[_0xcf6b3d(0x1c0)]},'maxRetries':0x0});_0x4a8574['indexStore']=_0xf66e89;try{_0x4a8574['start'](![]);const _0x1e4b8b={};_0x1e4b8b[_0xcf6b3d(0x1b5)]=_0xcf6b3d(0x226),_0x1e4b8b[_0xcf6b3d(0x21b)]='1';const _0x46ba12={};_0x46ba12[_0xcf6b3d(0x190)]=_0xcf6b3d(0x227),_0x46ba12[_0xcf6b3d(0x1a0)]={},_0x46ba12[_0xcf6b3d(0x16c)]=_0x1e4b8b,await _0x4a8574[_0xcf6b3d(0x237)](_0x46ba12);if(!_0x4a8574[_0xcf6b3d(0x219)])throw fail(_0xcf6b3d(0x235),_0xcf6b3d(0x173));_0x2bce45[_0xcf6b3d(0x219)]=!![],_0x2bce45[_0xcf6b3d(0x1ec)]&&(_0x4a8574[_0xcf6b3d(0x215)]=read(path[_0xcf6b3d(0x231)](_0xf66e89[_0xcf6b3d(0x1b1)],'recovery.json')),_0xf66e89[_0xcf6b3d(0x22e)](_0x4a8574),_0x2bce45[_0xcf6b3d(0x1f6)]=_0xcf6b3d(0x22e));}finally{await _0x4a8574[_0xcf6b3d(0x23b)]();}}catch(_0x2ff410){Object['assign'](_0x2bce45,_0x2ff410['diagnostic'],{'status':_0xcf6b3d(0x1b2),'reasonCode':_0x2ff410[_0xcf6b3d(0x21a)]||_0xcf6b3d(0x192),'message':_0x2ff410[_0xcf6b3d(0x1ca)]});if(_0xf66e89){const _0x4b538d=read(path[_0xcf6b3d(0x231)](_0xf66e89[_0xcf6b3d(0x1b1)],_0xcf6b3d(0x1d6)));if(_0x4b538d)Object[_0xcf6b3d(0x16e)](_0x2bce45,{'recoveryStatus':_0x4b538d['status'],'backup':_0x4b538d[_0xcf6b3d(0x1ec)]});}console['error']('['+_0x2a474d+']\x20'+_0x2bce45[_0xcf6b3d(0x24f)]+':\x20'+_0x2ff410[_0xcf6b3d(0x1ca)]),process[_0xcf6b3d(0x1bc)]=0x2;}finally{_0x123330?.(),_0x2bce45[_0xcf6b3d(0x243)]=new Date()[_0xcf6b3d(0x208)](),atomic(_0x310196,_0x5461e5);}}_0x5461e5['status']=process[_0xcf6b3d(0x1bc)]?_0xcf6b3d(0x1b2):'built',_0x5461e5[_0xcf6b3d(0x243)]=new Date()[_0xcf6b3d(0x208)](),atomic(_0x310196,_0x5461e5);})()['catch'](_0x583e2b=>{const _0x426666=_0x26dcfc;console[_0x426666(0x18d)](_0x583e2b['message']),process[_0x426666(0x1bc)]=0x1;});
1
+ const _0x181087=_0x524a;(function(_0x101ac4,_0xfe9cdc){const _0x4fac1f=_0x524a,_0x1c70b1=_0x101ac4();while(!![]){try{const _0x25dc19=-parseInt(_0x4fac1f(0x1a9))/0x1*(parseInt(_0x4fac1f(0x19b))/0x2)+-parseInt(_0x4fac1f(0x198))/0x3+parseInt(_0x4fac1f(0x142))/0x4+-parseInt(_0x4fac1f(0x188))/0x5+-parseInt(_0x4fac1f(0x260))/0x6*(parseInt(_0x4fac1f(0x17d))/0x7)+-parseInt(_0x4fac1f(0x191))/0x8+parseInt(_0x4fac1f(0x1ef))/0x9;if(_0x25dc19===_0xfe9cdc)break;else _0x1c70b1['push'](_0x1c70b1['shift']());}catch(_0x12c780){_0x1c70b1['push'](_0x1c70b1['shift']());}}}(_0x4db7,0x9e137));const fs=require('fs'),path=require(_0x181087(0x207)),crypto=require('crypto'),cp=require(_0x181087(0x190)),cacheHost=require('os')[_0x181087(0x24d)]()+':'+process[_0x181087(0x23e)]+':'+process[_0x181087(0x1f1)],{runIndexCommand,indexTimeout}=require(_0x181087(0x167)),{identity,sameWorkspace,containsWorkspace}=require('../core/workspace-path'),{acquireRuntimeLock}=require(_0x181087(0x16f)),{resolveManagedIndexCache,openManagedIndexCache,validateManagedIndexCache,assertCacheOutcome,safePath}=require('./index-cache-authority'),recoveryOwners=new WeakMap(),buildOwners=new WeakMap(),run=runIndexCommand,hash=_0x4ac408=>crypto[_0x181087(0x1c7)]('sha256')[_0x181087(0x1d7)](_0x4ac408)['digest'](_0x181087(0x181)),bridge=path['join'](__dirname,'review_graph.py'),fail=(_0x4827fc,_0x51caeb)=>Object[_0x181087(0x225)](new Error(_0x51caeb),{'code':_0x4827fc}),spelling=_0xdc2da2=>process[_0x181087(0x23e)]===_0x181087(0x1fd)?path[_0x181087(0x235)](_0xdc2da2)[_0x181087(0x18f)]():path[_0x181087(0x235)](_0xdc2da2);function rejectLink(_0x2c6ce3){const _0x4c8bc2=_0x181087;try{if(fs[_0x4c8bc2(0x1ee)](_0x2c6ce3)['isSymbolicLink']())throw fail(_0x4c8bc2(0x1bd),_0x4c8bc2(0x1cf));}catch(_0x4d73f1){if(_0x4d73f1[_0x4c8bc2(0x177)]!==_0x4c8bc2(0x1af))throw _0x4d73f1;}}function safeDirectory(_0x374961,_0x31b04f){const _0x2ba7c2=_0x181087;if(path[_0x2ba7c2(0x1a2)](_0x31b04f)||_0x31b04f[_0x2ba7c2(0x19a)](/[\\/]/)[_0x2ba7c2(0x209)]('..'))throw fail(_0x2ba7c2(0x1bd),'Index\x20directory\x20escapes\x20workspace');let _0x43ccbb=_0x374961;for(const _0x8ec39 of _0x31b04f[_0x2ba7c2(0x19a)](/[\\/]/)['filter'](Boolean)){_0x43ccbb=path['join'](_0x43ccbb,_0x8ec39),rejectLink(_0x43ccbb);const _0x5e6abe={};_0x5e6abe[_0x2ba7c2(0x21b)]=!![],fs[_0x2ba7c2(0x159)](_0x43ccbb,_0x5e6abe);if(!containsWorkspace(_0x374961,_0x43ccbb))throw fail(_0x2ba7c2(0x1bd),_0x2ba7c2(0x1a4));}return _0x43ccbb;}function atomic(_0x5d4bf3,_0x3e8176){const _0x1730a0=_0x181087;rejectLink(_0x5d4bf3);const _0x20620e=_0x5d4bf3+'.'+crypto['randomUUID']()+_0x1730a0(0x22b);try{const _0x1c7031=fs['openSync'](_0x20620e,'wx');try{fs[_0x1730a0(0x242)](_0x1c7031,JSON['stringify'](_0x3e8176)),fs[_0x1730a0(0x1e4)](_0x1c7031);}finally{fs['closeSync'](_0x1c7031);}fs[_0x1730a0(0x1a7)](_0x20620e,_0x5d4bf3);}finally{const _0x32741c={};_0x32741c[_0x1730a0(0x259)]=!![],fs[_0x1730a0(0x1e1)](_0x20620e,_0x32741c);}}function _0x524a(_0x584b2e,_0x7c6d57){_0x584b2e=_0x584b2e-0x13c;const _0x4db70e=_0x4db7();let _0x524ac5=_0x4db70e[_0x584b2e];if(_0x524a['DtCnod']===undefined){var _0x3bf29e=function(_0xe7807c){const _0x29f255='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x188ec8='',_0x1a3182='';for(let _0x2966e4=0x0,_0x10b6e6,_0x362aff,_0x45142b=0x0;_0x362aff=_0xe7807c['charAt'](_0x45142b++);~_0x362aff&&(_0x10b6e6=_0x2966e4%0x4?_0x10b6e6*0x40+_0x362aff:_0x362aff,_0x2966e4++%0x4)?_0x188ec8+=String['fromCharCode'](0xff&_0x10b6e6>>(-0x2*_0x2966e4&0x6)):0x0){_0x362aff=_0x29f255['indexOf'](_0x362aff);}for(let _0x1a000c=0x0,_0x1fefdf=_0x188ec8['length'];_0x1a000c<_0x1fefdf;_0x1a000c++){_0x1a3182+='%'+('00'+_0x188ec8['charCodeAt'](_0x1a000c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1a3182);};_0x524a['bhLujM']=_0x3bf29e,_0x524a['gQFKKu']={},_0x524a['DtCnod']=!![];}const _0x2dd9af=_0x4db70e[0x0],_0x2a21ff=_0x584b2e+_0x2dd9af,_0x334f59=_0x524a['gQFKKu'][_0x2a21ff];return!_0x334f59?(_0x524ac5=_0x524a['bhLujM'](_0x524ac5),_0x524a['gQFKKu'][_0x2a21ff]=_0x524ac5):_0x524ac5=_0x334f59,_0x524ac5;}function _0x4db7(){const _0x264b4e=['q2fJAguGB3DUzxjZAgLWigLZig5VDcbWCM92zw4','CM1tEw5J','CMvJB3zLCMLUzW','Dw5RBM93BG','zNn5BMntEw5J','yNvPBgq','Dw5YzwDPC3rLCG','ChvIBgLZAej1AwXKuMvJzwLWDa','CMvJB3zLCG','lMfNzw50CY9YDw50Aw1Ll2jHy2TLBMrZlW','DxnLCNm','B3DUzxjqCM9JzxnZu3rHCNq','C3rHDhvZ','qMfJA2vUzcbKAwqGBM90ihbHC3mGAxrZigz1BMn0Aw9UywWGChjVyMu','Bhn0yxrtEw5J','mZeYota2odDfvgPov1K','C2vSzwn0v29YA3nWywnLq2fJAgu','yxjJAa','zxHWB3j0CW','lM1LBw9YEq','DhLWzq','uMv2Awv3ihjLz2LZDhj5ihjLzgLYzwn0CYb0AguGBwfUywDLzcbJywnOzq','lMPZB24','q2fJAguGB3DUzxjZAgLWigLZig5VDcbWCM92zw47ign1C3rVBsbPBMrLEgvZig11C3qGyMuGBwfUywDLzcbZzxbHCMf0zwX5','lMnVzgvNCMfWAc0','rM9YzwLNBIbJDxn0B20Gy2fJAguGAxmGB3v0C2LKzsb3B3jRC3bHy2u','su5ervHFt1vuq09nrv9vtKTot1Do','Dw5SAw5Ru3LUyW','ChjVzMLSzq','D2LUmZi','Aw5V','C3rHCNq','D29YA3nWywnL','zgf0ywjHC2u','lxnOBq','DMvYC2LVBG','su5ervHFuefusf9dsefor0ve','y2HLy2ToyxrPDMvmB2nRCW','CMvHBhbHDgHtEw5J','Cgf0Aa','qsbSAxzLigjHy2TLBMqGAxmGDxnPBMCGDgHLigLUzgv4oYbYzxn0yxj0igL0igjLzM9YzsbYzwj1AwXKAw5N','Aw5JBhvKzxm','Ag9ZDa','y29UC29Szs5SB2COsLnptI5ZDhjPBMDPzNKOE2HLywX0AhL9ksK7FwzPBMfSBhL7zgiUy2XVC2uOkx0','C3rKB3v0','r1jbueHFq0HbtKDfra','y2HPBgrqCM9JzxnZu3rHCNq','CgLK','q2fJAguGzxnJyxbLCYb3B3jRC3bHy2u','C29YDa','CMvJzwLWDc5QC29U','zgLYBMfTzq','AgfZ','Aw5KzxHtDg9Yzq','zgf0yurPCMvJDg9YEq','D3jPDgvszwnVDMvYEuzHAwX1CMu','lMDPDa','Aw5JCMvTzw50ywW','zgf0ywjHC2vjzgvUDgL0Eq','CMvJDxjZAxzL','DxrMoa','ywrHChrLCG','C3rVCefUzfDHAxq','zMLSDgvY','lMfNzw50CY9YDw50Aw1Ll2jHy2TLBMrZ','CMvJB3zLCNKUANnVBG','y29KzwDYyxbOsgvHBhrOEq','yNvPBhq','zxHPC3rZu3LUyW','yxnZAwDU','BgvNywn5lxDVCMTZCgfJzs0X','lMfWDc1IywnRDxaT','C3rYAw5NAwz5','AxntEw1IB2XPy0XPBMS','zNjVBq','lNrTCa','y2HPBgrqAwq','zw52','BwfPBNrLBMfUy2u','qMfJA2vUzcbXDwvYEsbMywLSzwq','lMfNzw50CY8Uzgf0ys9NCMfWAa','BgvNywn5twLNCMf0Aw9U','CMvJB3zLCNLtDgf0Dxm','qNvPBgqGCMvJzwLWDcbJAgfUz2vKigr1CMLUzYbPBMrLEcbLEgvJDxrPB24','Dg9ju09tDhjPBMC','CMvZB2X2zq','yxb0lw1JCc1Hz2vUDa','D3jPDgvtDgf0zq','BwfPBG','lI9PBMrLEc1TywLUDgvUyw5Jzq','uKvdt1zfuLLFq0foq0vmteve','lI4VChjVEhKVyMfJA2vUzhm','su5ervHFufjpqKvFrKfjteve','yNvPBgrFDhLWzq','CgXHDgzVCM0','CMv2Awv3','yxnZzxj0qxzHAwXHyMXL','C25HChnOB3q','D3jPDgvgAwXLu3LUyW','zxjYB3i','su5ervHFqLvjterFrKfjteve','y3jLyxrL','sw5KzxGGCMvJB3zLCNKGCMvXDwLYzxmGysbZDwnJzxnZzNvSigz1BMn0Aw9UywWGChjVyMu','y29TBwfUza','CMvHzgrPCLn5BMm','qKfds0vorf9rvuvswv9gquLmruq','x19WEwnHy2HLx18','q29KzuDYyxbOigHHCYbUBYbJB21WBgv0zsbJDxjYzw50igLUzgv4ignVDMvYAw5NigL0CYbKAxnJB3zLCMvKihnVDxjJzxm','y29Kzs1YzxzPzxCTz3jHCgG','Ag9ZDg5HBwu','zMLSzxm','Dgv4Da','D2L0AezPBgvuExbLCW','DxnLCKzPBgu','su5ervHFu0vuvvbFrKfjteve','y29UC3qGzgLZy292zxjLzd1LEhrYywn0Aw9UlNnJyw5eAxjLy3rVCNKOCM9VDcK7y29UC3qGAgvHBhrOEt1TzxrHlMLUzgv4x3n0yxrLpt09j2nVBxbSzxrLjYyMkgrPC2nVDMvYzwqUBgvUz3rOpt09md9MAwXLCY5ZAxPLpt09mdO','yxv0AgvUDgLJyxrLsw5KzxHsDw5Uzxi','y29UC3qGzMLSzxm9BMv3ie1HCcHKyI5WCMvWyxjLkcDtruXfq1qGCgf0AcXJB250zw50x2HHC2GSzxjYB3jZiezst00GzMLSzxmNks5HBgWOks5TyxaOCJ0+w3iUCgf0AcXYxsKPoW','C3rHDfn5BMm','C2v0','CMvHC29U','zM9Yy2u','sw52ywXPzcbYzxzPzxCGz3jHCgGGy2fJAguGzgLYzwn0B3j5','Dhj5E2nVBNn0ig1LDge9t2jQzwn0lMzYB21fBNrYAwvZkgrIlNbYzxbHCMuOj1nftevdvcbRzxKSDMfSDwuGrLjptsbWCM9Qzwn0x21LDgfKyxrHjYKUywXSkcKUBwfWkhi9pLTYlMTLEsXYlNzHBhvLxsKPoW','AgvHBhrOEq','zgLZDa','BM9Kzv9TB2r1BgvZ','yxv0Ag9YAxr5swq','ntuXmtzYzeH0qKe','A2LUza','CNvUBMLUzW','Bg9JA1bHDgG','CMvWBgfJzq','BxrPBwvnCW','zMLUz2vYChjPBNq','mZG2odG5mKLnt2rSBG','CMvJB3zLCMvK','zgfLBw9UlNbPza','C291CMnL','y2fJAgu','DgvZDa','Aw1WB3j0ihnXBgL0ztmSC3LZlhbHDgHSAwi7igm9C3fSAxrLmY5JB25Uzwn0khbHDgHSAwiUugf0AcHZExmUyxjNDLSXxsKUyxnFDxjPkcKRjZ9TB2rLpxjVjYX1CMK9vhj1zsK7ihjVD3m9yY5LEgvJDxrLkcDquKfhtueGAw50zwDYAxr5x2nOzwnRjYKUzMv0y2HHBgWOktSGyY5JBg9ZzsGPoYbHC3nLCNqGywXSkhjBmf09psDVAYCGzM9YihiGAw4GCM93CYKSicDKyxrHyMfZzsbKAxnRigLTywDLigLZig1HBgzVCM1LzcC','qw5VDgHLCIbSAxzLigjHy2TLBMqGAxmGDxnPBMCGDgHLignHy2HL','qMfJA2vUzcb3yxmGC3rVChbLzcbKDxjPBMCGCMvJB3zLCNK','ChjVy2vZC0LKzw50Axr5','y29UDhjHy3q','BgfZDej1AwXK','BwfUAwzLC3rwzxjZAw9U','BwfUywDLzc1JywnOzs1JB250CMfJDc12mG','CxvHCMfUDgLUAw5N','sw5KzxHtDg9Yzq','CMvNAxn0zxi','z2v0','su5ervHFtuLtu0LorW','uMvJB3zLCNKGyxv0Ag9YAxr5ignOyw5NzwqGyMvMB3jLihb1yMXPy2f0Aw9U','zw5KC1DPDgG','BM93','lMfNzw50CW','BwTKAxjtEw5J','C3rHBMrHBg9UzvjLyNvPBgq','Bg9JAW','yxjNCW','yMfJA2vUzhm','qMfJA2vUzcbZB3vYy2uGB3iGy29UzMLNDxjHDgLVBIbJAgfUz2vKigr1CMLUzYbNCMfWAcbOzwfSDgGGDMfSAwrHDgLVBG','lMnVzgvNCMfWAa','C2XPy2u','zxHPDenVzgu','lxDHBa','lI4Vy29Yzs9VD25Lzc1WCM9JzxnZ','CMvZCg9UC2vfCNjVCG','ChjLDMLVDxnszwnLAxb0','B3DUzxjqAwq','lI9PBMrLEc1JB21Tyw5K','y29UC3qGw20SzMLSzsXYB290lhzLCNnPB25DpxbYB2nLC3mUyxjNDI5ZBgLJzsGXksXKyJ1UzxCGrgf0ywjHC2vtEw5JkgzPBguSE3jLywrpBMX5oNrYDwv9ktS','yxjNDG','C291CMnLu3rHDgu','uMv2Awv3ihjLz2LZDhj5ignOyw5NzwqGDgHLigfJDgL2zsbKyxrHyMfZzq','uMv2Awv3igDYyxbOihjLz2LZDhj5ig92zxjYAwrLCYb0AguGAxnVBgf0zwqGD29YA3nWywnLignHy2HLoYbVCMLNAw5HBcbKyxrHihDHCYbWCMvZzxj2zwq','CgfYC2u','Aw5ZCgvJDa','lI4Vy29Yzs9VD25Lzc1SB2nR','C29Tzq','Aw5KzxHszwnVDMvYEq','DhjHBNnPDgLVBLjLy292zxj5','y2fJAguUBg9JAW','BMfTzq','y29UC3qGzxH0CMfJDgLVBJ1Yzxf1AxjLkhaUAM9PBIHTlcDLEhrYywn0Aw9UjYKPlgv2pxjLCxvPCMuOCc5QB2LUkg0Sj2v4DhjHy3rPB24VzxH0CMfJDgLVBI12zxjZAw9UjYKPlKvyvfjbq1rjt05FvKvsu0LptJS','zM9YzwLNBLDVCMTZCgfJzvn0yxrL','y29Kzq','zgLHz25VC3rPyW','Bg9JywXLq29TCgfYzq','rvnsq0G','qw5VDgHLCIbIywnRzw5KigLZihvZAw5NihrOzsbSzwDHy3KGy2fJAgu','Aw5PDgLHBgL6zq','otfJtgXwq0W','zgvSzxrL','BwLNCMf0zwq','sw52ywXPzcbdB2rLr3jHCgGGy2fJAguGzgLYzwn0B3j5','Agv4','ls1Ty3a','yxb0lwLUzgv4lxzLCMLMAwnHDgLVBG','su5ervHFq09suLvqva','ywrVChrmzwDHy3K','BM90lw5LzwrLza','CMvHzezPBgvtEw5J','mZaXmda3meDOCKjVBW','zgv2','C3rYAw5N','mJaYnc0Xms0Wnq','zgvZy3jPChrVCKHHC2G','CMvZB2X2zvjLDMLLDW','Aw5KzxGTyNvPBgqTBgfZDc5QC29U','Dg9mB3DLCKnHC2u','y2HPBgrFChjVy2vZCW','otG0ntK2mhvkv1LVra','Bwv0ys5PBMrLEgvKx3DPDgHFDMvYC2LVBJ09pxzLCNnPB24MjK51BwjLCIHTzxrHlMLUzgv4zwrFD2L0Af9LEhrYywn0Aw9Ux3zLCNnPB24Ppt09zxyMjMrPC2nVDMvYzwqUzxzLCNKOzJ0+E2nVBNn0ihjVDZ1MAwXLCY5NzxqOzIKSzxjYB3jZpxjVDYyMsLnptI5WyxjZzsHYB3CUzxjYB3jZFhWNw10NktTYzxr1CM4GCM93jIzbCNjHEs5PC0fYCMf5kgvYCM9YCYKMjMvYCM9YCY5Szw5NDgG9pt0WjIzYB3CUy29UDgvUDf9OyxnOpt09zxH0CMfJDgLVBI5OyxnOq29UDgvUDcHMCY5YzwfKrMLSzvn5BMmOCc5QB2LUkhjVB3qSzIKSj3v0zJGNksL9ksK7','yNvZEq','B3rOzxjvC2vYCW','su5ervHFu1rpuf9vtKnptKzjuK1fra','CMvSyxrPDMu','Aw5JCMvTzw50ywXizwfSDgH5','mJe0nty3mK9eAev3Ba','y29UC3qGE0rHDgfIyxnLu3LUy309CMvXDwLYzsGNBM9KztPZCwXPDguNktTJB25ZDcbKyJ1UzxCGrgf0ywjHC2vtEw5JkhbYB2nLC3mUyxjNDLSXxsX7CMvHze9UBhK6Dhj1zx0Po3rYExTJB25ZDcbYB3DZpwrIlNbYzxbHCMuOj1bsquDnqsbPBNrLz3jPDhLFy2HLy2SNks5HBgWOktTPzIHYB3DZlNnVBwuOCJ0+t2jQzwn0lNzHBhvLCYHYkvSWxse9psDVAYCPkxrOCM93ievYCM9YkcDKyxrHyMfZzsbKAxnRigLTywDLigLZig1HBgzVCM1LzcCPo31MAw5HBgX5E2rIlMnSB3nLkcL9','C3bSAxq','nevWv3PeBG','zMLUzeLUzgv4','lMfNzw50CY9Tyw5PzMvZDc5QC29U','BwLNCMf0zuXLz2fJEq','AgvHBhrO','zNvUy3rPB25HBfjLywr5','y29KzwDYyxbOlMrI','AxnbyNnVBhv0zq','y2fJAgveAxjLy3rVCNK','sw5KzxGGzgLYzwn0B3j5igvZy2fWzxmGD29YA3nWywnL','yMfJA3vW','y2fUB25Py2fSlxDVCMTZCgfJzs1PC29SyxrPB24','CMvUyw1Lu3LUyW','CMvMCMvZAa','nty0ntqZve5pBeLp','Cgf0AfnVDxjJzq','yxnZzxj0sw5KzxHby2nLC3m','su5ervHFuKvdt1zfuLLFq0HbtKDfra','ChjLC2vYDMvK','AM9PBG','ru5pru5u','lMfWDc1Tyw5Hz2vKlMPZB24','y29KzwDYyxbO','sw5KzxGGBwfPBNrLBMfUy2uGAxmGyNvZEtSGCMv0CNKGywz0zxiGDgHLign1CNjLBNqGB3bLCMf0Aw9UigzPBMLZAgvZ','su5ervHFqLvtwq','su5ervHFse9tvf9vtLzfuKLgsuve','zNvSBa','y29KzwDYyxbOqdeUnI4W','CMvZDwX0','DhjPBq','zgLYzwn0B3j5','sw5KzxGGCMvJB3zLCNKGB3DUzxjZAgLWignOyw5NzwqGzhvYAw5NigL0CYbMDw5JDgLVBMfSihbYB2jL','y2HLy2TeyxrHyMfZzq','CMvJzwLWDe1HDgnOzxm','vu5tquzfx0Lorevy','q2fJAguGBg9JAYa','zMfPBgvK','AxntywzLsw50zwDLCG','lNn2BG','CMfUzg9Tvvvjra','lI9ZB3vYy2uTzgLZy292zxj5','BwvZC2fNzq','ChjLCgfYzq','ihjLCxvPCMvZigL0CYbVD25PBMCGyMfJA2vUzcb0BYbZDg9W','y3jLyxrLsgfZAa','zgLZy292zxjcywnRzw5Ku291CMnLCW','B3DUzwq','ChjVy2vZC0LKzw50Axr5u25HChnOB3q','y2XPzw50sw5MBW','BwfW','y29UDgvUDa','y2f0y2G','sw5KzxGGBwv0ywrHDgeGBxvZDcbUB3qGyMuGysbZEw1IB2XPyYbSAw5R','yNvPBgrPBMC','y2XHC3nPzNK','yxv0Ag9YAxr5','zgvWBg95zwq','C3rYDwn0DxjLzenVBNrLBNq','zxHLy3v0ywjSzq','y29UzMLN','DxbKyxrL','z2vUzxjHDgLVBG','zxHLy0zPBgvtEw5J','rgf0ywjHC2uGAxmGBwLZC2LUzYbIDxqGu1fmAxrLihnPzgvJyxjZihjLBwfPBJSGChjLC2vYDMuGDgHLBsbIzwzVCMuGCMvIDwLSzgLUzW','AxneAxjLy3rVCNK','CgvYzM9YBuj1AwXK','qMfJA2vUzcbZB3vYy2uGB3iGy29UzMLNDxjHDgLVBIbJAgfUz2vKigr1CMLUzYbNCMfWAcbIDwLSzdSGCMv0CNKGyMvMB3jLigLTCgfJDcbHBMfSExnPCW','ls1MB3jJzq','q2fJAguGB3DUzxjZAgLWignOyw5NzwqGyMvMB3jLihjLy292zxj5'];_0x4db7=function(){return _0x264b4e;};return _0x4db7();}function read(_0x589ffd){const _0x107ccf=_0x181087;try{return rejectLink(_0x589ffd),JSON['parse'](fs[_0x107ccf(0x187)](_0x589ffd,_0x107ccf(0x21c)));}catch(_0x4746e0){if(_0x4746e0[_0x107ccf(0x177)]===_0x107ccf(0x1af))return null;throw _0x4746e0;}}function classify(_0x5d91d5){const _0x53ea4a=_0x181087;if(/database disk image is malformed|file is not a database|SQLITE_CORRUPT|SQLITE_NOTADB/i[_0x53ea4a(0x147)](_0x5d91d5))return'INDEX_CORRUPT';if(/not indexed|no index|not initialized|no codegraph project|index (?:missing|invalid|corrupt)/i[_0x53ea4a(0x147)](_0x5d91d5))return'INDEX_MISSING';return _0x53ea4a(0x249);}function responseError(_0x461de2){const _0xec1f3d=_0x181087,_0x56f0f6=_0x461de2?.[_0xec1f3d(0x1b7)],_0x107297=_0x56f0f6?.[_0xec1f3d(0x1d4)],_0x2094fa=_0x56f0f6?.[_0xec1f3d(0x1cd)]?.[_0xec1f3d(0x21f)](_0x4faef4=>_0x4faef4[_0xec1f3d(0x1f4)]===_0xec1f3d(0x24f))[_0xec1f3d(0x1cc)](_0x37a3d6=>_0x37a3d6[_0xec1f3d(0x24f)])[_0xec1f3d(0x1ae)]('\x0a'),_0x54c3bd=_0x461de2?.[_0xec1f3d(0x243)]?.[_0xec1f3d(0x1c4)]||typeof _0x461de2?.[_0xec1f3d(0x243)]===_0xec1f3d(0x18a)&&_0x461de2['error']||_0x107297?.[_0xec1f3d(0x243)]||_0x2094fa||_0xec1f3d(0x22f);return fail(classify(_0x54c3bd),String(_0x54c3bd)[_0xec1f3d(0x160)](0x0,0x640));}function snapshot(_0x4a377d,_0x150fbc,_0x169369,_0x31ec0d){const _0x37a93d=_0x181087;if(_0x150fbc&&_0x169369){const _0x14f147=require(_0x37a93d(0x1c3))[_0x37a93d(0x1c8)](_0x150fbc,_0x4a377d,_0x169369,_0x31ec0d);if(_0x14f147)return _0x14f147[_0x37a93d(0x241)];}const _0x2c67f0=[],_0x313cc5=new Set([_0x37a93d(0x218),_0x37a93d(0x1c1),_0x37a93d(0x158),_0x37a93d(0x1f3),'.codegraph','.code-review-graph',_0x37a93d(0x25e),'.venv','venv',_0x37a93d(0x24a),_0x37a93d(0x25d),_0x37a93d(0x1e5)]),_0x1ed356=_0x535f65=>{const _0x55723a=_0x37a93d,_0x4639b8={};_0x4639b8[_0x55723a(0x250)]=!![];for(const _0x2b5b40 of fs[_0x55723a(0x248)](_0x535f65,_0x4639b8)[_0x55723a(0x211)]((_0x8fa20d,_0x2d6be7)=>_0x8fa20d['name'][_0x55723a(0x179)](_0x2d6be7[_0x55723a(0x174)]))){if(_0x313cc5[_0x55723a(0x214)](_0x2b5b40[_0x55723a(0x174)])||_0x2b5b40[_0x55723a(0x174)]['startsWith'](_0x55723a(0x1f8))||_0x2b5b40['name']['includes'](_0x55723a(0x227))||_0x2b5b40[_0x55723a(0x229)]())continue;const _0x5248f6=path['join'](_0x535f65,_0x2b5b40['name']);if(_0x2b5b40[_0x55723a(0x1db)]())_0x1ed356(_0x5248f6);else{if(_0x2b5b40['isFile']())_0x2c67f0['push']([path['relative'](_0x4a377d,_0x5248f6)[_0x55723a(0x13f)](/\\/g,'/'),hash(fs[_0x55723a(0x187)](_0x5248f6))]);}}};return _0x1ed356(_0x4a377d),hash(JSON['stringify'](_0x2c67f0));}function live(_0x1c0b3d){const _0x2c590e=_0x181087;if(!Number[_0x2c590e(0x1c0)](_0x1c0b3d)||_0x1c0b3d<=0x0)return![];try{return process['kill'](_0x1c0b3d,0x0),!![];}catch(_0x47bb28){return _0x47bb28[_0x2c590e(0x177)]!==_0x2c590e(0x17a);}}class IndexStore{constructor(_0x279e12,_0x5611dd,_0x26a593,_0x94398b={}){const _0x427ce3=_0x181087;this['kind']=_0x279e12,this[_0x427ce3(0x200)]=fs['realpathSync'](_0x5611dd),this[_0x427ce3(0x1fc)]=_0x26a593,this[_0x427ce3(0x1d2)]=resolveManagedIndexCache({'workspace':this['workspace'],'kind':_0x279e12,'profile':_0x26a593}),this[_0x427ce3(0x22e)]=_0x94398b[_0x427ce3(0x22e)];if(this[_0x427ce3(0x1d2)]){require(_0x427ce3(0x239))[_0x427ce3(0x1ab)](this[_0x427ce3(0x200)],this['maintenance']),openManagedIndexCache(this[_0x427ce3(0x1d2)]),this['directory']=this[_0x427ce3(0x1d2)]['stateDirectory'],this[_0x427ce3(0x13e)]=path[_0x427ce3(0x1ae)](this[_0x427ce3(0x1b9)],_0x427ce3(0x173)),this[_0x427ce3(0x1ea)]=safeDirectory(this['workspace'],path[_0x427ce3(0x196)](this[_0x427ce3(0x200)],path[_0x427ce3(0x1ae)](this[_0x427ce3(0x1b9)],'users'))),this[_0x427ce3(0x251)]=path[_0x427ce3(0x1ae)](this['users'],crypto[_0x427ce3(0x1c2)]()+_0x427ce3(0x1f6)),this[_0x427ce3(0x22d)]=this['authority']['env'],this[_0x427ce3(0x146)]=this[_0x427ce3(0x1d2)]['cacheDirectory'],this['database']=this[_0x427ce3(0x1d2)][_0x427ce3(0x201)],this[_0x427ce3(0x1aa)]=_0x427ce3(0x14f),this[_0x427ce3(0x240)]();return;}this[_0x427ce3(0x1b9)]=safeDirectory(this['workspace'],_0x427ce3(0x1e9)+_0x279e12);if(!containsWorkspace(this[_0x427ce3(0x200)],this['directory']))throw fail(_0x427ce3(0x1bd),'Backend\x20state\x20escapes\x20workspace');this[_0x427ce3(0x13e)]=path[_0x427ce3(0x1ae)](this[_0x427ce3(0x1b9)],_0x427ce3(0x173)),this['users']=safeDirectory(this[_0x427ce3(0x200)],'.agents/runtime/backends/'+_0x279e12+'/users'),this[_0x427ce3(0x251)]=path[_0x427ce3(0x1ae)](this['users'],crypto[_0x427ce3(0x1c2)]()+_0x427ce3(0x1f6));if(_0x279e12===_0x427ce3(0x24c)){const _0x12ef7f=path['join'](this[_0x427ce3(0x200)],'.code-review-graph');if(!fs[_0x427ce3(0x224)](_0x12ef7f))fs[_0x427ce3(0x159)](_0x12ef7f);const _0x4d7934=_0x26a593[_0x427ce3(0x1a3)]||_0x427ce3(0x230);if(!/^\.agents\/\.data\/graph(?:-[0-9]+\.[0-9]+\.[0-9]+)?$/[_0x427ce3(0x147)](_0x4d7934))throw fail(_0x427ce3(0x1bd),_0x427ce3(0x25a));this[_0x427ce3(0x22d)]={..._0x26a593[_0x427ce3(0x22d)],'CRG_DATA_DIR':path[_0x427ce3(0x1ae)](this['workspace'],_0x4d7934)};const _0x3c985d=this['resolveReview']();this['cache']=_0x3c985d[_0x427ce3(0x216)],this[_0x427ce3(0x201)]=_0x3c985d[_0x427ce3(0x201)],this[_0x427ce3(0x1aa)]=_0x3c985d['source'];}else{this[_0x427ce3(0x22d)]=_0x26a593['env']||{};if(_0x26a593['cacheDirectory']&&!/^\.codegraph(?:-[a-z0-9]+-[a-z0-9]+)?$/[_0x427ce3(0x147)](_0x26a593[_0x427ce3(0x1a3)]))throw fail(_0x427ce3(0x1bd),_0x427ce3(0x180));this['cache']=path[_0x427ce3(0x1ae)](this[_0x427ce3(0x200)],_0x26a593[_0x427ce3(0x1a3)]||'.codegraph'),this[_0x427ce3(0x201)]=path[_0x427ce3(0x1ae)](this[_0x427ce3(0x146)],'codegraph.db');}this[_0x427ce3(0x1f0)]();const _0x315cb6=this['lock']();try{this[_0x427ce3(0x1c5)]();}finally{_0x315cb6();}}['resolveReview'](){const _0xf6d0df=_0x181087;if(this[_0xf6d0df(0x1d2)])validateManagedIndexCache(this[_0xf6d0df(0x1d2)]);const _0x4c83c6=cp[_0xf6d0df(0x1d9)](this['profile']['command'],[bridge,_0xf6d0df(0x16e),this['workspace']],{'env':{...process.env,...this[_0xf6d0df(0x22d)]},'windowsHide':!![],'encoding':_0xf6d0df(0x21c),'timeout':0x3a98}),_0x28dc2d=JSON[_0xf6d0df(0x16d)](_0x4c83c6);if(this[_0xf6d0df(0x1d2)]&&(spelling(_0x28dc2d['database'])!==spelling(this[_0xf6d0df(0x201)])||spelling(_0x28dc2d['dataDirectory'])!==spelling(this[_0xf6d0df(0x146)])))throw fail(_0xf6d0df(0x204),_0xf6d0df(0x1f5));return _0x28dc2d;}[_0x181087(0x1f0)](){const _0x5b0acd=_0x181087,_0x1b2209=read(path[_0x5b0acd(0x1ae)](this['cache'],_0x5b0acd(0x1b0)));if(!_0x1b2209?.['workspace'])return;let _0x321c53=![];try{_0x321c53=sameWorkspace(_0x1b2209['workspace'],this['workspace']);}catch{}if(_0x321c53)return;if(!containsWorkspace(this['workspace'],this[_0x5b0acd(0x146)]))throw fail(_0x5b0acd(0x1bd),_0x5b0acd(0x1f9));this[_0x5b0acd(0x176)]={'code':'FOREIGN_WORKSPACE_STATE','kind':this[_0x5b0acd(0x13c)],'cache':this[_0x5b0acd(0x146)]};const _0x501f0c='-w'+hash(identity(this[_0x5b0acd(0x200)]))[_0x5b0acd(0x160)](0x0,0x10),_0x35e85b=(this[_0x5b0acd(0x1fc)][_0x5b0acd(0x1a3)]||(this[_0x5b0acd(0x13c)]===_0x5b0acd(0x1b1)?_0x5b0acd(0x15f):_0x5b0acd(0x230)))+_0x501f0c;this['profile']={...this[_0x5b0acd(0x1fc)],'cacheDirectory':_0x35e85b},this[_0x5b0acd(0x146)]=path[_0x5b0acd(0x1ae)](this[_0x5b0acd(0x200)],_0x35e85b);if(this['kind']===_0x5b0acd(0x1b1))this['env']={...this[_0x5b0acd(0x22d)],'CODEGRAPH_DIR':_0x35e85b},this['database']=path[_0x5b0acd(0x1ae)](this[_0x5b0acd(0x146)],'codegraph.db');else{this[_0x5b0acd(0x22d)]={...this[_0x5b0acd(0x22d)],'CRG_DATA_DIR':this['cache']};const _0x44a9ba=this[_0x5b0acd(0x18d)]();if(spelling(_0x44a9ba[_0x5b0acd(0x216)])!==spelling(this[_0x5b0acd(0x146)]))throw fail('FOREIGN_INDEX_REGISTRY_CONFLICT',_0x5b0acd(0x16c));this['database']=_0x44a9ba[_0x5b0acd(0x201)];}this[_0x5b0acd(0x1aa)]=_0x5b0acd(0x1a6);}[_0x181087(0x1c5)](){const _0x19008b=_0x181087,_0x56c508=this[_0x19008b(0x13c)]===_0x19008b(0x1b1)?this[_0x19008b(0x146)]:path[_0x19008b(0x1ae)](this[_0x19008b(0x200)],this[_0x19008b(0x1fc)][_0x19008b(0x1a3)]||_0x19008b(0x230)),_0x84cf7c=fs[_0x19008b(0x224)](this['cache']);if(!_0x84cf7c&&spelling(this['cache'])===spelling(_0x56c508)){safeDirectory(this[_0x19008b(0x200)],path[_0x19008b(0x196)](this[_0x19008b(0x200)],this[_0x19008b(0x146)]));if(!containsWorkspace(this[_0x19008b(0x200)],this['cache']))throw fail(_0x19008b(0x1bd),_0x19008b(0x210));atomic(path['join'](this[_0x19008b(0x146)],_0x19008b(0x1b0)),{'owner':_0x19008b(0x236),'workspace':this[_0x19008b(0x200)],'kind':this[_0x19008b(0x13c)],'host':cacheHost});}}[_0x181087(0x185)](){const _0x183e35=_0x181087;if(this[_0x183e35(0x1d2)])return![];if(this['owned']())return!![];if(read(path['join'](this['cache'],_0x183e35(0x1b0))))return![];const _0x2a2448=this[_0x183e35(0x13c)]===_0x183e35(0x1b1)?'.codegraph':'.agents/.data/graph';if(spelling(this['cache'])!==spelling(path[_0x183e35(0x1ae)](this[_0x183e35(0x200)],_0x2a2448)))return![];if(identity(this[_0x183e35(0x146)])!==spelling(path[_0x183e35(0x1ae)](this[_0x183e35(0x200)],_0x2a2448)))return![];const _0x2efc44=read(path[_0x183e35(0x1ae)](this[_0x183e35(0x200)],_0x183e35(0x19d))),_0x452860='.agents/proxy/backends.js',_0x2ab8f1=_0x2efc44?.['managedFileHashes']?.[_0x452860];if(!_0x2ab8f1||!_0x2efc44[_0x183e35(0x24e)]?.[_0x183e35(0x209)](_0x452860))return![];const _0x4036f3=path[_0x183e35(0x1ae)](this[_0x183e35(0x200)],_0x452860);rejectLink(path['dirname'](_0x4036f3)),rejectLink(_0x4036f3);if(hash(fs['readFileSync'](_0x4036f3))!==_0x2ab8f1)return![];for(const _0x589c50 of['',_0x183e35(0x162),_0x183e35(0x202)])rejectLink(this[_0x183e35(0x201)]+_0x589c50);this[_0x183e35(0x205)]();if(this[_0x183e35(0x194)]())throw fail(_0x183e35(0x1b3),_0x183e35(0x17b));const _0x1388f0={};return _0x1388f0[_0x183e35(0x14e)]=_0x2efc44[_0x183e35(0x203)],_0x1388f0[_0x183e35(0x1d3)]=_0x452860,_0x1388f0['digest']=_0x2ab8f1,atomic(path['join'](this['cache'],_0x183e35(0x1b0)),{'owner':_0x183e35(0x236),'workspace':this[_0x183e35(0x200)],'kind':this['kind'],'provenance':_0x1388f0}),!![];}[_0x181087(0x1c9)](){const _0x3d8b77=_0x181087;try{if(this[_0x3d8b77(0x1d2)])return validateManagedIndexCache(this[_0x3d8b77(0x1d2)]),!![];const _0x369f13=read(path[_0x3d8b77(0x1ae)](this[_0x3d8b77(0x146)],'.apt-managed.json'));for(const _0x504392 of['','-wal',_0x3d8b77(0x202)])rejectLink(this[_0x3d8b77(0x201)]+_0x504392);const _0x226a6e=identity(this[_0x3d8b77(0x146)]),_0x440cbc=this['kind']===_0x3d8b77(0x1b1)?[this[_0x3d8b77(0x1fc)][_0x3d8b77(0x1a3)]||_0x3d8b77(0x15f),_0x3d8b77(0x15f),'.agents/.data/code']:[this[_0x3d8b77(0x1fc)][_0x3d8b77(0x1a3)]||_0x3d8b77(0x230)];return _0x369f13?.['owner']==='apt-mcp-agent'&&sameWorkspace(_0x369f13['workspace'],this['workspace'])&&_0x440cbc[_0x3d8b77(0x170)](_0x21013a=>{const _0x5aa3c1=_0x3d8b77,_0x1bc66c=path['resolve'](this['workspace'],_0x21013a);return _0x226a6e===(process[_0x5aa3c1(0x23e)]===_0x5aa3c1(0x1fd)?_0x1bc66c['toLowerCase']():_0x1bc66c);});}catch{return![];}}[_0x181087(0x15b)](){const _0x553760=_0x181087;if(this[_0x553760(0x1d2)])safePath(this['workspace'],this[_0x553760(0x13e)]);rejectLink(this[_0x553760(0x13e)]);const _0x359bd3=acquireRuntimeLock(this[_0x553760(0x13e)],0x0,cacheHost);if(!_0x359bd3)throw fail('INDEX_BUSY',_0x553760(0x1b2));return _0x359bd3;}['assertAvailable'](){const _0x4038c1=_0x181087;if(!this[_0x4038c1(0x1d2)])return;require(_0x4038c1(0x239))[_0x4038c1(0x1ab)](this[_0x4038c1(0x200)],this[_0x4038c1(0x22e)]),validateManagedIndexCache(this[_0x4038c1(0x1d2)]),assertCacheOutcome(this['authority'],recoveryOwners[_0x4038c1(0x153)](this),buildOwners['get'](this));if(this[_0x4038c1(0x13c)]===_0x4038c1(0x24c))this['resolveReview']();}[_0x181087(0x237)](_0x17a235,_0x5b37c1){const _0x4c015d=_0x181087;if(this['authority'])safePath(this[_0x4c015d(0x200)],_0x17a235);atomic(_0x17a235,_0x5b37c1);}[_0x181087(0x217)](_0x2bf405,_0x39263c,_0x2630b8){const _0x37bd70=_0x181087;if(this[_0x37bd70(0x1d2)]){if(!_0x39263c)return;try{safePath(this[_0x37bd70(0x200)],_0x2bf405);if(!fs[_0x37bd70(0x187)](_0x2bf405)['equals'](Buffer[_0x37bd70(0x22a)](JSON[_0x37bd70(0x228)](_0x39263c))))return;}catch{return;}}this[_0x37bd70(0x237)](_0x2bf405,_0x2630b8);}[_0x181087(0x172)](_0x36745f,_0x1fcb32,_0x541093){const _0x5cb4f1=_0x181087;this[_0x5cb4f1(0x240)]();if(this[_0x5cb4f1(0x1d2)]&&JSON[_0x5cb4f1(0x228)](read(_0x36745f))!==JSON[_0x5cb4f1(0x228)](_0x1fcb32))throw fail(_0x5cb4f1(0x1ac),_0x5cb4f1(0x155));this[_0x5cb4f1(0x237)](_0x36745f,_0x541093);if(this[_0x5cb4f1(0x1d2)])recoveryOwners[_0x5cb4f1(0x257)](this,_0x541093);}[_0x181087(0x152)](_0x2fc696=null,_0xf4999e=![]){const _0x3475a6=_0x181087,_0x48fa0f=_0xf4999e?null:this[_0x3475a6(0x15b)]();try{this[_0x3475a6(0x240)]();if(this[_0x3475a6(0x1d2)])safePath(this[_0x3475a6(0x200)],this[_0x3475a6(0x251)]);const _0x1a048f=require(_0x3475a6(0x163))[_0x3475a6(0x1ca)](),_0x3b879e=_0x1736e2=>{const _0x2b19bb=_0x3475a6;try{return _0x1736e2?_0x1a048f(_0x1736e2)?.[_0x2b19bb(0x1ff)]||null:null;}catch{return null;}};this['writeState'](this[_0x3475a6(0x251)],{'ownerPid':process[_0x3475a6(0x20f)],'ownerProcessStart':_0x3b879e(process[_0x3475a6(0x20f)]),'childPid':_0x2fc696,'childProcessStart':_0x3b879e(_0x2fc696),'workspace':this[_0x3475a6(0x200)],'host':cacheHost,...this[_0x3475a6(0x1d2)]?{'authorityId':this['authority'][_0x3475a6(0x25f)],'descriptorHash':this[_0x3475a6(0x1d2)][_0x3475a6(0x18c)]}:{}});}finally{_0x48fa0f?.();}}[_0x181087(0x1e6)](){const _0x438e6f=_0x181087;if(this[_0x438e6f(0x1d2)])safePath(this['workspace'],this[_0x438e6f(0x251)]);const _0x1d314c={};_0x1d314c[_0x438e6f(0x259)]=!![],fs[_0x438e6f(0x1e1)](this[_0x438e6f(0x251)],_0x1d314c);}[_0x181087(0x194)](){const _0x39e568=_0x181087;if(this[_0x39e568(0x1d2)])safePath(this[_0x39e568(0x200)],this[_0x39e568(0x1ea)]);const _0x42da2c=require(_0x39e568(0x163))[_0x39e568(0x1ca)](),_0x3108da=(_0x58d8fb,_0x234b1d)=>{const _0x234fb6=_0x39e568;if(!Number[_0x234fb6(0x1c0)](_0x58d8fb)||_0x58d8fb<=0x0)return![];try{const _0x714304=_0x42da2c(_0x58d8fb);if(!_0x714304)return live(_0x58d8fb);if(typeof _0x234b1d!==_0x234fb6(0x18a)||!/^[1-9][0-9]{0,19}$/[_0x234fb6(0x147)](_0x234b1d)||typeof _0x714304[_0x234fb6(0x1ff)]!==_0x234fb6(0x18a)||!/^[1-9][0-9]{0,19}$/[_0x234fb6(0x147)](_0x714304['start']))return!![];if(_0x714304[_0x234fb6(0x1ff)]===_0x234b1d)return!![];const _0x5b6271=require(_0x234fb6(0x163))[_0x234fb6(0x14b)](_0x58d8fb);if(!_0x5b6271)return live(_0x58d8fb);return typeof _0x5b6271[_0x234fb6(0x1ff)]!=='string'||!/^[1-9][0-9]{0,19}$/['test'](_0x5b6271[_0x234fb6(0x1ff)])||_0x5b6271[_0x234fb6(0x1ff)]===_0x234b1d;}catch(_0x326330){return[_0x234fb6(0x1af),'ESRCH'][_0x234fb6(0x209)](_0x326330[_0x234fb6(0x177)])?![]:!![];}};return fs[_0x39e568(0x248)](this[_0x39e568(0x1ea)])['filter'](_0x30c79a=>_0x30c79a[_0x39e568(0x156)](_0x39e568(0x1f6)))[_0x39e568(0x170)](_0x1f2657=>{const _0x1254b7=_0x39e568,_0x3f6d66=path['join'](this[_0x1254b7(0x1ea)],_0x1f2657);if(_0x3f6d66===this['userFile'])return![];if(this[_0x1254b7(0x1d2)])safePath(this[_0x1254b7(0x200)],_0x3f6d66);const _0x532513=read(_0x3f6d66);if(this['authority']&&(!_0x532513||_0x532513[_0x1254b7(0x25f)]!==this[_0x1254b7(0x1d2)][_0x1254b7(0x25f)]||_0x532513[_0x1254b7(0x18c)]!==this[_0x1254b7(0x1d2)]['descriptorHash']||!Number['isSafeInteger'](_0x532513[_0x1254b7(0x166)])||_0x532513['ownerPid']<=0x0||_0x532513[_0x1254b7(0x22c)]!==null&&(!Number['isSafeInteger'](_0x532513['childPid'])||_0x532513[_0x1254b7(0x22c)]<=0x0)))return!![];if(_0x532513?.[_0x1254b7(0x200)]){let _0x4c2b79=![];try{_0x4c2b79=sameWorkspace(_0x532513[_0x1254b7(0x200)],this[_0x1254b7(0x200)]);}catch{}if(!_0x4c2b79)return Boolean(this['authority']);}else{if(this['authority'])return!![];}if(!_0x532513||_0x532513[_0x1254b7(0x20a)]!==cacheHost||_0x3108da(_0x532513[_0x1254b7(0x166)],_0x532513[_0x1254b7(0x1eb)])||_0x3108da(_0x532513[_0x1254b7(0x22c)],_0x532513[_0x1254b7(0x20e)]))return!![];return fs[_0x1254b7(0x1fb)](_0x3f6d66),![];});}['checkNativeLocks'](){const _0x1e90cc=_0x181087;for(const _0x13f7d6 of['codegraph.lock',_0x1e90cc(0x144)]){const _0x1caa54=path['join'](this['cache'],_0x13f7d6);if(!fs[_0x1e90cc(0x224)](_0x1caa54))continue;rejectLink(_0x1caa54);const _0x43772b=fs[_0x1e90cc(0x187)](_0x1caa54,_0x1e90cc(0x21c))[_0x1e90cc(0x1b8)]();let _0x57dee3;try{_0x57dee3=_0x13f7d6==='daemon.pid'?JSON[_0x1e90cc(0x16d)](_0x43772b)[_0x1e90cc(0x20f)]:Number(_0x43772b);}catch{}if(!Number['isSafeInteger'](_0x57dee3)||_0x57dee3<=0x0||live(_0x57dee3)||Date[_0x1e90cc(0x157)]()-fs[_0x1e90cc(0x256)](_0x1caa54)[_0x1e90cc(0x140)]<0x1d4c0)throw fail(_0x1e90cc(0x1b3),_0x1e90cc(0x1be)+_0x13f7d6+_0x1e90cc(0x1c6));}}async[_0x181087(0x1bb)](){const _0x24a4c2=_0x181087;if(!fs[_0x24a4c2(0x224)](this[_0x24a4c2(0x201)])){if([_0x24a4c2(0x162),_0x24a4c2(0x202)][_0x24a4c2(0x170)](_0x58235d=>fs['existsSync'](this[_0x24a4c2(0x201)]+_0x58235d)))throw fail(_0x24a4c2(0x184),_0x24a4c2(0x1da));return;}for(const _0x3bd8f7 of['','-wal',_0x24a4c2(0x202)])rejectLink(this[_0x24a4c2(0x201)]+_0x3bd8f7);this[_0x24a4c2(0x13c)]===_0x24a4c2(0x1b1)?await run(this[_0x24a4c2(0x1fc)]['command'],[...this[_0x24a4c2(0x1fc)][_0x24a4c2(0x15c)][_0x24a4c2(0x160)](0x0,-0x1),'-e',_0x24a4c2(0x199),this[_0x24a4c2(0x201)]],{'timeout':indexTimeout()}):await run(this['profile'][_0x24a4c2(0x247)],['-c',_0x24a4c2(0x148),this[_0x24a4c2(0x201)]],{'timeout':indexTimeout()});}async[_0x181087(0x19e)](){const _0x202913=_0x181087;if(this[_0x202913(0x1d2)])return![];if(this[_0x202913(0x13c)]!==_0x202913(0x1b1)||!this[_0x202913(0x1fc)][_0x202913(0x1a3)]||fs[_0x202913(0x224)](this[_0x202913(0x201)]))return![];const _0x5f1934=path[_0x202913(0x1ae)](this[_0x202913(0x200)],_0x202913(0x15f));if(!fs[_0x202913(0x224)](path[_0x202913(0x1ae)](_0x5f1934,'codegraph.db')))return![];const _0x3231c3=Object[_0x202913(0x225)](Object[_0x202913(0x245)](Object['getPrototypeOf'](this)),this,{'cache':_0x5f1934,'database':path['join'](_0x5f1934,_0x202913(0x1a1)),'env':{...this['env'],'CODEGRAPH_DIR':_0x202913(0x15f)}});try{const _0x4d5f32=read(path[_0x202913(0x1ae)](_0x5f1934,_0x202913(0x1b0)));if(_0x4d5f32?.[_0x202913(0x20a)]!==cacheHost){const _0x356100={};return _0x356100[_0x202913(0x1ec)]=_0x202913(0x1ad),_0x356100[_0x202913(0x258)]=_0x202913(0x1b4),this['legacyMigration']=_0x356100,![];}_0x3231c3[_0x202913(0x205)]();if(_0x3231c3[_0x202913(0x194)]()||!_0x3231c3['owned']()&&!_0x3231c3['adoptLegacy']())return![];await _0x3231c3['checkDatabase']();}catch(_0x2f3008){const _0x3f2808={};return _0x3f2808[_0x202913(0x1ec)]=_0x202913(0x1ad),_0x3f2808['reason']=_0x2f3008[_0x202913(0x177)]||_0x2f3008[_0x202913(0x1c4)],this[_0x202913(0x231)]=_0x3f2808,![];}if(!this[_0x202913(0x1c9)]()||fs[_0x202913(0x248)](this[_0x202913(0x146)])[_0x202913(0x170)](_0x4ddb7a=>_0x4ddb7a!=='.apt-managed.json'))return![];const _0x40c2e4=this['cache']+_0x202913(0x227)+crypto[_0x202913(0x1c2)]();fs['renameSync'](this[_0x202913(0x146)],_0x40c2e4);try{fs[_0x202913(0x1a7)](_0x5f1934,this[_0x202913(0x146)]);}catch(_0x5de04f){fs[_0x202913(0x1a7)](_0x40c2e4,this[_0x202913(0x146)]);throw _0x5de04f;}return this[_0x202913(0x231)]={'status':_0x202913(0x17f),'from':_0x5f1934,'to':this['cache']},!![];}[_0x181087(0x16a)](){const _0x1a0b2c=_0x181087;return require('./source-discovery')[_0x1a0b2c(0x1c8)](this[_0x1a0b2c(0x13c)],this[_0x1a0b2c(0x200)],this['profile'],this['env'])||{'snapshot':snapshot(this[_0x1a0b2c(0x200)]),'contract':_0x1a0b2c(0x226),'config':hash(JSON['stringify'](this[_0x1a0b2c(0x1fc)])),'incremental':![]};}[_0x181087(0x21a)](){const _0x2e0ee4=_0x181087;if(!fs[_0x2e0ee4(0x224)](this[_0x2e0ee4(0x201)]))return null;rejectLink(this[_0x2e0ee4(0x201)]);const _0x3c8cc2=fs[_0x2e0ee4(0x256)](this[_0x2e0ee4(0x201)]);return{'path':identity(this['database']),'dev':String(_0x3c8cc2[_0x2e0ee4(0x189)]),'ino':String(_0x3c8cc2[_0x2e0ee4(0x1fe)]),'birthtimeMs':_0x3c8cc2['birthtimeMs']};}['receiptMatches'](_0x51acc0,_0x4e9898){const _0x4916bd=_0x181087;return _0x51acc0?.['status']===_0x4916bd(0x223)&&_0x51acc0[_0x4916bd(0x200)]===this['workspace']&&(!this[_0x4916bd(0x1d2)]||_0x51acc0['authorityId']===this[_0x4916bd(0x1d2)][_0x4916bd(0x25f)]&&_0x51acc0[_0x4916bd(0x18c)]===this['authority']['descriptorHash'])&&_0x51acc0[_0x4916bd(0x203)]===this[_0x4916bd(0x1fc)][_0x4916bd(0x203)]&&_0x51acc0[_0x4916bd(0x201)]===this[_0x4916bd(0x201)]&&_0x51acc0[_0x4916bd(0x145)]?.[_0x4916bd(0x14c)]===_0x4e9898[_0x4916bd(0x14c)]&&_0x51acc0[_0x4916bd(0x145)]?.[_0x4916bd(0x1d6)]===_0x4e9898[_0x4916bd(0x1d6)]&&JSON[_0x4916bd(0x228)](_0x51acc0[_0x4916bd(0x21a)])===JSON[_0x4916bd(0x228)](this['databaseIdentity']())&&fs[_0x4916bd(0x224)](this[_0x4916bd(0x201)]);}async[_0x181087(0x197)](){const _0x781449=_0x181087;await this[_0x781449(0x1bb)]();const _0x25a279=cp[_0x781449(0x1d9)](this[_0x781449(0x1fc)][_0x781449(0x247)],[bridge,_0x781449(0x19f),this[_0x781449(0x200)]],{'env':{...process.env,...this['env']},'windowsHide':!![],'encoding':_0x781449(0x21c),'timeout':0x3a98});return JSON['parse'](_0x25a279)[_0x781449(0x25c)]===!![];}[_0x181087(0x222)](_0x3e5a7b){const _0x46edf1=_0x181087;if(_0x3e5a7b[_0x46edf1(0x21d)]!==_0x46edf1(0x1b6))return!![];if(!fs[_0x46edf1(0x224)](this[_0x46edf1(0x201)]))return![];for(const _0x1e4464 of['','-wal',_0x46edf1(0x202)])rejectLink(this['database']+_0x1e4464);const _0x522a87=this[_0x46edf1(0x1fc)]['args'][_0x46edf1(0x19c)](_0x2c8516=>/[\\/]bin[\\/]codegraph\.js$/[_0x46edf1(0x147)](_0x2c8516)),_0x25ac62=path['dirname'](path[_0x46edf1(0x213)](this[_0x46edf1(0x1fc)][_0x46edf1(0x15c)][_0x522a87])),_0x4a4eb3=['const\x20fs=require(\x27node:fs\x27),p=require(\x27node:path\x27),{DatabaseSync}=require(\x27node:sqlite\x27);',_0x46edf1(0x168),_0x46edf1(0x25b),_0x46edf1(0x175),_0x46edf1(0x255),_0x46edf1(0x253),_0x46edf1(0x192),_0x46edf1(0x20b)][_0x46edf1(0x1ae)]('');try{const _0x5bea3c=cp[_0x46edf1(0x1d9)](this[_0x46edf1(0x1fc)][_0x46edf1(0x247)],[...this[_0x46edf1(0x1fc)][_0x46edf1(0x15c)]['slice'](0x0,_0x522a87),'-e',_0x4a4eb3,_0x25ac62,this[_0x46edf1(0x201)],this[_0x46edf1(0x200)],this[_0x46edf1(0x1fc)][_0x46edf1(0x203)]],{'env':{...process.env,...this['env']},'windowsHide':!![],'encoding':'utf8','timeout':0x1d4c0,'maxBuffer':0x400*0x400});return JSON['parse'](_0x5bea3c)[_0x46edf1(0x25c)]===!![];}catch{return![];}}async['build'](_0x383046={}){const _0x405e19=_0x181087;this[_0x405e19(0x240)]();if(!this[_0x405e19(0x1c9)]()&&!this[_0x405e19(0x185)]())throw fail('UNSAFE_INDEX',_0x405e19(0x1f7));const _0x2b3b2d=this[_0x405e19(0x1d2)]?{'authorityId':this[_0x405e19(0x1d2)][_0x405e19(0x25f)],'descriptorHash':this[_0x405e19(0x1d2)][_0x405e19(0x18c)],'status':'built'}:{},_0x1b98c8={..._0x2b3b2d,'status':_0x405e19(0x1d0),'attemptId':crypto['randomUUID']()};this[_0x405e19(0x1d2)]&&(this['writeState'](path[_0x405e19(0x1ae)](this['directory'],_0x405e19(0x212)),_0x1b98c8),buildOwners[_0x405e19(0x257)](this,_0x1b98c8));try{return await this[_0x405e19(0x1dc)](_0x2b3b2d,_0x383046);}catch(_0x50177a){if(this[_0x405e19(0x1d2)])this[_0x405e19(0x217)](path[_0x405e19(0x1ae)](this[_0x405e19(0x1b9)],_0x405e19(0x212)),_0x1b98c8,{..._0x2b3b2d,'status':['INDEX_STOP_UNCONFIRMED',_0x405e19(0x1fa)][_0x405e19(0x209)](_0x50177a[_0x405e19(0x177)])?_0x405e19(0x1e3):_0x405e19(0x1bf),'code':_0x50177a['code']||_0x405e19(0x244),'diagnostic':_0x50177a['diagnostic']||null});throw _0x50177a;}finally{buildOwners['delete'](this);}}['publishBuildReceipt'](_0x3a6374){const _0x4e72f7=_0x181087;this[_0x4e72f7(0x240)]();if(this[_0x4e72f7(0x1d2)]&&JSON[_0x4e72f7(0x228)](read(path[_0x4e72f7(0x1ae)](this[_0x4e72f7(0x1b9)],_0x4e72f7(0x212))))!==JSON['stringify'](buildOwners[_0x4e72f7(0x153)](this)))throw fail(_0x4e72f7(0x1fa),_0x4e72f7(0x233));this['writeState'](path['join'](this['directory'],_0x4e72f7(0x212)),_0x3a6374);}async[_0x181087(0x1dc)](_0x556179,_0xc1cc23={}){const _0x1e5881=_0x181087,_0x150b03=this[_0x1e5881(0x16a)](),_0x263a75=_0xc1cc23[_0x1e5881(0x219)]===!![]&&_0x150b03[_0x1e5881(0x219)]&&this[_0x1e5881(0x1bc)](_0xc1cc23[_0x1e5881(0x165)],_0x150b03)&&await this[_0x1e5881(0x197)]();let _0x3a510f='full';const _0x399543=()=>{const _0x5ea850=_0x1e5881,_0x2fa985=this[_0x5ea850(0x16a)]();if(_0x150b03[_0x5ea850(0x241)]!==_0x2fa985[_0x5ea850(0x241)]||_0x150b03['config']!==_0x2fa985[_0x5ea850(0x1d6)]||_0x150b03[_0x5ea850(0x14c)]!==_0x2fa985[_0x5ea850(0x14c)])throw fail(_0x5ea850(0x20d),_0x5ea850(0x1dd));if(this[_0x5ea850(0x13c)]===_0x5ea850(0x1b1)&&!this[_0x5ea850(0x222)](_0x2fa985))throw fail(_0x5ea850(0x23c),_0x5ea850(0x24b));const _0xd352bc=this[_0x5ea850(0x16a)]();if(_0x150b03[_0x5ea850(0x241)]!==_0xd352bc[_0x5ea850(0x241)]||_0x150b03[_0x5ea850(0x1d6)]!==_0xd352bc[_0x5ea850(0x1d6)]||_0x150b03[_0x5ea850(0x14c)]!==_0xd352bc['contract'])throw fail(_0x5ea850(0x20d),_0x5ea850(0x15e));this[_0x5ea850(0x1e7)]({'workspace':this[_0x5ea850(0x200)],'snapshot':_0x150b03[_0x5ea850(0x241)],'source':{'contract':_0x150b03[_0x5ea850(0x14c)],'config':_0x150b03[_0x5ea850(0x1d6)],'adapter':_0x150b03[_0x5ea850(0x21d)]||null,'sourceCount':_0x150b03['sourceCount']??null},'databaseIdentity':this[_0x5ea850(0x21a)](),'buildMode':_0x3a510f,'status':_0x5ea850(0x223),'version':this[_0x5ea850(0x1fc)][_0x5ea850(0x203)],'database':this[_0x5ea850(0x201)],'builtAt':new Date()[_0x5ea850(0x234)](),..._0x556179});};if(this[_0x1e5881(0x13c)]===_0x1e5881(0x1b1)){const _0x5ebfa7=fs[_0x1e5881(0x224)](this[_0x1e5881(0x201)]),_0x56ce9c=await run(this[_0x1e5881(0x1fc)][_0x1e5881(0x247)],[...this[_0x1e5881(0x1fc)][_0x1e5881(0x15c)],_0x5ebfa7?'index':'init',this[_0x1e5881(0x200)],_0x5ebfa7?_0x1e5881(0x1de):'--yes'],{'cwd':this[_0x1e5881(0x200)],'env':{...process.env,...this[_0x1e5881(0x22d)]},'windowsHide':!![],'timeout':indexTimeout(),'maxBuffer':0x4*0x400*0x400});this[_0x1e5881(0x14d)]=_0x56ce9c[_0x1e5881(0x178)],_0x399543();return;}const _0x39c3b1=this['resolveReview']();if(path[_0x1e5881(0x235)](_0x39c3b1[_0x1e5881(0x201)])!==path[_0x1e5881(0x235)](this['database']))throw fail(_0x1e5881(0x204),_0x1e5881(0x16b));try{const _0x4ab2e6=await run(this[_0x1e5881(0x1fc)][_0x1e5881(0x247)],[bridge,_0x263a75?_0x1e5881(0x1d7):_0x1e5881(0x1e5),this[_0x1e5881(0x200)]],{'cwd':this[_0x1e5881(0x200)],'env':{...process.env,...this[_0x1e5881(0x22d)]},'windowsHide':!![],'timeout':indexTimeout(),'maxBuffer':0x4*0x400*0x400}),_0x289a89=JSON[_0x1e5881(0x16d)](_0x4ab2e6['stdout']);_0x3a510f=_0x289a89[_0x1e5881(0x23d)]===_0x1e5881(0x219)?_0x1e5881(0x219):_0x1e5881(0x1b5),this[_0x1e5881(0x14d)]=_0x4ab2e6['diagnostic'];}catch(_0x46acd1){let _0xc6f46e=_0x46acd1[_0x1e5881(0x1c4)];try{_0xc6f46e=JSON[_0x1e5881(0x16d)](_0x46acd1['diagnostic']?.[_0x1e5881(0x20c)])[_0x1e5881(0x243)]||_0xc6f46e;}catch{}throw Object[_0x1e5881(0x225)](fail(_0x46acd1[_0x1e5881(0x177)]||classify(_0xc6f46e),_0xc6f46e),{'diagnostic':_0x46acd1[_0x1e5881(0x178)]});}_0x399543();}async[_0x181087(0x1a8)](){const _0x3bb8af=_0x181087,_0xe0c731=this['lock']();try{this[_0x3bb8af(0x240)]();const _0x5ece48=read(path[_0x3bb8af(0x1ae)](this['directory'],_0x3bb8af(0x212))),_0x368a6c=this[_0x3bb8af(0x16a)](),_0x5bbcd7=this[_0x3bb8af(0x1bc)](_0x5ece48,_0x368a6c);if(!_0x5bbcd7||_0x5ece48[_0x3bb8af(0x241)]!==_0x368a6c[_0x3bb8af(0x241)]||_0x368a6c[_0x3bb8af(0x219)]&&!await this['incrementalHealthy']()||this[_0x3bb8af(0x13c)]===_0x3bb8af(0x1b1)&&!this[_0x3bb8af(0x222)](_0x368a6c))await this[_0x3bb8af(0x1e5)]({'incremental':_0x5bbcd7,'previousReceipt':_0x5ece48});return read(path[_0x3bb8af(0x1ae)](this[_0x3bb8af(0x1b9)],'receipt.json'));}finally{_0xe0c731();}}async[_0x181087(0x15a)](_0x4ac4ab=![]){const _0x5fd992=_0x181087,_0x27e418=_0x4ac4ab?null:this[_0x5fd992(0x15b)](),_0x56bd29=path[_0x5fd992(0x1ae)](this[_0x5fd992(0x1b9)],_0x5fd992(0x221));let _0x110a12;try{this[_0x5fd992(0x240)]();if(!this[_0x5fd992(0x1c9)]())throw fail(_0x5fd992(0x1bd),_0x5fd992(0x1e0));if(this[_0x5fd992(0x194)]())throw fail('INDEX_BUSY',_0x5fd992(0x149));this[_0x5fd992(0x205)]();if(this[_0x5fd992(0x13c)]===_0x5fd992(0x24c)&&spelling(this[_0x5fd992(0x18d)]()['database'])!==spelling(this['database']))throw fail('INDEX_PATH_CHANGED',_0x5fd992(0x16b));const _0x3fe962=fs[_0x5fd992(0x224)](this[_0x5fd992(0x146)])?fs[_0x5fd992(0x206)](this['cache']):null,_0x430ac3=_0x3fe962?_0x3fe962+_0x5fd992(0x227)+crypto[_0x5fd992(0x1c2)]():null;_0x110a12={'status':_0x5fd992(0x1e2),'backup':_0x430ac3,'workspace':this[_0x5fd992(0x200)],'at':new Date()['toISOString']()},this[_0x5fd992(0x237)](_0x56bd29,_0x110a12);if(this[_0x5fd992(0x1d2)])recoveryOwners['set'](this,_0x110a12);if(_0x430ac3)fs[_0x5fd992(0x1a7)](_0x3fe962,_0x430ac3);const _0x1b94f2={};_0x1b94f2[_0x5fd992(0x21b)]=!![],fs[_0x5fd992(0x159)](this['cache'],_0x1b94f2),this[_0x5fd992(0x237)](path[_0x5fd992(0x1ae)](this[_0x5fd992(0x146)],_0x5fd992(0x1b0)),this[_0x5fd992(0x1d2)]?.['marker']||{'owner':'apt-mcp-agent','workspace':this['workspace'],'kind':this['kind']}),await this[_0x5fd992(0x1e5)]();const _0x116b4e={..._0x110a12};_0x116b4e['status']='rebuilt';const _0x5ea3db=_0x116b4e;return this['transitionRecovery'](_0x56bd29,_0x110a12,_0x5ea3db),_0x430ac3;}catch(_0x2a3ad8){if(_0x110a12)this[_0x5fd992(0x217)](_0x56bd29,_0x110a12,{..._0x110a12,'status':[_0x5fd992(0x195),_0x5fd992(0x1fa)][_0x5fd992(0x209)](_0x2a3ad8[_0x5fd992(0x177)])?_0x5fd992(0x1e3):_0x5fd992(0x1bf),'code':_0x2a3ad8[_0x5fd992(0x177)]||'INDEX_BUILD_FAILED','diagnostic':_0x2a3ad8[_0x5fd992(0x178)]||null,'reason':_0x2a3ad8[_0x5fd992(0x1c4)]});recoveryOwners[_0x5fd992(0x17e)](this);throw _0x2a3ad8;}finally{_0x27e418?.();}}async[_0x181087(0x1e8)](_0x556f36,_0x39a32f){const _0x36b5a3=_0x181087;if(![_0x36b5a3(0x154),_0x36b5a3(0x184)]['includes'](_0x39a32f[_0x36b5a3(0x177)])||!this[_0x36b5a3(0x1c9)]())return![];let _0x2ace49;try{_0x2ace49=this[_0x36b5a3(0x15b)]();}catch(_0xc470c5){const _0xc6e4dd={};return _0xc6e4dd[_0x36b5a3(0x1ec)]=_0x36b5a3(0x193),_0xc6e4dd[_0x36b5a3(0x258)]=_0xc470c5[_0x36b5a3(0x1c4)],_0x556f36[_0x36b5a3(0x171)]=_0xc6e4dd,![];}const _0x289fa0=path[_0x36b5a3(0x1ae)](this[_0x36b5a3(0x1b9)],'recovery.json');let _0x5391f5;try{this[_0x36b5a3(0x240)]();if(this[_0x36b5a3(0x13c)]===_0x36b5a3(0x24c)&&spelling(this[_0x36b5a3(0x18d)]()[_0x36b5a3(0x201)])!==spelling(this['database']))throw fail('INDEX_PATH_CHANGED',_0x36b5a3(0x16b));if(this[_0x36b5a3(0x194)]()){const _0x44fd4e={};return _0x44fd4e[_0x36b5a3(0x1ec)]=_0x36b5a3(0x193),_0x44fd4e[_0x36b5a3(0x258)]=_0x36b5a3(0x149),_0x556f36[_0x36b5a3(0x171)]=_0x44fd4e,![];}const _0x29a949=hash(fs[_0x36b5a3(0x224)](this[_0x36b5a3(0x201)])?fs['readFileSync'](this['database']):'missing'),_0x2cb16a=read(_0x289fa0);if(_0x2cb16a&&_0x2cb16a[_0x36b5a3(0x1ec)]!=='recovered'&&(_0x2cb16a[_0x36b5a3(0x141)]===_0x29a949||_0x2cb16a['failedFingerprint']===_0x29a949))return _0x556f36['indexRecovery']=_0x2cb16a,![];const _0x164f8a=fs[_0x36b5a3(0x206)](this[_0x36b5a3(0x146)]),_0x2cfff1=_0x164f8a+_0x36b5a3(0x227)+crypto[_0x36b5a3(0x1c2)](),_0x283872=read(path['join'](_0x164f8a,_0x36b5a3(0x1b0)));_0x5391f5={'status':'recovering','fingerprint':_0x29a949,'backup':_0x2cfff1,'workspace':this[_0x36b5a3(0x200)],'at':new Date()[_0x36b5a3(0x234)]()},this[_0x36b5a3(0x237)](_0x289fa0,_0x5391f5),_0x556f36[_0x36b5a3(0x171)]=_0x5391f5;if(this[_0x36b5a3(0x1d2)])recoveryOwners['set'](this,_0x5391f5);const _0x2f3005=_0x556f36[_0x36b5a3(0x1d8)]===undefined?undefined:_0x556f36[_0x36b5a3(0x1d8)]+0x1;await _0x556f36[_0x36b5a3(0x21e)]();if(_0x556f36[_0x36b5a3(0x1d8)]!==_0x2f3005)throw fail(_0x36b5a3(0x23a),_0x36b5a3(0x14a));this['assertAvailable'](),this[_0x36b5a3(0x205)]();if(!this[_0x36b5a3(0x1c9)]())throw fail(_0x36b5a3(0x1bd),_0x36b5a3(0x1df));fs[_0x36b5a3(0x1a7)](_0x164f8a,_0x2cfff1),fs[_0x36b5a3(0x159)](_0x164f8a),this[_0x36b5a3(0x237)](path[_0x36b5a3(0x1ae)](_0x164f8a,_0x36b5a3(0x1b0)),_0x283872),await this[_0x36b5a3(0x1e5)]();if(_0x556f36[_0x36b5a3(0x1d8)]!==_0x2f3005)throw fail(_0x36b5a3(0x23a),'Backend\x20was\x20stopped\x20while\x20rebuilding\x20its\x20index');_0x556f36[_0x36b5a3(0x1ff)](![],!![]);const _0xc64862={..._0x5391f5};return _0xc64862[_0x36b5a3(0x1ec)]='rebuilt',_0x556f36[_0x36b5a3(0x171)]=_0xc64862,this['transitionRecovery'](_0x289fa0,_0x5391f5,_0x556f36[_0x36b5a3(0x171)]),!![];}catch(_0x16479d){const _0x5056dc=hash(fs['existsSync'](this[_0x36b5a3(0x201)])?fs['readFileSync'](this[_0x36b5a3(0x201)]):'missing');return _0x556f36[_0x36b5a3(0x171)]={..._0x556f36[_0x36b5a3(0x171)]||{},'status':[_0x36b5a3(0x195),_0x36b5a3(0x1fa)][_0x36b5a3(0x209)](_0x16479d['code'])?_0x36b5a3(0x1e3):_0x36b5a3(0x1bf),'code':_0x16479d[_0x36b5a3(0x177)]||_0x36b5a3(0x244),'diagnostic':_0x16479d[_0x36b5a3(0x178)]||null,'failedFingerprint':_0x5056dc,'reason':_0x16479d[_0x36b5a3(0x1c4)]},this['writeRecoveryFailure'](_0x289fa0,_0x5391f5,_0x556f36[_0x36b5a3(0x171)]),recoveryOwners['delete'](this),![];}finally{_0x2ace49();}}[_0x181087(0x143)](_0x5c07ce){const _0x11d94d=_0x181087;if(this[_0x11d94d(0x1d2)]){const _0x536983=this[_0x11d94d(0x15b)]();try{this[_0x11d94d(0x240)]();const _0x700c06=read(path[_0x11d94d(0x1ae)](this[_0x11d94d(0x1b9)],_0x11d94d(0x221))),_0x572642=recoveryOwners[_0x11d94d(0x153)](this);if(!_0x572642||_0x572642[_0x11d94d(0x1ec)]!=='rebuilt'||JSON[_0x11d94d(0x228)](_0x700c06)!==JSON[_0x11d94d(0x228)](_0x572642)||JSON[_0x11d94d(0x228)](_0x5c07ce['indexRecovery'])!==JSON['stringify'](_0x572642))throw fail(_0x11d94d(0x1ac),_0x11d94d(0x1ba));if(_0x5c07ce[_0x11d94d(0x215)]!==this||_0x5c07ce[_0x11d94d(0x1a0)]!==!![])throw fail(_0x11d94d(0x23c),_0x11d94d(0x246));const _0x224827={..._0x572642};_0x224827['status']=_0x11d94d(0x143),_0x5c07ce['indexRecovery']=_0x224827,this[_0x11d94d(0x237)](path['join'](this[_0x11d94d(0x1b9)],_0x11d94d(0x221)),_0x5c07ce['indexRecovery']),recoveryOwners[_0x11d94d(0x17e)](this);return;}finally{_0x536983();}}_0x5c07ce[_0x11d94d(0x171)]={..._0x5c07ce[_0x11d94d(0x171)],'status':'recovered'},atomic(path['join'](this[_0x11d94d(0x1b9)],'recovery.json'),_0x5c07ce[_0x11d94d(0x171)]),recoveryOwners[_0x11d94d(0x17e)](this);}}const _0x5f1bf0={};_0x5f1bf0[_0x181087(0x151)]=IndexStore,_0x5f1bf0[_0x181087(0x241)]=snapshot,_0x5f1bf0[_0x181087(0x164)]=responseError,_0x5f1bf0[_0x181087(0x1d1)]=classify,_0x5f1bf0['atomic']=atomic,module[_0x181087(0x1f2)]=_0x5f1bf0;require[_0x181087(0x238)]===module&&(async()=>{const _0x2d6ffa=_0x181087,_0x22e7c8=require('./profiles'),_0x492081=fs[_0x2d6ffa(0x206)](process[_0x2d6ffa(0x169)][0x2]),_0x3261d2=require(_0x2d6ffa(0x239))[_0x2d6ffa(0x254)](_0x492081),_0x525a60=safeDirectory(_0x492081,_0x2d6ffa(0x220)),_0x4255ab={'workspace':_0x492081,'startedAt':new Date()[_0x2d6ffa(0x234)](),'status':'running','backends':[]},_0x38aff4=path[_0x2d6ffa(0x1ae)](_0x525a60,_0x2d6ffa(0x18e));atomic(_0x38aff4,_0x4255ab);for(const [_0x2efedd,_0x40058b]of[['codegraph',_0x22e7c8[_0x2d6ffa(0x1b1)]],[_0x2d6ffa(0x24c),_0x22e7c8[_0x2d6ffa(0x23f)]]]){let _0x59e22b,_0x29cae4;const _0x518d83={'backend':_0x2efedd,'workspace':_0x492081,'startedAt':new Date()['toISOString'](),'status':_0x2d6ffa(0x13d)};_0x4255ab[_0x2d6ffa(0x15d)]['push'](_0x518d83);try{const _0x14f5f4=_0x40058b(),_0x58a88f={};_0x58a88f[_0x2d6ffa(0x203)]=_0x14f5f4[_0x2d6ffa(0x203)],_0x58a88f[_0x2d6ffa(0x1d5)]=_0x14f5f4['command'],Object[_0x2d6ffa(0x225)](_0x518d83,_0x58a88f);const _0x38760e={};_0x38760e[_0x2d6ffa(0x22e)]=_0x3261d2,_0x59e22b=new IndexStore(_0x2efedd,_0x492081,_0x14f5f4,_0x38760e);const _0x267264={};_0x267264['cache']=_0x59e22b['cache'],_0x267264[_0x2d6ffa(0x201)]=_0x59e22b[_0x2d6ffa(0x201)],_0x267264[_0x2d6ffa(0x1aa)]=_0x59e22b[_0x2d6ffa(0x1aa)]||'profile',Object[_0x2d6ffa(0x225)](_0x518d83,_0x267264),_0x29cae4=_0x59e22b[_0x2d6ffa(0x15b)]();if(_0x59e22b[_0x2d6ffa(0x194)]())throw fail(_0x2d6ffa(0x1b3),_0x2d6ffa(0x208));await _0x59e22b[_0x2d6ffa(0x19e)](),_0x518d83['legacyMigration']=_0x59e22b[_0x2d6ffa(0x231)]||null,_0x59e22b[_0x2d6ffa(0x205)]();try{await _0x59e22b[_0x2d6ffa(0x1bb)](),await _0x59e22b[_0x2d6ffa(0x1e5)]();}catch(_0x14a123){if(_0x14a123[_0x2d6ffa(0x177)]!=='INDEX_CORRUPT'||!_0x59e22b[_0x2d6ffa(0x1c9)]()&&!_0x59e22b['adoptLegacy']())throw _0x14a123;_0x518d83[_0x2d6ffa(0x232)]=_0x2d6ffa(0x150),_0x518d83[_0x2d6ffa(0x1a5)]=await _0x59e22b['standaloneRebuild'](!![]);}Object[_0x2d6ffa(0x225)](_0x518d83,_0x59e22b[_0x2d6ffa(0x14d)],{'status':_0x2d6ffa(0x223),'functionalReady':![],'recoveryStatus':_0x518d83[_0x2d6ffa(0x232)]||_0x2d6ffa(0x186)}),_0x29cae4(),_0x29cae4=null;const {BackendProcess:_0x75434c}=require(_0x2d6ffa(0x23b)),_0x1c3105=_0x2efedd===_0x2d6ffa(0x1b1)?[..._0x14f5f4[_0x2d6ffa(0x15c)],'serve',_0x2d6ffa(0x182)]:_0x14f5f4[_0x2d6ffa(0x15c)],_0x405a86=new _0x75434c(_0x2efedd,_0x14f5f4[_0x2d6ffa(0x247)],_0x1c3105,{'cwd':_0x492081,'env':{..._0x14f5f4[_0x2d6ffa(0x22d)],..._0x59e22b[_0x2d6ffa(0x22d)]},'maxRetries':0x0});_0x405a86[_0x2d6ffa(0x215)]=_0x59e22b;try{_0x405a86['start'](![]);const _0x18b627={};_0x18b627[_0x2d6ffa(0x174)]=_0x2d6ffa(0x183),_0x18b627[_0x2d6ffa(0x203)]='1';const _0xd6c590={};_0xd6c590['protocolVersion']=_0x2d6ffa(0x18b),_0xd6c590['capabilities']={},_0xd6c590[_0x2d6ffa(0x1cb)]=_0x18b627,await _0x405a86[_0x2d6ffa(0x17c)](_0xd6c590);if(!_0x405a86[_0x2d6ffa(0x1a0)])throw fail(_0x2d6ffa(0x23c),_0x2d6ffa(0x1ed));_0x518d83['functionalReady']=!![],_0x518d83[_0x2d6ffa(0x1a5)]&&(_0x405a86[_0x2d6ffa(0x171)]=read(path[_0x2d6ffa(0x1ae)](_0x59e22b[_0x2d6ffa(0x1b9)],'recovery.json')),_0x59e22b[_0x2d6ffa(0x143)](_0x405a86),_0x518d83['recoveryStatus']=_0x2d6ffa(0x143));}finally{await _0x405a86[_0x2d6ffa(0x21e)]();}_0x59e22b[_0x2d6ffa(0x240)]();}catch(_0x43aa3f){Object[_0x2d6ffa(0x225)](_0x518d83,_0x43aa3f[_0x2d6ffa(0x178)],{'status':'failed','reasonCode':_0x43aa3f['code']||_0x2d6ffa(0x252),'message':_0x43aa3f[_0x2d6ffa(0x1c4)]});if(_0x59e22b){const _0x604b1e=read(path[_0x2d6ffa(0x1ae)](_0x59e22b[_0x2d6ffa(0x1b9)],'recovery.json'));if(_0x604b1e)Object[_0x2d6ffa(0x225)](_0x518d83,{'recoveryStatus':_0x604b1e[_0x2d6ffa(0x1ec)],'backup':_0x604b1e[_0x2d6ffa(0x1a5)]});}console['error']('['+_0x2efedd+']\x20'+_0x518d83['reasonCode']+':\x20'+_0x43aa3f[_0x2d6ffa(0x1c4)]),process[_0x2d6ffa(0x161)]=0x2;}finally{_0x29cae4?.(),_0x518d83['endedAt']=new Date()['toISOString'](),atomic(_0x38aff4,_0x4255ab);}}_0x4255ab[_0x2d6ffa(0x1ec)]=process[_0x2d6ffa(0x161)]?'failed':_0x2d6ffa(0x223),_0x4255ab['endedAt']=new Date()[_0x2d6ffa(0x234)](),atomic(_0x38aff4,_0x4255ab);})()[_0x181087(0x1ce)](_0x366409=>{const _0x314888=_0x181087;console[_0x314888(0x243)]((_0x366409[_0x314888(0x177)]||'INDEX_SETUP_FAILED')+':\x20'+_0x366409[_0x314888(0x1c4)]),process['exitCode']=0x1;});
@@ -1 +1 @@
1
- const _0x20394a=_0x5b63;(function(_0x46fb95,_0x174a8b){const _0x2db0d1=_0x5b63,_0x46ec1c=_0x46fb95();while(!![]){try{const _0x57b457=parseInt(_0x2db0d1(0x23c))/0x1*(parseInt(_0x2db0d1(0x25b))/0x2)+-parseInt(_0x2db0d1(0x21f))/0x3*(-parseInt(_0x2db0d1(0x24c))/0x4)+parseInt(_0x2db0d1(0x258))/0x5+-parseInt(_0x2db0d1(0x1f5))/0x6+-parseInt(_0x2db0d1(0x20b))/0x7*(parseInt(_0x2db0d1(0x22b))/0x8)+parseInt(_0x2db0d1(0x1ee))/0x9+-parseInt(_0x2db0d1(0x1ff))/0xa;if(_0x57b457===_0x174a8b)break;else _0x46ec1c['push'](_0x46ec1c['shift']());}catch(_0x533ab7){_0x46ec1c['push'](_0x46ec1c['shift']());}}}(_0x4213,0xd303f));const fs=require('fs'),path=require(_0x20394a(0x211)),os=require('os'),cp=require(_0x20394a(0x1d0)),CODEGRAPH_VERSION=_0x20394a(0x1dd),_0x23993e={};_0x23993e[_0x20394a(0x22d)]='2.3.9',_0x23993e['fastmcp']=_0x20394a(0x1d6),_0x23993e['mcp']=_0x20394a(0x25d);const REVIEW_VERSIONS=Object[_0x20394a(0x251)](_0x23993e),MEMORY_VERSION=_0x20394a(0x1fc),PLAYWRIGHT_MCP_VERSION=_0x20394a(0x230),PROFILE=_0x20394a(0x23f)+CODEGRAPH_VERSION+_0x20394a(0x213)+REVIEW_VERSIONS[_0x20394a(0x22d)]+_0x20394a(0x249)+REVIEW_VERSIONS[_0x20394a(0x1d8)]+_0x20394a(0x209)+REVIEW_VERSIONS[_0x20394a(0x223)]+'-memory-'+MEMORY_VERSION,root=()=>process.env.APT_BACKEND_ROOT||path['join'](os[_0x20394a(0x1ca)](),_0x20394a(0x245),_0x20394a(0x1df)),pythonAt=_0x56fa0a=>path[_0x20394a(0x25a)](_0x56fa0a,process[_0x20394a(0x21c)]==='win32'?_0x20394a(0x1e7):_0x20394a(0x1cd)),reviewHome=()=>path[_0x20394a(0x25a)](root(),_0x20394a(0x1fe)+REVIEW_VERSIONS[_0x20394a(0x22d)]+_0x20394a(0x249)+REVIEW_VERSIONS[_0x20394a(0x1d8)]+_0x20394a(0x209)+REVIEW_VERSIONS[_0x20394a(0x223)]),memoryHome=()=>path[_0x20394a(0x25a)](root(),'memory-'+MEMORY_VERSION),codeHome=()=>path[_0x20394a(0x25a)](root(),'codegraph-'+CODEGRAPH_VERSION),run=(_0x5f50f8,_0x32304d,_0x33f8a8={})=>cp[_0x20394a(0x1e9)](_0x5f50f8,_0x32304d,{'windowsHide':!![],'encoding':_0x20394a(0x1f9),'timeout':0x1d4c0,'stdio':_0x20394a(0x200),..._0x33f8a8}),npmCli=require(_0x20394a(0x1f2));function codegraph(){const _0x2f1437=_0x20394a,_0x3b2f5d=path[_0x2f1437(0x25a)](codeHome(),_0x2f1437(0x244)),_0x760f52=JSON[_0x2f1437(0x215)](fs['readFileSync'](path[_0x2f1437(0x25a)](_0x3b2f5d,_0x2f1437(0x255)),_0x2f1437(0x1f9)));if(_0x760f52[_0x2f1437(0x21e)]!==CODEGRAPH_VERSION)throw new Error('CodeGraph\x20profile\x20version\x20mismatch');const _0x4bf03f=path['join'](codeHome(),'node_modules/@colbymchenry/codegraph-'+process[_0x2f1437(0x21c)]+'-'+process['arch']),_0x8bacb5=JSON[_0x2f1437(0x215)](fs[_0x2f1437(0x216)](path[_0x2f1437(0x25a)](_0x4bf03f,_0x2f1437(0x255)),_0x2f1437(0x1f9))),_0x126d01=path[_0x2f1437(0x25a)](_0x4bf03f,process[_0x2f1437(0x21c)]==='win32'?'node.exe':_0x2f1437(0x240)),_0x3a2b9a=path[_0x2f1437(0x25a)](_0x4bf03f,_0x2f1437(0x259));if(_0x8bacb5[_0x2f1437(0x21e)]!==CODEGRAPH_VERSION||!fs[_0x2f1437(0x238)](_0x126d01)||!fs[_0x2f1437(0x238)](_0x3a2b9a))throw new Error(_0x2f1437(0x219));const _0x4bbf6f=process['platform']+'-'+process['arch'],_0x324339={};return _0x324339[_0x2f1437(0x24f)]=_0x126d01,_0x324339[_0x2f1437(0x220)]=['--liftoff-only','--disable-warning=ExperimentalWarning',_0x3a2b9a],_0x324339[_0x2f1437(0x21e)]=CODEGRAPH_VERSION,_0x324339[_0x2f1437(0x229)]=_0x2f1437(0x231)+_0x4bbf6f,_0x324339[_0x2f1437(0x239)]={},_0x324339[_0x2f1437(0x239)][_0x2f1437(0x203)]=_0x2f1437(0x212),_0x324339[_0x2f1437(0x239)][_0x2f1437(0x1ce)]='1',_0x324339[_0x2f1437(0x239)][_0x2f1437(0x1e6)]=_0x2f1437(0x231)+_0x4bbf6f,_0x324339;}function _0x4213(){const _0x3d1165=['lI9JB2rLz3jHCgGTms42lJaUANnVBG','ms42lJa','CMvJDxjZAxzL','yMfJA2vUzhm','zw50CMLLCW','ls1UBY1HDwrPDa','A2v5CW','tgLI','twvTB3j5ihbYB2zPBguGAxmGAw5JB21WBgv0zq','BM9Kzv9TB2r1BgvZl0bTB2rLBgnVBNrLEhrWCM90B2nVBc9Zzxj2zxiTBwvTB3j5','q09eruDsqvbix0rjuG','u2nYAxb0CY9WExrOB24UzxHL','y29UzMLNDxjLza','zxHLy0zPBgvtEw5J','ugXHExDYAwDODcbnq1aGChjVzMLSzsbPCYbUB3qGAw5ZDgfSBgvK','q2HYB21PDw0GCMv2AxnPB24GBwLZBwf0y2G','ms42nc4WlwfSCgHHlte3odK3nJqYotiWmda','qgnVBgj5BwnOzw5YEs9JB2rLz3jHCgHa','odyZmJKZnuntwwfREG','Aw5ZCgvJDa','CgXHExDYAwDODc1Ty3aT','lI4Vy29Yzs9VD25Lzc1SB2nR','lI4Vy29Yzs9UCg0Ty2XP','BwvZC2fNzq','twvTB3j5ihbYB2zPBguGDMvYC2LVBIbTAxnTyxrJAa','mJiZoda2nNfIq016tq','uNvUiefqvcbPBNn0ywXSl3vWzgf0zsb0BYbWCM92AxnPB24G','ugXHExDYAwDODcbnq1aGChjVzMLSzsb2zxjZAw9Uig1PC21HDgnO','ugXHExDYAwDODcbJB3jLihbYB2zPBguGDMvYC2LVBIbTAxnTyxrJAa','DxrMoa','C3rHCNrZv2L0Aa','BM9Kzv9TB2r1BgvZl3bSyxL3CMLNAhqVy2XPlMPZ','mJaYnI44lJmX','lMrPC3qTAw5MBW','CMv2Awv3lq','mti3ntyZmtbtEvzjwxO','CgLWzq','zMLSDgvY','C2v0','q09eruDsqvbix01duf9ut09muW','BwvTB3j5','BMfTzq','uhL0Ag9UigLZihjLCxvPCMvKihrVigLUC3rHBgWGDgHLihjLDMLLDYbIywnRzw5K','q09eruDsqvbix1zfuLnjt04','zNjVBuvUDhjPzxm','lw1JCc0','AgfZ','mJuYzvvLqunc','uMv2Awv3ifb5DgHVBIbWCM9MAwXLigLZig5VDcbPBNn0ywXSzwq','Dg9VBhm','y29Kzv9YzxzPzxDFz3jHCgG','yMLU','zMLUza','Cgf0Aa','zxHWBg9YzsXZzwfYy2GSy2fSBgvYCYXJywXSzwvZlgzPBgvZlhn0yxr1CW','lxjLDMLLDY0','Dg9mB3DLCKnHC2u','CgfYC2u','CMvHzezPBgvtEw5J','BM9Kzv9TB2r1BgvZl0bWBgf5D3jPz2H0l21JCc9JBgKUANm','BM9Kzv9TB2r1BgvZl0bWBgf5D3jPz2H0l21JCc9WywnRywDLlMPZB24','q29KzuDYyxbOihbSyxrMB3jTihbYB2zPBguGAxmGAw5JB21WBgv0zq','ls1UBY1MDw5K','y2HYB21PDw0','CgXHDgzVCM0','CMvZDwX0','DMvYC2LVBG','mtC3v0HctM5j','yxjNCW','BgvUz3rO','DgvZDa','BwnW','Aw5ZDgfSBejYB3DZzxi','y29TCgf0AwjSzvrVB2XZ','ls1WCMvMAxG','uMv2Awv3ifb5DgHVBIbWCM9MAwXLihzLCNnPB24GBwLZBwf0y2G','y29UzMLNDxjHDgLVBKvYCM9Y','y2fJAgveAxjLy3rVCNK','ls1PC29SyxrLza','mtG4ode2yxj4vLHT','lMfNzw50CY8Uzgf0ys9NCMfWAc0','y29Kzs1YzxzPzxCTz3jHCgG','zxHLy1bHDgG','B3b0Aw9UCW','mc4WlJGY','lMnVzgvNCMfWAc0','ls1WywnRywDLlwXVy2S9Dhj1zq','C2vYDMvYlw1LBw9YEq','ChL0Ag9UmW','Aw5PDgLHBgL6zvjLC3bVBNnL','CgLW','Aw5JBhvKzxm','zxHPC3rZu3LUyW','zw52','yNjVD3nLCI1SB2nHBa','Aw5ZDgfSBa','ntiXmtrwrMPXExK','y29KzwDYyxbO','ls1WywnRywDLlwXVy2S9zMfSC2u','y29KzwDYyxbOlq','BM9Kzq','CMvHzgrPCLn5BMm','ueXbwvDssuDivf9nq1bFvKvsu0LptG','C2L0zs1WywnRywDLCW','BM9Kzv9TB2r1BgvZl0bJB2XIEw1JAgvUCNKVy29KzwDYyxbO','lMfUAgrO','yNjVD3nLCNm','DgLTzw91Da','ChL0Ag9U','lwzHC3rTy3aT','ls1OzwXW','yNjVD3nLCNmUANnVBG','mZe3ndH1uKfhuLy','ChjVy2vZCY5ZDgrVDxqUD3jPDguOCMvXDwLYzsHWCM9JzxnZlMfYz3zBmv0PlMnOCM9TAxvTlMv4zwn1DgfIBgvqyxrOkcKP','zxHWB3j0CW','y29TBwfUza','BM9Kzv9TB2r1BgvZl3bSyxL3CMLNAhqTy29Yzq','zNjLzxPL','C29Tzq','C2vYDMu','qvbuienOCM9TAxvTigLZig5VDcbPBNn0ywXSzwq','CgfJA2fNzs5QC29U','qhbSyxL3CMLNAhqVBwnWqa','ls1OzwfKBgvZCW','mZy4mJu2nuvNBMXQrq','BgLIl2rPC3qVyMLUl2nVzgvNCMfWAc5QCW','AM9PBG','ndzoEu9Xwxm','C3rHDgu','ms4Yoc4X','zw5KC1DPDgG','Aw5ZDgfSBc5SB2nR','Ag9TzwrPCG','BwTKAxjtEw5J','DMfSDwvZ','yMLUl3b5DgHVBG','q09eruDsqvbix05px0rbru1ptG','CMv2AxnPB24','y2HPBgrFChjVy2vZCW','BgLI','ufjprKLmrq','uKvwsuvxx1zfuLnjt05t','zgLZDc9PBMrLEc5QCW','BwfW','mY40lJi','y3vZDg9Tq29TBwfUza','zMfZDg1JCa','ywnXDwLYzvj1BNrPBwvmB2nR','BMfTzxm','C2vYDMvYsw5MBW'];_0x4213=function(){return _0x3d1165;};return _0x4213();}function review(){const _0x44e5d8=_0x20394a,_0xf57cf4=pythonAt(reviewHome());if(!fs['existsSync'](_0xf57cf4))throw new Error(_0x44e5d8(0x20c));const _0x2399b4=process[_0x44e5d8(0x21c)]==='win32'?path[_0x44e5d8(0x25a)](reviewHome(),_0x44e5d8(0x1e3),'site-packages'):fs['readdirSync'](path['join'](reviewHome(),_0x44e5d8(0x1d1)))[_0x44e5d8(0x201)](_0x5aaa69=>/^python\d+\.\d+$/[_0x44e5d8(0x222)](_0x5aaa69))[_0x44e5d8(0x1d5)](_0x1aa344=>path[_0x44e5d8(0x25a)](reviewHome(),_0x44e5d8(0x1d1),_0x1aa344,_0x44e5d8(0x243)))[_0x44e5d8(0x210)](_0x50cdfb=>fs[_0x44e5d8(0x238)](_0x50cdfb));if(!_0x2399b4)throw new Error('Review\x20Python\x20site-packages\x20is\x20missing');const _0x874a29=fs[_0x44e5d8(0x241)](_0x2399b4)[_0x44e5d8(0x201)](_0x54138d=>_0x54138d[_0x44e5d8(0x1c8)](_0x44e5d8(0x1fd))),_0x35d623=Object[_0x44e5d8(0x208)](Object[_0x44e5d8(0x1e2)](REVIEW_VERSIONS)[_0x44e5d8(0x1d5)](_0x340ebb=>{const _0x1de9b3=_0x44e5d8,_0x21303d=(_0x340ebb['replace'](/-/g,'_')+'-')['toLowerCase'](),_0x5b6bfa=_0x874a29[_0x1de9b3(0x210)](_0x179f69=>_0x179f69[_0x1de9b3(0x214)]()[_0x1de9b3(0x1fa)](_0x21303d));return[_0x340ebb,_0x5b6bfa?.['slice'](_0x21303d[_0x1de9b3(0x221)],-_0x1de9b3(0x1fd)[_0x1de9b3(0x221)])||null];}));if(Object['entries'](REVIEW_VERSIONS)[_0x44e5d8(0x252)](([_0x2dc73e,_0x2a95e3])=>_0x35d623[_0x2dc73e]!==_0x2a95e3))throw new Error(_0x44e5d8(0x227));return{'command':_0xf57cf4,'args':['-m',_0x44e5d8(0x20e),_0x44e5d8(0x253)],'version':REVIEW_VERSIONS[_0x44e5d8(0x22d)],'versions':_0x35d623,'cacheDirectory':_0x44e5d8(0x22c)+REVIEW_VERSIONS[_0x44e5d8(0x22d)],'env':{'CRG_HOME':path[_0x44e5d8(0x25a)](reviewHome(),_0x44e5d8(0x25c))}};}function memory(){const _0x2aed82=_0x20394a,_0x4b0834=path[_0x2aed82(0x25a)](memoryHome(),_0x2aed82(0x1e5)),_0x45a5e7=JSON[_0x2aed82(0x215)](fs[_0x2aed82(0x216)](path[_0x2aed82(0x25a)](_0x4b0834,'package.json'),'utf8'));if(_0x45a5e7[_0x2aed82(0x21e)]!==MEMORY_VERSION)throw new Error(_0x2aed82(0x1f4));const _0x4ba6a5=path[_0x2aed82(0x25a)](_0x4b0834,_0x45a5e7[_0x2aed82(0x20f)]?.['mcp-server-memory']||_0x2aed82(0x1d4));if(!fs['existsSync'](_0x4ba6a5))throw new Error(_0x2aed82(0x1e4));const _0x163daa={};return _0x163daa['command']=process['execPath'],_0x163daa[_0x2aed82(0x220)]=[_0x4ba6a5],_0x163daa[_0x2aed82(0x21e)]=MEMORY_VERSION,_0x163daa;}function browserLocal(){const _0x25c970=_0x20394a,_0x44b17e=path[_0x25c970(0x25a)](root(),_0x25c970(0x1f0)+PLAYWRIGHT_MCP_VERSION),_0x315be1=path['join'](_0x44b17e,_0x25c970(0x218));if(!fs[_0x25c970(0x238)](_0x315be1))throw new Error(_0x25c970(0x1ea));const _0x4ee541=JSON['parse'](fs[_0x25c970(0x216)](_0x315be1,'utf8'));if(_0x4ee541[_0x25c970(0x21e)]!==PLAYWRIGHT_MCP_VERSION)throw new Error(_0x25c970(0x1f7));const _0x59b8b9=path['join'](_0x44b17e,_0x25c970(0x250)),_0x19f114=JSON[_0x25c970(0x215)](fs[_0x25c970(0x216)](path[_0x25c970(0x25a)](_0x59b8b9,_0x25c970(0x255)),_0x25c970(0x1f9)))[_0x25c970(0x21e)];if(_0x19f114!==_0x25c970(0x1ec))throw new Error(_0x25c970(0x1f8));const _0x178b6d=JSON[_0x25c970(0x215)](fs[_0x25c970(0x216)](path[_0x25c970(0x25a)](_0x59b8b9,_0x25c970(0x24b)),_0x25c970(0x1f9)))['browsers']['find'](_0x305799=>_0x305799['name']==='chromium');if(_0x178b6d?.[_0x25c970(0x1cf)]!=='1246')throw new Error(_0x25c970(0x1eb));const _0x48098f=run(process['execPath'],['-e',_0x25c970(0x24d),_0x59b8b9],{'env':{...process.env,'PLAYWRIGHT_BROWSERS_PATH':path[_0x25c970(0x25a)](_0x44b17e,_0x25c970(0x246))},'timeout':0x2710});if(!fs[_0x25c970(0x238)](_0x48098f))throw new Error(_0x25c970(0x254));return{'command':process[_0x25c970(0x22e)],'args':[path[_0x25c970(0x25a)](_0x44b17e,_0x25c970(0x217)),_0x25c970(0x257),_0x25c970(0x22a),'--browser',_0x25c970(0x21b)],'version':PLAYWRIGHT_MCP_VERSION,'cwd':_0x44b17e,'browserRevision':_0x178b6d['revision'],'browserExecutable':_0x48098f,'launchVerified':![],'env':{'PLAYWRIGHT_BROWSERS_PATH':path['join'](_0x44b17e,_0x25c970(0x246))}};}function inspect(_0x279645={}){const _0x392941=_0x20394a;return Object['fromEntries']([[_0x392941(0x23d),codegraph],[_0x392941(0x22d),review],[_0x392941(0x233),memory],[_0x392941(0x23a),browserLocal]]['filter'](([_0x1dcd54])=>!_0x279645[_0x392941(0x1da)]||_0x279645['names'][_0x392941(0x237)](_0x1dcd54))[_0x392941(0x1d5)](([_0x319e3f,_0x180dd6])=>{const _0x132a45=_0x392941;try{return[_0x319e3f,{'configured':!![],..._0x180dd6()}];}catch(_0xc24fa5){const _0xf29e28={};return _0xf29e28[_0x132a45(0x1e8)]=![],_0xf29e28[_0x132a45(0x228)]=_0x132a45(0x1f6)+PROFILE+':\x20'+_0xc24fa5[_0x132a45(0x1f3)],[_0x319e3f,_0xf29e28];}}));}function install(){const _0x27bb08=_0x20394a,_0x4687b2={};_0x4687b2[_0x27bb08(0x1de)]=!![],fs[_0x27bb08(0x1cb)](root(),_0x4687b2);const _0x337cfd=require(_0x27bb08(0x1f1))[_0x27bb08(0x1d9)](path[_0x27bb08(0x25a)](root(),_0x27bb08(0x1c9)));if(!_0x337cfd)throw new Error('Backend\x20profile\x20installation\x20is\x20busy');try{try{codegraph();}catch{const _0x91ee8a={};_0x91ee8a[_0x27bb08(0x1de)]=!![],fs[_0x27bb08(0x1cb)](codeHome(),_0x91ee8a);const _0xdbe967={};_0xdbe967['timeout']=0x493e0,run(process['execPath'],[npmCli(),_0x27bb08(0x23b),_0x27bb08(0x226),codeHome(),_0x27bb08(0x1e1),_0x27bb08(0x21a),_0x27bb08(0x23e),_0x27bb08(0x1ed)+CODEGRAPH_VERSION],_0xdbe967);}try{review();}catch{if(!fs[_0x27bb08(0x238)](pythonAt(reviewHome()))){let _0x429f6a;for(const _0x1671e0 of[_0x27bb08(0x234),_0x27bb08(0x248),'py']){try{run(_0x1671e0,['--version']),_0x429f6a=_0x1671e0;break;}catch{}}if(!_0x429f6a)throw new Error(_0x27bb08(0x206));run(_0x429f6a,['-m','venv',reviewHome()]);}const _0x2e1ffa={};_0x2e1ffa['timeout']=0x493e0,run(pythonAt(reviewHome()),['-m',_0x27bb08(0x236),_0x27bb08(0x23b),...Object[_0x27bb08(0x1e0)](REVIEW_VERSIONS)['map'](([_0x4bd8a8,_0x2b85af])=>_0x4bd8a8+'=='+_0x2b85af)],_0x2e1ffa);}try{memory();}catch{const _0x16d474={};_0x16d474['recursive']=!![],fs['mkdirSync'](memoryHome(),_0x16d474);const _0x31b4c6={};_0x31b4c6[_0x27bb08(0x247)]=0x493e0,run(process[_0x27bb08(0x22e)],[npmCli(),_0x27bb08(0x23b),'--prefix',memoryHome(),'--no-audit','--no-fund',_0x27bb08(0x232),'@modelcontextprotocol/server-memory@'+MEMORY_VERSION],_0x31b4c6);}return{'profile':PROFILE,'codegraph':codegraph(),'review':review(),'memory':memory()};}finally{_0x337cfd();}}function _0x5b63(_0x1f4811,_0x1e2fe1){_0x1f4811=_0x1f4811-0x1c8;const _0x42132a=_0x4213();let _0x5b63d7=_0x42132a[_0x1f4811];if(_0x5b63['SRUPbh']===undefined){var _0x353f55=function(_0x52bed0){const _0x4d99af='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x23993e='',_0x3cdb55='';for(let _0x26bca7=0x0,_0x1b3956,_0x2131ff,_0x2d2a50=0x0;_0x2131ff=_0x52bed0['charAt'](_0x2d2a50++);~_0x2131ff&&(_0x1b3956=_0x26bca7%0x4?_0x1b3956*0x40+_0x2131ff:_0x2131ff,_0x26bca7++%0x4)?_0x23993e+=String['fromCharCode'](0xff&_0x1b3956>>(-0x2*_0x26bca7&0x6)):0x0){_0x2131ff=_0x4d99af['indexOf'](_0x2131ff);}for(let _0x2434cc=0x0,_0x329c7a=_0x23993e['length'];_0x2434cc<_0x329c7a;_0x2434cc++){_0x3cdb55+='%'+('00'+_0x23993e['charCodeAt'](_0x2434cc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3cdb55);};_0x5b63['rOnBTb']=_0x353f55,_0x5b63['ISORLi']={},_0x5b63['SRUPbh']=!![];}const _0x2bef46=_0x42132a[0x0],_0x1a0059=_0x1f4811+_0x2bef46,_0x4d7135=_0x5b63['ISORLi'][_0x1a0059];return!_0x4d7135?(_0x5b63d7=_0x5b63['rOnBTb'](_0x5b63d7),_0x5b63['ISORLi'][_0x1a0059]=_0x5b63d7):_0x5b63d7=_0x4d7135,_0x5b63d7;}function installBrowser(){const _0x495222=_0x20394a;try{return browserLocal();}catch{const _0x597612=path[_0x495222(0x25a)](root(),'playwright-mcp-'+PLAYWRIGHT_MCP_VERSION),_0x2e5fd7={};_0x2e5fd7['recursive']=!![],fs['mkdirSync'](_0x597612,_0x2e5fd7);const _0x117301={};_0x117301[_0x495222(0x247)]=0x927c0,run(process['execPath'],[npmCli(),'install',_0x495222(0x226),_0x597612,'--no-audit',_0x495222(0x21a),_0x495222(0x232),_0x495222(0x256)+PLAYWRIGHT_MCP_VERSION],_0x117301);const _0x20f0f3=path[_0x495222(0x25a)](_0x597612,'browsers');run(process[_0x495222(0x22e)],[path['join'](_0x597612,_0x495222(0x1fb)),_0x495222(0x23b),'chromium'],{'env':{...process.env,'PLAYWRIGHT_BROWSERS_PATH':_0x20f0f3},'timeout':0xdbba0}),run(process[_0x495222(0x22e)],[path[_0x495222(0x25a)](_0x597612,_0x495222(0x217)),_0x495222(0x24a)],{'env':{...process.env,'PLAYWRIGHT_BROWSERS_PATH':_0x20f0f3},'timeout':0x1d4c0});}return browserLocal();}const codeTools=require(_0x20394a(0x1dc))[_0x20394a(0x20d)];function compatibleTools(_0x3e317a,_0x36aebe){const _0x37a7fe=_0x20394a;if(_0x3e317a[_0x37a7fe(0x205)]!==_0x37a7fe(0x23d)||_0x3e317a[_0x37a7fe(0x22f)][_0x37a7fe(0x1d7)]||_0x3e317a[_0x37a7fe(0x235)]?.[_0x37a7fe(0x21d)]?.[_0x37a7fe(0x1db)]?.[_0x37a7fe(0x21e)]!==CODEGRAPH_VERSION)return _0x36aebe;const _0x28c13d=new Map(_0x36aebe[_0x37a7fe(0x1d5)](_0x5a8329=>[_0x5a8329[_0x37a7fe(0x205)],_0x5a8329]));for(const _0x5668a5 of codeTools)if(!_0x28c13d[_0x37a7fe(0x20a)](_0x5668a5['name']))_0x28c13d[_0x37a7fe(0x202)](_0x5668a5['name'],_0x5668a5);return[..._0x28c13d[_0x37a7fe(0x1cc)]()];}const _0x55bef4={};_0x55bef4[_0x20394a(0x1d2)]=PROFILE,_0x55bef4[_0x20394a(0x207)]=CODEGRAPH_VERSION,_0x55bef4[_0x20394a(0x1d3)]=REVIEW_VERSIONS,_0x55bef4['MEMORY_VERSION']=MEMORY_VERSION,_0x55bef4[_0x20394a(0x242)]=PLAYWRIGHT_MCP_VERSION,_0x55bef4['codegraph']=codegraph,_0x55bef4['review']=review,_0x55bef4[_0x20394a(0x204)]=memory,_0x55bef4['browserLocal']=browserLocal,_0x55bef4[_0x20394a(0x1ef)]=inspect,_0x55bef4['install']=install,_0x55bef4[_0x20394a(0x224)]=installBrowser,_0x55bef4[_0x20394a(0x225)]=compatibleTools,_0x55bef4['codeTools']=codeTools,module[_0x20394a(0x24e)]=_0x55bef4;
1
+ const _0x293f60=_0x39b6;(function(_0x56f546,_0x124cd8){const _0x13a906=_0x39b6,_0x2bc2e5=_0x56f546();while(!![]){try{const _0x4dbe13=parseInt(_0x13a906(0x243))/0x1+-parseInt(_0x13a906(0x267))/0x2*(parseInt(_0x13a906(0x222))/0x3)+-parseInt(_0x13a906(0x253))/0x4*(parseInt(_0x13a906(0x226))/0x5)+-parseInt(_0x13a906(0x211))/0x6+parseInt(_0x13a906(0x23c))/0x7+-parseInt(_0x13a906(0x269))/0x8+-parseInt(_0x13a906(0x22b))/0x9*(-parseInt(_0x13a906(0x272))/0xa);if(_0x4dbe13===_0x124cd8)break;else _0x2bc2e5['push'](_0x2bc2e5['shift']());}catch(_0x528575){_0x2bc2e5['push'](_0x2bc2e5['shift']());}}}(_0x140d,0x76ff0));function _0x39b6(_0x3d4cdb,_0x10b5b2){_0x3d4cdb=_0x3d4cdb-0x1e9;const _0x140de1=_0x140d();let _0x39b679=_0x140de1[_0x3d4cdb];if(_0x39b6['tEQUWV']===undefined){var _0x243cc6=function(_0x14f8c2){const _0x2545ed='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1185c7='',_0x1f9e49='';for(let _0x1b307e=0x0,_0x5989aa,_0x1ea826,_0xe3acd5=0x0;_0x1ea826=_0x14f8c2['charAt'](_0xe3acd5++);~_0x1ea826&&(_0x5989aa=_0x1b307e%0x4?_0x5989aa*0x40+_0x1ea826:_0x1ea826,_0x1b307e++%0x4)?_0x1185c7+=String['fromCharCode'](0xff&_0x5989aa>>(-0x2*_0x1b307e&0x6)):0x0){_0x1ea826=_0x2545ed['indexOf'](_0x1ea826);}for(let _0x67a157=0x0,_0x4ba08c=_0x1185c7['length'];_0x67a157<_0x4ba08c;_0x67a157++){_0x1f9e49+='%'+('00'+_0x1185c7['charCodeAt'](_0x67a157)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1f9e49);};_0x39b6['ingPIg']=_0x243cc6,_0x39b6['Ymoifz']={},_0x39b6['tEQUWV']=!![];}const _0x54242a=_0x140de1[0x0],_0x3ec2ba=_0x3d4cdb+_0x54242a,_0x5d67a4=_0x39b6['Ymoifz'][_0x3ec2ba];return!_0x5d67a4?(_0x39b679=_0x39b6['ingPIg'](_0x39b679),_0x39b6['Ymoifz'][_0x3ec2ba]=_0x39b679):_0x39b679=_0x5d67a4,_0x39b679;}const fs=require('fs'),path=require(_0x293f60(0x25e)),os=require('os'),cp=require(_0x293f60(0x1f7)),CODEGRAPH_VERSION=_0x293f60(0x1f0),_0x1185c7={};_0x1185c7['code-review-graph']=_0x293f60(0x207),_0x1185c7[_0x293f60(0x21c)]='3.4.2',_0x1185c7[_0x293f60(0x201)]=_0x293f60(0x23a);const REVIEW_VERSIONS=Object[_0x293f60(0x238)](_0x1185c7),MEMORY_VERSION=_0x293f60(0x256),PLAYWRIGHT_MCP_VERSION=_0x293f60(0x248),CACHE_CONTRACT=0x2,PROFILE='codegraph-'+CODEGRAPH_VERSION+_0x293f60(0x1f3)+REVIEW_VERSIONS[_0x293f60(0x1f2)]+'-fastmcp-'+REVIEW_VERSIONS[_0x293f60(0x21c)]+_0x293f60(0x27c)+REVIEW_VERSIONS[_0x293f60(0x201)]+_0x293f60(0x271)+MEMORY_VERSION,root=()=>process.env.APT_BACKEND_ROOT||path['join'](os[_0x293f60(0x258)](),'.anhdh',_0x293f60(0x236)),pythonAt=_0x56198c=>path[_0x293f60(0x23b)](_0x56198c,process[_0x293f60(0x20d)]===_0x293f60(0x214)?_0x293f60(0x259):'bin/python'),reviewHome=()=>path['join'](root(),_0x293f60(0x244)+REVIEW_VERSIONS[_0x293f60(0x1f2)]+'-fastmcp-'+REVIEW_VERSIONS['fastmcp']+_0x293f60(0x27c)+REVIEW_VERSIONS[_0x293f60(0x201)]),memoryHome=()=>path[_0x293f60(0x23b)](root(),'memory-'+MEMORY_VERSION),codeHome=()=>path[_0x293f60(0x23b)](root(),'codegraph-'+CODEGRAPH_VERSION),run=(_0x3f971c,_0x4bf673,_0x5b49c1={})=>cp[_0x293f60(0x229)](_0x3f971c,_0x4bf673,{'windowsHide':!![],'encoding':_0x293f60(0x1f9),'timeout':0x1d4c0,'stdio':_0x293f60(0x270),..._0x5b49c1}),npmCli=require('../core/npm-cli');function codegraph(){const _0x2f7e1e=_0x293f60,_0x221d97=path[_0x2f7e1e(0x23b)](codeHome(),_0x2f7e1e(0x232)),_0x2c69cb=JSON['parse'](fs[_0x2f7e1e(0x25b)](path[_0x2f7e1e(0x23b)](_0x221d97,_0x2f7e1e(0x1fd)),_0x2f7e1e(0x1f9)));if(_0x2c69cb[_0x2f7e1e(0x21d)]!==CODEGRAPH_VERSION)throw new Error(_0x2f7e1e(0x203));const _0x305209=path[_0x2f7e1e(0x23b)](codeHome(),_0x2f7e1e(0x1e9)+process[_0x2f7e1e(0x20d)]+'-'+process[_0x2f7e1e(0x22f)]),_0x24391a=JSON[_0x2f7e1e(0x25a)](fs[_0x2f7e1e(0x25b)](path[_0x2f7e1e(0x23b)](_0x305209,_0x2f7e1e(0x1fd)),'utf8')),_0x11facf=path[_0x2f7e1e(0x23b)](_0x305209,process[_0x2f7e1e(0x20d)]===_0x2f7e1e(0x214)?_0x2f7e1e(0x230):_0x2f7e1e(0x233)),_0x2f551e=path[_0x2f7e1e(0x23b)](_0x305209,_0x2f7e1e(0x265));if(_0x24391a[_0x2f7e1e(0x21d)]!==CODEGRAPH_VERSION||!fs[_0x2f7e1e(0x235)](_0x11facf)||!fs[_0x2f7e1e(0x235)](_0x2f551e))throw new Error('CodeGraph\x20platform\x20profile\x20is\x20incomplete');const _0x3d5dfc=process[_0x2f7e1e(0x20d)]+'-'+process[_0x2f7e1e(0x22f)],_0x1d4cad={};return _0x1d4cad[_0x2f7e1e(0x23f)]=_0x11facf,_0x1d4cad[_0x2f7e1e(0x252)]=[_0x2f7e1e(0x210),_0x2f7e1e(0x231),_0x2f551e],_0x1d4cad[_0x2f7e1e(0x21d)]=CODEGRAPH_VERSION,_0x1d4cad['cacheContract']=CACHE_CONTRACT,_0x1d4cad['cacheDirectory']=_0x2f7e1e(0x1fa)+_0x3d5dfc,_0x1d4cad[_0x2f7e1e(0x26f)]={},_0x1d4cad[_0x2f7e1e(0x26f)][_0x2f7e1e(0x234)]=_0x2f7e1e(0x24f),_0x1d4cad[_0x2f7e1e(0x26f)]['CODEGRAPH_NO_DAEMON']='1',_0x1d4cad[_0x2f7e1e(0x26f)]['CODEGRAPH_DIR']=_0x2f7e1e(0x1fa)+_0x3d5dfc,_0x1d4cad;}function review(){const _0x2e2a75=_0x293f60,_0x3c4134=pythonAt(reviewHome());if(!fs[_0x2e2a75(0x235)](_0x3c4134))throw new Error('Review\x20Python\x20profile\x20is\x20not\x20installed');const _0x545bc0=process['platform']===_0x2e2a75(0x214)?path['join'](reviewHome(),_0x2e2a75(0x22a),_0x2e2a75(0x205)):fs[_0x2e2a75(0x22c)](path[_0x2e2a75(0x23b)](reviewHome(),'lib'))['filter'](_0x26f0ee=>/^python\d+\.\d+$/[_0x2e2a75(0x262)](_0x26f0ee))['map'](_0x1c35e7=>path[_0x2e2a75(0x23b)](reviewHome(),'lib',_0x1c35e7,_0x2e2a75(0x205)))['find'](_0x3e00e5=>fs[_0x2e2a75(0x235)](_0x3e00e5));if(!_0x545bc0)throw new Error(_0x2e2a75(0x242));const _0x13c5e9=fs[_0x2e2a75(0x22c)](_0x545bc0)['filter'](_0x414687=>_0x414687[_0x2e2a75(0x26b)](_0x2e2a75(0x240))),_0x246e28=Object[_0x2e2a75(0x274)](Object['keys'](REVIEW_VERSIONS)[_0x2e2a75(0x1f6)](_0x425c17=>{const _0x3164a5=_0x2e2a75,_0x368973=(_0x425c17[_0x3164a5(0x227)](/-/g,'_')+'-')[_0x3164a5(0x23e)](),_0x2158cb=_0x13c5e9[_0x3164a5(0x21e)](_0x2fea4d=>_0x2fea4d[_0x3164a5(0x23e)]()[_0x3164a5(0x278)](_0x368973));return[_0x425c17,_0x2158cb?.[_0x3164a5(0x254)](_0x368973[_0x3164a5(0x1fc)],-'.dist-info'['length'])||null];}));if(Object[_0x2e2a75(0x23d)](REVIEW_VERSIONS)[_0x2e2a75(0x249)](([_0x35ec89,_0x113122])=>_0x246e28[_0x35ec89]!==_0x113122))throw new Error(_0x2e2a75(0x25d));return{'command':_0x3c4134,'args':['-m',_0x2e2a75(0x202),_0x2e2a75(0x224)],'version':REVIEW_VERSIONS[_0x2e2a75(0x1f2)],'versions':_0x246e28,'cacheContract':CACHE_CONTRACT,'cacheDirectory':_0x2e2a75(0x24b)+REVIEW_VERSIONS['code-review-graph'],'env':{'CRG_HOME':path[_0x2e2a75(0x23b)](reviewHome(),'state')}};}function memory(){const _0x5ceb05=_0x293f60,_0x141f45=path['join'](memoryHome(),_0x5ceb05(0x277)),_0x516e6e=JSON[_0x5ceb05(0x25a)](fs[_0x5ceb05(0x25b)](path[_0x5ceb05(0x23b)](_0x141f45,_0x5ceb05(0x1fd)),_0x5ceb05(0x1f9)));if(_0x516e6e[_0x5ceb05(0x21d)]!==MEMORY_VERSION)throw new Error('Memory\x20profile\x20version\x20mismatch');const _0x278680=path['join'](_0x141f45,_0x516e6e[_0x5ceb05(0x260)]?.[_0x5ceb05(0x218)]||_0x5ceb05(0x266));if(!fs['existsSync'](_0x278680))throw new Error(_0x5ceb05(0x217));const _0x39d6a3={};return _0x39d6a3[_0x5ceb05(0x23f)]=process['execPath'],_0x39d6a3[_0x5ceb05(0x252)]=[_0x278680],_0x39d6a3[_0x5ceb05(0x21d)]=MEMORY_VERSION,_0x39d6a3;}function browserLocal(){const _0x415511=_0x293f60,_0x1dd71c=path[_0x415511(0x23b)](root(),_0x415511(0x273)+PLAYWRIGHT_MCP_VERSION),_0x53948a=path['join'](_0x1dd71c,_0x415511(0x276));if(!fs['existsSync'](_0x53948a))throw new Error('Playwright\x20MCP\x20profile\x20is\x20not\x20installed');const _0x53dd5b=JSON[_0x415511(0x25a)](fs['readFileSync'](_0x53948a,_0x415511(0x1f9)));if(_0x53dd5b['version']!==PLAYWRIGHT_MCP_VERSION)throw new Error(_0x415511(0x22d));const _0x4480f0=path['join'](_0x1dd71c,_0x415511(0x1ec)),_0x2f4e82=JSON['parse'](fs[_0x415511(0x25b)](path[_0x415511(0x23b)](_0x4480f0,_0x415511(0x1fd)),_0x415511(0x1f9)))[_0x415511(0x21d)];if(_0x2f4e82!=='1.64.0-alpha-1789764292000')throw new Error(_0x415511(0x24d));const _0x3ef2be=JSON['parse'](fs[_0x415511(0x25b)](path[_0x415511(0x23b)](_0x4480f0,_0x415511(0x1ed)),_0x415511(0x1f9)))['browsers'][_0x415511(0x21e)](_0x3ffd60=>_0x3ffd60[_0x415511(0x246)]===_0x415511(0x279));if(_0x3ef2be?.[_0x415511(0x24a)]!==_0x415511(0x1ea))throw new Error('Chromium\x20revision\x20mismatch');const _0x571e0e=run(process[_0x415511(0x21b)],['-e',_0x415511(0x221),_0x4480f0],{'env':{...process.env,'PLAYWRIGHT_BROWSERS_PATH':path[_0x415511(0x23b)](_0x1dd71c,'browsers')},'timeout':0x2710});if(!fs[_0x415511(0x235)](_0x571e0e))throw new Error(_0x415511(0x213));return{'command':process[_0x415511(0x21b)],'args':[path['join'](_0x1dd71c,_0x415511(0x237)),_0x415511(0x219),_0x415511(0x26d),_0x415511(0x1ff),_0x415511(0x279)],'version':PLAYWRIGHT_MCP_VERSION,'cwd':_0x1dd71c,'browserRevision':_0x3ef2be[_0x415511(0x24a)],'browserExecutable':_0x571e0e,'launchVerified':![],'env':{'PLAYWRIGHT_BROWSERS_PATH':path[_0x415511(0x23b)](_0x1dd71c,_0x415511(0x1fb))}};}function inspect(_0x298855={}){const _0x2a501e=_0x293f60;return Object[_0x2a501e(0x274)]([[_0x2a501e(0x25f),codegraph],[_0x2a501e(0x1f2),review],['server-memory',memory],[_0x2a501e(0x255),browserLocal]][_0x2a501e(0x263)](([_0x2e5b13])=>!_0x298855[_0x2a501e(0x20e)]||_0x298855[_0x2a501e(0x20e)][_0x2a501e(0x20a)](_0x2e5b13))[_0x2a501e(0x1f6)](([_0x123e57,_0x731904])=>{const _0x481766=_0x2a501e;try{return[_0x123e57,{'configured':!![],..._0x731904()}];}catch(_0x31eb48){const _0x1d378c={};return _0x1d378c['configured']=![],_0x1d378c[_0x481766(0x22e)]=_0x481766(0x26c)+PROFILE+':\x20'+_0x31eb48[_0x481766(0x220)],[_0x123e57,_0x1d378c];}}));}function install(){const _0x2f8310=_0x293f60,_0x787ee0={};_0x787ee0[_0x2f8310(0x212)]=!![],fs[_0x2f8310(0x268)](root(),_0x787ee0);const _0x953635=require(_0x2f8310(0x215))[_0x2f8310(0x27b)](path[_0x2f8310(0x23b)](root(),_0x2f8310(0x21a)));if(!_0x953635)throw new Error(_0x2f8310(0x247));try{try{codegraph();}catch{const _0x36e6db={};_0x36e6db[_0x2f8310(0x212)]=!![],fs[_0x2f8310(0x268)](codeHome(),_0x36e6db);const _0x504bc6={};_0x504bc6[_0x2f8310(0x25c)]=0x493e0,run(process[_0x2f8310(0x21b)],[npmCli(),'install','--prefix',codeHome(),'--no-audit',_0x2f8310(0x250),_0x2f8310(0x208),_0x2f8310(0x26a)+CODEGRAPH_VERSION],_0x504bc6);}try{review();}catch{if(!fs[_0x2f8310(0x235)](pythonAt(reviewHome()))){let _0x24feaa;for(const _0x4baa08 of['python3',_0x2f8310(0x26e),'py']){try{run(_0x4baa08,[_0x2f8310(0x1fe)]),_0x24feaa=_0x4baa08;break;}catch{}}if(!_0x24feaa)throw new Error(_0x2f8310(0x200));run(_0x24feaa,['-m',_0x2f8310(0x204),reviewHome()]);}const _0x72058d={};_0x72058d[_0x2f8310(0x25c)]=0x493e0,run(pythonAt(reviewHome()),['-m','pip',_0x2f8310(0x275),...Object['entries'](REVIEW_VERSIONS)[_0x2f8310(0x1f6)](([_0x25e171,_0x212c40])=>_0x25e171+'=='+_0x212c40)],_0x72058d);}try{memory();}catch{const _0x1e993c={};_0x1e993c[_0x2f8310(0x212)]=!![],fs[_0x2f8310(0x268)](memoryHome(),_0x1e993c);const _0x3713cd={};_0x3713cd[_0x2f8310(0x25c)]=0x493e0,run(process[_0x2f8310(0x21b)],[npmCli(),_0x2f8310(0x275),_0x2f8310(0x257),memoryHome(),_0x2f8310(0x251),_0x2f8310(0x250),_0x2f8310(0x264),_0x2f8310(0x24e)+MEMORY_VERSION],_0x3713cd);}return{'profile':PROFILE,'codegraph':codegraph(),'review':review(),'memory':memory()};}finally{_0x953635();}}function installBrowser(){const _0x208bbf=_0x293f60;try{return browserLocal();}catch{const _0x705ca=path[_0x208bbf(0x23b)](root(),_0x208bbf(0x273)+PLAYWRIGHT_MCP_VERSION),_0x4223ba={};_0x4223ba[_0x208bbf(0x212)]=!![],fs[_0x208bbf(0x268)](_0x705ca,_0x4223ba);const _0x349598={};_0x349598[_0x208bbf(0x25c)]=0x927c0,run(process[_0x208bbf(0x21b)],[npmCli(),_0x208bbf(0x275),_0x208bbf(0x257),_0x705ca,_0x208bbf(0x251),_0x208bbf(0x250),_0x208bbf(0x264),_0x208bbf(0x261)+PLAYWRIGHT_MCP_VERSION],_0x349598);const _0x429067=path[_0x208bbf(0x23b)](_0x705ca,_0x208bbf(0x1fb));run(process[_0x208bbf(0x21b)],[path['join'](_0x705ca,_0x208bbf(0x223)),_0x208bbf(0x275),_0x208bbf(0x279)],{'env':{...process.env,'PLAYWRIGHT_BROWSERS_PATH':_0x429067},'timeout':0xdbba0}),run(process['execPath'],[path['join'](_0x705ca,_0x208bbf(0x237)),'--help'],{'env':{...process.env,'PLAYWRIGHT_BROWSERS_PATH':_0x429067},'timeout':0x1d4c0});}return browserLocal();}const codeTools=require('./codegraph-1.6.0.json')[_0x293f60(0x1eb)];function _0x140d(){const _0x219599=['mZu2mdK0wfn5AuT1','CMv2Awv3lq','y29TCgf0AwjSzvrVB2XZ','BMfTzq','qMfJA2vUzcbWCM9MAwXLigLUC3rHBgXHDgLVBIbPCYbIDxn5','mc4WlJGY','C29Tzq','CMv2AxnPB24','lMfNzw50CY8Uzgf0ys9NCMfWAc0','ueXbwvDssuDivf9nq1bFvKvsu0LptG','ugXHExDYAwDODcbJB3jLihbYB2zPBguGDMvYC2LVBIbTAxnTyxrJAa','qg1VzgvSy29UDgv4DhbYB3rVy29Sl3nLCNzLCI1Tzw1VCNLa','zxHWBg9YzsXZzwfYy2GSy2fSBgvYCYXJywXSzwvZlgzPBgvZlhn0yxr1CW','ls1UBY1MDw5K','ls1UBY1HDwrPDa','yxjNCW','mtKZodC4neHLCwTAtq','C2XPy2u','yNjVD3nLCI1SB2nHBa','mJaYnI44lJmX','ls1WCMvMAxG','Ag9TzwrPCG','u2nYAxb0CY9WExrOB24UzxHL','CgfYC2u','CMvHzezPBgvtEw5J','DgLTzw91Da','uMv2Awv3ifb5DgHVBIbWCM9MAwXLihzLCNnPB24GBwLZBwf0y2G','Cgf0Aa','y29KzwDYyxbO','yMLU','qhbSyxL3CMLNAhqVBwnWqa','DgvZDa','zMLSDgvY','ls1WywnRywDLlwXVy2S9Dhj1zq','BgLIl2rPC3qVyMLUl2nVzgvNCMfWAc5QCW','zgLZDc9PBMrLEc5QCW','mJuYAxnbsvvl','BwTKAxjtEw5J','ntiXnJa3mKTbrvvhyW','qgnVBgj5BwnOzw5YEs9JB2rLz3jHCgHa','zw5KC1DPDgG','uNvUiefqvcbPBNn0ywXSl3vWzgf0zsb0BYbWCM92AxnPB24G','ls1PC29SyxrLza','ChL0Ag9U','zw52','CgLWzq','lw1LBw9YEs0','nZuWugLJywTZ','CgXHExDYAwDODc1Ty3aT','zNjVBuvUDhjPzxm','Aw5ZDgfSBa','BM9Kzv9TB2r1BgvZl0bWBgf5D3jPz2H0l21JCc9WywnRywDLlMPZB24','BM9Kzv9TB2r1BgvZl0bTB2rLBgnVBNrLEhrWCM90B2nVBc9Zzxj2zxiTBwvTB3j5','C3rHCNrZv2L0Aa','y2HYB21PDw0','uKvwsuvxx1zfuLnjt05t','ywnXDwLYzvj1BNrPBwvmB2nR','lw1JCc0','BM9Kzv9TB2r1BgvZl0bJB2XIEw1JAgvUCNKVy29KzwDYyxbOlq','mti0nG','Dg9VBhm','BM9Kzv9TB2r1BgvZl3bSyxL3CMLNAhqTy29Yzq','yNjVD3nLCNmUANnVBG','q0fdsevFq09ovfjbq1q','C2vYDMvYsw5MBW','ms42lJa','Aw5PDgLHBgL6zvjLC3bVBNnL','y29Kzs1YzxzPzxCTz3jHCgG','lxjLDMLLDY0','y29KzvrVB2XZ','CMv2Awv3','BwfW','y2HPBgrFChjVy2vZCW','C2v0','DxrMoa','lMnVzgvNCMfWAc0','yNjVD3nLCNm','BgvUz3rO','CgfJA2fNzs5QC29U','ls12zxjZAw9U','ls1ICM93C2vY','uhL0Ag9UigLZihjLCxvPCMvKihrVigLUC3rHBgWGDgHLihjLDMLLDYbIywnRzw5K','BwnW','y29Kzv9YzxzPzxDFz3jHCgG','q29KzuDYyxbOihbYB2zPBguGDMvYC2LVBIbTAxnTyxrJAa','DMvUDG','C2L0zs1WywnRywDLCW','DMfSDwvZ','mI4ZlJK','ls1WywnRywDLlwXVy2S9zMfSC2u','BwvTB3j5','Aw5JBhvKzxm','y3vZDg9Tq29TBwfUza','Aw5ZDgfSBejYB3DZzxi','CgXHDgzVCM0','BMfTzxm','B3b0Aw9UCW','ls1SAwz0B2zMlw9UBhK','nJC0nti2u2fzwhLo','CMvJDxjZAxzL','qvbuienOCM9TAxvTigLZig5VDcbPBNn0ywXSzwq','D2LUmZi','lI4Vy29Yzs9VD25Lzc1SB2nR','q09eruDsqvbix1zfuLnjt04','twvTB3j5ihbYB2zPBguGAxmGAw5JB21WBgv0zq','BwnWlxnLCNzLCI1Tzw1VCNK','ls1OzwfKBgvZCW','Aw5ZDgfSBc5SB2nR','zxHLy1bHDgG','zMfZDg1JCa','DMvYC2LVBG','zMLUza','tuvnt1jzx1zfuLnjt04','BwvZC2fNzq','ChjVy2vZCY5ZDgrVDxqUD3jPDguOCMvXDwLYzsHWCM9JzxnZlMfYz3zBmv0PlMnOCM9TAxvTlMv4zwn1DgfIBgvqyxrOkcKP','mtq0meH6vvDqBq','BM9Kzv9TB2r1BgvZl3bSyxL3CMLNAhqVy2XPlMPZ','C2vYDMu','AgfZ','mtboswvjv3K','CMvWBgfJzq','yNjVD3nLCKXVy2fS','zxHLy0zPBgvtEw5J','tgLI','mti5nJa5zuzgBNHb','CMvHzgrPCLn5BMm','ugXHExDYAwDODcbnq1aGChjVzMLSzsb2zxjZAw9Uig1PC21HDgnO','y29UzMLNDxjHDgLVBKvYCM9Y','yxjJAa','BM9Kzs5LEgu','ls1KAxnHyMXLlxDHCM5PBMC9rxHWzxjPBwvUDgfSv2fYBMLUzW','BM9Kzv9TB2r1BgvZl0bJB2XIEw1JAgvUCNKVy29KzwDYyxbO','BM9Kzq','q09eruDsqvbix01duf9ut09muW','zxHPC3rZu3LUyW','yMfJA2vUzhm','BM9Kzv9TB2r1BgvZl0bWBgf5D3jPz2H0l21JCc9JBgKUANm','zNjLzxPL','CMvZDwX0','ms4Yoc4X','AM9PBG','ntKXodC4n2zYEw9pBq','zw50CMLLCW','Dg9mB3DLCKnHC2u','y29TBwfUza','lMrPC3qTAw5MBW','ufjprKLmrq','uMv2Awv3ifb5DgHVBIbZAxrLlxbHy2THz2vZigLZig1PC3nPBMC'];_0x140d=function(){return _0x219599;};return _0x140d();}function compatibleTools(_0x5357ef,_0x3dab79){const _0x4558cb=_0x293f60;if(_0x5357ef[_0x4558cb(0x246)]!==_0x4558cb(0x25f)||_0x5357ef[_0x4558cb(0x20f)][_0x4558cb(0x20b)]||_0x5357ef[_0x4558cb(0x1f1)]?.[_0x4558cb(0x239)]?.[_0x4558cb(0x1ef)]?.[_0x4558cb(0x21d)]!==CODEGRAPH_VERSION)return _0x3dab79;const _0x2015ba=new Map(_0x3dab79[_0x4558cb(0x1f6)](_0x328632=>[_0x328632[_0x4558cb(0x246)],_0x328632]));for(const _0x5822e5 of codeTools)if(!_0x2015ba[_0x4558cb(0x225)](_0x5822e5[_0x4558cb(0x246)]))_0x2015ba[_0x4558cb(0x1f8)](_0x5822e5[_0x4558cb(0x246)],_0x5822e5);return[..._0x2015ba[_0x4558cb(0x206)]()];}const _0x3fb8b3={};_0x3fb8b3[_0x293f60(0x241)]=PROFILE,_0x3fb8b3[_0x293f60(0x1ee)]=CACHE_CONTRACT,_0x3fb8b3[_0x293f60(0x216)]=CODEGRAPH_VERSION,_0x3fb8b3[_0x293f60(0x27a)]=REVIEW_VERSIONS,_0x3fb8b3[_0x293f60(0x21f)]=MEMORY_VERSION,_0x3fb8b3[_0x293f60(0x24c)]=PLAYWRIGHT_MCP_VERSION,_0x3fb8b3[_0x293f60(0x25f)]=codegraph,_0x3fb8b3[_0x293f60(0x1f5)]=review,_0x3fb8b3[_0x293f60(0x209)]=memory,_0x3fb8b3[_0x293f60(0x228)]=browserLocal,_0x3fb8b3['inspect']=inspect,_0x3fb8b3[_0x293f60(0x275)]=install,_0x3fb8b3[_0x293f60(0x20c)]=installBrowser,_0x3fb8b3[_0x293f60(0x245)]=compatibleTools,_0x3fb8b3[_0x293f60(0x1f4)]=codeTools,module['exports']=_0x3fb8b3;
@@ -1,8 +1,145 @@
1
1
  """Version-pinned bridge. JSON only on stdout; never rewrites the global registry."""
2
2
  import json
3
+ import hashlib
3
4
  import os
5
+ import subprocess
4
6
  import sys
5
- from pathlib import Path
7
+ from pathlib import Path
8
+
9
+
10
+ def configure_source_scope():
11
+ from importlib.metadata import version
12
+ from code_review_graph import incremental
13
+ if version("code-review-graph") != "2.3.9":
14
+ raise RuntimeError("Review source adapter requires pinned version 2.3.9")
15
+ # The pinned builder has no per-call ignore option. Scope its defaults
16
+ # inside this bridge process so discovery, full build and update agree.
17
+ pattern = "/.agents/recovery-backups/**"
18
+ if pattern not in incremental.DEFAULT_IGNORE_PATTERNS:
19
+ incremental.DEFAULT_IGNORE_PATTERNS.append(pattern)
20
+
21
+
22
+ def working_tree_files(root):
23
+ from code_review_graph.constants import GIT_TIMEOUT
24
+ # The pinned helper returns [] for a nonzero status, even with require_vcs.
25
+ # Keep its porcelain format and one command, but require a successful result.
26
+ result = subprocess.run(
27
+ ["git", "status", "--porcelain=v1", "-z", "--untracked-files=all"],
28
+ capture_output=True, cwd=str(root), timeout=GIT_TIMEOUT,
29
+ stdin=subprocess.DEVNULL,
30
+ )
31
+ result.check_returncode()
32
+ records = iter(result.stdout.split(b"\0"))
33
+ files = []
34
+ for record in records:
35
+ if len(record) <= 3:
36
+ continue
37
+ files.append(os.fsdecode(record[3:]))
38
+ if b"R" in record[:2] or b"C" in record[:2]:
39
+ next(records, None)
40
+ return files
41
+
42
+
43
+ def discover(root):
44
+ configure_source_scope()
45
+ from importlib.metadata import version
46
+ from code_review_graph.incremental import (
47
+ collect_all_files, detect_vcs,
48
+ _load_ignore_patterns, _should_ignore, _is_binary,
49
+ )
50
+ from code_review_graph.parser import CodeParser
51
+ # Recovery backups are audit artifacts, not project source. They can
52
+ # contain a complete copy of a prior release and may be written while an
53
+ # update is being inspected. Keep them out of both the native inventory
54
+ # and the APT source contract so a backup cannot make graph catch-up
55
+ # perpetually stale.
56
+ patterns = _load_ignore_patterns(root)
57
+ parser = CodeParser(root)
58
+ def source_candidate(file):
59
+ if _should_ignore(file, patterns):
60
+ return False
61
+ # The pinned parser reports generic YAML as a language so it can
62
+ # recognize Ansible and Spring configuration by path/content, but it
63
+ # deliberately emits no graph File node for generic YAML. Keeping it
64
+ # in the inventory makes reconciliation impossible because no hash can
65
+ # ever be stored for that file.
66
+ return parser.detect_language(root / file) != "yaml"
67
+ files = {file for file in collect_all_files(root) if source_candidate(file)}
68
+ if detect_vcs(root) == "git":
69
+ parser = CodeParser(root)
70
+ for file in working_tree_files(root):
71
+ source = root / file
72
+ if (source.is_file() and not source.is_symlink()
73
+ and source_candidate(file)
74
+ and parser.detect_language(source) is not None
75
+ and not _is_binary(source)):
76
+ files.add(file)
77
+ return {"files": sorted(files), "config": {"ignorePatterns": patterns}, "backendVersion": version("code-review-graph")}
78
+
79
+
80
+ def missing_source_hashes(root, store):
81
+ from code_review_graph.parser import normalize_file_path
82
+ hashes = store.get_file_hashes()
83
+ return [file for file in discover(root)["files"]
84
+ if hashes.get(normalize_file_path(root / file)) !=
85
+ hashlib.sha256((root / file).read_bytes()).hexdigest()]
86
+
87
+
88
+ def require_success(result):
89
+ if result.get("status", "ok") != "ok":
90
+ raise RuntimeError(result.get("error") or result.get("summary") or "Graph build failed")
91
+ if result.get("errors"):
92
+ raise RuntimeError("Graph build has parsing errors: " + str(result["errors"])[:1000])
93
+ if result.get("postprocess_failed") or result.get("postprocess_contended"):
94
+ raise RuntimeError("Graph post-processing did not complete")
95
+
96
+
97
+ def reconcile_sources(root, result):
98
+ from code_review_graph.tools._common import _get_store
99
+ from code_review_graph.tools.build import run_postprocess
100
+ from code_review_graph.incremental import incremental_update
101
+ from code_review_graph.build_state import (
102
+ BUILD_STATE_KEY, BUILD_IN_PROGRESS, advance_to_postprocess_pending,
103
+ )
104
+ store, bound_root = _get_store(str(root))
105
+ catchup = None
106
+ try:
107
+ missing = missing_source_hashes(bound_root, store)
108
+ if missing:
109
+ store.set_metadata(BUILD_STATE_KEY, BUILD_IN_PROGRESS)
110
+ catchup = incremental_update(bound_root, store, changed_files=missing, reconcile_stale=True)
111
+ require_success(catchup)
112
+ if missing_source_hashes(bound_root, store):
113
+ raise RuntimeError("Graph catchup did not store all current source hashes")
114
+ advance_to_postprocess_pending(store)
115
+ finally:
116
+ store.close()
117
+ if catchup is not None:
118
+ postprocess = run_postprocess(repo_root=str(root))
119
+ require_success(postprocess)
120
+ result["build_type"] = result.get("build_type", "full") + "+catchup"
121
+ result["catchup"] = catchup
122
+ result["catchup_postprocess"] = postprocess
123
+ store, bound_root = _get_store(str(root))
124
+ try:
125
+ if missing_source_hashes(bound_root, store):
126
+ raise RuntimeError("Graph does not cover the current source inventory")
127
+ finally:
128
+ store.close()
129
+
130
+
131
+ def health(data):
132
+ import sqlite3
133
+ database = data / "graph.db"
134
+ if not database.is_file():
135
+ return {"healthy": False, "buildState": None}
136
+ connection = sqlite3.connect(database.as_uri() + "?mode=ro", uri=True)
137
+ try:
138
+ row = connection.execute("SELECT value FROM metadata WHERE key='build_state'").fetchone()
139
+ state = row[0] if row else None
140
+ return {"healthy": state == "complete", "buildState": state}
141
+ finally:
142
+ connection.close()
6
143
 
7
144
 
8
145
  def main():
@@ -13,12 +150,19 @@ def main():
13
150
  data = Path(registered or os.environ.get("CRG_DATA_DIR") or root / ".code-review-graph").resolve()
14
151
  if operation == "inspect":
15
152
  return {"workspace": str(root), "dataDirectory": str(data), "database": str(data / "graph.db"), "source": "registry" if registered else "environment"}
153
+ if operation == "discover":
154
+ return discover(root)
155
+ if operation == "health":
156
+ return health(data)
157
+ if operation not in ("build", "update"):
158
+ raise ValueError("Unsupported review graph operation")
159
+ configure_source_scope()
16
160
  from code_review_graph.tools.build import build_or_update_graph
17
- result = build_or_update_graph(repo_root=str(root), full_rebuild=True, postprocess="full")
18
- if result.get("status") != "ok":
19
- raise RuntimeError(result.get("error") or result.get("summary") or "Graph build failed")
20
- if result.get("errors"):
21
- raise RuntimeError("Graph build has parsing errors: " + str(result["errors"])[:1000])
161
+ result = build_or_update_graph(repo_root=str(root), full_rebuild=operation == "build", postprocess="full")
162
+ require_success(result)
163
+ reconcile_sources(root, result)
164
+ if not health(data)["healthy"]:
165
+ raise RuntimeError("Graph post-processing is incomplete")
22
166
  return result
23
167
 
24
168
 
@@ -0,0 +1 @@
1
+ 'use strict';function _0x15fd(_0x18fc42,_0xca5df7){_0x18fc42=_0x18fc42-0x1b1;const _0x34102e=_0x3410();let _0x15fd87=_0x34102e[_0x18fc42];if(_0x15fd['efhUIK']===undefined){var _0x2197a4=function(_0x5a7d6e){const _0x4630c2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x28ef20='',_0x5d26c2='';for(let _0x51860a=0x0,_0x596827,_0x3678e2,_0x2d4f0c=0x0;_0x3678e2=_0x5a7d6e['charAt'](_0x2d4f0c++);~_0x3678e2&&(_0x596827=_0x51860a%0x4?_0x596827*0x40+_0x3678e2:_0x3678e2,_0x51860a++%0x4)?_0x28ef20+=String['fromCharCode'](0xff&_0x596827>>(-0x2*_0x51860a&0x6)):0x0){_0x3678e2=_0x4630c2['indexOf'](_0x3678e2);}for(let _0xc1be90=0x0,_0x315b7d=_0x28ef20['length'];_0xc1be90<_0x315b7d;_0xc1be90++){_0x5d26c2+='%'+('00'+_0x28ef20['charCodeAt'](_0xc1be90)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5d26c2);};_0x15fd['zlmveO']=_0x2197a4,_0x15fd['vFuMAi']={},_0x15fd['efhUIK']=!![];}const _0x2f6366=_0x34102e[0x0],_0x34a136=_0x18fc42+_0x2f6366,_0x4f4f4e=_0x15fd['vFuMAi'][_0x34a136];return!_0x4f4f4e?(_0x15fd87=_0x15fd['zlmveO'](_0x15fd87),_0x15fd['vFuMAi'][_0x34a136]=_0x15fd87):_0x15fd87=_0x4f4f4e,_0x15fd87;}const _0x1a815f=_0x15fd;(function(_0x400972,_0x319e8b){const _0x436072=_0x15fd,_0x47bf45=_0x400972();while(!![]){try{const _0x2bce44=-parseInt(_0x436072(0x1c7))/0x1*(-parseInt(_0x436072(0x1d7))/0x2)+parseInt(_0x436072(0x1c4))/0x3+-parseInt(_0x436072(0x1f1))/0x4*(-parseInt(_0x436072(0x1b9))/0x5)+parseInt(_0x436072(0x1e9))/0x6+-parseInt(_0x436072(0x1ea))/0x7+parseInt(_0x436072(0x1ee))/0x8*(parseInt(_0x436072(0x1f3))/0x9)+-parseInt(_0x436072(0x1db))/0xa;if(_0x2bce44===_0x319e8b)break;else _0x47bf45['push'](_0x47bf45['shift']());}catch(_0x5cb415){_0x47bf45['push'](_0x47bf45['shift']());}}}(_0x3410,0x590cf));const fs=require('node:fs'),path=require(_0x1a815f(0x1df)),crypto=require(_0x1a815f(0x1e0)),cp=require(_0x1a815f(0x1b7)),{containsWorkspace}=require(_0x1a815f(0x1de)),hash=_0x39db53=>crypto[_0x1a815f(0x1b2)]('sha256')[_0x1a815f(0x1e2)](_0x39db53)['digest'](_0x1a815f(0x1cd)),bridge=path[_0x1a815f(0x1dd)](__dirname,_0x1a815f(0x1b4)),_0x28ef20={};_0x28ef20[_0x1a815f(0x1d1)]=_0x1a815f(0x1bd);const fail=_0x28a922=>Object['assign'](new Error(_0x28a922),_0x28ef20);function discoverBackendSources(_0x958200,_0x531748,_0x12e182,_0x375acd=_0x12e182[_0x1a815f(0x1d6)]||{}){const _0x18bab9=_0x1a815f;let _0x2bf7a7;if(_0x958200==='codegraph'&&_0x12e182['version']==='1.6.0'){const _0x51a8b5=_0x12e182[_0x18bab9(0x1c1)]?.[_0x18bab9(0x1bf)](_0x4c09f7=>typeof _0x4c09f7==='string'&&/[\\/]bin[\\/]codegraph\.js$/['test'](_0x4c09f7));if(_0x51a8b5===undefined||_0x51a8b5<0x0)return null;const _0x3b68f2=path[_0x18bab9(0x1d9)](path[_0x18bab9(0x1d9)](_0x12e182[_0x18bab9(0x1c1)][_0x51a8b5])),_0x3ad107=JSON[_0x18bab9(0x1ef)](fs[_0x18bab9(0x1d4)](path[_0x18bab9(0x1dd)](_0x3b68f2,'..',_0x18bab9(0x1cc)),'utf8'));if(_0x3ad107['name']!=='@colbymchenry/codegraph'||_0x3ad107['version']!==_0x12e182[_0x18bab9(0x1e1)])throw fail(_0x18bab9(0x1f0));const _0x270119=_0x18bab9(0x1d8),_0x229772={...process.env,..._0x375acd},_0x35e6ef={};_0x35e6ef[_0x18bab9(0x1d6)]=_0x229772,_0x35e6ef[_0x18bab9(0x1ec)]=!![],_0x35e6ef[_0x18bab9(0x1b1)]=_0x18bab9(0x1bc),_0x35e6ef[_0x18bab9(0x1b6)]=0x1d4c0,_0x35e6ef[_0x18bab9(0x1e8)]=0x10*0x400*0x400,_0x2bf7a7=JSON[_0x18bab9(0x1ef)](cp[_0x18bab9(0x1e7)](_0x12e182[_0x18bab9(0x1f2)],[..._0x12e182[_0x18bab9(0x1c1)]['slice'](0x0,_0x51a8b5),'-e',_0x270119,_0x3b68f2,_0x531748],_0x35e6ef));}else{if(_0x958200===_0x18bab9(0x1e4)&&_0x12e182['version']===_0x18bab9(0x1c8)){const _0x23e787={...process.env,..._0x375acd},_0x5c4deb={};_0x5c4deb['env']=_0x23e787,_0x5c4deb[_0x18bab9(0x1ec)]=!![],_0x5c4deb[_0x18bab9(0x1b1)]=_0x18bab9(0x1bc),_0x5c4deb[_0x18bab9(0x1b6)]=0x1d4c0,_0x5c4deb[_0x18bab9(0x1e8)]=0x10*0x400*0x400,_0x2bf7a7=JSON['parse'](cp[_0x18bab9(0x1e7)](_0x12e182[_0x18bab9(0x1f2)],[bridge,'discover',_0x531748],_0x5c4deb));if(_0x2bf7a7?.[_0x18bab9(0x1e6)]!==_0x12e182[_0x18bab9(0x1e1)])throw fail('Review\x20discovery\x20profile\x20does\x20not\x20match\x20the\x20installed\x20package');}else return null;}if(!_0x2bf7a7||!Array[_0x18bab9(0x1d3)](_0x2bf7a7['files']))throw fail('Backend\x20did\x20not\x20return\x20a\x20source\x20inventory');const _0xa44c08=[...new Set(_0x2bf7a7[_0x18bab9(0x1c0)])][_0x18bab9(0x1b8)](),_0x2d324a=new Set(_0x958200===_0x18bab9(0x1b5)?[_0x18bab9(0x1ba),'.gitignore']:[_0x18bab9(0x1cf)]),_0x3a8237=_0xa44c08[_0x18bab9(0x1ed)](_0x33e5f3=>{const _0x12db9f=_0x18bab9;if(typeof _0x33e5f3!==_0x12db9f(0x1ca)||!_0x33e5f3||path['isAbsolute'](_0x33e5f3)||_0x33e5f3[_0x12db9f(0x1c3)](/[\\/]/)['includes']('..'))throw fail(_0x12db9f(0x1be));const _0x331a43=path[_0x12db9f(0x1dd)](_0x531748,_0x33e5f3);if(!containsWorkspace(_0x531748,_0x331a43)||!fs[_0x12db9f(0x1dc)](_0x331a43)[_0x12db9f(0x1eb)]()||fs[_0x12db9f(0x1dc)](_0x331a43)[_0x12db9f(0x1ce)]())throw fail('Backend\x20source\x20path\x20is\x20redirected\x20or\x20unreadable');if(_0x958200===_0x12db9f(0x1b5)){let _0x5372b4=path['dirname'](_0x33e5f3);while(_0x5372b4!=='.'){_0x2d324a[_0x12db9f(0x1c5)](path[_0x12db9f(0x1dd)](_0x5372b4,_0x12db9f(0x1d5))),_0x5372b4=path['dirname'](_0x5372b4);}}return[_0x33e5f3['replace'](/\\/g,'/'),hash(fs['readFileSync'](_0x331a43))];}),_0x20b7e0=[..._0x2d324a][_0x18bab9(0x1b8)]()[_0x18bab9(0x1ed)](_0x27eef2=>{const _0x24573b=_0x18bab9,_0x55f07a=path['join'](_0x531748,_0x27eef2);if(!fs[_0x24573b(0x1cb)](_0x55f07a))return[_0x27eef2,null];if(!containsWorkspace(_0x531748,_0x55f07a)||fs['lstatSync'](_0x55f07a)['isSymbolicLink']())throw fail('Backend\x20configuration\x20is\x20redirected');return[_0x27eef2,hash(fs[_0x24573b(0x1d4)](_0x55f07a))];}),_0x1a7204={};_0x1a7204['version']=0x1,_0x1a7204[_0x18bab9(0x1d2)]=_0x958200,_0x1a7204[_0x18bab9(0x1f2)]=_0x12e182[_0x18bab9(0x1f2)],_0x1a7204['args']=_0x12e182[_0x18bab9(0x1c1)],_0x1a7204[_0x18bab9(0x1da)]=_0x12e182[_0x18bab9(0x1e1)],_0x1a7204['versions']=_0x12e182[_0x18bab9(0x1b3)],_0x1a7204[_0x18bab9(0x1c2)]=_0x12e182[_0x18bab9(0x1c2)];const _0x3c5f29=hash(JSON[_0x18bab9(0x1bb)](_0x1a7204)),_0x2cdedd={...process.env,..._0x375acd},_0x452104=hash(JSON['stringify']({'native':_0x2bf7a7[_0x18bab9(0x1c6)],'files':_0x20b7e0,'env':Object[_0x18bab9(0x1e3)](_0x2cdedd)[_0x18bab9(0x1d0)](([_0x16b544])=>/^(?:CRG_|CODEGRAPH_)/['test'](_0x16b544))[_0x18bab9(0x1b8)](([_0x14fb5e],[_0x1b4f18])=>_0x14fb5e['localeCompare'](_0x1b4f18))}));return{'snapshot':hash(JSON[_0x18bab9(0x1bb)](_0x3a8237)),'contract':_0x3c5f29,'config':_0x452104,'sourceCount':_0x3a8237[_0x18bab9(0x1e5)],'adapter':_0x958200+'@'+_0x12e182[_0x18bab9(0x1e1)],'incremental':_0x958200===_0x18bab9(0x1e4)};}function _0x3410(){const _0x55d8c8=['CgfJA2fNzs5QC29U','Agv4','AxntEw1IB2XPy0XPBMS','lMnVzguTCMv2Awv3lwDYyxbOAwDUB3jL','zMLSDgvY','y29Kzq','A2LUza','AxnbCNjHEq','CMvHzezPBgvtEw5J','lMDPDgLNBM9Yzq','zw52','mJq4mdjPDLnerxq','y29UC3qGCd1Yzxf1AxjLkcDUB2rLoNbHDgGNktTJB25ZDcbTpxbYB2nLC3mUyxjNDLSXxsXYpxbYB2nLC3mUyxjNDLSYxtTJB25ZDcbZpxjLCxvPCMuOCc5QB2LUkg0Sj2v4DhjHy3rPB24NksK7y29UC3qGyZ1Yzxf1AxjLkhaUAM9PBIHTlcDWCM9Qzwn0lwnVBMzPzYCPktTJB25ZB2XLlMXVzYHku09olNn0CMLUz2LMEsH7zMLSzxm6CY5Zy2fUrgLYzwn0B3j5khiPlgnVBMzPzZP7zxH0zw5ZAw9UCZPJlMXVywrfEhrLBNnPB25pDMvYCMLKzxmOCIKSAw5JBhvKztPJlMXVywrjBMnSDwrLugf0DgvYBNmOCIKSzxHJBhvKztPJlMXVywrfEgnSDwrLugf0DgvYBNmOCIKSAw5JBhvKzuLNBM9Yzwq6yY5SB2fKsw5JBhvKzuLNBM9Yzwrqyxr0zxjUCYHYksXKzxbYAw9YAxrPEMu6yY5SB2fKrgvWCMLVCML0AxPLugf0DgvYBNmOCIL9FsKP','zgLYBMfTzq','DMvYC2LVBLbPBG','mtu2mZiZntbgvhjcuLK','Bhn0yxrtEw5J','AM9PBG','lI4Vy29Yzs93B3jRC3bHy2uTCgf0Aa','BM9KztPWyxrO','BM9KztPJCNLWDg8','DMvYC2LVBG','DxbKyxrL','zw50CMLLCW','y29Kzs1YzxzPzxCTz3jHCgG','BgvUz3rO','yMfJA2vUzfzLCNnPB24','zxHLy0zPBgvtEw5J','Bwf4qNvMzMvY','mZi5mZC3mKnZzM9qAa','mJiXmJm1meDXz2TZva','AxngAwXL','D2LUzg93C0HPzgu','BwfW','ndG4tgzIC01r','CgfYC2u','q29KzuDYyxbOigrPC2nVDMvYEsbWCM9MAwXLigrVzxmGBM90ig1HDgnOihrOzsbPBNn0ywXSzwqGCgfJA2fNzq','oenMu1Hmuq','y29TBwfUza','ntC3mtDYEevqqM8','zw5JB2rPBMC','y3jLyxrLsgfZAa','DMvYC2LVBNm','CMv2Awv3x2DYyxbOlNb5','y29KzwDYyxbO','DgLTzw91Da','BM9KztPJAgLSzf9WCM9JzxnZ','C29YDa','mteZndmYmgzJr1zHDq','y29KzwDYyxbOlMPZB24','C3rYAw5NAwz5','DxrMoa','u09vuKnfx0rju0npvKvswv9jtLzbteLe','qMfJA2vUzcbZB3vYy2uGCgf0AcbLC2nHCgvZihDVCMTZCgfJzq','zMLUzeLUzgv4','zMLSzxm','yxjNCW','y2fJAgvdB250CMfJDa','C3bSAxq','mty5ndC5meHfr1ngyW','ywrK','y29UzMLN','mJnfAxnHq0i','mI4ZlJK','zgLZy292zxjcywnRzw5Ku291CMnLCW','C3rYAw5N','zxHPC3rZu3LUyW'];_0x3410=function(){return _0x55d8c8;};return _0x3410();}const _0x315b7d={};_0x315b7d[_0x1a815f(0x1c9)]=discoverBackendSources,module['exports']=_0x315b7d;
@@ -1 +1 @@
1
- 'use strict';const _0x35da6e=_0x460c;(function(_0x592024,_0x21fc27){const _0x5044a1=_0x460c,_0x25e83f=_0x592024();while(!![]){try{const _0x597b7e=-parseInt(_0x5044a1(0x210))/0x1+-parseInt(_0x5044a1(0x1f7))/0x2+parseInt(_0x5044a1(0x21d))/0x3+parseInt(_0x5044a1(0x21b))/0x4*(parseInt(_0x5044a1(0x1f9))/0x5)+parseInt(_0x5044a1(0x1ee))/0x6*(parseInt(_0x5044a1(0x239))/0x7)+-parseInt(_0x5044a1(0x21a))/0x8*(parseInt(_0x5044a1(0x23a))/0x9)+-parseInt(_0x5044a1(0x1e4))/0xa*(-parseInt(_0x5044a1(0x236))/0xb);if(_0x597b7e===_0x21fc27)break;else _0x25e83f['push'](_0x25e83f['shift']());}catch(_0x234d24){_0x25e83f['push'](_0x25e83f['shift']());}}}(_0x1717,0x88f48));function _0x1717(){const _0x2c60aa=['mtqXntr0zhvLCKi','Bhn0yxrtEw5J','ywrTAxrpCgvYyxrPB24','Aw52B2nHDgLVBKLK','yxr0zw1WDeLK','t1bfuKfusu9ox0Leru5usvrzx1jfuvvjuKve','uNvUDgLTzsb1CgDYywrLihjLCxvPCMvZig93BMvKig9WzxjHDgLVBNmGDg8GC3rVCa','Agv4','DgfYz2v0vMvYC2LVBG','mJa2ndu2ze5izK9g','qwrTAxnZAw9Uihn0yxrLignOyw5Nzwq','mteZmdq2mfv4vxrtra','AxntEw1IB2XPy0XPBMS','lMXVy2S','CMvUyw1Lu3LUyW','zNvUy3rPB24','DgLJA2v0CW','tMf0AxzLig9WzxjHDgLVBIbPzgvUDgL0EsbPCYbYzxf1AxjLza','lI9VD25Lzc1SB2nR','qurnsvntsu9ox0nptKzmsunu','CMvJDxjZAxzL','AM9PBG','ru5pru5u','y2XVC2vK','ywrTAxnZAw9UlMPZB24','t1bfuKfusu9ox0fvveHpuKLuwv9srvfvsvjfra','CMvHBhbHDgHtEw5J','Dg9ju09tDhjPBMC','zgLNzxn0','tMv3ihDVCMSGAxmGBM90igfKBwL0DgvKigr1CMLUzYbKCMfPBMLUzW','B3bLBG','DxrMoa','y29Kzq','CMvHzezPBgvtEw5J','nti3odaXDw1QCwXi','CgfYC2u','y29TCgXLDgvK','qurnsvntsu9ox0jvu1K','uLvoveLnrv9tvefurv9twu1msu5l','DgfYz2v0rgLNzxn0','y3jLyxrLsgfZAa','C3rVCfjLCxvLC3rLza','qvbux1vqrefurv9qru5esu5h','BwvTyMvYCW','nZK1mtuYBe9Rzhfb','mtjSEgrOEKW','qwrTAxnZAw9UigzLBMnLigLZigj1C3K','mJGZnZiYs3ryuKT0','t1DorvjtseLqx0Lox0zmsuDiva','zxHWB3j0CW','lMfNzw50CW','DxbKyxrL','DMfSDwvZ','yxnZAwDU','AxntywzLsw50zwDLCG','C3rHDgu','zhjHAw5PBMC','C3rYAw5NAwz5','zgLYBMfTzq','zMLUAxnOt3bLCMf0Aw9U','qwrTAxnZAw9UigvWB2nOignOyw5Nzwq','CMfUzg9Tvvvjra','y29TCgXLDgvKqxq','ywrTAxr0zwrfCg9JAa','uNvUDgLTzsbZDgf0zsbZEw1SAw5RihjLAMvJDgvK','BM9KztPMCW','z2vUzxjHDgLVBG','C2HHmJu2','y2HHBMDLrMvUy2u','ywn0AxzL','v29YA3nWywnLigLZigzYB3PLBG','D3jPDgvgAwXLu3LUyW','mtC5nJu5n0XgAvLNzG','C3rHDhvZ','uLvoveLnrv9vueDsqurfx1nut1bFuKvrvuvtveve','mJfqqKHlyxi','odfpuhPgvee','z3vHCMq','odbiufzNzKS','t3DUzxjZAgLWigLZig5VDcbHDcbHihnHzMuGyM91BMrHCNK','ywn0B3jjza','Aw5WDxriyxnO','CNvUDgLTzq','zxbVy2G','D2L0AefKBwLZC2LVBKXVy2S','BwTKAxjtEw5J','CMvHzezLBMnL','DhjHBNnHy3rPB25jza'];_0x1717=function(){return _0x2c60aa;};return _0x1717();}const fs=require(_0x35da6e(0x22f)),path=require('node:path'),crypto=require('node:crypto'),{acquireRuntimeLock}=require(_0x35da6e(0x200)),fileFor=_0x58300c=>path[_0x35da6e(0x203)](fs[_0x35da6e(0x208)](_0x58300c),_0x35da6e(0x220),_0x35da6e(0x1e8),_0x35da6e(0x206));function readFence(_0x1637a5){const _0x55492a=_0x35da6e;try{const _0x124e39=fileFor(_0x1637a5),_0x1dd224={};_0x1dd224[_0x55492a(0x20e)]=_0x55492a(0x214);if(fs[_0x55492a(0x1ef)](_0x124e39)[_0x55492a(0x1fa)]())throw Object['assign'](new Error(_0x55492a(0x22e)),_0x1dd224);return JSON[_0x55492a(0x211)](fs[_0x55492a(0x20f)](_0x124e39,_0x55492a(0x20d)));}catch(_0x11280a){const _0x56e0c5={};_0x56e0c5['state']=_0x55492a(0x20c),_0x56e0c5[_0x55492a(0x1e9)]=0x0;if(_0x11280a[_0x55492a(0x20e)]===_0x55492a(0x204))return _0x56e0c5;throw _0x11280a;}}function withAdmissionLock(_0x3818db,_0x3c2deb){const _0x20ca5a=_0x35da6e,_0xa1622a=fileFor(_0x3818db),_0x134f72={};_0x134f72[_0x20ca5a(0x202)]=!![],fs[_0x20ca5a(0x1eb)](path[_0x20ca5a(0x228)](_0xa1622a),_0x134f72);const _0x5b9f8c=acquireRuntimeLock(_0xa1622a+'.lock'),_0x28a460={};_0x28a460['code']=_0x20ca5a(0x213);if(!_0x5b9f8c)throw Object[_0x20ca5a(0x223)](new Error('Admission\x20fence\x20is\x20busy'),_0x28a460);try{return _0x3c2deb(readFence(_0x3818db));}finally{_0x5b9f8c();}}function _0x460c(_0xa3c78f,_0x58f763){_0xa3c78f=_0xa3c78f-0x1e4;const _0x1717ff=_0x1717();let _0x460ccd=_0x1717ff[_0xa3c78f];if(_0x460c['AdiALf']===undefined){var _0x3e7fd6=function(_0x41dba9){const _0x35534b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4ddfb4='',_0x4091d6='';for(let _0x4db8e4=0x0,_0x27fe86,_0x2c482b,_0x24bfc6=0x0;_0x2c482b=_0x41dba9['charAt'](_0x24bfc6++);~_0x2c482b&&(_0x27fe86=_0x4db8e4%0x4?_0x27fe86*0x40+_0x2c482b:_0x2c482b,_0x4db8e4++%0x4)?_0x4ddfb4+=String['fromCharCode'](0xff&_0x27fe86>>(-0x2*_0x4db8e4&0x6)):0x0){_0x2c482b=_0x35534b['indexOf'](_0x2c482b);}for(let _0x34642c=0x0,_0x86fe6e=_0x4ddfb4['length'];_0x34642c<_0x86fe6e;_0x34642c++){_0x4091d6+='%'+('00'+_0x4ddfb4['charCodeAt'](_0x34642c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4091d6);};_0x460c['RtFUaI']=_0x3e7fd6,_0x460c['GRDrDs']={},_0x460c['AdiALf']=!![];}const _0xdf0f02=_0x1717ff[0x0],_0x53d5c9=_0xa3c78f+_0xdf0f02,_0x4c3776=_0x460c['GRDrDs'][_0x53d5c9];return!_0x4c3776?(_0x460ccd=_0x460c['RtFUaI'](_0x460ccd),_0x460c['GRDrDs'][_0x53d5c9]=_0x460ccd):_0x460ccd=_0x4c3776,_0x460ccd;}function changeFence(_0x55bb8d,_0x66537,_0x3ae9e9){const _0x52f1b4=_0x35da6e,_0x27cf85=fileFor(_0x55bb8d),_0x2fa8df={};_0x2fa8df[_0x52f1b4(0x202)]=!![],fs[_0x52f1b4(0x1eb)](path[_0x52f1b4(0x228)](_0x27cf85),_0x2fa8df);const _0x267feb=acquireRuntimeLock(_0x27cf85+_0x52f1b4(0x1fb)),_0x56b006={};_0x56b006['code']=_0x52f1b4(0x213);if(!_0x267feb)throw Object[_0x52f1b4(0x223)](new Error(_0x52f1b4(0x21c)),_0x56b006);try{const _0x1752b9=readFence(_0x55bb8d),_0x447c7a={};_0x447c7a['code']='ADMISSION_CONFLICT';if(_0x66537!==undefined&&_0x1752b9[_0x52f1b4(0x1e9)]!==_0x66537)throw Object[_0x52f1b4(0x223)](new Error(_0x52f1b4(0x22a)),_0x447c7a);const _0x608269={};_0x608269[_0x52f1b4(0x20e)]=_0x52f1b4(0x201);if(typeof _0x3ae9e9[_0x52f1b4(0x23b)]===_0x52f1b4(0x1fd)&&_0x3ae9e9['guard'](_0x1752b9)!==!![])throw Object[_0x52f1b4(0x223)](new Error(_0x52f1b4(0x1f8)),_0x608269);const _0x475e2a={'state':_0x3ae9e9['state'],'epoch':_0x1752b9['epoch']+0x1,'generation':_0x3ae9e9[_0x52f1b4(0x230)]||_0x1752b9[_0x52f1b4(0x230)]||null,'targetVersion':_0x3ae9e9[_0x52f1b4(0x1f6)]||null,'targetDigest':_0x3ae9e9[_0x52f1b4(0x215)]||null,'transactionId':_0x3ae9e9[_0x52f1b4(0x1ed)]||_0x1752b9['transactionId']||crypto[_0x52f1b4(0x22b)](),'stopRequested':_0x3ae9e9[_0x52f1b4(0x225)]===_0x52f1b4(0x20c)?![]:_0x3ae9e9[_0x52f1b4(0x217)]===!![]||_0x1752b9['stopRequested']===!![],'changedAt':new Date()['toISOString'](),'tickets':_0x1752b9[_0x52f1b4(0x1fe)]||{},'members':_0x1752b9[_0x52f1b4(0x219)]||{}},_0x308677=_0x27cf85+'.'+crypto[_0x52f1b4(0x22b)]()+'.tmp';return fs[_0x52f1b4(0x235)](_0x308677,JSON[_0x52f1b4(0x227)](_0x475e2a)),fs['renameSync'](_0x308677,_0x27cf85),_0x475e2a;}finally{_0x267feb();}}function saveLocked(_0x3ef359,_0x1374fb){const _0x729cee=_0x35da6e,_0x1a7ec4=fileFor(_0x3ef359),_0x4bf512=_0x1a7ec4+'.'+crypto[_0x729cee(0x22b)]()+'.tmp';fs[_0x729cee(0x235)](_0x4bf512,JSON['stringify'](_0x1374fb)),fs[_0x729cee(0x1fc)](_0x4bf512,_0x1a7ec4);}function admitOperation(_0xc2d459,_0xd85e18,_0x5afb7b){const _0xc16398=_0x35da6e,_0x18b61c={};_0x18b61c[_0xc16398(0x20e)]=_0xc16398(0x1f3);if(!_0xd85e18?.[_0xc16398(0x1f1)]||!_0xd85e18[_0xc16398(0x1e6)]||typeof _0x5afb7b!=='function')throw Object[_0xc16398(0x223)](new Error(_0xc16398(0x1ff)),_0x18b61c);return withAdmissionLock(_0xc2d459,_0x24c9b9=>{const _0xb68d94=_0xc16398,_0x38b074={};_0x38b074[_0xb68d94(0x20e)]=_0xb68d94(0x218);if(['frozen',_0xb68d94(0x205)]['includes'](_0x24c9b9['state']))throw Object[_0xb68d94(0x223)](new Error(_0xb68d94(0x234)),_0x38b074);const _0x250bc7={};_0x250bc7[_0xb68d94(0x20e)]=_0xb68d94(0x238);if(_0x24c9b9[_0xb68d94(0x225)]===_0xb68d94(0x226)&&_0x24c9b9['stopRequested'])throw Object[_0xb68d94(0x223)](new Error(_0xb68d94(0x1f4)),_0x250bc7);const _0x5013ab={};_0x5013ab[_0xb68d94(0x20e)]=_0xb68d94(0x218);if(_0x24c9b9[_0xb68d94(0x225)]===_0xb68d94(0x226)&&(!_0xd85e18[_0xb68d94(0x1f2)]||!Number[_0xb68d94(0x224)](_0xd85e18[_0xb68d94(0x22d)])||_0xd85e18[_0xb68d94(0x22d)]>=_0x24c9b9[_0xb68d94(0x1e9)]))throw Object[_0xb68d94(0x223)](new Error(_0xb68d94(0x20b)),_0x5013ab);const _0x2ac814={};_0x2ac814[_0xb68d94(0x20e)]=_0xb68d94(0x207);if(_0x5afb7b(_0xd85e18,_0x24c9b9)!==!![])throw Object[_0xb68d94(0x223)](new Error('Native\x20operation\x20ownership\x20is\x20unverified'),_0x2ac814);_0x24c9b9[_0xb68d94(0x1fe)]||={};const _0x1800b2=crypto['createHash'](_0xb68d94(0x231))[_0xb68d94(0x221)](_0xd85e18[_0xb68d94(0x1f1)])[_0xb68d94(0x20a)](_0xb68d94(0x1f5)),_0x4e6084=_0x24c9b9[_0xb68d94(0x1fe)][_0x1800b2],_0x1cf850={};_0x1cf850['code']='OPERATION_INPUT_CONFLICT';if(_0x4e6084&&(_0x4e6084[_0xb68d94(0x1e6)]!==_0xd85e18[_0xb68d94(0x1e6)]||_0x4e6084['attemptId']!==_0xd85e18[_0xb68d94(0x1f2)]||_0x4e6084['inputHash']!==_0xd85e18[_0xb68d94(0x1e7)]))throw Object[_0xb68d94(0x223)](new Error('Operation\x20invocation\x20input\x20changed'),_0x1cf850);if(_0x4e6084)return _0x4e6084;const _0x22303c={'invocationId':_0xd85e18[_0xb68d94(0x1f1)],'actorId':_0xd85e18['actorId'],'attemptId':_0xd85e18['attemptId']||null,'inputHash':_0xd85e18[_0xb68d94(0x1e7)]||null,'epoch':_0x24c9b9[_0xb68d94(0x1e9)],'status':'active','createdAt':new Date()[_0xb68d94(0x209)]()};return _0x24c9b9[_0xb68d94(0x1fe)][_0x1800b2]=_0x22303c,saveLocked(_0xc2d459,_0x24c9b9),_0x22303c;});}function finishOperation(_0xfd01fd,_0xd59e4b,_0x25cd31){return withAdmissionLock(_0xfd01fd,_0x2527e3=>{const _0x158cc1=_0x460c,_0x562077=crypto[_0x158cc1(0x216)](_0x158cc1(0x231))[_0x158cc1(0x221)](_0xd59e4b)[_0x158cc1(0x20a)]('hex'),_0x57547f=_0x2527e3[_0x158cc1(0x1fe)]?.[_0x562077],_0x137a81={};_0x137a81['code']='OPERATION_TICKET_MISMATCH';if(!_0x57547f||_0x57547f[_0x158cc1(0x1e9)]!==_0x25cd31)throw Object[_0x158cc1(0x223)](new Error('Operation\x20ticket\x20does\x20not\x20match'),_0x137a81);return _0x57547f['status']=_0x158cc1(0x212),_0x57547f[_0x158cc1(0x22c)]=new Date()[_0x158cc1(0x209)](),saveLocked(_0xfd01fd,_0x2527e3),_0x57547f;});}function freezeFence(_0x1ff8e6,_0x402500,_0x1f724a,_0x3507ad){return withAdmissionLock(_0x1ff8e6,_0x4256ed=>{const _0x44ba96=_0x460c,_0x40856b={};_0x40856b[_0x44ba96(0x20e)]=_0x44ba96(0x201);if(_0x4256ed['epoch']!==_0x402500||_0x4256ed[_0x44ba96(0x225)]!==_0x44ba96(0x226))throw Object[_0x44ba96(0x223)](new Error(_0x44ba96(0x22a)),_0x40856b);const _0x56f21a=Object[_0x44ba96(0x222)](_0x4256ed[_0x44ba96(0x1fe)]||{})['filter'](_0x425340=>_0x425340[_0x44ba96(0x237)]===_0x44ba96(0x233)),_0x7ea821={};_0x7ea821[_0x44ba96(0x20e)]=_0x44ba96(0x21e);if(_0x56f21a['length']||typeof _0x3507ad!==_0x44ba96(0x1fd)||_0x3507ad(_0x4256ed)!==!![])throw Object[_0x44ba96(0x223)](new Error(_0x44ba96(0x1e5)),_0x7ea821);const _0x47f448={..._0x4256ed,..._0x1f724a};_0x47f448[_0x44ba96(0x225)]='frozen',_0x47f448['epoch']=_0x4256ed[_0x44ba96(0x1e9)]+0x1;const _0x3224cb=_0x47f448;return saveLocked(_0x1ff8e6,_0x3224cb),_0x3224cb;});}const _0x3f7009={};_0x3f7009[_0x35da6e(0x1ec)]=readFence,_0x3f7009[_0x35da6e(0x232)]=changeFence,_0x3f7009[_0x35da6e(0x1ea)]=withAdmissionLock,_0x3f7009['fileFor']=fileFor,_0x3f7009[_0x35da6e(0x1f0)]=admitOperation,_0x3f7009[_0x35da6e(0x229)]=finishOperation,_0x3f7009['freezeFence']=freezeFence,module[_0x35da6e(0x21f)]=_0x3f7009,module['exports']['saveLocked']=saveLocked;
1
+ 'use strict';function _0x5229(_0x1b4b5f,_0x2c1746){_0x1b4b5f=_0x1b4b5f-0x1c9;const _0x4c33ab=_0x4c33();let _0x5229f6=_0x4c33ab[_0x1b4b5f];if(_0x5229['fTmxNb']===undefined){var _0x49fb7c=function(_0x5a4ed8){const _0x1a9836='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xb5c009='',_0x265ecb='';for(let _0x27868c=0x0,_0x1b9021,_0x19dcb0,_0x518d8c=0x0;_0x19dcb0=_0x5a4ed8['charAt'](_0x518d8c++);~_0x19dcb0&&(_0x1b9021=_0x27868c%0x4?_0x1b9021*0x40+_0x19dcb0:_0x19dcb0,_0x27868c++%0x4)?_0xb5c009+=String['fromCharCode'](0xff&_0x1b9021>>(-0x2*_0x27868c&0x6)):0x0){_0x19dcb0=_0x1a9836['indexOf'](_0x19dcb0);}for(let _0x39e6f8=0x0,_0x5d61de=_0xb5c009['length'];_0x39e6f8<_0x5d61de;_0x39e6f8++){_0x265ecb+='%'+('00'+_0xb5c009['charCodeAt'](_0x39e6f8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x265ecb);};_0x5229['mjqKhm']=_0x49fb7c,_0x5229['TDAdNN']={},_0x5229['fTmxNb']=!![];}const _0x2787f9=_0x4c33ab[0x0],_0xd8472b=_0x1b4b5f+_0x2787f9,_0x4fecac=_0x5229['TDAdNN'][_0xd8472b];return!_0x4fecac?(_0x5229f6=_0x5229['mjqKhm'](_0x5229f6),_0x5229['TDAdNN'][_0xd8472b]=_0x5229f6):_0x5229f6=_0x4fecac,_0x5229f6;}const _0x2e9a26=_0x5229;(function(_0x3e4733,_0x376728){const _0x169777=_0x5229,_0x2396c4=_0x3e4733();while(!![]){try{const _0x1c8208=-parseInt(_0x169777(0x1f4))/0x1*(parseInt(_0x169777(0x1ff))/0x2)+parseInt(_0x169777(0x1d5))/0x3*(parseInt(_0x169777(0x1d4))/0x4)+parseInt(_0x169777(0x21f))/0x5+parseInt(_0x169777(0x1ce))/0x6+-parseInt(_0x169777(0x20c))/0x7+-parseInt(_0x169777(0x1cf))/0x8+-parseInt(_0x169777(0x201))/0x9*(-parseInt(_0x169777(0x214))/0xa);if(_0x1c8208===_0x376728)break;else _0x2396c4['push'](_0x2396c4['shift']());}catch(_0x218e8a){_0x2396c4['push'](_0x2396c4['shift']());}}}(_0x4c33,0xb1f0a));const fs=require(_0x2e9a26(0x215)),path=require(_0x2e9a26(0x1e7)),crypto=require(_0x2e9a26(0x223)),{acquireRuntimeLock}=require(_0x2e9a26(0x1e9)),fileFor=_0x535eb0=>path[_0x2e9a26(0x1fb)](fs['realpathSync'](_0x535eb0),_0x2e9a26(0x1dc),_0x2e9a26(0x21e),'admission.json');function validateInterruptedTickets(_0xd5afec,_0x39c7b1,_0x4000c6){const _0xe0c299=_0x2e9a26;for(const [_0x358f45,_0x3b7cfb]of Object[_0xe0c299(0x208)](_0x39c7b1['tickets']||{}))if(_0x3b7cfb[_0xe0c299(0x1ec)]===_0xe0c299(0x1fa)){if(crypto[_0xe0c299(0x1d9)](_0xe0c299(0x228))['update'](_0x3b7cfb['invocationId']||'')[_0xe0c299(0x1f7)](_0xe0c299(0x1fe))!==_0x358f45)throw Object['assign'](new Error(_0xe0c299(0x1e0)),{'code':_0xe0c299(0x1d1)});require(_0xe0c299(0x212))['assertInterruptedOperationAudit'](_0xd5afec,_0x3b7cfb,_0x4000c6);}}function readFence(_0x343896,{validateInterrupted:validateInterrupted=!![],publicKey:_0x3d7349}={}){const _0x5039bf=_0x2e9a26;try{const _0x3e1afb=fileFor(_0x343896),_0x58ba87={};_0x58ba87[_0x5039bf(0x200)]=_0x5039bf(0x221);if(fs[_0x5039bf(0x1f6)](_0x3e1afb)['isSymbolicLink']())throw Object['assign'](new Error('Runtime\x20state\x20symlink\x20rejected'),_0x58ba87);const _0x5c06dd=JSON[_0x5039bf(0x216)](fs[_0x5039bf(0x204)](_0x3e1afb,_0x5039bf(0x1fd)));if(validateInterrupted)validateInterruptedTickets(_0x343896,_0x5c06dd,_0x3d7349);return _0x5c06dd;}catch(_0x5b0c49){const _0x31bc72={};_0x31bc72['state']=_0x5039bf(0x226),_0x31bc72[_0x5039bf(0x1ca)]=0x0;if(_0x5b0c49['code']===_0x5039bf(0x1e2))return _0x31bc72;throw _0x5b0c49;}}function withAdmissionLock(_0x3a0833,_0x1d79fb,_0x322ac6){const _0x16f9d4=_0x2e9a26,_0x53e162=fileFor(_0x3a0833),_0x5f8bd0={};_0x5f8bd0['recursive']=!![],fs['mkdirSync'](path[_0x16f9d4(0x1fc)](_0x53e162),_0x5f8bd0);const _0x57ab92=acquireRuntimeLock(_0x53e162+_0x16f9d4(0x1d3)),_0x4ff2f1={};_0x4ff2f1[_0x16f9d4(0x200)]='ADMISSION_BUSY';if(!_0x57ab92)throw Object[_0x16f9d4(0x1d0)](new Error(_0x16f9d4(0x1e6)),_0x4ff2f1);try{return _0x1d79fb(readFence(_0x3a0833,_0x322ac6));}finally{_0x57ab92();}}function _0x4c33(){const _0x1581ac=['uNvUDgLTzsb1CgDYywrLihjLCxvPCMvZig93BMvKig9WzxjHDgLVBNmGDg8GC3rVCa','qwrTAxnZAw9Uihn0yxrLignOyw5Nzwq','zMLUAxnOt3bLCMf0Aw9U','sw50zxjYDxb0zwqGB3bLCMf0Aw9Uigf1zgL0igLZihvUDMvYAwzPzwq','Aw52B2nHDgLVBKLK','ru5pru5u','DgLJA2v0CW','t1bfuKfusu9ox0fvveHpuKLuwv9srvfvsvjfra','zNjLzxPLrMvUy2u','qwrTAxnZAw9UigzLBMnLigLZigj1C3K','BM9KztPWyxrO','BgvUz3rO','lI9VD25Lzc1SB2nR','Dg9ju09tDhjPBMC','BwTKAxjtEw5J','C3rHDhvZ','z2vUzxjHDgLVBG','DxbKyxrL','D3jPDgvgAwXLu3LUyW','lNrTCa','uLvoveLnrv9vueDsqurfx1nut1bFuKvrvuvtveve','t3bLCMf0Aw9UihrPy2TLDcbKB2vZig5VDcbTyxrJAa','t3bLCMf0Aw9UigLUDM9JyxrPB24GAw5WDxqGy2HHBMDLza','mxHOz3firW','sw50zxjYDxb0zwqGB3bLCMf0Aw9Uig91DgnVBwuGAxmGDw5RBM93BG','Bhn0yxrtEw5J','zgLNzxn0','CMvJDxjZAxzL','DgfYz2v0vMvYC2LVBG','Aw50zxjYDxb0zwq','AM9PBG','zgLYBMfTzq','DxrMoa','Agv4','mZC2nZbqDeDTqw0','y29Kzq','ntrRB3PytMu','ywn0AxzL','DhjHBNnHy3rPB25jza','CMvHzezPBgvtEw5J','ywn0B3jjza','y29TCgXLDgvK','Aw5JBhvKzxm','zw50CMLLCW','CMvUyw1Lu3LUyW','t3bLCMf0Aw9UigLUDM9JyxrPB24GD2fZigLUDgvYCNvWDgvK','t1bfuKfusu9ox0LovevsuLvqveve','mtaXode2odLJv1Los0e','y29TCgXLDgvKqxq','zMLSDgvY','CMfUzg9Tvvvjra','C2f2zuXVy2TLza','zMLSzuzVCG','lI9PBNrLCNj1ChrLzc1VCgvYyxrPB24TyxvKAxq','y2HHBMDLrMvUy2u','odC4mdaWsM9kzfbP','BM9KztPMCW','CgfYC2u','CMvHzezLBMnL','t1bfuKfusu9ox1rjq0Tfvf9nsvnnqvrdsa','ywrTAxrpCgvYyxrPB24','zhjHAw5PBMC','C3rHDgu','DMfSAwrHDgvjBNrLCNj1ChrLza','yxnZzxj0q3vYCMvUDa','CNvUDgLTzq','mZeYodq5nunPB2XtvG','ywrTAxr0zwrfCg9JAa','uLvoveLnrv9tvefurv9twu1msu5l','z3vHCMq','BM9KztPJCNLWDg8','qvbux1vqrefurv9qru5esu5h','y2XVC2vK','B3bLBG','qurnsvntsu9ox0nptKzmsunu','C2HHmJu2','DgfYz2v0rgLNzxn0','zxbVy2G','yxr0zw1WDeLK','qwrTAxnZAw9UigvWB2nOignOyw5Nzwq','tMf0AxzLig9WzxjHDgLVBIbPzgvUDgL0EsbPCYbYzxf1AxjLza','nde2ode5nezprK5usq','ndi2otGYngf6CerhCq','yxnZAwDU','t1bfuKfusu9ox0fvreLux1vovKvssuzjruq','t3DUzxjZAgLWigLZig5VDcbHDcbHihnHzMuGyM91BMrHCNK','lMXVy2S','odHTrvzRtMe','mtiXmtKXrvLXC0Hy','C3rVCfjLCxvLC3rLza','AxntywzLsw50zwDLCG','zxHWB3j0CW','y3jLyxrLsgfZAa','zNvUy3rPB24','zNjVEMvU','lMfNzw50CW'];_0x4c33=function(){return _0x1581ac;};return _0x4c33();}function changeFence(_0x15b56b,_0x5dba6d,_0xdef232){const _0x5976f2=_0x2e9a26,_0x438d21=fileFor(_0x15b56b),_0x5bf99a={};_0x5bf99a[_0x5976f2(0x1f8)]=!![],fs[_0x5976f2(0x1eb)](path[_0x5976f2(0x1fc)](_0x438d21),_0x5bf99a);const _0x5e26d5=acquireRuntimeLock(_0x438d21+_0x5976f2(0x1d3)),_0x5e8478={};_0x5e8478[_0x5976f2(0x200)]='ADMISSION_BUSY';if(!_0x5e26d5)throw Object[_0x5976f2(0x1d0)](new Error('Admission\x20fence\x20is\x20busy'),_0x5e8478);try{const _0x1af73a=readFence(_0x15b56b),_0x282134={};_0x282134[_0x5976f2(0x200)]='ADMISSION_CONFLICT';if(_0x5dba6d!==undefined&&_0x1af73a['epoch']!==_0x5dba6d)throw Object[_0x5976f2(0x1d0)](new Error(_0x5976f2(0x1cc)),_0x282134);const _0x84c770={};_0x84c770[_0x5976f2(0x200)]=_0x5976f2(0x227);if(typeof _0xdef232['guard']===_0x5976f2(0x1da)&&_0xdef232[_0x5976f2(0x222)](_0x1af73a)!==!![])throw Object[_0x5976f2(0x1d0)](new Error(_0x5976f2(0x1de)),_0x84c770);const _0x445a82={'state':_0xdef232[_0x5976f2(0x21b)],'epoch':_0x1af73a[_0x5976f2(0x1ca)]+0x1,'generation':_0xdef232[_0x5976f2(0x1ed)]||_0x1af73a[_0x5976f2(0x1ed)]||null,'targetVersion':_0xdef232[_0x5976f2(0x1f9)]||null,'targetDigest':_0xdef232[_0x5976f2(0x1c9)]||null,'transactionId':_0xdef232[_0x5976f2(0x203)]||_0x1af73a[_0x5976f2(0x203)]||crypto[_0x5976f2(0x20f)](),'stopRequested':_0xdef232[_0x5976f2(0x21b)]===_0x5976f2(0x226)?![]:_0xdef232['stopRequested']===!![]||_0x1af73a[_0x5976f2(0x1d6)]===!![],'changedAt':new Date()[_0x5976f2(0x1ea)](),'tickets':_0x1af73a[_0x5976f2(0x1e3)]||{},'members':_0x1af73a['members']||{}},_0x1cd0f9=_0x438d21+'.'+crypto['randomUUID']()+_0x5976f2(0x1f0);return fs[_0x5976f2(0x1ef)](_0x1cd0f9,JSON['stringify'](_0x445a82)),fs[_0x5976f2(0x209)](_0x1cd0f9,_0x438d21),_0x445a82;}finally{_0x5e26d5();}}function saveLocked(_0x6e275d,_0x352266,{publicKey:_0x396954}={}){const _0x20c3a1=_0x2e9a26;validateInterruptedTickets(_0x6e275d,_0x352266,_0x396954);const _0x576e43=fileFor(_0x6e275d),_0x5b226b=_0x576e43+'.'+crypto[_0x20c3a1(0x20f)]()+_0x20c3a1(0x1f0);fs['writeFileSync'](_0x5b226b,JSON['stringify'](_0x352266)),fs[_0x20c3a1(0x209)](_0x5b226b,_0x576e43);}function admitOperation(_0x3201f0,_0x15a176,_0x485f22,_0x302864={}){const _0x3dc71f=_0x2e9a26,_0x52e31c={};_0x52e31c[_0x3dc71f(0x200)]='OPERATION_IDENTITY_REQUIRED';if(!_0x15a176?.[_0x3dc71f(0x1e1)]||!_0x15a176[_0x3dc71f(0x205)]||typeof _0x485f22!==_0x3dc71f(0x1da))throw Object[_0x3dc71f(0x1d0)](new Error(_0x3dc71f(0x1cd)),_0x52e31c);const _0x4dfe36={};return _0x4dfe36[_0x3dc71f(0x21c)]=![],withAdmissionLock(_0x3201f0,_0x384a9e=>{const _0xc57403=_0x3dc71f;_0x302864[_0xc57403(0x21d)]?.();const _0x589168=crypto[_0xc57403(0x1d9)](_0xc57403(0x228))[_0xc57403(0x1ee)](_0x15a176['invocationId'])[_0xc57403(0x1f7)](_0xc57403(0x1fe)),_0x23708c=_0x384a9e[_0xc57403(0x1e3)]?.[_0x589168],_0x4e2a22={};_0x4e2a22['code']=_0xc57403(0x20b);if(_0x23708c?.['status']===_0xc57403(0x1fa))throw Object[_0xc57403(0x1d0)](new Error(_0xc57403(0x20a)),_0x4e2a22);validateInterruptedTickets(_0x3201f0,_0x384a9e);const _0x37d56c={};_0x37d56c[_0xc57403(0x200)]='APT_UPDATE_PENDING';if([_0xc57403(0x1db),_0xc57403(0x225)][_0xc57403(0x207)](_0x384a9e[_0xc57403(0x21b)]))throw Object[_0xc57403(0x1d0)](new Error('Workspace\x20is\x20frozen'),_0x37d56c);const _0x1cb5ae={};_0x1cb5ae[_0xc57403(0x200)]=_0xc57403(0x1f1);if(_0x384a9e[_0xc57403(0x21b)]==='draining'&&_0x384a9e[_0xc57403(0x1d6)])throw Object[_0xc57403(0x1d0)](new Error(_0xc57403(0x1dd)),_0x1cb5ae);const _0x486f21={};_0x486f21[_0xc57403(0x200)]=_0xc57403(0x224);if(_0x384a9e[_0xc57403(0x21b)]===_0xc57403(0x21a)&&(!_0x15a176[_0xc57403(0x1cb)]||!Number[_0xc57403(0x1d7)](_0x15a176[_0xc57403(0x220)])||_0x15a176[_0xc57403(0x220)]>=_0x384a9e[_0xc57403(0x1ca)]))throw Object['assign'](new Error('New\x20work\x20is\x20not\x20admitted\x20during\x20draining'),_0x486f21);const _0x494904={};_0x494904[_0xc57403(0x200)]=_0xc57403(0x1e4);if(_0x485f22(_0x15a176,_0x384a9e)!==!![])throw Object[_0xc57403(0x1d0)](new Error('Native\x20operation\x20ownership\x20is\x20unverified'),_0x494904);_0x384a9e[_0xc57403(0x1e3)]||={};const _0x4ee467={};_0x4ee467[_0xc57403(0x200)]='OPERATION_INPUT_CONFLICT';if(_0x23708c&&(_0x23708c['actorId']!==_0x15a176[_0xc57403(0x205)]||_0x23708c['attemptId']!==_0x15a176[_0xc57403(0x1cb)]||_0x23708c['inputHash']!==_0x15a176['inputHash']))throw Object[_0xc57403(0x1d0)](new Error(_0xc57403(0x1f3)),_0x4ee467);if(_0x23708c)return _0x23708c;const _0x2665ce={'invocationId':_0x15a176[_0xc57403(0x1e1)],'actorId':_0x15a176[_0xc57403(0x205)],'attemptId':_0x15a176['attemptId']||null,'inputHash':_0x15a176['inputHash']||null,'epoch':_0x384a9e[_0xc57403(0x1ca)],'status':_0xc57403(0x202),'createdAt':new Date()[_0xc57403(0x1ea)]()};return _0x302864[_0xc57403(0x21d)]?.(),_0x384a9e['tickets'][_0x589168]=_0x2665ce,saveLocked(_0x3201f0,_0x384a9e),_0x2665ce;},_0x4dfe36);}function finishOperation(_0x573602,_0x5d1d15,_0x596c45){const _0x516698={};return _0x516698['validateInterrupted']=![],withAdmissionLock(_0x573602,_0x4864a4=>{const _0x23a58a=_0x5229,_0x41f6e3=crypto[_0x23a58a(0x1d9)](_0x23a58a(0x228))[_0x23a58a(0x1ee)](_0x5d1d15)[_0x23a58a(0x1f7)](_0x23a58a(0x1fe)),_0x2e172d=_0x4864a4[_0x23a58a(0x1e3)]?.[_0x41f6e3],_0x41fa28={};_0x41fa28['code']=_0x23a58a(0x218);if(!_0x2e172d||_0x2e172d[_0x23a58a(0x1ca)]!==_0x596c45)throw Object[_0x23a58a(0x1d0)](new Error(_0x23a58a(0x1f2)),_0x41fa28);const _0x36371c={};_0x36371c['code']='OPERATION_OUTCOME_UNKNOWN';if(_0x2e172d[_0x23a58a(0x1ec)]===_0x23a58a(0x1fa))throw Object['assign'](new Error(_0x23a58a(0x1f5)),_0x36371c);return _0x2e172d[_0x23a58a(0x1ec)]=_0x23a58a(0x206),_0x2e172d[_0x23a58a(0x20d)]=new Date()['toISOString'](),saveLocked(_0x573602,_0x4864a4),_0x2e172d;},_0x516698);}function freezeFence(_0x5ae113,_0x8b80aa,_0x2b9c27,_0x3fe48f){return withAdmissionLock(_0x5ae113,_0x2b105c=>{const _0x5d97cc=_0x5229,_0x1bbe13={};_0x1bbe13[_0x5d97cc(0x200)]='ADMISSION_CONFLICT';if(_0x2b105c['epoch']!==_0x8b80aa||_0x2b105c[_0x5d97cc(0x21b)]!=='draining')throw Object[_0x5d97cc(0x1d0)](new Error('Admission\x20epoch\x20changed'),_0x1bbe13);const _0x533022=Object['values'](_0x2b105c[_0x5d97cc(0x1e3)]||{})[_0x5d97cc(0x20e)](_0x1b1126=>_0x1b1126[_0x5d97cc(0x1ec)]===_0x5d97cc(0x202)),_0x240147={};_0x240147[_0x5d97cc(0x200)]='OWNERSHIP_IN_FLIGHT';if(_0x533022[_0x5d97cc(0x1e8)]||typeof _0x3fe48f!==_0x5d97cc(0x1da)||_0x3fe48f(_0x2b105c)!==!![])throw Object[_0x5d97cc(0x1d0)](new Error(_0x5d97cc(0x1d2)),_0x240147);const _0x5f1c79={..._0x2b105c,..._0x2b9c27};_0x5f1c79[_0x5d97cc(0x21b)]=_0x5d97cc(0x1db),_0x5f1c79['epoch']=_0x2b105c[_0x5d97cc(0x1ca)]+0x1;const _0x24992a=_0x5f1c79;return saveLocked(_0x5ae113,_0x24992a),_0x24992a;});}const _0xa9144d={};_0xa9144d[_0x2e9a26(0x217)]=readFence,_0xa9144d[_0x2e9a26(0x213)]=changeFence,_0xa9144d['withAdmissionLock']=withAdmissionLock,_0xa9144d[_0x2e9a26(0x211)]=fileFor,_0xa9144d[_0x2e9a26(0x219)]=admitOperation,_0xa9144d[_0x2e9a26(0x1df)]=finishOperation,_0xa9144d[_0x2e9a26(0x1e5)]=freezeFence,module[_0x2e9a26(0x1d8)]=_0xa9144d,module['exports'][_0x2e9a26(0x210)]=saveLocked;