mirror of
https://github.com/deepset-ai/haystack.git
synced 2025-06-26 22:00:13 +00:00

* update the proposals process * add stalebot to manage proposals lifecycle * typo * Update 0000-template.md * clarify PR labelling staying away from implementation details
65 lines
2.3 KiB
Markdown
65 lines
2.3 KiB
Markdown
- Title: (the title in plain english)
|
|
- Decision driver: (your name here)
|
|
- Start Date: (today's date, in format YYYY-MM-DD)
|
|
- Proposal PR: (fill in after opening the PR)
|
|
- Github Issue or Discussion: (only if available, link the original request for this change)
|
|
|
|
# Summary
|
|
|
|
Explain the feature briefly.
|
|
|
|
# Basic example
|
|
|
|
When applicable, write a snippet of code showing how the new feature would
|
|
be used.
|
|
|
|
# Motivation
|
|
|
|
Give us more background and explanation: Why do we need this feature? What use cases does it support? What's the expected
|
|
outcome?
|
|
|
|
Focus on explaining the motivation for this feature. We'd like to understand it, so that even if we don't accept this
|
|
proposal, others can use the motivation to develop alternative solutions.
|
|
|
|
# Detailed design
|
|
|
|
This is the bulk of the proposal. Explain the design in enough detail for somebody
|
|
familiar with Haystack to understand, and for somebody familiar with the
|
|
implementation to implement. Get into specifics and corner-cases,
|
|
and include examples of how the feature is used. Also, if there's any new terminology involved,
|
|
define it here.
|
|
|
|
# Drawbacks
|
|
|
|
Look at the feature from the other side: what are the reasons why we should _not_ work on it? Consider the following:
|
|
|
|
- What's the implementation cost, both in terms of code size and complexity?
|
|
- Can the solution you're proposing be implemented as a separate package, outside of Haystack?
|
|
- Does it teach people more about Haystack?
|
|
- How does this feature integrate with other existing and planned features?
|
|
- What's the cost of migrating existing Haystack pipelines (is it a breaking change?)?
|
|
|
|
There are tradeoffs to choosing any path. Attempt to identify them here.
|
|
|
|
# Alternatives
|
|
|
|
What other designs have you considered? What's the impact of not adding this feature?
|
|
|
|
# Adoption strategy
|
|
|
|
If we implement this proposal, how will the existing Haystack users adopt it? Is
|
|
this a breaking change? Can we write a migration script?
|
|
|
|
# How we teach this
|
|
|
|
Would implementing this feature mean the documentation must be re-organized
|
|
or updated? Does it change how Haystack is taught to new developers at any level?
|
|
|
|
How should this feature be taught to the existing Haystack users (for example with a page in the docs,
|
|
a tutorial, ...).
|
|
|
|
# Unresolved questions
|
|
|
|
Optional, but suggested for first drafts. What parts of the design are still
|
|
TBD?
|