I have an idea for a small new feature. I think this feature would be useful to a significant portion of the Civi user community. I'm willing to build it. Is there a standard process for proposing my feature, getting approval (from the community? from the Civi core team?), and then developing it?
(To give an example, I'd like to expose "Payment Processor" as a search criterion on the Find Contributions form. No change to the database schema, not a huge change to the UI, and probably not a lot of new code. This feature would probably be useful to a larger portion of the Civi community than just the client who requested it.)
Is the process any different if I won't be building the feature myself?
How is the process different for features of different sizes? (And how is it determined whether a feature is "big" or "small" -- or what constitutes a "new feature" versus an "improvement on an existing feature"?)