pull down to refresh

I have most of this figured out I think. Originally I could create a signature and successfully authenticate using the generated URL, but it wasn't for the correct account. I had since learned a lot about what I need to do to get the correct account at the right derivation path but in that process I lost the original code.
My current code is as follows, but does not successfully authenticate. I am using SN to test. I am looking for any successful authentication to SN, regardless of if its the correct from the derivation path or not.
I have NO IDEA what my original code did to work and its driving me crazy.
const bitcoin = require('bitcoinjs-lib')
const bitcoinmsg = require('bitcoinjs-message')
const bs58 = require('bs58')
const ecc = require('tiny-secp256k1')
const secp256k1 = require('secp256k1')
const { BIP32Factory } = require('bip32')
const bip32 = BIP32Factory(ecc)
const bip39 = require('bip39')
const {bech32} = require("bech32")
const {ECPairFactory} = require('ecpair')
const ECPair = ECPairFactory(ecc)
const crypto = require('crypto')

function getqueryparams(url) {
 const paramarr = url.slice(url.indexOf('?') + 1).split('&')
 const params = {}
 paramarr.map(param => {
  const [key, val] = param.split('=')
  params[key] = decodeURIComponent(val)
 })
 return params;
}
function getbaseurl(url) {
 return url.slice(0, url.indexOf('?'))
}
function bech32decode(lnurl) {
 const { prefix: hrp, words: datapart } = bech32.decode(lnurl, 2000)
 const bytearray = bech32.fromWords(datapart)
 return Buffer.from(bytearray).toString()
}
const testkey = crypto.generateKeyPairSync('ec', {namedCurve: 'secp256k1',}).privateKey
const phrase = "abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon"
const lnurl = ""
const decodedlnurl = bech32decode(lnurl)
const baseurl = getbaseurl(decodedlnurl)
const k1 = getqueryparams(decodedlnurl)['k1']
const k1hash = bitcoin.crypto.sha256(Buffer.from(k1, 'hex'))


const seed = bip39.mnemonicToSeedSync(phrase)
const root =  bip32.fromSeed(seed)
const child = root.derivePath("m/138'/0'/0'/0/0") // will get the right path later
const keyPair = ECPair.fromPrivateKey(child.privateKey)

const signature = keyPair.sign(k1hash)
const derSignature = bitcoin.script.signature.encode(signature, bitcoin.Transaction.SIGHASH_ALL)
const verify = keyPair.verify(k1hash, signature);
const domaintest = 'stacker.news'
const url = `${decodedlnurl}&sig=${derSignature.toString('hex')}&key=${child.publicKey.toString('hex')}`
console.log(url)