EIP Tagging

This is an idea that I have had brewing in the back of mind for a while now, so expect it to be incomplete. This is mostly here as a suggesting to the EIP editors, who would actually make this call.

This has been brought up by @Pandapip1 in #6037, but that seemed to end nowhere.


EIPs categories huge at the moment. There are currently 402 Core EIPs with a large chunk being unfinalized. Searching for specific EIPs without knowing it’s number or title is becoming increasingly more tedious.

I propose a tagging system for EIPs, a list of namespace:category[/sub-category] entries into the EIP header under a new tags key. EIPs would be expected include as many tags as necessary to fully cover their proposal.

A meta-EIP of defined tags would also be a good idea. It’ll prevent someone creating an EIP with the tag everything:everything and it’d allow the EIP Walidator™ to check EIPs before annoying editors.

An example tagged EIP header could look something like:

eip: 2718
title: Typed Transaction Envelope
description: Defines a new transaction type that is an envelope for future transaction types.
author: Micah Zoltu (@MicahZoltu)
discussions-to: https://ethereum-magicians.org/t/eip-2718-typed-transaction-envelope/4355
status: Final
type: Standards Track
category: Core
created: 2020-06-13
tags:
  - el:transaction/format
  - el:receipt/format

I believe tags would have a lot of benefits, such as

  • Reducing scope creep for some EIPs
  • Making ACD decisions easier
  • Allowing easier searching of EIPs by what they do

There is also some additional overhead of tagging EIPs:

  • Tagging previous EIPs would be a chore (Forcing tags on new PRs could fix this)
  • EIP editors would have to validate that the tags were correctly applied for new proposals.
  • There is a risk of arguing about what tag means what.