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
description: Create a verifiable Goal workflow issue
3
+
title: "[Goal] "
4
+
labels:
5
+
- goal
6
+
body:
7
+
- type: markdown
8
+
attributes:
9
+
value: |
10
+
Use this form for one coherent Goal workflow objective with a clear stopping condition.
11
+
12
+
A good goal is bigger than one prompt but smaller than an open-ended backlog. It should tell the workflow what to do, what not to change, how to prove progress, and when to stop as blocked instead of guessing.
13
+
14
+
If the goal needs a helper script, fixture, package script, CI target, or other setup before doneness can be judged, ask an agent to use `new-goal.md` first and create the setup PR before submitting this form.
15
+
16
+
- type: input
17
+
id: goal
18
+
attributes:
19
+
label: Goal
20
+
description: State the desired end state in one sentence.
21
+
placeholder: "Migrate tests/auth from legacyAuthHelper to createTestSession."
22
+
validations:
23
+
required: true
24
+
25
+
- type: textarea
26
+
id: completion-contract
27
+
attributes:
28
+
label: Completion Contract
29
+
description: Define exactly when Goal should add `goal-completed` and remove `goal`.
30
+
placeholder: |
31
+
Goal is complete only when:
32
+
- Every test in tests/auth uses createTestSession.
33
+
- legacyAuthHelper has no remaining call sites in tests/auth.
34
+
- The auth test suite and lint pass.
35
+
validations:
36
+
required: true
37
+
38
+
- type: textarea
39
+
id: evidence
40
+
attributes:
41
+
label: Evidence / Verification
42
+
description: List the commands, scripts, artifacts, screenshots, logs, or checks that prove the completion contract.
43
+
placeholder: |
44
+
Run from the repository root:
45
+
46
+
```bash
47
+
set -euo pipefail
48
+
npm test -- tests/auth
49
+
npm run lint
50
+
! rg "legacyAuthHelper" tests/auth
51
+
```
52
+
53
+
Completion requires every command to exit 0.
54
+
validations:
55
+
required: true
56
+
57
+
- type: textarea
58
+
id: doneness-script
59
+
attributes:
60
+
label: Optional Inline Doneness Script
61
+
description: If a compact script can judge completion, put it here. Prefer an inline script over a setup PR when it only calls existing repo commands.
62
+
render: bash
63
+
placeholder: |
64
+
set -euo pipefail
65
+
npm test -- tests/auth
66
+
npm run lint
67
+
! rg "legacyAuthHelper" tests/auth
68
+
validations:
69
+
required: false
70
+
71
+
- type: textarea
72
+
id: scope
73
+
attributes:
74
+
label: Scope and Constraints
75
+
description: Say what the workflow may change and what must not change or regress.
76
+
placeholder: |
77
+
The workflow may change:
78
+
- tests/auth/**
79
+
- test/helpers/auth.ts
80
+
81
+
The workflow must not change:
82
+
- production authentication behavior
83
+
- public API names
84
+
- payment provider configuration
85
+
validations:
86
+
required: true
87
+
88
+
- type: textarea
89
+
id: context
90
+
attributes:
91
+
label: Context To Read First
92
+
description: Point the workflow at the files, docs, issues, PRs, logs, designs, references, or examples it should inspect before changing code.
93
+
placeholder: |
94
+
- tests/auth/session.test.ts
95
+
- test/helpers/auth.ts
96
+
- docs/testing/auth.md
97
+
- #123
98
+
validations:
99
+
required: true
100
+
101
+
- type: textarea
102
+
id: iteration-policy
103
+
attributes:
104
+
label: Iteration Policy
105
+
description: Explain how the workflow should choose each next checkpoint and report progress.
106
+
placeholder: |
107
+
Work in one coherent test group at a time. After each run, report what changed, what was verified, what remains, and whether anything is blocked. Prefer the smallest next checkpoint that can be validated with the evidence above.
108
+
validations:
109
+
required: true
110
+
111
+
- type: textarea
112
+
id: blocked-stop-condition
113
+
attributes:
114
+
label: Blocked Stop Condition
115
+
description: Define when the workflow should stop substantive work and comment instead of guessing.
116
+
placeholder: |
117
+
Stop and comment if tests require unavailable secrets, fixtures, product decisions, or external services. The blocked comment should include the exact command output, what is known, and the smallest user action that would unblock the workflow.
118
+
validations:
119
+
required: true
120
+
121
+
- type: checkboxes
122
+
id: readiness
123
+
attributes:
124
+
label: Ready To Start
125
+
description: Submitting this form applies the `goal` label and may start the workflow.
126
+
options:
127
+
- label: This goal does not need a setup PR before the workflow starts.
128
+
required: true
129
+
- label: This is one coherent objective, not a loose backlog.
130
+
required: true
131
+
- label: The completion contract has observable evidence.
132
+
required: true
133
+
- label: The constraints are specific enough to prevent accidental broad rewrites.
134
+
required: true
135
+
- label: The workflow can tell the difference between done, not done yet, and blocked.
0 commit comments