Gateway: The Sats Update (v0.7.7)
Ship fast, fix later. Now we have Sat compatibility in Gateway. It's messy but we'll tidy up when we're done.
https://t.co/qahg2Exkb5
So, what have we got here?
Now you can enter any sat number and see details.
You can also use @rodarmor style sat names.
You can build a sat ranges index to unlock Ordinals.
Choose live or retained ranges (full Sat history).
Sats tracks inscription ownership.
Powered by Bitcoin Positional System.
Browser extension registers <number>.sat.
I'm purposefully keeping this version very blunt in my announcement delivery because I've been shipping daily feature updates, and it's important I give you the disclaimer that these 0.7 versions are for early public testing. I'm already noticing things that could be better. What I see so far though, it works. And we're almost finished with 0.7 versions now... just one more major feature to go before I tidy up around here.
The v0.7.8 update following this v0.7.7 is what you've all been waiting for... Bitmap! The most exciting and neccesary update for our community, including Bitmap Standard indexing, and Bitmap Chain validation and comparison against alternate rulesets. I will ship the /Blockamoto/bitmap repo with it to include full details on Bitmap Standard, and Bitmap Chain. Gateway will be it's first implementation.
If you're worried that I'm changing core ruleset, that's not the case. The ruleset stays. The Bitmap Standard ruleset keeps core ruleset and makes specific certain points that were assumed to be obvious.
Anyway, this update is supposed to be about Sats...
So go have fun and frollock in the field of Satoshi's!
https://t.co/qahg2Exkb5
Enjoy 🫡
Gateway: The Addresses Update (v0.7.6)
You can now index current OR historical Bitcoin addresses, show balances, UTXO's, and inscriptions.
https://t.co/qahg2Exkb5
The current addresses index gives you all the addresses that currently have sats in them, their balances, and UTXO's.
The historic index allows for complete historic data for each and every Bitcoin address ever used, and each UTXO that ever touched it.
There's a lot that can be done with this data!
But I won't pretend to know all the possibilities.
The Bitcoin Positional System is extremely helpful here, because instead of using a hash:outpoint, we can use BPS and point to the exact position of the prevout. This is at the core of our deeper indexes. It's extremely lightweight and human readable.
Now we have everything we need for the Sats index, and for it to be useful. That will be the next update, and following that, Bitmap! And once that's done, I'd like to do a stabilization and user friendliness and quality of life pass to really just tighten everything up, it's currently quite messy and all over the place, and to give you more timeline control and parrallel indexing, and maybe one more surprise feature, before we lock-in and version up to v0.8.0.
For now, here's v0.7.6:
🔗 https://t.co/qahg2Exkb5
👉 Existing users can update directly inside Gateway.
Enjoy! 🫡
@singularety Yeah hashes remain the stable address.
Blocators for human readable addresses. Including block height or hash in the blocator allows for on-demand data requests.
Hashes and index numbers are interchangeable in blocators. But it assumes/requires a reorg resistant implementation.
Gateway uses something called blocators, which stands for Bitcoin Locators (previously BPS).
I've published the specs here: https://t.co/PD8UmuP3Gm
It's looks like:
offset.output.tx.block
First satpoint of first output of first tx of second block:
0.0.0.1
I'm drafting a BIP.
WHY USE BLOCATORS?
When working with Bitcoin peers, you can only ask them for blocks. Not specific data inside.
That means, to use transaction ID's, you must have that block already, or know what block to ask for. In practical terms, this usually requires you to have a full node, since you don't know which block it is.
Since blocators point to the exact location, you can skip running a full node entirely and fetch data on-demand.
This means you don't need to have almost a terrabyte of storage available to work directly with Bitcoin.
I'm building Gateway indexes almost entirely on blocators. You can run transaction locators which indexes txid's against tx locators.
That means a translation from existing transaction hashes to blocators. This enables the use of traditional inscription ID's within Gateway.
This way you can also export indexes that use traditional ID's instead of blocators.
However, I'm so confident in blocators that I'm making it the default way to index with Gateway.
It's going slightly against the grain, but with a bridge between methods. But put it this way...
If ord used blocators for references like recursion, for example, there would be almost no need to use traditional inscription ID's.
This is a system I wrote independently of @rodarmor for Gateway (and has been perculating for a long time), but later came to find that Casey proposed literally the mirror image of blocators in an early draft of the ord protocol.
Personally, I think Casey's biggest mistake is not using a system like this to begin with. It means that for on-demand systems like Gateway, we have to have a translation index from transaction ID's to blocators (or have the raw blocks themselves) to be able to resolve an inscriptions directly from Bitcoin peers.
So that's why Gateway uses inscription locators instead of inscription ID's, because we can resolve them on-demand from Bitcoin peers.
But the limitation is simply that recursion and any reference to inscription ID won't work without having the txid locator index or raw block index.
So I'm going all in on blocators. I'm writing a BIP for Bitcoin itself, and at some point I'll propose it for ordinals itself as an alternative to ID's.
For now, we just prove its usefulness in Gateway.
Any questions, please ask!
---
THE GATEWAY BITMAP UPDATE IS ON ITS WAY
Full Bitmap District and Parcel Indexing and exporting. It will ship with a much smoother user experience for the timeline, arming of tracks for indexing, control buttons, and general usability improvements.
You can index tracks in parrallel now, with prompts when that is the best thing to do, such as when you index Bitmap or inscriptions, it will now prompt you to also arm the transaction locator track.
Bitmap Chain will be held off until a 0.8.x update. The design is final, but there are some serious considerations I want to put to the community before I roll it out. You can view the current design on the "chain" branch of the bitmap github: https://t.co/cw1lceI6bG
I'm not sweating it right this second, my focus is finishing up 0.7.x versions. After the Bitmap v0.7.8 update, the v0.7.9 will be most likely be the last 0.7.x update for deeper Ordinals indexing and usability features, which will land us nicely on v0.8.x, where my intent is validation features, a full index building engine, and tightening the ship, testing it compulsively until we are ready for the 0.9.x versions, where I will begin implementing Gateway p2p features for on-demand index sharing. Where a bitcoin node will not get you the answer, in 0.9.x versions onwards, Gateway peers shall bridge the gap. And I intend to bridge Gateway and Bitcoin peers to web hopefully in 0.9.x. One day, even mobile.
When that's done, I think we'll be ready for primetime, which is v1! At that point, I may change the name to Bitcoin Gateway just so I can appeal to plebs. If we ever add wallet features, it will be after v1, but I'm not rushing to do anything like that as it's not the main goal, and there are huge risks there. I may even keep this client focused solely on serving data.
---
Anyway, that's my word for now!
Stay notified for the Bitmap update 🔔
Gateway: The Sats Update (v0.7.7)
Ship fast, fix later. Now we have Sat compatibility in Gateway. It's messy but we'll tidy up when we're done.
https://t.co/qahg2Exkb5
So, what have we got here?
Now you can enter any sat number and see details.
You can also use @rodarmor style sat names.
You can build a sat ranges index to unlock Ordinals.
Choose live or retained ranges (full Sat history).
Sats tracks inscription ownership.
Powered by Bitcoin Positional System.
Browser extension registers <number>.sat.
I'm purposefully keeping this version very blunt in my announcement delivery because I've been shipping daily feature updates, and it's important I give you the disclaimer that these 0.7 versions are for early public testing. I'm already noticing things that could be better. What I see so far though, it works. And we're almost finished with 0.7 versions now... just one more major feature to go before I tidy up around here.
The v0.7.8 update following this v0.7.7 is what you've all been waiting for... Bitmap! The most exciting and neccesary update for our community, including Bitmap Standard indexing, and Bitmap Chain validation and comparison against alternate rulesets. I will ship the /Blockamoto/bitmap repo with it to include full details on Bitmap Standard, and Bitmap Chain. Gateway will be it's first implementation.
If you're worried that I'm changing core ruleset, that's not the case. The ruleset stays. The Bitmap Standard ruleset keeps core ruleset and makes specific certain points that were assumed to be obvious.
Anyway, this update is supposed to be about Sats...
So go have fun and frollock in the field of Satoshi's!
https://t.co/qahg2Exkb5
Enjoy 🫡
@boppleton Gotcha!
The parcel index is dependent on district index but you can index in parallel. It goes block-by-block and checks against the ruleset in https://t.co/m1FHDb4bdW.
@boppleton This is for bitcoin indexing, so to index districts and parcels you can just save the key pair of district or parcel number and blocator.
That's what happens by default with bitmap district/parcel indexing.
You can convert to inscription ID instead of blocator with export.
👻Ghost is from "private pools" bitmap mint.
Mara and Spider Pool can only do this.
It is the only way you not noticed from the bot!
Those pools share around 4% of the Total hashrate of the network.
It is Controversial to use private mempool, but it is Inevitable
The Bitmap Standards
I've just published bitmap GitHub, with the refined Standards for Districts and Parcels. It serves to clarify any grey areas.
https://t.co/FoH3WjQ4KU
If there are any questions that cannot be answered by the wording of these two standards, then there is still work to do.
You can read my rationale in the audit branch, including pages for standard and non-standard rules in historic indexer audits.