Skip to content

FUN Workflow

Adding a New FUN

  1. Find the next FUN number by checking existing directories in funs/

  2. Create a branch and add your FUN:

    git checkout -b FUN-42
    mkdir -p funs/0042
  3. Create funs/0042/FUN-42.adoc with this template:

    :showtitle:
    :toc: left
    :numbered:
    :icons: font
    :state: prediscussion
    
    = FUN-42 Your Title Here
    
    == Introduction
    
    What this FUN proposes.
    
    == Proposal
    
    Details of the proposal.
  4. Commit, push, and create a PR:

    git add funs/0042/
    git commit -m "FUN-42: Your title"
    git push -u origin FUN-42

    Then create a PR to master.

That’s it! The FUN is now tracked and can be discussed.

FUN States

State Description

prediscussion

Initial draft, before discussion

discussion

Actively being discussed

published

Approved

committed

Implementation delivered

abandoned

No longer being pursued

FUNs can be added in any state, but prediscussion is preferred for new FUNs.

Progressing a FUN

  • To start discussion: Change :state: prediscussion to :state: discussion

  • To publish: Change state to published, get approval, merge the PR

  • To mark as implemented: Change state to committed

  • To abandon: Change state to abandoned

Updating a Published FUN

Create a new branch (FUN-42), make changes, create a PR, get approval, merge.