opencode-manifold 0.5.14 → 0.5.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,234 +0,0 @@
1
- # Manifold Schema
2
-
3
- This document defines the conventions for all wiki elements in the Manifold folder.
4
-
5
- ---
6
-
7
- ## Task File Format
8
-
9
- Location: `Manifold/tasks/<task-id>.md`
10
-
11
- ```markdown
12
- # <task-id>: <Task Title>
13
-
14
- **Date:** <YYYY-MM-DD>
15
- **Status:** <IN_PROGRESS | COMPLETED | ESCALATED_USER>
16
- **Loops:** <number>
17
- **Git Commit:** <commit-hash>
18
-
19
- ## Task
20
- <Task description from the plan>
21
-
22
- ## Context Used
23
- - codebase-index: <files or search terms used>
24
- - Wiki: <prior task logs referenced>
25
- - Graph: <graph files read>
26
-
27
- ## Scoped Prompt
28
- > <The composed prompt for Senior Dev>
29
-
30
- ## Design Decisions
31
- - <Decision 1 and why it was made>
32
- - <Decision 2 and why it was made>
33
-
34
- ## Files Touched
35
- - [[<file-path-1>]]
36
- - [[<file-path-2>]]
37
-
38
- ## Loop History
39
- ### Loop 1
40
- - **Senior:** <brief summary of Senior's implementation>
41
- - **Junior:** <Junior's COMPLETE or QUESTIONS response>
42
-
43
- ### Loop 2
44
- - **Senior:** <brief summary of Senior's revision>
45
- - **Junior:** <Junior's COMPLETE or QUESTIONS response>
46
- ```
47
-
48
- ---
49
-
50
- ## index.md Update Procedure
51
-
52
- After completing a task, add an entry under the correct plan slug section.
53
-
54
- **If the plan slug section doesn't exist, create it:**
55
-
56
- ```markdown
57
- ## <plan-slug> — <Plan Title>
58
-
59
- - [[<task-id>]] — <one-line summary> | <date> | <STATUS>
60
- ```
61
-
62
- **If the plan slug section exists, append:**
63
-
64
- ```markdown
65
- - [[<task-id>]] — <one-line summary> | <date> | <STATUS>
66
- ```
67
-
68
- ---
69
-
70
- ## log.md Append Format
71
-
72
- Append a single line at the end of `Manifold/log.md`:
73
-
74
- ```markdown
75
- ## [<YYYY-MM-DD>] <task-id> | <description> | <STATUS> | <loop-count> loops
76
- ```
77
-
78
- Example:
79
- ```markdown
80
- ## [2026-04-06] share-cart-001 | Implement cart data model | COMPLETED | 2 loops
81
- ```
82
-
83
- ---
84
-
85
- ## Graph File Format
86
-
87
- Location: `Manifold/graph/<graph-name>.md`
88
-
89
- Where `<graph-name>` is the original file path with:
90
- - Replace `/` with `__SL__`
91
- - Replace `.` with `__DT__`
92
- - Append `.md`
93
-
94
- Examples:
95
- - `src/middleware/auth.ts` → `src__SL__middleware__SL__auth__DT__ts.md`
96
- - `src/utils/helpers.ts` → `src__SL__utils__SL__helpers__DT__ts.md`
97
-
98
- ```markdown
99
- ---
100
- filePath: <original-file-path>
101
- calls:
102
- - <file this file calls>
103
- - <another file>
104
- dependsOn:
105
- - <file this file depends on>
106
- - <another dependency>
107
- tasksThatEdited:
108
- - <task-id-1>
109
- - <task-id-2>
110
- ---
111
-
112
- ## Calls
113
- - <file this file calls>
114
- - <another file>
115
-
116
- ## Depends On
117
- - <file this file depends on>
118
- - <another dependency>
119
-
120
- ## Tasks That Edited
121
- - [[<task-id-1>]]
122
- - [[<task-id-2>]]
123
- ```
124
-
125
- **YAML frontmatter** is the source of truth for programmatic reads/writes. The **markdown body** is a rendered view for Obsidian's graph view (wikilinks enable connections).
126
-
127
- **`Calls` and `Depends On`** are populated automatically from the codebase index after each task completes. Do NOT manually edit these sections.
128
-
129
- **On task completion:** Add the task ID to the `tasksThatEdited` frontmatter field and the `Tasks That Edited` body section of all graph files for files that were touched.
130
-
131
- **If graph file doesn't exist:** Create it with the structure above.
132
-
133
- ---
134
-
135
- ## Wikilink Conventions
136
-
137
- - **Task references:** `[[<task-id>]]`
138
- - Example: `[[share-cart-001]]`
139
- - **File references:** `[[<file-path>]]`
140
- - Example: `[[src/middleware/auth.ts]]`
141
- - **Always use absolute-style paths** (no `./` or `../`)
142
-
143
- ---
144
-
145
- ## Status Values
146
-
147
- | Status | When to Use |
148
- |--------|-------------|
149
- | `IN_PROGRESS` | Task log created, implementation ongoing |
150
- | `COMPLETED` | Task finished successfully, Junior approved |
151
- | `ESCALATED_USER` | Task blocked, requires human intervention |
152
-
153
- ---
154
-
155
- ## Task Naming
156
-
157
- 1. Generate a short slug (<30 chars) from the plan
158
- 2. Check `Manifold/plans.json` for collision
159
- 3. If collision: append number (e.g., `share-cart-v2`)
160
- 4. Task files: `Manifold/tasks/<slug>-001.md`, `<slug>-002.md`, etc.
161
-
162
- ---
163
-
164
- ## Plans Registry
165
-
166
- Location: `Manifold/plans.json`
167
-
168
- Format:
169
- ```json
170
- {
171
- "<plan-slug>": {
172
- "full_title": "<Plan title>",
173
- "task_count": 7,
174
- "status": "in_progress",
175
- "created": "YYYY-MM-DD",
176
- "plan_file": "/path/to/plan.md"
177
- }
178
- }
179
- ```
180
-
181
- ---
182
-
183
- ## Task List Format
184
-
185
- Location: `Manifold/plans/<slug>-tasks.md`
186
-
187
- Generated by the Todo agent when the input is not already a granular task list.
188
-
189
- ```markdown
190
- # Task List: <Plan Title>
191
-
192
- **Source:** <path or description of the original input>
193
- **Generated:** <YYYY-MM-DD>
194
- **Total Tasks:** <number>
195
-
196
- ---
197
-
198
- ## Task 1: <title>
199
-
200
- - **Description:** <what to do — framed as data transformation where natural>
201
- - **Purity:** <pure | shell | mixed>
202
- - **Dependencies:** <none | task numbers>
203
- - **Input Contract:** <what data/inputs this task needs>
204
- - **Output Contract:** <what this task produces>
205
-
206
- ---
207
-
208
- ## Task 2: <title>
209
-
210
- - **Description:** <what to do>
211
- - **Purity:** <pure | shell | mixed>
212
- - **Dependencies:** 1
213
- - **Input Contract:** <what it needs from Task 1>
214
- - **Output Contract:** <what it produces>
215
- ```
216
-
217
- ### Purity Tags
218
-
219
- | Tag | Meaning | When to Use |
220
- |-----|---------|-------------|
221
- | `pure` | Data transformation only. No IO, no side effects, no external state. Same input always produces same output. | Task is a self-contained computation: validation, transformation, calculation, schema definition |
222
- | `shell` | IO or side-effect boundary. Reads/writes to external systems, manages state. | Task is wiring: API endpoints, database operations, file I/O, UI rendering |
223
- | `mixed` | Logic and IO are interleaved in a way that's impractical to separate without over-engineering. | Task naturally combines both and splitting would create ceremony |
224
-
225
- ### Dispatch Convention with Purity
226
-
227
- When the Manifold agent dispatches a tagged task, the purity tag is included in the description:
228
-
229
- ```
230
- dispatchTask({ task_number: 1, description: "[pure] Define cart item schema", plan_file: "..." })
231
- dispatchTask({ task_number: 2, description: "[shell] Wire cart endpoint to database", plan_file: "..." })
232
- ```
233
-
234
- This allows the Clerk to apply purity-aware prompt framing when composing scoped prompts.
@@ -1,11 +0,0 @@
1
- {
2
- "current_task": null,
3
- "state": "idle",
4
- "loop_count": 0,
5
- "clerk_retry_count": 0,
6
- "scoped_prompt": null,
7
- "senior_output": null,
8
- "junior_response": null,
9
- "debug_suggestion": null,
10
- "loop_history": []
11
- }
@@ -1,139 +0,0 @@
1
- # Clerk Orchestration Skill
2
-
3
- This skill guides the Clerk agent through researching context and composing effective scoped prompts.
4
-
5
- ## Research Phase
6
-
7
- ### 1. Codebase-Index Search
8
-
9
- Use the `codebase-index` tool for semantic search:
10
-
11
- **How to query:**
12
- - Think about what code is relevant to the task
13
- - Formulate queries like:
14
- - "Where is authentication logic?"
15
- - "How are API routes structured?"
16
- - "What middleware patterns exist?"
17
- - The tool understands intent, not just keywords
18
-
19
- **Parameters:**
20
- - `query`: Your search phrase
21
- - `maxResults`: From `Manifold/settings.json` (default: 10)
22
-
23
- **When to use vs direct file reads:**
24
- - Use semantic search when you don't know the exact file
25
- - Use direct reads when you already know which file to check
26
-
27
- ### 2. Wiki Lookback
28
-
29
- Read recent task logs from `Manifold/tasks/`:
30
-
31
- **What to look for:**
32
- - Design decisions that might apply
33
- - Rejected approaches (avoid repeating mistakes)
34
- - Established patterns and conventions
35
- - Dependencies between tasks
36
-
37
- **Parameters:**
38
- - `recentTaskCount`: From `Manifold/settings.json` (default: 3)
39
-
40
- **Search strategies:**
41
- - By keyword: search for terms in the task description
42
- - By file path: look for tasks that touched the same files
43
- - By slug: if you know the plan slug, find related tasks
44
-
45
- ### 3. Graph Analysis
46
-
47
- Read graph files from `Manifold/graph/` for dependency analysis:
48
-
49
- **Graph file naming:** `src/middleware/auth.ts` → `src_middleware_auth_ts.md`
50
-
51
- **What graph files contain:**
52
- - `## Calls`: What this file calls
53
- - `## Depends On`: What this file depends on
54
- - `## Tasks That Edited`: Which tasks modified this file
55
-
56
- **How to find relevant graphs:**
57
- 1. Start from files identified in codebase search
58
- 2. Read their graph entries
59
- 3. Follow the dependency chain (read graphs for dependencies too)
60
- 4. Limit to ~5 most relevant graphs to avoid overload
61
-
62
- ## Scoped Prompt Composition
63
-
64
- ### The Formula
65
-
66
- A good scoped prompt contains:
67
-
68
- 1. **Task Goal** (1-2 sentences)
69
- - What the Senior Dev must accomplish
70
- - Be specific, not "implement auth"
71
- - Prefer framing as a data transformation: "Given X, produce Y" when this makes the goal clearer
72
-
73
- 2. **Relevant Code Snippets** (as needed)
74
- - Include 3-10 of the most relevant snippets
75
- - Include file paths
76
- - Focus on the patterns to follow
77
-
78
- 3. **Prior Decisions** (if applicable)
79
- - Relevant design decisions from wiki
80
- - Why certain approaches were chosen
81
- - What to avoid
82
-
83
- 4. **Design Guidelines** (1-5 bullet points)
84
- - Language/framework conventions
85
- - Project-specific patterns
86
- - Non-functional requirements (performance, security)
87
-
88
- 5. **Purity Directive** (if task has a purity tag)
89
- - `[pure]` → Explicitly state: no IO, no side effects, no external state. Frame the input/output contract.
90
- - `[shell]` → Clarify the IO boundary: what is being read/written, what external system is involved
91
- - `[mixed]` → Note where the logic/IO boundary falls; keep the pure portions clean
92
- - No tag → Skip this section
93
-
94
- ### Purity-Aware Prompting
95
-
96
- The Todo agent may tag tasks with purity indicators. Use these to shape how you frame the scoped prompt:
97
-
98
- **For `pure` tasks:**
99
- - Frame the task goal as: "Write a function/module that transforms [input type] into [output type]"
100
- - Specify the input/output contract explicitly
101
- - Emphasize: no filesystem, no network, no database, no global state mutations
102
- - Example: *"Write `calculateDiscount(items: CartItem[], rules: DiscountRule[]): number` — pure function, no IO, deterministic output"*
103
-
104
- **For `shell` tasks:**
105
- - Identify what upstream pure logic this task wires up (if any)
106
- - Specify the IO boundary: database operations, API calls, file reads/writes
107
- - Example: *"Wire the `calculateDiscount` function into the `/api/cart/update` endpoint. Read cart from DB, call the pure function, persist result"*
108
-
109
- **For `mixed` tasks:**
110
- - Acknowledge that logic and IO are interleaved
111
- - Help the Senior Dev keep the logic portions testable by noting where the boundary falls
112
- - Don't force an artificial split — just make the boundary visible
113
-
114
- **Pragmatic rule:** If functional framing makes the goal *less clear* (e.g., in a framework that's inherently imperative like Express middleware), use whatever framing is most natural for the project. The goal is clarity, not purity dogma.
115
-
116
- ### Breadth vs Focus
117
-
118
- **Include enough to be useful:**
119
- - The Senior Dev needs to understand the context
120
- - Include files that will be modified
121
- - Include files that set patterns to follow
122
-
123
- **Don't overwhelm:**
124
- - Don't include the entire codebase
125
- - Don't include every file that touches a module
126
- - Prioritize: direct dependencies > indirect, recent changes > old
127
-
128
- **Rule of thumb:** If the prompt gets longer than ~800 words, trim it.
129
-
130
- ## Checklist Before Submitting
131
-
132
- - [ ] Task goal is specific and actionable
133
- - [ ] Task goal is framed as a data transformation where natural (without forcing it)
134
- - [ ] Code snippets are directly relevant (not just interesting)
135
- - [ ] Prior decisions are actually applicable to this task
136
- - [ ] Design guidelines are specific (not vague platitudes)
137
- - [ ] Purity directive matches the task's purity tag (if present)
138
- - [ ] Prompt length is reasonable (under ~800 words)
139
- - [ ] All context documents are listed for the task log
@@ -1,75 +0,0 @@
1
- # Research Skill
2
-
3
- Use this skill to gather relevant context before composing a scoped prompt or decomposing a plan.
4
-
5
- ## When to Use
6
-
7
- Use this skill when:
8
- - The Clerk needs to gather context before calling @senior-dev
9
- - The Todo agent needs to research the codebase before decomposing a plan
10
-
11
- ## Research Steps
12
-
13
- ### 1. Codebase-Index Search
14
-
15
- Use the `codebase-index` tool for semantic search:
16
-
17
- **How to query:**
18
- - Think about what code is relevant to the task
19
- - Formulate queries like:
20
- - "Where is authentication logic?"
21
- - "How are API routes structured?"
22
- - "What middleware patterns exist?"
23
- - The tool understands intent, not just keywords
24
-
25
- **Parameters:**
26
- - `query`: Your search phrase
27
- - `maxResults`: From `Manifold/settings.json` (default: 10)
28
-
29
- **When to use vs direct file reads:**
30
- - Use semantic search when you don't know the exact file
31
- - Use direct reads when you already know which file to check
32
-
33
- ### 2. Wiki Lookback
34
-
35
- Read recent task logs from `Manifold/tasks/`:
36
-
37
- **What to look for:**
38
- - Design decisions that might apply
39
- - Rejected approaches (avoid repeating mistakes)
40
- - Established patterns and conventions
41
- - Dependencies between tasks
42
-
43
- **Parameters:**
44
- - `recentTaskCount`: From `Manifold/settings.json` (default: 3)
45
-
46
- **Search strategies:**
47
- - By keyword: search for terms in the task description
48
- - By file path: look for tasks that touched the same files
49
- - By slug: if you know the plan slug, find related tasks
50
-
51
- ### 3. Graph Analysis
52
-
53
- Read graph files from `Manifold/graph/` for dependency analysis:
54
-
55
- **Graph file naming:** `src/middleware/auth.ts` → `src_middleware_auth_ts.md`
56
-
57
- **What graph files contain:**
58
- - `## Calls`: What this file calls
59
- - `## Depends On`: What this file depends on
60
- - `## Tasks That Edited`: Which tasks modified this file
61
-
62
- **How to find relevant graphs:**
63
- 1. Start from files identified in codebase search
64
- 2. Read their graph entries
65
- 3. Follow the dependency chain (read graphs for dependencies too)
66
- 4. Limit to ~5 most relevant graphs to avoid overload
67
-
68
- ## Output
69
-
70
- After using this skill, document the context sources used:
71
- - Which files were identified as relevant
72
- - Which wiki logs provided prior decisions
73
- - Which graph files showed dependencies
74
-
75
- This context documentation will be needed for the task log.
@@ -1,139 +0,0 @@
1
- # Wiki Ingest Skill
2
-
3
- This skill guides the Clerk on how to log task results to the wiki.
4
-
5
- ## Task File Format
6
-
7
- Create or update `Manifold/tasks/<task-id>.md`:
8
-
9
- ```markdown
10
- # <task-id>: <Task Title>
11
-
12
- **Date:** <YYYY-MM-DD>
13
- **Status:** <IN_PROGRESS | COMPLETED | ESCALATED_USER>
14
- **Loops:** <number>
15
- **Git Commit:** <commit-hash>
16
-
17
- ## Task
18
- <Task description>
19
-
20
- ## Context Used
21
- - codebase-index: <files or search terms>
22
- - Wiki: <prior task logs referenced>
23
- - Graph: <graph files read>
24
-
25
- ## Scoped Prompt
26
- > <The composed prompt for Senior Dev>
27
-
28
- ## Design Decisions
29
- - <Decision 1 and why>
30
- - <Decision 2 and why>
31
-
32
- ## Files Touched
33
- - [[<file-path-1>]]
34
- - [[<file-path-2>]]
35
-
36
- ## Loop History
37
- ### Loop 1
38
- - **Senior:** <what Senior produced>
39
- - **Junior:** <Junior's response>
40
-
41
- ### Loop 2
42
- - **Senior:** <what Senior produced>
43
- - **Junior:** <Junior's response>
44
- ```
45
-
46
- ## Index.md Update
47
-
48
- After completing a task, add entry to `Manifold/index.md`:
49
-
50
- ```markdown
51
- ## <plan-slug> — <Plan Title>
52
-
53
- - [[<task-id-001>]] — <one-line summary> | <date> | COMPLETED
54
- - [[<task-id-002>]] — <one-line summary> | <date> | IN_PROGRESS
55
- ```
56
-
57
- ## Log.md Append
58
-
59
- Append a line to `Manifold/log.md`:
60
-
61
- ```markdown
62
- ## [<date>] <task-id> | <description> | <STATUS> | <loop-count> loops
63
- ```
64
-
65
- Example:
66
- ```markdown
67
- ## [2026-04-06] share-cart-001 | Implement cart data model | COMPLETED | 2 loops
68
- ```
69
-
70
- ## Graph File Update
71
-
72
- For each file touched, update or create `Manifold/graph/<graph-name>.md`:
73
-
74
- ```markdown
75
- ---
76
- filePath: <original-file-path>
77
- calls:
78
- - <files this file calls>
79
- dependsOn:
80
- - <files this file depends on>
81
- tasksThatEdited:
82
- - <task-id>
83
- ---
84
-
85
- ## Calls
86
- - <files this file calls>
87
-
88
- ## Depends On
89
- - <files this file depends on>
90
-
91
- ## Tasks That Edited
92
- - [[<task-id>]]
93
- - [[<other-task-id>]]
94
- ```
95
-
96
- **IMPORTANT:** Only update the `Tasks That Edited` section and the `tasksThatEdited` frontmatter field. The `Calls` and `Depends On` sections are populated automatically from the codebase index — do NOT manually edit them.
97
-
98
- ### Graph Filename Convention
99
-
100
- Replace `/` with `__SL__` and `.` with `__DT__`, append `.md`:
101
- - `src/middleware/auth.ts` → `src__SL__middleware__SL__auth__DT__ts.md`
102
- - `src/utils/helpers.ts` → `src__SL__utils__SL__helpers__DT__ts.md`
103
-
104
- ## Status Values
105
-
106
- | Status | When to Use |
107
- |--------|-------------|
108
- | `IN_PROGRESS` | Task log created, implementation ongoing |
109
- | `COMPLETED` | Task finished successfully, Junior approved |
110
- | `ESCALATED_USER` | Task blocked, requires human intervention |
111
-
112
- ## Wikilink Conventions
113
-
114
- - Tasks: `[[task-id]]` — e.g., `[[share-cart-001]]`
115
- - Files: `[[file-path]]` — e.g., `[[src/middleware/auth.ts]]`
116
- - Always use absolute-style paths for files
117
-
118
- ## Loop History Recording
119
-
120
- For each Senior→Junior exchange, record:
121
- 1. What Senior produced (brief summary)
122
- 2. Junior's response (COMPLETE or QUESTIONS + issues)
123
-
124
- If Debug was involved, add:
125
- 3. Debug's analysis and suggestion
126
- 4. Senior's response to the debug suggestion
127
- 5. Debug's final review
128
-
129
- ## Checklist Before Completing
130
-
131
- - [ ] Task file created with all sections
132
- - [ ] Status set correctly (COMPLETED or ESCALATED_USER)
133
- - [ ] Loop count accurate
134
- - [ ] All files touched listed with wikilinks
135
- - [ ] Design decisions recorded with reasoning
136
- - [ ] Loop history complete
137
- - [ ] index.md updated
138
- - [ ] log.md appended
139
- - [ ] All touched files' graph entries updated
@@ -1,94 +0,0 @@
1
- # Wiki Query Skill
2
-
3
- This skill guides the Clerk on how to search the wiki for prior context.
4
-
5
- ## Where to Look
6
-
7
- ### 1. index.md — Task Catalog
8
-
9
- `Manifold/index.md` lists all tasks by plan.
10
-
11
- **Search strategies:**
12
- - By plan slug: look under the plan's section
13
- - By date: find tasks from a specific time period
14
- - By status: find IN_PROGRESS tasks to understand current work
15
-
16
- ### 2. log.md — Chronological Log
17
-
18
- `Manifold/log.md` has a running history of all tasks.
19
-
20
- **Format:**
21
- ```markdown
22
- ## [2026-04-06] task-001 | Implement auth | COMPLETED | 2 loops
23
- ```
24
-
25
- **Search strategies:**
26
- - By date range: find recent completions
27
- - By status: find ESCALATED_USER tasks (to avoid similar issues)
28
- - By loop count: find high-loop tasks (might indicate complexity)
29
-
30
- ### 3. Task Files — Detailed History
31
-
32
- `Manifold/tasks/<task-id>.md` has full task details.
33
-
34
- **What to look for:**
35
- - `## Design Decisions` — why things were done a certain way
36
- - `## Loop History` — what issues Junior caught
37
- - `## Context Used` — what Clerk researched
38
-
39
- **Search strategies:**
40
- - By keyword: grep for terms like "cache", "auth", "performance"
41
- - By file: find tasks that touched `src/models/cart.ts`
42
- - By decision: find tasks that decided on "Map vs Array"
43
-
44
- ### 4. Graph Files — Dependency Analysis
45
-
46
- `Manifold/graph/<graph-name>.md` tracks file relationships.
47
-
48
- **What they contain:**
49
- - YAML frontmatter with `filePath`, `calls`, `dependsOn`, `tasksThatEdited` (source of truth for programmatic access)
50
- - Rendered markdown body with `## Calls`, `## Depends On`, `## Tasks That Edited` sections (for Obsidian graph view)
51
-
52
- **How to use:**
53
- 1. Find graph files relevant to your task (from codebase search)
54
- 2. Read them to understand dependencies (use frontmatter for structured data)
55
- 3. Check "Tasks That Edited" for prior work on those files
56
- 4. Read relevant task files for context
57
-
58
- ## Combining Sources
59
-
60
- ### Example: Adding share functionality to cart
61
-
62
- 1. **Codebase search** → identified `src/models/cart.ts` and `src/utils/share.ts`
63
- 2. **Graph for cart.ts** → depends on `src/models/order.ts`, called by `src/routes/cart.ts`
64
- 3. **index.md** → found "share-cart" plan with 3 completed tasks
65
- 4. **Read task logs** → share-cart-001 used Map for items, share-cart-002 used localStorage
66
- 5. **Result** → scoped prompt includes: use Map for O(1) lookup, persist to localStorage, follow the share URL format from task-002
67
-
68
- ## What to Look For
69
-
70
- ### Design Decisions
71
- - Why was X chosen over Y?
72
- - What constraints influenced the approach?
73
- - What was explicitly rejected and why?
74
-
75
- ### Rejected Approaches
76
- - What has Junior (or Debug) rejected before?
77
- - What patterns should Senior avoid?
78
-
79
- ### Established Conventions
80
- - Project-specific file organization
81
- - Language idioms used in this codebase
82
- - Testing patterns
83
-
84
- ### Prior Art
85
- - Similar features that might share code
86
- - Shared utilities already available
87
- - Dependencies between tasks
88
-
89
- ## Search Tips
90
-
91
- - **Be specific**: "JWT validation" not just "auth"
92
- - **Use file paths**: "src/middleware/auth" to find related files
93
- - **Check dates**: recent decisions are more relevant than old ones
94
- - **Follow links**: wikilinks in task files lead to related context