Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Template][CHIP-0] (Ch)ronon (I)mprovement (P)roposal #439

Open
5 tasks
nikhilsimha opened this issue Mar 28, 2023 · 0 comments
Open
5 tasks

[Template][CHIP-0] (Ch)ronon (I)mprovement (P)roposal #439

nikhilsimha opened this issue Mar 28, 2023 · 0 comments

Comments

@nikhilsimha
Copy link
Contributor

Large changes or additions to Chronon require a detailed proposal. Below is a template for the proposals. CHIP has a more obvious pronunciation than CIP. This template is a recommendation that can be modified based on context. Use your judgement.

Problem Statement

Problem Statement that the CHIP is aiming to solve, with quantitative evidence whenever possible. The sections and guidelines proposed below encourage deep focus on essential technical details with comments on backwards compatibility and performance impact.

Requirements

  • List new or updated abilities of Chronon.
  • If there is a change in existing behavior/schema/data/API - detail a reasonable migration plan. (only allowed in a major version upgrade)
  • If there is negative performance impact in a particular case - elaborate on why it is okay for that case to have degraded performance. For example - addressing skew case might mean negative impact on the non-skew case. The reason could be that skew case is overwhelmingly most common in practice, or that the impact on non-skew case is minor.

Verification

  • How do you plan to test the new behavior?
  • When the change impacts performance, also list a way to benchmark the new approach against the old?
  • For UX work, testing sometimes need to be manual. What is the qualitative bar this work needs to meet?

Approach

  • Chosen approach detailing the changes. We prefer a control flow diagram with numbered arrows between component boxes. The numbers on the arrows detail the sequence of control flow. Component boxes execute logic.
  • Alternative approaches - and the reason for discarding those approaches.

User API (when required)

  • What does the user facing API look like, list usages in various important scenarios.

Planning

A task list containing items

  • code change A link to PR
  • doc change B link to PR
  • release maven package - version A.B.C
  • release pip package - version A.B.C
  • release docsite
@nikhilsimha nikhilsimha pinned this issue Mar 28, 2023
@nikhilsimha nikhilsimha changed the title CHIP-0 (Ch)ronon (I)mprovement (P)roposal template [Template][CHIP-0] (Ch)ronon (I)mprovement (P)roposal Mar 29, 2023
@cristianfr cristianfr unpinned this issue Oct 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant