Replies: 58 comments 62 replies
-
Strong ACK. Have been pushing to de-emphasize Inscription #s for a very long time. Let me know where you think the best place to discuss this but I would consider "Cursed" P2SWH Inscriptions similar to #2139 as perhaps relevant to this discussion as well. UPDATE |
Beta Was this translation helpful? Give feedback.
-
Could this be done with a grace period such that trackers can update and re-index everything before this gets into effect? |
Beta Was this translation helpful? Give feedback.
-
I strongly support. the viability and maintainability of the protocol is the most important thing. however i think the communication of the exact impacts should be very clearly illustrated so people understand what will change. it’s pretty reasonable to us technical folk but as a non technical person it sounds very scary and unpredictable. maybe my sub 10k will suddenly become over 1m!?!? will this upend my carefully curated collection and make them worthless?! the reality is much tamer but “inscription numbers are fluid” makes the imagination go wild. so illustrating the change will be key imo. |
Beta Was this translation helpful? Give feedback.
-
EDIT: Now that I've had time to think about this more, I'm expanding on my original post: I think a good compromise is to preserve the immutability of existing inscription numbers, while also depreciating new inscription numbers going forward. So for context, we basically have a set of positive-numbered ordinals and a set of negative-numbered ordinals, and those negative numbered ordinals are cursed. These cursed ordinals are already fluid, meaning their inscription numbers are already expected to change in the future. Basically we would set a block height for when Ord 1.0 gets activated. When that block height comes, the following would happen:
What I like about this solution is that:
Some additional considerations:
Original post: I do wonder how indexers will adjust to this change, but indexers already sometimes differ in inscription #, so it might be a non-issue. |
Beta Was this translation helpful? Give feedback.
-
Strong disagree. This would be what many would consider to be a rugging. The community can agree on a block number from which cursed ordinals would be given regular numbers. Just like the community theoretically agrees on the overall protocol. Code and protocols get messy as they age. That's reality. Purity is for virgins. |
Beta Was this translation helpful? Give feedback.
-
Strongly agree. |
Beta Was this translation helpful? Give feedback.
-
Yes strongly support this idea. Cursed inscriptions were always a bad idea for many reasons. If there is an off-chain vanity # assigned to every inscription it should be strictly derived from on-chain ordering. |
Beta Was this translation helpful? Give feedback.
-
Can we accomplish this without a hard fork? i.e. is it feasible to accept the ordering as-is through a certain block and begin the more easily programmable numbering afterward? |
Beta Was this translation helpful? Give feedback.
-
Great idea! 🙂 I have concerns because...
How about this approach: the new "inscription number" is a combination of two keys. The first key represents the block number, while the second indicates the position of that inscription within the block. By adopting this schema, we could initiate an index of inscriptions at any given time, even without prior knowledge. We could consider two similar yet distinct approaches: a) Block number + number of the transaction in the block — this will always remain constant, but there will be gaps. |
Beta Was this translation helpful? Give feedback.
-
Better to make a change for things moving forward once the new tech exists than change things from the past. Also, what will this do to BRC20? |
Beta Was this translation helpful? Give feedback.
-
Doing nothing is a viable option here. I don't see the return on this investment of multiple months worth of time + energy spent on the topic. I reccomend punting on this and circling back in 18 months. You might be surprised, the market can solve alot of problems organically without central planning or government intervention.
|
Beta Was this translation helpful? Give feedback.
-
Does adding these features make the protocol so much better that it's worth disrupting a system that has been accepted and appreciated? I know they're just examples but still I don't think so.
|
Beta Was this translation helpful? Give feedback.
-
Is there a way to keep the sub100k inscription number? |
Beta Was this translation helpful? Give feedback.
-
My opinion from April stands. I wanted you and the core team to not be burdened by this back then. |
Beta Was this translation helpful? Give feedback.
-
Each of these examples:
can be added to non-cursed interpretation list after block # x, and treated as cursed before. yes there is historical cruft in the code, but backward compatibility and rare numbers are an important part of digital artifacts and more human parseable than rare sats. Code with mass adoption always builds up cruft. Look at Windows. Re-writing numbers would seem a bad pattern when we look at high-tech history over the last 4 decades, as detailed in this book: |
Beta Was this translation helpful? Give feedback.
-
From the sentiment here and on twitter I can tell that I am in the minority of not caring one bit about inscription numbering since when I work with ordinals it is almost exclusively by inscription id, which is the immutable part. I would be entirely OK with getting rid of inscription numbers entirely from the reference implementation as they are just a vanity metric that anyone can track as they plz (or not). |
Beta Was this translation helpful? Give feedback.
-
My humble proposal:
|
Beta Was this translation helpful? Give feedback.
-
I'd like to chime in about how this change could affect (or not) meta protocols, specifically BRC-20: Inscription numbersNumbers today are really a proxy to If numbers cease to exist, however, BRC-20 can remain unaffected as indexers could simply switch to processing operations using a Blessing cursed inscriptionsWhat could affect BRC-20, though, is the blessing of cursed inscriptions. Today, there are a lot of BRC-20 operations that are completely ignored by indexers because they are done via cursed inscriptions. If they are suddenly blessed, indexers will definitely break and show incorrect (or different) balances to what they show today. However, if this is the case, the BRC-20 spec can simply be amended to only count inscriptions in |
Beta Was this translation helpful? Give feedback.
-
Question: are the proponents here aware that this will lead to ongoing causality breaks and grandfather-paradoxes? I am usually very patient and really do not like to tell others what they should do, but I make an exception: I am not concerned about the numbers per se but at some point you need to draw a line and finalize the protocol. From that moment on, no other edge-case will be allowed to get included in the index. No matter what a small group of people demands and shills for. And before the above idea is getting released, give the ecosystem at least 3 months of time to adapt (~50% of the time it took for the ecosystem to emerge). To me, personally, it's shocking that people that deal with blockchain every day seriously consider something that is supposed to be continuously unstable and thus unreliable. Thanks for reading, feel free to hate me now. |
Beta Was this translation helpful? Give feedback.
-
I think in the not too distant future, envelope changes will stop and freeze. The point of getting to Ord V1 is to solidify the envelope and have clear understanding of what are "blessed" inscriptions. The topic of inscription number has sort of bled into more broadly the envelope construct, which is the root of this. |
Beta Was this translation helpful? Give feedback.
-
"Unstable" is not really a state I'd like to see on the blockchain. It's not something You could rely on. but for people who are afraid about the numbers going to hell... I bet it could be easily done on the consensus layer, so the protocol could get rid of the inscription numbers altogether. But that could just be consensus. If we ever as a group decide to do that differently, we can work on the agreement. |
Beta Was this translation helpful? Give feedback.
-
Ok hear me out... Preserves integrity of existing inscription numbers |
Beta Was this translation helpful? Give feedback.
-
Here is a proposal in regards to exposing a "strict" label. |
Beta Was this translation helpful? Give feedback.
-
#idea for numbers Block Height Perhaps ord could use block height + a sub-block identifier for each inscription. For elegance, we could ignore all blocks prior to the genesis inscription and refer to the first block with an inscription as 0. The genesis inscription would be referenced: 0-1 or 0-0 A later inscription, being the 3rd inscription in block 27, would be: 27-3 |
Beta Was this translation helpful? Give feedback.
-
I feel like there are strong cases for both sides of the argument, and @huuep proposal seems like a good compromise. On one side, the change is definitely beneficial for the protocol long-term tech wise But are the cultural impacts associated with changing history (or what a significant amount of people believed was the correct history) worth risking. I definitely agree some sort of snapshot and then an elegant solution that relies purely on onchain data should be implemented going forward. It's important we remove any areas that rely on off chain guidelines so we don't have this debate again in the future. No one can debate timestamps, so a numbering system based on chronological order inscribed seems important. Would it be difficult to have both displayed on explorers? But the new numbering system used in the code base. Eg. All the current numbers remain the same, and we can look at them as "Legacy Numbers" almost like relics. "Relic: Implies that the technology or system is a remnant from the past, often with historical significance" But the new system of numbering is what is the true number that verifiably shows what occurred according to the blockchain, which can never be disputed. Last point is that I feel it's important to try and define as clearly as possible the true definition of "What is an inscription?" and try to identify as many edge cases we can now before implementing any changes. Last thing we want is something like this coming up again in six months time. |
Beta Was this translation helpful? Give feedback.
-
Renumbering = hard fork Projects that existentially depend on the immutability of the inscription numbers will have no choice but to hard fork. I know, I know. BRC-20 is the first to come to mind, which is not the best example to bring up to win friends and influence people, but. They will hard-fork, and that will cause others to follow, inevitably weakening the Instead, let's embrace the "cursed" inscriptions by stabilizing their negative numbers and recognizing their seniority via alternate means (proposal underway). |
Beta Was this translation helpful? Give feedback.
-
I have a quick question: Why can't we simply consider the 'ord' indexer as the reference implementation? If the latest version of 'ord' indexer (at the time of a block) did not recognize certain edge case, then it would never be recognized - the 'ord' indexer itself acts as the reference which determines whether it is valid or not. When there is a new update that supports some edge case that is previously not supported, these edge cases can be supported starting from certain activation block height. Then we would not have this discussion about changing the history. What am I missing? |
Beta Was this translation helpful? Give feedback.
-
The initial cursed inscriptions totalled over 80,000 but this new set of curses added like 5, AND they screwed up the regular numbers as well (the un-cursed) at least those in 0.6.2 no longer match the regular numbers for 0.8.3 .. the first one I see this happening is They should have just left the protocol as it was, if people's got screwed up, so be it, because having to keep updating code for people that couldn't follow the spec or at least verify how most people were inscribing, is costing everyone time and money. At the end of the day, the protocol is just all made up non-sense anyway.. just pick some non-sense and stick to it, don't have us make a career out of it. If you want to keep adding new features to the protocol, it is TOO LATE. That's called a FORK. Same thing with the horrible BRC-20 standard that everyone went with built on top of this.. it is garbage, he has a warning right on there, "don't use this for anything" .. but no... mess on top of mess on top of mess: If you aren't going to have stable inscription numbers then there is no reason to use numbers at all; this goes beyond numbers though because if you keep including new types of inscriptions and they affect BRC-20s, this is a far worse problem... this is where the big money is right now.. with images it doesn't matter so much, an image will always be at the same inscription id.. but BRC-20 state engines will quickly diverge if they aren't considering the same inscriptions as valid. |
Beta Was this translation helpful? Give feedback.
-
In my mind it's failry easy. Do I want vanity numbers for flexing or do I want a robust protocol that is aligned with cypherpunk values and can offer yet still unimaginable applications while scaling organically. Do I really want to trade: Multiple inscriptions per transaction, Inscriptions in reveal inputs other than the first, Inscriptions with new even fields, Multiple inscriptions on the same sat; for a vanity flex? Destabilize#2StabilizeYOU |
Beta Was this translation helpful? Give feedback.
-
Inscription numbers are numbers assigned to inscriptions in the order in which they are created, starting at zero for the genesis inscription.
When inscription numbers were originally added to ord, the Ordinals wallet and explorer that powers ordinals.com, they were intended to be stable and never change.
However, now that we have more experience with the protocol, that seems less tenable and has undesirable consequences, as maintaining stable inscription numbers is a challenge in the face of changes to the inscription protocol.
Consider a simple case, an update that allows multiple inscriptions to be created in a single transaction.
The inscription numbers assigned by an implementation that recognizes multiple inscriptions in a single transaction would differ from those assigned by an implementation that does not.
The former implementation would see T1, creating two new inscriptions, and T2, creating a single new inscription, and assign inscription numbers N, N+1, and N+2, the latter implementation would assign inscription number N to the first and only inscription it recognized in T1, and N+1 to the inscription in T2.
There are many such updates that we would like to make or have made which would introduce discrepancies like these, including:
We've been able to make these changes and keep inscription numbers stable using what I've now come to think of as a regrettable hack: cursed inscriptions. Whenever
ord
indexes an inscription which would not be recognized by an earlier version, it assigns a negative inscription number. This keeps old inscription numbers stable, while still recognizing new inscriptions.Cursed inscriptions and negative inscriptions numbers have a number of downsides:
In light of the above, I propose that we make inscription numbers permanently unstable, and bless all cursed inscriptions, both retroactively and on an ongoing basis. Cursed inscription numbers would be folded into the main sequence, and, going forward, inscription numbers should not be used in URLs, which is already the case for
ord
, and inscription numbers would be de-emphasized on/inscription
pages.This would substantially simplify the
ord
codebase, make it easier to produce an implementation that assigns the same sequence numbers, and make future protocol changes easier.Also, keep in mind that inscription numbers would change, but wouldn't entirely go away. New inscription numbers would be close to old inscriptions numbers, perhaps only differing by %1 or so.
What do you think?
Beta Was this translation helpful? Give feedback.
All reactions