You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/adr/20251211-github-issue-management-agreement.md
+32-26Lines changed: 32 additions & 26 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -24,59 +24,65 @@ These needs can be accomplished by agreeing to a structure of organizing informa
24
24
Currently I've seen different individuals put effort into implementing and suggesting (Thank you @vitor) systems for managing github issues and a strong desire to have all project work logged. That leads me to believe we need it, and there's appetite to align on one! So hopefully the buy-in is there.
25
25
26
26
### Constraints?
27
-
- The Development Seed team currently organizes sprint work within our [Veda Dashboard Team project space](https://github.com/orgs/NASA-IMPACT/projects/17). Github projects allows us to manage issues in a centralized way that are distributed across repos often having different configs for issue meta data (types, labels, etc). That means we cannot rely on repo level meta data fields.
27
+
- The Development Seed and stakeholder teams currently organize work within Github project spaces (ex. [Veda Dashboard Team sprint board](https://github.com/orgs/NASA-IMPACT/projects/17)). Github projects allow us to manage issues distributed across repos in a centralized way. Repositories can have different settings for issue meta data (types, labels, etc) which require extra overhead to align across all repositories that not all team members will have access to do so. **That means we cannot rely on repo level meta data fields to organize our work**.
28
+
- IMPACT stakeholders need visibility into PI Objectives as issues that can be viewed on [this project board](https://github.com/orgs/NASA-IMPACT/projects/39/views/8)
28
29
- Users may already have existing workflows (@aboydnw) that need to be preserved or easily updated.
29
30
- We work on projects across organizations and share repos, so this system will need to also be shared out with and work for our collaborators so there's consistency across our shared repo issues.
30
31
31
32
## Proposed Guidelines
32
33
33
-
### Epics
34
-
(or maybe PI Objectives, I'm not yet sure @aboydnw how you prefer to organize bodies of work*, but I don't think these bodies of work should be tied to PIs as they can often span more than one PI).
34
+
### Initiatives
35
+
All bodies of work should have a parent initiative captured in a GH Issue that will be a **living** document for the project for team members to reference both during and after the project work is completed. It should act as the central hub for documentation for the epic that can be referenced in the repo(s) README that results from the initiative.
35
36
36
-
All bodies of work should have a parent epic captured in a GH Issue that will be a **living** document for the project for folks to reference both during and after the project work is completed. It should act as the central hub for documentation for the epic that can be referenced in the final epic repo(s) README.
37
-
38
-
The epic/objective issue should have
39
-
-as assigned project(s) so it can show up in our [Veda Dashboard Team project space](https://github.com/orgs/NASA-IMPACT/projects/17)
40
-
<imgwidth="1156"height="483"alt="Screenshot 2025-12-10 at 11 55 14 AM"src="https://github.com/user-attachments/assets/bde8ecd3-44fa-4c12-94ee-5bd61463a5fb" />
37
+
The initiative issue should have:
38
+
- an assigned project(s) of [Veda Dashboard Team](https://github.com/orgs/NASA-IMPACT/projects/17)
39
+
- a project issue type of initiative
40
+
-an estimated start date and estimated delivery date (these could be as rough as quarters / PIs)
- a title with an acronymand full name (ex. [EIE] Earth Information Explorer)
43
+
- a title with an acronym, the word Initiative and a full name (ex. [EIE] Initiative - Earth Information Explorer)
43
44
- a summary of what the work entails / the problem it is solving
44
45
- the expected owners of the work
45
46
- the expected stakeholders of the work
46
47
- if there's an ongoing meeting, when it happens (so users can easily find the invite, gemini notes, and recordings)
47
-
- an issue type of epic (with owner org access it would be easy [to add 'epic' as a ticket type](https://docs.github.com/en/issues/tracking-your-work-with-issues/using-issues/managing-issue-types-in-an-organization))
48
-
- an estimated start date and estimated delivery date (these could be as rough as quarters / PIs)
49
-
<imgwidth="1269"height="471"alt="Screenshot 2025-12-11 at 12 22 02 PM"src="https://github.com/user-attachments/assets/2accce9b-d2da-4b35-87f4-9bfc1872ba56" />
50
-
51
48
- risks
52
49
- scope of work / what we have agreed to do and not to do
53
50
(TBD - when this shows up in our project workflow, but it must be defined)
54
-
- all related milestones (if relevant) where milestone fields have
55
-
- title
56
-
- description / scope of work
57
-
- due date
58
51
- deployed urls
52
+
- github repositories
59
53
- a resources sections which includes relevant document links (especially those not on GH)
60
54
- our contract,
61
55
- product briefs,
62
-
- repos, adrs, infrastructure docs,
63
56
- weekly sync notes,
57
+
- figmas
58
+
- infrastructure docs that do not live within a github repository,
64
59
- external google docs, etc.
65
60
61
+
An issue template will be provided to assist in Initiative issue creation.
62
+
66
63
Keep in mind, this is a living document, so as new documents are created, they should be linked here and as high level project definition changes, that should be reflected here as well.
67
64
68
-
When an epic is considered complete, any open tickets should be closed or moved to a Project specific Tech Debt epic (ex. [EIE - DEBT] Earth Information Explorer TECH DEBT)
65
+
When an initiative is considered complete, if there are open tickets, a new Tech Debt issue should be created (ex. [Tech Debt] - EIE). All open tickets should be moved to sub-issues of this parent Tech Debt issue, or they may be closed as unplanned.
66
+
67
+
### PI Objectives
68
+
An initiative will be broken down into sub-issues labeled PI Objectives to fulfill stakeholder progress tracking.
69
+
The PI Objective issue should have:
70
+
- a parent issue of type initiative
71
+
- an assigned project(s) of [IMPACT Project Board](https://github.com/orgs/NASA-IMPACT/projects/39/views/8)
If the epic/objective is a large body of work, sub-issues can be grouped into [milestones](https://docs.github.com/en/issues/using-labels-and-milestones-to-track-work/about-milestones) for better tracking. Milestones are not issues, they are meta data attached to an issue (like a label) but can have a title, description, due date. Issues can easily be prioritized under a milestone by dragging and dropping.
76
+
- a title prefixed with the initiative acronym, year and quarter, (ex. [EIE] - 26.1 Objective 1: Prototype EIE)
77
+
- details not included in the parent initiative about the scope of work
78
+
79
+
An issue template will be provided to assist in PI Objective issue creation.
72
80
73
81
### Sub Issues
74
-
Tasks will be used to breakdown the work needed to complete an epic. Because these will be defined as issues under an epic issue, the heirarchy/relationship to the epic will already be present. We should limit sub-issues to two levels for task visibility.
82
+
Tasks will be used to breakdown the work needed to complete an initiative. As timelines become more clear, these sub-issues can be moved under the appropriate Initiative's sub PI Objective ticket. Because these will be defined as issues under an initiative issue or a PI Objective issue, the heirarchy/relationship to the initiative or PI Objective will already be present. We should limit sub-issues to two levels beyond this for task visibility.
75
83
76
84
An Issue should have:
77
-
- a parent (unless it is the parent epic or of type bug. Even [Tech Debt] can have it's own epic that can be used to track repo health)
78
-
<imgwidth="356"height="202"alt="Screenshot 2025-12-10 at 12 22 24 PM"src="https://github.com/user-attachments/assets/9d3069e1-571d-4eb0-81c4-e55c27feede5" />
79
-
85
+
- a parent (unless it is the parent initiative, a parent tech debt issue or of type bug. [Tech Debt] can be it's own parent that can be used to track repo health)
80
86
- a title prefixed with the epic acronym (ex. [EIE] Initial repo/application scaffolding)
81
87
- a subtitle if the issue will contain output that isn't production code, ie. ADR (it's my understanding that ADRs can be RFCs if their status is in progress / in review), Doc, Spike. (ex. [EIE] Spike: globe visualization, [EIE] Doc: deploy process).
82
88
- a description
@@ -85,7 +91,7 @@ An Issue should have:
85
91
- as the work is completed, for ADRs, Docs or Spikes or any body of work w/o a linked PR a link should be provided in the comments to the completed work for reference.
86
92
- continue to use labels for 'good first issue'
87
93
88
-
All issues (epics, sub-issues, bugs) should live in their relevant corresponding repo where possible. Otherwise our current practice is to manage issues in the `veda-ui` repo.
94
+
All issues (initiatives, Tech Debt, PI Objectives, sub-issues, bugs) should live in their relevant corresponding repo where possible. Otherwise our current practice is to manage issues in the `veda-ui` repo.
89
95
90
96
### Pull Requests
91
97
- Should be linked to an issue. You can use [GH keywords](https://docs.github.com/en/issues/tracking-your-work-with-issues/using-issues/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword) like 'closes' or the `#` to bring up issue numbers to link without automations.
0 commit comments