A concentrated analysis and debugging of the Tippy source code is currently under way. I've spent a few hours previously going through and systematically testing functions and features to see if they are operating as intended. The results are a bit saddening to say the least, With a large number of bugs coming to light after moving the project from my laptop to main workstation.
Rather than get discouraged I view this as a chance to nip bugs in the ass and get the code right now rather than scrambling to deploy a fix later once live. While not the best nor most seasoned codester we have on STEEM I'll keep bashing away at it persistently until Tippy works 100%
The Incomplete List of Functions & Buggery
Gone through and tested functions to see what is causing grief and what appears to be working properly. This list may not be complete but rather serves as a list of things to start deploying fixes for in hopes of finalizing the Tippy source code, launching the service and going open source.
Installation and Setup - ✖ Bugged, Not creating files FU win10
Update Profile on Startup - ✔FIXED (Had it commented out... Durrrr)
Catchup offline blocks - ✔FIXED (Seems to be syncing properly now)
20 Sec Comment Queue - ✖ Bugged, Does not follow FiFo design
3 Sec Voting Queue - ✖ Bugged, Does not follow FiFo design
Fix Random service exits - ✖ Bugged (only happens after large sync)
Command | Usage | Working / Bugged | |
---|---|---|---|
tip | -t | Tip a user | ✔ Both STEEM & SBD Working |
powerup | -p | Powerup user | ✖ Not registering |
balance | -b | Check Balance | ✔ Both STEEM & SBD Working |
stats | -s | View Statistics | ✖ broken due to missing files |
info | -i | More Info | ✔ Functioning as Intended |
ping | -o | Check Status | ✔ Functioning as Intended |
vote | -v | Upvote post | ✔FIXED (Misleading console output) |
flag | -f | Flag post | ✔FIXED (Had an improper variable in function) |
roll | -d | Roll dice | ✔ Functioning as Intended |
fee | Set Tipping Fee | ✔ Functioning as Intended |
service stop | Shuts Down The Service | ✔FIXED (Seems to halt service now!) |
uptime | Display Uptime Info in Console | ✔FIXED (Tippy saw info in string... lol) |
debug | Turns Debug Output On or Off | ✔FIXED (Helps if I use correct command..) |
Other functions that need looked at / fixed / implemented:
- Redesign statistics handling to make more efficient
- Enforce block save height on anything to do with balances
- More debugging output
- Improve error handling
- Allow financing others accounts through memo
- Improve memo handling
- Implement multi tip/command messages
- Recode certain functions to minimize disk usage
- More security features and error recovery
- Look into alternative means of user data storage / backups
- Display Last Checkpoint Block Height on Profile ✔Implemented
- Clean up / finish console monitoring output
Weighing in at just under 2200 lines of nodeJS it seems I've got more than a little bit of work left to do before Tippy is ready to launch. Will be using this as a testing post. Please feel free to mess around with the bot but know it is BUGGY right now and I offer no support or warranty on it as it currently sits. Please refrain from depositing any more than you are willing to write off as a donation, although I'll try to make sure peoples funds aren't lost. No promises though, this is experimental alpha version software and should be treated as such. Till next time: "Just the tip!"
In the next little bit I'll start plugging away at Tippy. A good supper is in order and a quick store run to load up on caffeine is a must before getting settled in for the night to sort through and fix code. It's going to be a long night of staring at tippy's mind and adjusting it to run better.
Bugs Smooshed So Far This Coding Burst:
7
- Update Profile on Startup - ✔FIXED
- Admin Debug Toggle on/off - ✔FIXED
- Admin Service Stop Call - ✔FIXED
- Admin Uptime Toggle - ✔FIXED
- Vote Post Command - ✔FIXED (may limit/randomize/premium)
- Flag Post Command - ✔FIXED (moved to admin only)
- Catchup offline blocks - ✔FIXED (Seems to be syncing properly now)
Features Implemented This Session:
1
- Display Last Checkpoint Block Height on Profile ✔Implemented