Overview
With the final aspects of the API wrapped up, I was able to diagnose the true issue to the press
command only occasionally working. There was a mismatch of transaction, content and request hashes and the API would confuse them with each other. Now I have a full fledged CLI for pressing that hits the /press
endpoint, which generates a transaction hash that can be observed and verified on etherscan, and a request hash that the CLI will take and poll the /status/:requestId
endpoint every 10 seconds until the transaction returns with a success or failure status. If it fails, it will give some guess as to why it failed, most likely the transaction hit the gas limit; if it succeeds, it returns the final content hash to be shared for releasing.
The final bits now come down to building out the release
command, so that a recipient of a bit of content can decrypt it. There are some unexpected issues with my current implementation and how I want the release command to work, which primarily comes down to the wallet address not being a reliable key to encrypt content with. I think I have a workaround that will incorporate the access layer dream, which will neatly wrap up all the final bits into the end result. Beyond that, it's some ergonomics in adding interactive mode to certain commands and documentation and this proof of concept is done.
Last Week
Additional Accomplishments
- Built out a
list
command to see all the prior pressings [CLI#5]
Next Week
This upcoming week will be scant due to some pressing matters in my life. I can't commit to full feature builds but will spend some time figuring out how the releasing [CLI#8] methodology will work. Likely, I'll have to wrap the access layer functionality [PRESS#36] into it, which will be the last remaning high-priority issues to build. I can come up with the plan now and execute when I have more time to dedicate.
Blockers
None.
Reflections on Process
It seems like I'm at the last clearing and I see one last glimpse of the end goal, and it's closer and bigger than I've seen before. There are more perils in front of me, some known, some unknown, but it feels like I'm finally nearing the end.