js
js copied to clipboard
When not using wallet middleware, transaction builder sets all signers to be the system account
hi this is Agrippa from the Realms team
- when using SDK to transfer pnft from user, with wallet middleware, everything works fine
- when not using wallet middleware, all of the signer accounts in the instruction are instead the system program, even though fromUser is input into the instruction builder
Since we are making instructions to transfer a pnft from a DAO to another wallet, we can't just use the wallet middleware. Here is an example txn. you can see all the signers are the system program, which I think is wrong. https://explorer.solana.com/tx/inspector?signatures=%255B%255D&message=AgAKESNh%252Fpj%252B2mULtqwx%252BLPmEVNtV6Qc9XIrwNj59tH%252BsezcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAug9grm0KQZ%252FfsupcYpgTqOG7IpW321QlgZdCYLv5dDEqDKmYTWKlzq1gFJX1%252B3EMEDhp8nJWcYTBho2zsYQl%252FbBHkoRTK11Cn0ayZ1iQ2VWC26f8jZUj6yfmx%252BQ867aGFPat5l40zcQEkVAJKeDfzcetBRy33M8AZxntAEK%252FAkvihbVGBSYflip4ePliPCZZ6SJmHgi5Q1AdbYmDd59COFq04NDtdsCQJbghpM4AI%252FUbhgtTRIclX9l3Maw4Jz%252FyMlyWPTiSJ8bs9ECkUjg2DC1oTmdr%252FEIQEjnvY2%252Bn4WQiv%252BJTD%252BmfAFjow8jSjPTRn8DqhZBcxXrS4FCe9m6btluY5kAadrSESSnu%252BIu1fF6L%252Ble2K5EdNNCeCydUD8Y%252Bd35WyYY9P6tLo6z6AEXBUjHe5ct9awesRXtecYP0gNAMGRm%252FlIRcy%252F%252BytunLDm%252Be8jOW7xfcSayxDmzpAAAAAszZ5mJZKiH7UkFAtA6KQgL8ASRhvLbqWgqZ3GKFIHXALcGWx49F8RTidUn9rBMPNWLhscxqg%252FbVJttG8A%252FgpRgan1RcYe9FmNdrUBFX9wsDBJMaPIVZ1pdu6y18IAAAABt324ddloZPZy%252BFGzut5rBy0he1fWzeROoz1hX7%252FAKmB6pGowrWfKBq1m4mBSfJxvbt%252Fh7uT6Z5%252FplyThFu0iAIMAAUCQEIPAA4RBQsGCgcCDQMEAQEBDxAICQ4LMQABAAAAAAAAAAA%253D&cluster=devnet
Here's how I'm using the SDK. There's no chance that fromOwner
is being passed as system program.
I have tested with normal nfts and the same thing happens.