I was having a bizarre an irritating problem. I think I may have solved it like one of an infinite number of monkeys at an infinite number of ssh terminals.
Symptoms:
The P2P application in the web gui showed several torrents that had completed (all showed 100% completion). Unfortunately, all the buttons were grayed out, and the 'Remove Completed' and 'Delete' buttons would not remove these torrents from the list. Even more problematic, if I deleted one of these files from the P2P/completed/ directory, they would reappear in that folder a short while later (I have no idea where they are coming from, but I am certain they are duplicated elsewhere on the device because they cannot possibly be downloaded that fast).
Solution:
I have fonz fun_plug installed, so I was able to ssh into the device. I listed the processes using ps aux | less, and looked for anything that seemed like it might be related to the p2p application. I found two running processes: p2p_dog and p2p_server. When I ran tab-completion on "p2p", it also found /usr/sbin/p2p.sh and p2p_kill.
I scrolled through p2p.sh, and saw it's just a shell script that starts the p2p_dog and p2p_server processes, but saw no reference to any config file that might be storing active torrents. I ran p2p_dog, and a bunch of messages flew by on the terminal. When I went back to the web gui, the entries had disappeared. I thought that fixed the problem, except when I used the gui to disable the service and then
enable it again, the torrents were repopulated (and the deleted files reappeared). I thought I'd have to abort this post, but then I executed p2p.sh stop, (deleted the completed files again), and then p2p.sh start, the buttons in the web gui were no longer grayed out. I clicked 'Remove Completed' and the torrents were cleared out. I disabled/enabled again just to verify that the problem was actually fixed, and everything seems to be back to normal.
I just wish I knew how it got bunged up in the first place.