OverviewFilesCommitsIssuesDocsReleasesPeers

hyper-wallet / deprecated / diagnostics / diagnose-pear.cjs

54 lines · javascript ref:
#!/usr/bin/env bare
// Diagnostic script to check Pear environment

require('bare-node-runtime/global')

console.log('=== Pear Environment Diagnostic ===\n')

console.log('1. Pear global:', typeof globalThis.Pear !== 'undefined' ? 'EXISTS' : 'MISSING')

if (typeof globalThis.Pear !== 'undefined') {
  console.log('   Pear.constructor:', globalThis.Pear.constructor.name)
  console.log('   Pear.constructor.IPC:', typeof globalThis.Pear.constructor.IPC)

  const ipcSymbol = globalThis.Pear.constructor.IPC
  console.log('   IPC Symbol exists:', ipcSymbol !== undefined)

  if (ipcSymbol) {
    console.log('   Pear[IPC] value:', typeof globalThis.Pear[ipcSymbol])
  }

  console.log('   Pear.config:', JSON.stringify(globalThis.Pear.config || {}, null, 2))
}

console.log('\n2. Environment:')
console.log('   process.cwd():', process.cwd())
console.log('   __dirname:', __dirname || '(empty)')
console.log('   process.argv:', JSON.stringify(process.argv.slice(0, 4)))

const fs = require('bare-fs')
const path = require('bare-path')

console.log('\n3. UI Directory Check:')
const uiFromCwd = path.join(process.cwd(), 'ui')
console.log('   From cwd:', uiFromCwd)
console.log('   Exists:', fs.existsSync(uiFromCwd))

if (fs.existsSync(uiFromCwd)) {
  console.log('   Files:', fs.readdirSync(uiFromCwd))
}

console.log('\n4. Test pear-appdrive:')
try {
  const AppDrive = require('pear-appdrive')
  console.log('   Module loaded: YES')
  const appDrive = new AppDrive()
  console.log('   Instance created: YES')
  await appDrive.ready()
  console.log('   Ready: YES')
} catch (err) {
  console.log('   Error:', err.message)
}

console.log('\n=== End Diagnostic ===')