Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
72a94c3
Add changes
noahtalerman Aug 25, 2026
1c80642
Add changes
noahtalerman Aug 25, 2026
30a9820
Update bug-report.md
noahtalerman Aug 25, 2026
22b3dcc
Apply suggestion from @noahtalerman
noahtalerman Aug 25, 2026
fae5edc
Apply suggestion from @noahtalerman
noahtalerman Aug 25, 2026
5e449a5
Apply suggestion from @noahtalerman
noahtalerman Aug 25, 2026
3d91fde
Apply suggestion from @noahtalerman
noahtalerman Aug 25, 2026
fe7bb91
Add changes
noahtalerman Aug 25, 2026
670598d
Apply suggestion from @noahtalerman
noahtalerman Aug 25, 2026
6fe4b5f
Apply suggestion from @noahtalerman
noahtalerman Aug 25, 2026
820cc61
Apply suggestion from @noahtalerman
noahtalerman Aug 25, 2026
38b71c8
Apply suggestion from @noahtalerman
noahtalerman Aug 25, 2026
ed8db99
Apply suggestion from @noahtalerman
noahtalerman Aug 25, 2026
f081a97
Apply suggestion from @noahtalerman
noahtalerman Aug 25, 2026
63f2684
Apply suggestion from @noahtalerman
noahtalerman Aug 25, 2026
979b3e4
Apply suggestion from @noahtalerman
noahtalerman Aug 25, 2026
26a6d22
Apply suggestion from @noahtalerman
noahtalerman Aug 25, 2026
1e7148d
Add changes
noahtalerman Aug 25, 2026
cc11294
Merge branch 'remove-drafting-board' of https://github.com/fleetdm/fl…
noahtalerman Aug 25, 2026
9815dd8
Apply suggestion from @noahtalerman
noahtalerman Aug 25, 2026
68e7e1a
Keep the drafting board as intake & outtake, not retirement
noahtalerman Aug 31, 2026
784420c
Merge branch 'main' into remove-drafting-board
noahtalerman Aug 31, 2026
0cafc3a
Apply suggestion from @noahtalerman
noahtalerman Aug 31, 2026
822c740
Apply suggestion from @noahtalerman
noahtalerman Aug 31, 2026
5b30a22
Apply suggestion from @noahtalerman
noahtalerman Sep 1, 2026
416facf
Merge branch 'main' into remove-drafting-board
noahtalerman Sep 1, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions android/RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -148,9 +148,9 @@ This brings the version bump and CHANGELOG updates to main and removes only the

