I've created a Python script that creates a wallet and monitors all SPL transactions of this wallet.
Using an example to illustrate the problem:
The generated public key belongs to account A with owner "System Program" (1111...).
SPL tokens sent to account A ended up in account B. Account B has owner "Account A". Actually not a problem, because funds are shown in account A.
This went on for a while, until suddenly SPL tokens did not end up in account B, but in account C. Account C has owner "Account B".
Account A (Owner: System Program) <-- generated with Python script
|
|- Account B (Owner: Account A) <-- SPL tokens sent to account A (or B) end up here
|
|-- Account C (Owner: Account B) <-- ?
I've several questions now:
- Why did this happen?
- How can I access the funds that are now in account C?
- Is there a way to prevent this from happening (i.e. creation of account C)?