Skip to content

Commit 6b724e6

Browse files
docs(ADR-003): remove limiting language, enrich context model
Address review feedback: - Issue quality bar: body is primary directive, not exclusively sufficient — comments, predecessors, downstream goals all add context - Issue body section: renamed from "source of truth" to "primary directive"; reviewer synthesizes threads with body before implementation - Pre-start review: adds context synthesis step (predecessors, adjacent state, forward-look into downstream) - Work-in-progress: allows serializable work with declared ordering Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent bfdfc3f commit 6b724e6

2 files changed

Lines changed: 16 additions & 12 deletions

File tree

docs/decisions/003-contribution-governance.md

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ Every PR references an issue. The issue provides rationale, sufficient context f
1717

1818
### Issue quality bar
1919

20-
An issue is "ready for work" when a contributor can read the body alonewithout comments, related issues, or clarifying questions — and know exactly what to build.
20+
An issue is "ready for work" when the body, together with its linked context — comments, replies, predecessor issues, related PRs (open and merged), and downstream goals — gives the implementer enough to proceed without ambiguity. The body is the primary directive; comments and threads add solution-space context; predecessors establish environmental architecture; downstream issues inform alignment.
2121

2222
### Roadmap alignment
2323

@@ -31,23 +31,25 @@ Only `admin` users can mark an issue `approved`. Unapproved and unassigned issue
3131

3232
Unassigned means available. On starting work, self-assign. Multiple assignees (>1) require intentionality verification.
3333

34-
### Issue body is source of truth
34+
### Issue body as primary directive
3535

36-
Discussion threads are folded back into the body. Unresolved conflicts are marked explicitly:
36+
The issue body provides the primary directive for implementation. Comments, replies, and clarifying answers add context to the solution space. Ideally the body is sufficient, but it need not be the exclusive source — the reviewer for implementation readiness should synthesize comments and replies with the body to surface inconsistencies and resolve ambiguities before commencing work.
37+
38+
Unresolved conflicts are marked explicitly:
3739
- `**UNRESOLVED:** <question>` — blocks implementation
3840
- `**DEFERRED:** <question> — tracked in #N` — does not block
3941

4042
### Pre-start review
4143

4244
Before implementation, the assigned contributor must:
4345

44-
**Read and verify:** All comments read, no unresolved conflicts.
46+
**Synthesize context:** Read all comments and replies. Review predecessor issues and PRs (both merged and in-flight). Consider downstream goals and adjacent state (other open PRs, recent merges, dependency changes). Surface inconsistencies between body and thread before proceeding.
4547

4648
**Priority evaluation:** Identify priority (`p0`/`p1`/`p2`). If asked to work a lower-priority item while higher-priority items are unassigned, challenge: "Should I work on #X (p0) instead?"
4749

4850
**Predecessor validation:** If predecessors are incomplete, unassigned, and not in a stacked PR — challenge: "Steps 1-3 are incomplete. Starting step 4 may cause rework."
4951

50-
**Cross-reference audit:** Search open issues for duplicates. Search open PRs (including drafts) for conflicts. Flag overlaps. Check the full dependency graph.
52+
**Cross-reference audit:** Search open issues for duplicates. Search open PRs (including drafts) for conflicts. Flag overlaps. Check the full dependency graph. Forward-look into downstream actions to ensure alignment.
5153

5254
**Final gate:** If all checks pass, comment "Starting implementation."
5355

@@ -57,7 +59,7 @@ Agents use identifiable credentials. The prompting user and acting agent must be
5759

5860
### Work-in-progress discipline
5961

60-
Provide progress signals at checkpoints. If blocked or abandoning, comment and unassign. Do not start multiple issues simultaneously unless explicitly parallelizable.
62+
Provide progress signals at checkpoints. If blocked or abandoning, comment and unassign. Do not start multiple issues simultaneously unless explicitly parallelizable or serializable with declared ordering (where context from one directly informs the next).
6163

6264
### Completion and handoff
6365

docs/src/content/docs/decisions/003-contribution-governance.md

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ Every PR references an issue. The issue provides rationale, sufficient context f
2121

2222
### Issue quality bar
2323

24-
An issue is "ready for work" when a contributor can read the body alonewithout comments, related issues, or clarifying questions — and know exactly what to build.
24+
An issue is "ready for work" when the body, together with its linked context — comments, replies, predecessor issues, related PRs (open and merged), and downstream goals — gives the implementer enough to proceed without ambiguity. The body is the primary directive; comments and threads add solution-space context; predecessors establish environmental architecture; downstream issues inform alignment.
2525

2626
### Roadmap alignment
2727

@@ -35,23 +35,25 @@ Only `admin` users can mark an issue `approved`. Unapproved and unassigned issue
3535

3636
Unassigned means available. On starting work, self-assign. Multiple assignees (>1) require intentionality verification.
3737

38-
### Issue body is source of truth
38+
### Issue body as primary directive
3939

40-
Discussion threads are folded back into the body. Unresolved conflicts are marked explicitly:
40+
The issue body provides the primary directive for implementation. Comments, replies, and clarifying answers add context to the solution space. Ideally the body is sufficient, but it need not be the exclusive source — the reviewer for implementation readiness should synthesize comments and replies with the body to surface inconsistencies and resolve ambiguities before commencing work.
41+
42+
Unresolved conflicts are marked explicitly:
4143
- `**UNRESOLVED:** <question>` — blocks implementation
4244
- `**DEFERRED:** <question> — tracked in #N` — does not block
4345

4446
### Pre-start review
4547

4648
Before implementation, the assigned contributor must:
4749

48-
**Read and verify:** All comments read, no unresolved conflicts.
50+
**Synthesize context:** Read all comments and replies. Review predecessor issues and PRs (both merged and in-flight). Consider downstream goals and adjacent state (other open PRs, recent merges, dependency changes). Surface inconsistencies between body and thread before proceeding.
4951

5052
**Priority evaluation:** Identify priority (`p0`/`p1`/`p2`). If asked to work a lower-priority item while higher-priority items are unassigned, challenge: "Should I work on #X (p0) instead?"
5153

5254
**Predecessor validation:** If predecessors are incomplete, unassigned, and not in a stacked PR — challenge: "Steps 1-3 are incomplete. Starting step 4 may cause rework."
5355

54-
**Cross-reference audit:** Search open issues for duplicates. Search open PRs (including drafts) for conflicts. Flag overlaps. Check the full dependency graph.
56+
**Cross-reference audit:** Search open issues for duplicates. Search open PRs (including drafts) for conflicts. Flag overlaps. Check the full dependency graph. Forward-look into downstream actions to ensure alignment.
5557

5658
**Final gate:** If all checks pass, comment "Starting implementation."
5759

@@ -61,7 +63,7 @@ Agents use identifiable credentials. The prompting user and acting agent must be
6163

6264
### Work-in-progress discipline
6365

64-
Provide progress signals at checkpoints. If blocked or abandoning, comment and unassign. Do not start multiple issues simultaneously unless explicitly parallelizable.
66+
Provide progress signals at checkpoints. If blocked or abandoning, comment and unassign. Do not start multiple issues simultaneously unless explicitly parallelizable or serializable with declared ordering (where context from one directly informs the next).
6567

6668
### Completion and handoff
6769

0 commit comments

Comments
 (0)