XLS: XRP(L) community defined Suggestions, Proposals, RFCs / Standards / Drafts & discussions, to be added to the core protocol, used for platform & apps devemopment, etc.
Encourage discussion of invariants and error codes during the spec phase.
Some of these are based on learnings from the AMM spec and process: error codes there were changed several times during development, which led to confusion and mismatches between code, docs, and devnet as there were sometimes delays in updating any one of those with the latest changes. Also, some of the bugs in the AMM v1 implementation could have been avoided if invariants and invariant checks had been defined and implemented earlier on.
Also, tec-class transaction result codes are very limited, with values from 100 to 255 inclusive, and roughly a third of the existing codes have been added to the main codebase in the past 13 months, which puts us on track to run out of new tec codes fairly soon unless we make better efforts to conserve and reuse them. Therefore, I've added some notes which should hopefully help raise these discussions earlier in the process when changes are easier to make.
Encourage discussion of invariants and error codes during the spec phase.
Some of these are based on learnings from the AMM spec and process: error codes there were changed several times during development, which led to confusion and mismatches between code, docs, and devnet as there were sometimes delays in updating any one of those with the latest changes. Also, some of the bugs in the AMM v1 implementation could have been avoided if invariants and invariant checks had been defined and implemented earlier on.
Also,
tec
-class transaction result codes are very limited, with values from 100 to 255 inclusive, and roughly a third of the existing codes have been added to the main codebase in the past 13 months, which puts us on track to run out of newtec
codes fairly soon unless we make better efforts to conserve and reuse them. Therefore, I've added some notes which should hopefully help raise these discussions earlier in the process when changes are easier to make.