After the release is published, close out the associated GitHub issues and milestone. For the canonical checklist, see [Conclude current milestone](https://fleetdm.com/handbook/engineering/releases#conclude-current-milestone):

1. **Move associated stories to the Drafting board**: Stories may not be on the [Drafting](https://github.com/orgs/fleetdm/projects/67) board (project 67) yet. For each `story`-labeled issue in the `fleetd-android-v1.X.X` milestone, apply the `:product` label and remove the `:release` label so it moves onto the product drafting board.
1. **Move associated stories to the intake & outtake board**: Stories may not be on the [🦢 Product design intake & outtake](https://github.com/orgs/fleetdm/projects/67) board (project 67) yet. For each `story`-labeled issue in the `fleetd-android-v1.X.X` milestone, apply the `:product` label and remove the `:release` label so it moves onto the board.

2. **Move associated stories to "Confirm and celebrate"**: On the [Drafting](https://github.com/orgs/fleetdm/projects/67) board, filter by the `fleetd-android-v1.X.X` milestone, and move all stories to the "Confirm and celebrate" column. Product will close these issues during their [confirm and celebrate ritual](https://fleetdm.com/handbook/product#rituals). [Engineering-initiated stories](https://fleetdm.com/handbook/engineering#create-an-engineering-initiated-story) (`~engineering-initiated` label) can be closed without confirm and celebrate.
2. **Move associated stories to "Confirm and celebrate"**: On the [🦢 Product design intake & outtake](https://github.com/orgs/fleetdm/projects/67) board, filter by the `fleetd-android-v1.X.X` milestone, and move all stories to the "Confirm and celebrate" column. Product will close these issues during their [confirm and celebrate ritual](https://fleetdm.com/handbook/product#rituals). [Engineering-initiated stories](https://fleetdm.com/handbook/engineering#create-an-engineering-initiated-story) (`~engineering-initiated` label) can be closed without confirm and celebrate.

3. **Close associated bugs**: Close the remaining (non-story) issues in the `fleetd-android-v1.X.X` milestone.

Expand Down
10 changes: 5 additions & 5 deletions handbook/company/product-groups.md
Original file line number Diff line number Diff line change
Expand Up @@ -352,11 +352,11 @@ The product group walks the board **right-to-left**, starting at "Ready for rele

### User story reviews

User story reviews [happen weekly](https://fleetdm.com/handbook/product-design#rituals) between each product group's Product Designer (PD), Engineering Manager (EM), Tech Lead (TL) and Quality Assurance (QA) Engineer. During the call, contributors (PD and EM) present all user stories that are in the "User story review" column. The PD is the DRI for completing all product checklist items before bringing to review. For [engineer-initiated stories](https://fleetdm.com/handbook/engineering#create-an-engineering-initiated-story), the EM is the DRI for completing all engineering checklist items before bringing to review.
User story reviews [happen weekly](https://fleetdm.com/handbook/product-design#rituals) between each product group's Product Designer (PD), Engineering Manager (EM), Tech Lead (TL) and Quality Assurance (QA) Engineer. During the call, contributors (PD and EM) present all user stories that have completed the product checklist and are ready for review. The PD is the DRI for completing all product checklist items before bringing to review. For [engineer-initiated stories](https://fleetdm.com/handbook/engineering#create-an-engineering-initiated-story), the EM is the DRI for completing all engineering checklist items before bringing to review.

The purpose of the review is to familiarize the EM, TL, and QA Engineer with the user story, and provide an opportunity to ask questions, clarify requirements, and highlight potential implementation issues. The first draft of the test plan produced by the Product Designer is reviewed and revised as needed during the call. The QA Engineer is the DRI for finalizing the test plan.

The purpose of the user story review is to align product, engineering, and QA on functionality and implementation details. Wireframe reviews occur daily during [design reviews](https://fleetdm.com/handbook/company/product-groups#design-reviews) where contributors are welcome to join and provide design feedback in the agenda document. However, sometimes there are design changes needed if a gap is discovered or an implementation issue is raised during user story review. If there are design changes, the user story is moved back to the "In progress" column for additional drafting. If there are no design changes, the story remains with the Engineering DRI to [complete the drafting process](#defining-done) before bringing to estimation. If no Engineering DRI is assigned, the ticket is assigned to the Engineering Manager.
The purpose of the user story review is to align product, engineering, and QA on functionality and implementation details. Wireframe reviews occur daily during [design reviews](https://fleetdm.com/handbook/company/product-groups#design-reviews) where contributors are welcome to join and provide design feedback in the agenda document. However, sometimes there are design changes needed if a gap is discovered or an implementation issue is raised during user story review. If there are design changes, the user story goes back into drafting to address the gap. If there are no design changes, the story remains with the Engineering DRI to [complete the drafting process](#defining-done) before bringing to estimation. If no Engineering DRI is assigned, the ticket is assigned to the Engineering Manager.

### Release demo (every 3 weeks)

Expand Down Expand Up @@ -488,9 +488,9 @@ To successfully deliver a user story, the people working on it need to know what

Every user story has a product and engineering checklist that is completed before the user story is estimated. This populates the user story with the requirements, wireframes, and test plan necessary for the product group to effectively specify, estimate, implement, and test the change. The Product Designer is the DRI for completing the product checklist, and the Engineering Manager (EM) is the DRI for completing the engineering checklist.

When the Product Designer has completed the product checklist, it is moved to the "User story review" column of the drafting board and reviewed during the [weekly user story review](https://fleetdm.com/handbook/company/product-groups#user-story-reviews) rituals.
When the Product Designer has completed the product checklist, it is reviewed during the [weekly user story review](https://fleetdm.com/handbook/company/product-groups#user-story-reviews) rituals.

When a user story completes the review process, it is moved to the "Ready to spec" column on the drafting board and assigned to the product group's EM. The EM is responsible for completing the engineering checklist and finalizing the test plan with the QA Engineer before moving to the "Ready to estimate" column.
When a user story completes the review process, it is assigned to the product group's EM. The EM is responsible for completing the engineering checklist and finalizing the test plan with the QA Engineer.


#### Providing context
Expand Down Expand Up @@ -698,7 +698,7 @@ To make a feature request or advocate for a feature request from a customer or c

New requests are [triaged daily](https://fleetdm.com/handbook/product-design#triage-new-requests) by the Head of Product Design. If the request meets the [criteria for prioritization](#criteria-for-prioritization), the request will be added to the upcoming feature fest (`~feature fest` label). If it doesn't, the request will be put to the side and the requester will be notified.

> **Fast for Fleeties:** Fleeties do not have to wait for "Unpacking the why" to add a request to feature fest. If you think Fleet is missing something and have described in detail what you already tried, it can be moved directly to the [🎁 Feature fest board](https://github.com/orgs/fleetdm/projects/72). Just add the `~feature fest` label, remove the `:product` label, and remove the issue from the 🦢 Drafting project.
> **Fast for Fleeties:** Fleeties do not have to wait for "Unpacking the why" to add a request to feature fest. If you think Fleet is missing something and have described in detail what you already tried, it can be moved directly to the [🎁 Feature fest board](https://github.com/orgs/fleetdm/projects/72). Just add the `~feature fest` label, remove the `:product` label, and remove the issue from the 🦢 Product design intake & outtake project.


### Criteria for prioritization
Expand Down
6 changes: 3 additions & 3 deletions handbook/engineering/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,11 +62,11 @@ These categories compete for priority in the normal product pipeline so that pro

**To draft the story:**

The engineering output and architecture DRI reviews and triages engineering-initiated stories weekly on the [Engineering board](https://github.com/orgs/fleetdm/projects/73) and selects stories to prioritize for drafting by adding the `:product` label, placing it in the "Ready" column, and assigning an engineer.
The engineering output and architecture DRI reviews and triages engineering-initiated stories weekly on the [Engineering board](https://github.com/orgs/fleetdm/projects/73) and selects stories to prioritize for drafting by placing it in the "Ready" column and assigning an engineer.

1. The assigned engineer is responsible for completing the user story drafting process by completing the specs and [defining done](https://fleetdm.com/handbook/company/product-groups#defining-done). Move the issue into "In progress" on the drafting board and populate all TODOs in the issue description, define implementation details, and draft the first version of the test plan.
1. The assigned engineer is responsible for completing the user story drafting process by completing the specs and [defining done](https://fleetdm.com/handbook/company/product-groups#defining-done). Move the issue into "Drafting" on the correct product group's board and populate all TODOs in the issue description, define implementation details, and draft the first version of the test plan.

2. When all sections have been populated, move it to the "User story review" column on the drafting board and assign to your EM. The EM will bring the story to [weekly user story review](https://fleetdm.com/handbook/company/product-groups#user-story-reviews), and then to estimation before prioritizing into an upcoming release.
2. When all sections have been populated, assign the story to the product group's EM. The EM will bring the story to [weekly user story review](https://fleetdm.com/handbook/company/product-groups#user-story-reviews), and then to estimation before prioritizing into an upcoming release.

> We prefer the term engineering-initiated stories over technical debt because the user story format helps keep us focused on our users and contributors.

Expand Down
6 changes: 3 additions & 3 deletions handbook/engineering/releases.md
Original file line number Diff line number Diff line change
Expand Up @@ -178,11 +178,11 @@ Immediately after publishing a new release of Fleet or fleetd, close out the ass

1. **Update product group boards**: In GitHub Projects, go to each product group board tracking the current release and filter by the current milestone.

2. **Move user stories to drafting board**: Select all items in "Ready for release" that have the `story` label. Apply the `:product` label. These items will move back to the product drafting board.
2. **Move user stories to the intake & outtake board**: Select all items in "Ready for release" that have the `story` label. Apply the `:product` label. These items will move back to the 🦢 Product design intake & outtake board.

3. **Confirm and close**: Make sure that all items with the `story` label have left the "Ready for release" column. Select all remaining items in the "Ready for release" column and move them to the "Closed" column. This will close the related GitHub issues.

4. **Confirm and celebrate**: Open the [Drafting](https://github.com/orgs/fleetdm/projects/67) board. Filter by the current milestone and move all stories to the "Confirm and celebrate" column. Product will close the issues during their [confirm and celebrate ritual](https://fleetdm.com/handbook/product#rituals). [Engineering-initiated stories](https://fleetdm.com/handbook/engineering#create-an-engineering-initiated-story) (`~engineering-initiated` label) can be closed without confirm and celebrate.
4. **Confirm and celebrate**: Open the [🦢 Product design intake & outtake](https://github.com/orgs/fleetdm/projects/67) board. Filter by the current milestone and move all stories to the "Confirm and celebrate" column. Product will close the issues during their [confirm and celebrate ritual](https://fleetdm.com/handbook/product#rituals). [Engineering-initiated stories](https://fleetdm.com/handbook/engineering#create-an-engineering-initiated-story) (`~engineering-initiated` label) can be closed without confirm and celebrate.

5. **Close GitHub milestone**: Visit [GitHub's milestone page](https://github.com/fleetdm/fleet/milestones) and close the current milestone.

Expand Down Expand Up @@ -214,7 +214,7 @@ Some of our code does not go through a scheduled release process and is released
In these cases there are two differences in our pull request process:

- QA is done before merging the code change to the main branch.
- Tickets are not moved to "Ready for release". Bugs are closed, and user stories are moved to the product drafting board's "Confirm and celebrate" column.
- Tickets are not moved to "Ready for release". Bugs are closed, and user stories are moved to the 🦢 Product design intake & outtake board's "Confirm and celebrate" column.


## Server and agent compatibility
Expand Down
Loading
Loading