Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tronprotocol/tips
TRON Improvement Proposals
https://github.com/tronprotocol/tips
Last synced: 3 months ago
JSON representation
TRON Improvement Proposals
- Host: GitHub
- URL: https://github.com/tronprotocol/tips
- Owner: tronprotocol
- Created: 2018-04-09T04:04:42.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-03-15T07:24:31.000Z (8 months ago)
- Last Synced: 2024-03-15T08:31:02.975Z (8 months ago)
- Homepage:
- Size: 1.27 MB
- Stars: 201
- Watchers: 33
- Forks: 162
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- best-of-crypto - GitHub - 3% open · ⏱️ 30.05.2024): (Smart Contract Platforms)
README
# TIPs
TRON Improvement Proposals (TIPs) describe standards for the TRON platform, including core protocol specifications, client APIs, and contract standards.
****
## Contents
- [TIPs](#tips)
- [Contents](#contents)
- [TIPs Guide](#tips-guide)
- [To Submit a TIP](#to-submit-a-tip)
- [TIP Status](#tip-status)
- [TIP Types](#tip-types)
****## TIPs Guide
| ID | Title | Author | Type | Category | Hard fork | Status |
|---------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------:|:--------------------:|:----------:|:--------------:|:---------:|
| TIP 10 | [TRON Token Standard](https://github.com/tronprotocol/TIPs/blob/master/tip-10.md) | | Standards Track | Core | false | Final |
| TIP 12 | [TRON Event Subscription Model](https://github.com/tronprotocol/TIPs/blob/master/tip-12.md) | | Informational | TRC | false | Final |
| TIP 13 | [Design of TRON account](https://github.com/tronprotocol/TIPs/blob/master/tip-13.md) | | Standards Track | Core | false | Final |
| TIP 16 | [TRON Account Multi-Signature](https://github.com/tronprotocol/TIPs/blob/master/tip-16.md) | | Standards Track | Core | true | Final |
| TIP 17 | [TRON Adaptive Energy Limit Model](https://github.com/tronprotocol/TIPs/blob/master/tip-17.md) | | Standards Track | Core | true | Final |
| TIP 19 | [TRC-19 Deferred transaction](https://github.com/tronprotocol/TIPs/blob/master/tip-19.md) | | Standards Track | Core | true | Deferred |
| TIP 20 | [TRC-20 Token Standard](https://github.com/tronprotocol/TIPs/blob/master/tip-20.md) | | Standards Track | TRC | true | Final |
| TIP 23 | [Add the account world status tree root to the block header](https://github.com/tronprotocol/tips/blob/master/tip-23.md) | | Standards Track | Core | true | Accepted |
| TIP 24 | [Implement of DB storage with RocksDB](https://github.com/tronprotocol/tips/blob/master/tip-24.md) | | Standards Track | Core | false | Final |
| TIP 26 | [Create2](https://github.com/tronprotocol/tips/blob/master/tip-26.md) | | Standards Track | VM | false | Final |
| TIP 28 | [Built-in Message Queue in Event Subscription Model](https://github.com/tronprotocol/TIPs/blob/master/tip-28.md) | | Informational | | false | Final |
| TIP 29 | [Bitwise shifting instructions in Tron](https://github.com/tronprotocol/tips/blob/master/tip-29.md) | | Standards Track | VM | true | Final |
| TIP 30 | [Code hash instructions](https://github.com/tronprotocol/tips/blob/master/tip-30.md) | | Standards Track | VM | true | Final |
| TIP 31 | [Trigger constant contract](https://github.com/tronprotocol/tips/blob/master/tip-31.md) | | Standards Track | VM | true | Final |
| TIP 32 | [Clear the ABI of contract](https://github.com/tronprotocol/tips/blob/master/tip-32.md) | | Standards Track | VM | true | Final |
| TIP 37 | [Forbid using TransferContract & TransferAssetContract for contract account](https://github.com/tronprotocol/tips/blob/master/tip-37.md) | | Standards Track | VM | true | Final |
| TIP 41 | [Optimize transactionHistoryStore occupancy space](https://github.com/tronprotocol/tips/blob/master/tip-41.md) | | Standards Track | Core | false | Final |
| TIP 43 | [Precompiled contract function for signature parallel verification](https://github.com/tronprotocol/tips/blob/master/tip-43.md) | | Standards Track | VM | true | Final |
| TIP 44 | [Address.isContract instructions](https://github.com/tronprotocol/tips/blob/master/tip-44.md) | | Standards Track | VM | true | Final |
| TIP 51 | [Rate limit of API traffic](https://github.com/tronprotocol/tips/blob/master/tip-51.md) | | Standards Track | Interface | false | Final |
| TIP 53 | [Optimize the current TRON delegation mechanism](https://github.com/tronprotocol/tips/blob/master/tip-53.md) | | Standards Track | Core | true | Final |
| TIP 54 | [Automatically active non-existent account when transferring TRX/TRC10 asset in a smart contract](https://github.com/tronprotocol/tips/blob/master/tip-54.md) | | Standards Track | VM | true | Final |
| TIP 60 | [Precompiled contract function for multi-signature verification](https://github.com/tronprotocol/tips/blob/master/tip-60.md) | | Standards Track | VM | true | Accepted |
| TIP 62 | [Tron consensus algorithm introduction](https://github.com/tronprotocol/tips/blob/master/tip-62.md) | | Standards Track | Core | false | Final |
| TIP 64 | [Tron tron mix consensus Analytics](https://github.com/tronprotocol/tips/blob/master/tip-64.md) | | Standards Track | Core | false | Draft |
| TIP 101 | [Wallet Keystore Specification](https://github.com/tronprotocol/tips/blob/master/tip-101.md) | | Standards Track | TRC | false | Last Call |
| TIP 102 | [Hierarchical Deterministic Wallet](https://github.com/tronprotocol/tips/blob/master/tip-102.md) | | Standards Track | TRC | false | Last Call |
| TIP 104 | [Data Signing Specification](https://github.com/tronprotocol/tips/blob/master/tip-104.md) | | Standards Track | TRC | false | Last Call |
| TIP 105 | [Multi-signature Permission Operation](https://github.com/tronprotocol/tips/blob/master/tip-105.md) | | Standards Track | TRC | true | Final |
| TIP 120 | [ECDSA Signature Encoding Specification](https://github.com/tronprotocol/tips/blob/master/tip-120.md) | | Standards Track | TRC | false | Final |
| TIP 127 | [Support Tron-DEX based on system contracts](https://github.com/tronprotocol/tips/blob/master/tip-127.md) | | Standards Track | CORE | false | Draft |
| TIP 128 | [TIP128 Lite Fullnode support](https://github.com/tronprotocol/tips/blob/master/tip-128.md) | | Standards Track | CORE | false | Draft |
| TIP 135 | [Shielded TRC-20 Contract](https://github.com/tronprotocol/tips/blob/master/tip-135.md) | | Standards Track | TRC | false | Final |
| TIP 137 | [Zero-knowledge Proof Verification functions](https://github.com/tronprotocol/tips/blob/master/tip-137.md) | | Standards Track | VM | true | Final |
| TIP 138 | [Pedersen hash function](https://github.com/tronprotocol/tips/blob/master/tip-138.md) | | Standards Track | VM | true | Final |
| TIP 156 | [Vote instructions in TVM](https://github.com/tronprotocol/tips/blob/master/tip-156.md) | | Standards Track | VM | true | Withdrawn |
| TIP 157 | [Freeze instructions in TVM](https://github.com/tronprotocol/tips/blob/master/tip-157.md) | | Standards Track | VM | true | Final |
| TIP 165 | [TRC-165 Standard Interface Detection In Contract](https://github.com/tronprotocol/tips/blob/master/tip-165.md) | | Standards Track | TRC | true | Final |
| TIP 171 | [STAKE instructions in TVM](https://github.com/tronprotocol/tips/blob/master/tip-171.md) | | Standards Track | VM | true | Withdrawn |
| TIP 174 | [CHAINID instructions in TVM](https://github.com/tronprotocol/tips/blob/master/tip-174.md) | | Standards Track | VM | true | Final |
| TIP 175 | [SELFBALANCE instructions in TVM](https://github.com/tronprotocol/tips/blob/master/tip-175.md) | | Standards Track | VM | true | Final |
| TIP 176 | [altbn128 operation energy reduction in TVM](https://github.com/tronprotocol/tips/blob/master/tip-176.md) | | Standards Track | VM | true | Final |
| TIP 178 | [TOKENISSUE and UPDATEASSET Instruction in TVM](https://github.com/tronprotocol/tips/blob/master/tip-178.md) | | Standards Track | VM | true | Withdrawn |
| TIP 191 | [Signed Data Standard](https://github.com/tronprotocol/tips/blob/master/tip-191.md) | | Standards Track | TRC | false | Final |
| TIP 196 | [Reward SRs with the transaction fees charged for bandwidth and Energy](https://github.com/tronprotocol/tips/blob/master/tip-196.md) | | Standards Track | Core | true | Final |
| TIP 204 | [Make MAX_FEE_LIMIT configurable as a chain property](https://github.com/tronprotocol/tips/blob/master/tip-204.md) | | Standards Track | VM | false | Final |
| TIP 207 | [A proposal to improve network resources model ](https://github.com/tronprotocol/tips/blob/master/tip-207.md) | | Standards Track | Core | true | Draft |
| TIP 209 | [Adapt to Solidity 0.6.0](https://github.com/tronprotocol/tips/blob/master/tip-209.md) | | Standards Track | VM | false | Final |
| TIP 222 | [Improve transaction execution speed](https://github.com/tronprotocol/tips/blob/master/tip-222.md) | | Standards Track | TRC | true | Final |
| TIP 250 | [Include transaction results on the chain](https://github.com/tronprotocol/tips/blob/master/tip-250.md) | | Standards Track | Core | true | Final |
| TIP 268 | [SmartContract ABI optimization](https://github.com/tronprotocol/tips/blob/master/tip-268.md) | | Standards Track | VM | false | Final |
| TIP 269 | [Optimize the performance of block processing](https://github.com/tronprotocol/tips/blob/master/tip-269.md) | | Standards Track | Core | false | Final |
| TIP 271 | [Vote for SR in Smart Contract](https://github.com/tronprotocol/tips/blob/master/tip-271.md) | | Standards Track | VM | true | Final |
| TIP 272 | [Compatible with EVM](https://github.com/tronprotocol/tips/blob/master/tip-272.md) | | Standards Track | VM | true | Final |
| TIP 276 | [Optimize block verification logic](https://github.com/tronprotocol/tips/blob/master/tip-276.md) | | Standards Track | Core | false | Final |
| TIP 281 | [Optimize the query of database](https://github.com/tronprotocol/tips/blob/master/tip-281.md) | | Standards Track | Core | false | Final |
| TIP 285 | [Node startup optimization](https://github.com/tronprotocol/tips/blob/master/tip-285.md) | | Standards Track | Core | false | Final |
| TIP 289 | [Block Broadcast Optimization](https://github.com/tronprotocol/tips/blob/master/tip-289.md) | | Standards Track | Core | true | Final |
| TIP 290 | [Dynamic store optimization](https://github.com/tronprotocol/tips/blob/master/tip-290.md) | | Standards Track | Core | true | Final |
| TIP 292 | [Add a proposal to adjust the free net limit in an account](https://github.com/tronprotocol/tips/blob/master/tip-292.md) | | Standards Track | TRC | true | Final |
| TIP 293 | [Add a proposal to adjust the total net limit](https://github.com/tronprotocol/tips/blob/master/tip-293.md) | | Standards Track | TRC | true | Final |
| TIP 295 | [Optimize assets of account](https://github.com/tronprotocol/tips/blob/master/tip-295.md) | | Standards Track | Core | false | Final |
| TIP 298 | [Reformat manifest](https://github.com/tronprotocol/tips/blob/master/tip-298.md) | | Standards Track | Core | false | Final |
| TIP 306 | [Adapt to solidity_0.8.4](https://github.com/tronprotocol/tips/blob/master/tip-306.md) | | Standards Track | VM | false | Final |
| TIP 318 | [Adapt to Ethereum London Upgrade](https://github.com/tronprotocol/tips/blob/master/tip-318.md) | | Standards Track | VM | false | Final |
| TIP 343 | [DB params optimization ](https://github.com/tronprotocol/tips/blob/master/tip-343.md) | | Standards Track | Core | false | Draft |
| TIP 344 | [Optimize instruction execution for TVM](https://github.com/tronprotocol/tips/blob/master/tip-344.md) | | Standards Track | VM | false | Final |
| TIP 362 | [Optimized node broadcast data caching](https://github.com/tronprotocol/tips/blob/master/tip-362.md) | | Standards Track | Core | false | Final |
| TIP 366 | [Node startup optimization](https://github.com/tronprotocol/tips/blob/master/tip-366.md) | | Standards Track | Core | false | Final |
| TIP 369 | [Node support prometheus metrics](https://github.com/tronprotocol/tips/blob/master/tip-369.md) | | Standards Track | Core | false | Final |
| TIP 370 | [Node support conditionalized stop](https://github.com/tronprotocol/tips/blob/master/tip-370.md) | | Standards Track | Core | false | Final |
| TIP 382 | [TIP-382: Optimize the data structure of account assets](https://github.com/tronprotocol/tips/blob/master/tip-382.md) | | Standards Track | Core | false | Final |
| TIP 383 | [TIP-383: Optimize transaction cache loading](https://github.com/tronprotocol/tips/blob/master/tip-383.md) | | Standards Track | Core | false | Final |
| TIP 387 | [TIP-387: Transaction memo fee](https://github.com/tronprotocol/tips/blob/master/tip-387.md) | | Standards Track | Core | false | Final |
| TIP 388 | [TIP-388: Optimize light node synchronization logic](https://github.com/tronprotocol/tips/blob/master/tip-388.md) | | Standards Track | Core | false | Final |
| TIP 391 | [TIP-391: Optimize fetch block process](https://github.com/tronprotocol/tips/blob/master/tip-391.md) | | Standards Track | Core | false | Final |
| TIP 397 | [Raise limit of the 13th network parameter](https://github.com/tronprotocol/tips/blob/master/tip-397.md) | | Standards Track | VM | true | Final |
| TIP 425 | [TIP-425: Speed up TCP connection establishment](https://github.com/tronprotocol/tips/blob/master/tip-425.md) | | Standards Track | Net | false | Final |
| TIP 428 | [TIP-428: Increase the probability that the block processing thread acquires the lock](https://github.com/tronprotocol/tips/blob/master/tip-428.md) | | Standards Track | Core | false | Final |
| TIP 440 | [Transaction cache optimization](https://github.com/tronprotocol/tips/blob/master/tip-440.md) | | Standards Track | Core | false | Final |
| TIP 461 | [Optimize data consistency for system abnormals](https://github.com/tronprotocol/tips/blob/master/tip-461.md) | | Standards Track | Core | false | Final |
| TIP 465 | [New reward calculation algorithm](https://github.com/tronprotocol/tips/blob/master/tip-465.md) | | Standards Track | Core | true | Final |
| TIP 467 | [Stake 2.0 - A new TRON stake model](https://github.com/tronprotocol/tips/blob/master/tip-467.md) | | Standards Track | Core | false | Final |
| TIP 474 | [Optimize the return value of chainid opcode](https://github.com/tronprotocol/tips/blob/master/tip-474.md) | | Standards Track | VM | true | Final |
| TIP 476 | [Delegate Data Structure Optimization](https://github.com/tronprotocol/tips/blob/master/tip-476.md) | | Standards Track | Core | false | Final |
| TIP 491 | [Dynamic Energy Model](https://github.com/tronprotocol/tips/blob/master/tip-491.md) | | Standards Track | VM | true | Final |
| TIP 534 | [Remove Vulnerable APIs](https://github.com/tronprotocol/tips/blob/master/tip-534.md) | | Standards Track | Core | false | Final |
| TIP 541 | [Support canceling unstaking in Stake 2.0](https://github.com/tronprotocol/tips/blob/master/tip-541.md) | | Standards Track | Core | true | Final |
| TIP 542 | [Resource delegating supports customizable lock period](https://github.com/tronprotocol/tips/blob/master/tip-542.md) | | Standards Track | Core | true | Final |
| TIP 543 | [Implement EIP-3855 PUSH0 instruction](https://github.com/tronprotocol/tips/blob/master/tip-543.md) | | Standards Track | VM | true | Final |
| TIP 544 | [Add `data` to the http interfaces interacting with smart contract](https://github.com/tronprotocol/tips/blob/master/tip-544.md) | | Standards Track | Interface | false | Final |
| TIP 547 | [Connection precheck before P2P communication](https://github.com/tronprotocol/tips/blob/master/tip-547.md) | | Standards Track | Networking | false | Final |
| TIP 548 | [Node Discovery via DNS](https://github.com/tronprotocol/tips/blob/master/tip-548.md) | <[email protected]> | Standards Track | Networking | false | Final |
| TIP 549 | [P2P support IPv6 protocol](https://github.com/tronprotocol/tips/blob/master/tip-549.md) | <[email protected]> | Standards Track | Networking | false | Final |
| TIP 550 | [P2P message snappy compression](https://github.com/tronprotocol/tips/blob/master/tip-550.md) | | Standards Track | Networking | false | Final |
| TIP 555 | [Network upgrade logic optimization](https://github.com/tronprotocol/tips/blob/master/tip-555.md) | | Standards Track | Core | false | Final |
| TIP 586 | [GRPC Implementation for Resource Price Interfaces](https://github.com/tronprotocol/tips/blob/master/tip-586.md) | | Standards Track | Core | false | Final |
| TIP 592 | [Supplement Disconnect Reasons in Java-tron](https://github.com/tronprotocol/tips/blob/master/tip-592.md) | <[email protected]> | Standards Track | Networking | false | Final |
| TIP 621 | [Add code version column to HelloMessage](https://github.com/tronprotocol/tips/blob/master/tip-621.md) | <[email protected]> | Standards Track | Networking | false | Final |
| TIP 635 | [Optimize Reward Withdrawal To Improve TPS](https://github.com/tronprotocol/tips/blob/master/tip-635.md) | | Standards Track | Core | true | Final |
| TIP 652 | [Announce EIP-6049 Deprecate SELFDESTRUCT](https://github.com/tronprotocol/tips/blob/master/tip-652.md) | | Meta | VM | false | Review |
| TIP 653 | [Adjust energy cost of SUICIDE and VOTEWITNESS opcodes in TVM](https://github.com/tronprotocol/tips/blob/master/tip-653.md) | | Standards Track | VM | true | Review |
| TIP 712 | [TRON typed structured data hashing and signing](https://github.com/tronprotocol/tips/blob/master/tip-712.md) | | Standards Track | Interface | false | Final |
| TIP 721 | [TRC-721 Non-Fungible Token Standard](https://github.com/tronprotocol/tips/blob/master/tip-721.md) | | Standards Track | TRC | true | Final |
| TIP 1102 | [TIP-1102: Opt-in account exposure](https://github.com/tronprotocol/tips/blob/master/tip-1102.md) | | Standards Track | Interface | false | Final |
| TIP 1155 | [Multi Token Standard](https://github.com/tronprotocol/tips/blob/master/tip-1155.md) | | Standards Track | TRC | false | Final |
| TIP 1193 | [TIP-1193: TRON Provider JavaScript API](https://github.com/tronprotocol/tips/blob/master/tip-1193.md) | | Standards Track | Interface | false | Final |
| TIP 3326 | [TIP-3326: Wallet Switch TRON Chain Method](https://github.com/tronprotocol/tips/blob/master/tip-3326.md) | | Standards Track | Interface | false | Final |
| TIP 4906 | [TRC-4906: Fork from ERC-4907 Rental NFT](https://github.com/tronprotocol/tips/blob/master/tip-4906.md) | | Standards Track | TRC | false | Final |****
## To Submit a TIP
Before you submit a TIP, you need to create an issue for comment and add the issue URL to your TIP header.
1. Fork the repository by clicking "Fork" in the top right.
2. Add your TIP to your fork of the repository. There is a [TIP template](https://github.com/tronprotocol/TIPs/blob/master/template.md) here.
3. Submit a Pull Request to TRON's TIPs repository.
Your first PR should be a first draft of the final TIP. It must meet the formatting criteria enforced by the build (largely, correct metadata in the header). An editor will manually review the first PR for a new TIP and assign it a number before merging it.
Make sure you include a discussions-to header with the URL to a discussion forum or open GitHub issue where people can discuss the TIP as a whole. If a TIP is about the feature development of java-tron, and a PR of the development exists, in your TIP and your java-tron's PR you need to refer each other's github link.
When you believe your TIP is mature and ready to progress past the draft phase, you should do one of two things:
- For a Standards Track TIP of type Core, ask to have your issue added to the agenda of an upcoming All Core Devs meeting, where it can be discussed for inclusion in a future hard fork. If implementers agree to include it, the TIP editors will update the state of your TIP to 'Accepted'.
- For all other TIPs, open a PR changing the state of your TIP to 'Final'. An editor will review your draft and ask if anyone objects to its being finalized. If the editor decides there is no rough consensus, they may close the PR and request you fix the issues in the draft before trying again.
****
## TIP Status
TIPs are separated into several statuses.
- **Draft**: A TIP that is undergoing rapid iteration and changes.
- **Last Call**: A TIP that is done with its initial iteration and ready for review by a wide audience.
- **Accepted**: A core TIP that has been in the Last Call for at least 2 weeks and any technical changes that were requested have been addressed by the author. The process for Core Devs to decide whether to encode a TIP into their clients as part of a hard fork is not part of the TIP process. If such a decision is made, the TIP will move to the final.
- **Final (non-Core)**: A TIP that has been in the Last Call for at least 2 weeks and any technical changes that were requested have been addressed by the author.
- **Final (Core)**: A TIP that the Core Devs have decided to implement and release in a future version or has already been released.
- **Active**: If the TIPs are never meant to be completed, the TIPs may have a status of “Active”.
- **Abandoned**: If a TIP is no longer pursued by the original authors or it may not be a (technically) preferred option anymore.
- **Rejected**: A TIP that is fundamentally broken or a Core TIP that was rejected by the Core Devs and will not be implemented.
- **Superseded**: A TIP which was previously Final but is no longer considered state-of-the-art. Another TIP will be in the Final status and cite the Superseded TIP.
- **Deferred**: A TIP which isn't accepted now, it may be accepted in the future.
****
## TIP Types
TIPs are separated into several types, and each has its list of TIPs.
* **Standard Track**: Describes any change that affects most or all TRON implementations, such as a change in block or transaction validity rules, proposed application standards/conventions, or any change or addition that affects the interoperability of applications using TRON. Furthermore, Standard TIPs can be broken down into the following categories.
**1.Core**: Improvements requiring a consensus fork, as well as changes that are not necessarily consensus critical but may be relevant to "core dev" discussions.
**2.Networking**: Includes improvements around network protocol.
**3.Interface**: Includes improvements around client API/RPC specifications and standards.
**4.TRC**: Application-level standards and conventions, including contract standards such as token standards (TRC-20).
**5.TVM**: Includes improvements around TRON Virtual Machine.
* **Informational**: Describes a TRON design issue, or provides general guidelines or information to the TRON community, but does not propose a new feature.
For further discussion, please enter [Telegram](https://t.me/troncoredevscommunity)