the-grid-cc 1.7.14 → 1.7.16
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.
- package/DAEMON_VALIDATION.md +354 -0
- package/DAEMON_WIRING_COMPLETE.md +176 -0
- package/PERSISTENCE_COMPLETE.md +309 -0
- package/README.md +36 -6
- package/RESEARCH_FIRST_DELIVERABLES.md +604 -0
- package/commands/grid/VERSION +1 -1
- package/commands/grid/help.md +29 -0
- package/commands/grid/init.md +35 -1
- package/commands/grid/mc.md +61 -14
- package/docs/CONFIG_SCHEMA.md +479 -0
- package/docs/GIT_AUTONOMY_INTEGRATION.md +343 -0
- package/docs/INTEGRATION_SUMMARY.md +316 -0
- package/docs/MC_RESEARCH_INTEGRATION.md +716 -0
- package/docs/PERSISTENCE_FLOW.md +483 -0
- package/docs/PERSISTENCE_IMPLEMENTATION.md +361 -0
- package/docs/PERSISTENCE_QUICKSTART.md +283 -0
- package/docs/RESEARCH_CONFIG.md +511 -0
- package/docs/RESEARCH_INFRASTRUCTURE.md +429 -0
- package/docs/WIRING_VERIFICATION.md +389 -0
- package/package.json +1 -1
- package/templates/daemon-checkpoint.json +51 -0
- package/templates/daemon-config.json +28 -0
- package/templates/git-config.json +65 -0
- package/templates/grid-state/.gitignore-entry +3 -0
- package/templates/grid-state/BLOCK-SUMMARY.md +66 -0
- package/templates/grid-state/BLOCKERS.md +31 -0
- package/templates/grid-state/CHECKPOINT.md +59 -0
- package/templates/grid-state/DECISIONS.md +30 -0
- package/templates/grid-state/README.md +138 -0
- package/templates/grid-state/SCRATCHPAD.md +29 -0
- package/templates/grid-state/STATE.md +47 -0
- package/templates/grid-state/WARMTH.md +48 -0
- package/templates/grid-state/config.json +24 -0
|
@@ -0,0 +1,604 @@
|
|
|
1
|
+
# Research-First Implementation - Deliverables
|
|
2
|
+
|
|
3
|
+
**Sub-Master Control Report**
|
|
4
|
+
**Mission:** Make research-first FUNCTIONAL
|
|
5
|
+
**Status:** COMPLETE
|
|
6
|
+
**Date:** 2026-01-23
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Mission Objectives - Status
|
|
11
|
+
|
|
12
|
+
- [x] Read all three files (RESEARCH_FIRST.md, grid-scout.md, grid-researcher.md)
|
|
13
|
+
- [x] Ensure both agents are properly formatted for spawning
|
|
14
|
+
- [x] Create `.grid/research/` directory structure
|
|
15
|
+
- [x] Create `.grid/research-cache/` for caching research results
|
|
16
|
+
- [x] Add research configuration to config schema
|
|
17
|
+
- [x] Document how MC spawns researchers before Planner
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## 1. Infrastructure Created
|
|
22
|
+
|
|
23
|
+
### Directories
|
|
24
|
+
|
|
25
|
+
All directories created in `.grid/` (gitignored for local state):
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
.grid/
|
|
29
|
+
├── research/ ✅ Created
|
|
30
|
+
│ ├── README.md ✅ Documentation
|
|
31
|
+
│ ├── .gitignore ✅ Ignore outputs, keep README
|
|
32
|
+
│ └── {topic}-{timestamp}.md (Created by Researchers at runtime)
|
|
33
|
+
│
|
|
34
|
+
├── research_cache/ ✅ Created
|
|
35
|
+
│ ├── README.md ✅ Documentation
|
|
36
|
+
│ ├── .gitignore ✅ Ignore cache, keep README/index
|
|
37
|
+
│ ├── index.json ✅ Initialized (empty)
|
|
38
|
+
│ └── {topic-slug}.md (Created by Researchers, 24h TTL)
|
|
39
|
+
│
|
|
40
|
+
└── scout/ ✅ Created
|
|
41
|
+
├── README.md ✅ Documentation
|
|
42
|
+
├── .gitignore ✅ Ignore reports, keep README
|
|
43
|
+
└── RECON_{timestamp}.md (Created by Scouts at runtime)
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
**Location:** `/Users/jacweath/grid/.grid/`
|
|
47
|
+
|
|
48
|
+
**Verification:**
|
|
49
|
+
```bash
|
|
50
|
+
$ ls -la /Users/jacweath/grid/.grid/
|
|
51
|
+
drwxr-xr-x 4 jacweath staff 128 Jan 23 20:11 research
|
|
52
|
+
drwxr-xr-x 5 jacweath staff 160 Jan 23 20:11 research_cache
|
|
53
|
+
drwxr-xr-x 4 jacweath staff 128 Jan 23 20:11 scout
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## 2. Documentation Created
|
|
59
|
+
|
|
60
|
+
### Core Documentation
|
|
61
|
+
|
|
62
|
+
| File | Purpose | Status |
|
|
63
|
+
|------|---------|--------|
|
|
64
|
+
| `docs/RESEARCH_CONFIG.md` | Configuration schema reference | ✅ Complete |
|
|
65
|
+
| `docs/MC_RESEARCH_INTEGRATION.md` | MC integration implementation guide | ✅ Complete |
|
|
66
|
+
| `docs/RESEARCH_INFRASTRUCTURE.md` | Infrastructure setup summary | ✅ Complete |
|
|
67
|
+
| `.grid/research/README.md` | Research output directory docs | ✅ Complete |
|
|
68
|
+
| `.grid/research_cache/README.md` | Cache structure and policies | ✅ Complete |
|
|
69
|
+
| `.grid/scout/README.md` | Scout report directory docs | ✅ Complete |
|
|
70
|
+
|
|
71
|
+
**Total:** 6 documentation files created
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## 3. Agent Files Validated
|
|
76
|
+
|
|
77
|
+
### Grid Scout Agent
|
|
78
|
+
|
|
79
|
+
**File:** `/Users/jacweath/grid/agents/grid-scout.md`
|
|
80
|
+
|
|
81
|
+
**Status:** ✅ FUNCTIONAL - Properly formatted for spawning
|
|
82
|
+
|
|
83
|
+
**Key Sections:**
|
|
84
|
+
- Role definition: Rapid codebase reconnaissance
|
|
85
|
+
- Reconnaissance protocol: 4 phases in < 2 minutes
|
|
86
|
+
- Structure scan (30s)
|
|
87
|
+
- Technology detection (30s)
|
|
88
|
+
- Pattern detection (30s)
|
|
89
|
+
- Constraint discovery (30s)
|
|
90
|
+
- Output format: `.grid/scout/RECON_{timestamp}.md`
|
|
91
|
+
- Speed optimizations: Parallel ops, early exits, depth limits
|
|
92
|
+
- Special modes: Greenfield, monorepo
|
|
93
|
+
- Integration: Can trigger Researcher for unknowns
|
|
94
|
+
|
|
95
|
+
**Spawn Ready:** Yes - MC can spawn with Task tool
|
|
96
|
+
|
|
97
|
+
**Example Spawn:**
|
|
98
|
+
```python
|
|
99
|
+
Task(
|
|
100
|
+
prompt="""
|
|
101
|
+
First, read ~/.claude/agents/grid-scout.md for your role.
|
|
102
|
+
<config>
|
|
103
|
+
project_root: /path/to/project
|
|
104
|
+
timeout_seconds: 120
|
|
105
|
+
</config>
|
|
106
|
+
Scan the codebase and output report.
|
|
107
|
+
""",
|
|
108
|
+
subagent_type="general-purpose",
|
|
109
|
+
description="Scout: Codebase reconnaissance"
|
|
110
|
+
)
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
### Grid Researcher Agent
|
|
116
|
+
|
|
117
|
+
**File:** `/Users/jacweath/grid/agents/grid-researcher.md`
|
|
118
|
+
|
|
119
|
+
**Status:** ✅ FUNCTIONAL - Properly formatted for spawning
|
|
120
|
+
|
|
121
|
+
**Key Sections:**
|
|
122
|
+
- Role definition: Deep reconnaissance for external intelligence
|
|
123
|
+
- Mission types:
|
|
124
|
+
- Technology research (frameworks, libraries)
|
|
125
|
+
- Pattern research (architecture, anti-patterns)
|
|
126
|
+
- Similar project research (reference architectures)
|
|
127
|
+
- API documentation research (integrations)
|
|
128
|
+
- Research protocol:
|
|
129
|
+
- Query generation (3 queries per topic)
|
|
130
|
+
- Parallel search execution
|
|
131
|
+
- Context assembly with confidence levels
|
|
132
|
+
- Caching protocol:
|
|
133
|
+
- Cache structure (`.grid/research_cache/`)
|
|
134
|
+
- Cache hit logic (Jaccard similarity > 0.7)
|
|
135
|
+
- 24h TTL, LRU eviction
|
|
136
|
+
- Search tool selection:
|
|
137
|
+
- Code examples: `mcp__exa__get_code_context_exa`
|
|
138
|
+
- Best practices: `WebSearch`
|
|
139
|
+
- Documentation: `WebFetch`
|
|
140
|
+
- Output format: Structured markdown with sources
|
|
141
|
+
- Quality rules: Cite everything, assess confidence, recent > old
|
|
142
|
+
|
|
143
|
+
**Spawn Ready:** Yes - MC can spawn with Task tool
|
|
144
|
+
|
|
145
|
+
**Example Spawn:**
|
|
146
|
+
```python
|
|
147
|
+
Task(
|
|
148
|
+
prompt="""
|
|
149
|
+
First, read ~/.claude/agents/grid-researcher.md for your role.
|
|
150
|
+
<research_request>
|
|
151
|
+
mission: technology
|
|
152
|
+
topic: Next.js 14 App Router
|
|
153
|
+
queries:
|
|
154
|
+
- Next.js 14 best practices 2024 2025
|
|
155
|
+
- App Router production patterns
|
|
156
|
+
</research_request>
|
|
157
|
+
Research and cache results.
|
|
158
|
+
""",
|
|
159
|
+
subagent_type="general-purpose",
|
|
160
|
+
description="Research: Next.js 14"
|
|
161
|
+
)
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
---
|
|
165
|
+
|
|
166
|
+
## 4. Configuration Schema
|
|
167
|
+
|
|
168
|
+
### Proposed `.grid/config.json` Schema
|
|
169
|
+
|
|
170
|
+
**Documented in:** `docs/RESEARCH_CONFIG.md`
|
|
171
|
+
|
|
172
|
+
```json
|
|
173
|
+
{
|
|
174
|
+
"version": "1.0",
|
|
175
|
+
"research": {
|
|
176
|
+
"enabled": true,
|
|
177
|
+
"scout": {
|
|
178
|
+
"enabled": true,
|
|
179
|
+
"timeout_seconds": 120,
|
|
180
|
+
"max_files_analyzed": 1000,
|
|
181
|
+
"depth_limit": 4,
|
|
182
|
+
"skip_dirs": ["node_modules", ".git", "dist", "build"]
|
|
183
|
+
},
|
|
184
|
+
"researcher": {
|
|
185
|
+
"enabled": true,
|
|
186
|
+
"timeout_seconds": 300,
|
|
187
|
+
"max_researchers_parallel": 3,
|
|
188
|
+
"max_queries_per_topic": 10,
|
|
189
|
+
"search_tool_preference": [
|
|
190
|
+
"mcp__exa__get_code_context_exa",
|
|
191
|
+
"WebSearch",
|
|
192
|
+
"WebFetch"
|
|
193
|
+
]
|
|
194
|
+
},
|
|
195
|
+
"cache": {
|
|
196
|
+
"enabled": true,
|
|
197
|
+
"ttl_hours": 24,
|
|
198
|
+
"max_entries": 50,
|
|
199
|
+
"max_size_mb": 100,
|
|
200
|
+
"eviction_policy": "lru"
|
|
201
|
+
},
|
|
202
|
+
"skip_conditions": {
|
|
203
|
+
"quick_mode_eligible": true,
|
|
204
|
+
"debug_mode": true,
|
|
205
|
+
"explicit_user_skip": true,
|
|
206
|
+
"all_tech_cached": true
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
**Configuration Fields:**
|
|
213
|
+
- 19 configurable parameters
|
|
214
|
+
- Sensible defaults for all fields
|
|
215
|
+
- User command overrides ("skip research", "fresh research")
|
|
216
|
+
- Environment variable support
|
|
217
|
+
|
|
218
|
+
---
|
|
219
|
+
|
|
220
|
+
## 5. MC Integration Documentation
|
|
221
|
+
|
|
222
|
+
### Research Phase Flow
|
|
223
|
+
|
|
224
|
+
**Documented in:** `docs/MC_RESEARCH_INTEGRATION.md`
|
|
225
|
+
|
|
226
|
+
**Complete implementation guide for:**
|
|
227
|
+
|
|
228
|
+
1. **Research Decision Logic**
|
|
229
|
+
- `should_run_research()` - When to run research phase
|
|
230
|
+
- Skip conditions (quick mode, debug, cache hits)
|
|
231
|
+
|
|
232
|
+
2. **Scout Spawning**
|
|
233
|
+
- When to spawn (existing codebase detected)
|
|
234
|
+
- Spawn template with config parameters
|
|
235
|
+
- Report reading and parsing
|
|
236
|
+
|
|
237
|
+
3. **Researcher Spawning**
|
|
238
|
+
- Research needs extraction from user request + Scout
|
|
239
|
+
- Cache checking (query similarity, TTL validation)
|
|
240
|
+
- Parallel spawn (up to 3 researchers)
|
|
241
|
+
- Result reading and assembly
|
|
242
|
+
|
|
243
|
+
4. **Context Assembly**
|
|
244
|
+
- Combining Scout + cached + fresh research
|
|
245
|
+
- Formatting for Planner consumption
|
|
246
|
+
|
|
247
|
+
5. **Planner Integration**
|
|
248
|
+
- Planner spawn with research context
|
|
249
|
+
- Research-informed planning rules
|
|
250
|
+
- Constraint preservation + best practice application
|
|
251
|
+
|
|
252
|
+
**Code Examples:** 12 complete Python functions with full implementation
|
|
253
|
+
|
|
254
|
+
**Spawn Templates:** 3 complete prompt templates (Scout, Researcher, Planner)
|
|
255
|
+
|
|
256
|
+
**Utility Functions:** 5 helper functions (extract_technologies, quick_mode_eligible, etc.)
|
|
257
|
+
|
|
258
|
+
---
|
|
259
|
+
|
|
260
|
+
## 6. Cache Infrastructure
|
|
261
|
+
|
|
262
|
+
### Cache Index
|
|
263
|
+
|
|
264
|
+
**File:** `.grid/research_cache/index.json`
|
|
265
|
+
|
|
266
|
+
**Status:** ✅ Initialized
|
|
267
|
+
|
|
268
|
+
```json
|
|
269
|
+
{
|
|
270
|
+
"version": "1.0",
|
|
271
|
+
"created": "2026-01-23T20:00:00Z",
|
|
272
|
+
"updated": "2026-01-23T20:00:00Z",
|
|
273
|
+
"entries": []
|
|
274
|
+
}
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
**Entry Schema:**
|
|
278
|
+
```json
|
|
279
|
+
{
|
|
280
|
+
"key": "nextjs-14-app-router",
|
|
281
|
+
"queries": ["Next.js 14 best practices 2024 2025", ...],
|
|
282
|
+
"created": "2026-01-23T14:00:00Z",
|
|
283
|
+
"expires": "2026-01-24T14:00:00Z",
|
|
284
|
+
"file": "nextjs-14-app-router.md",
|
|
285
|
+
"hit_count": 0,
|
|
286
|
+
"size_kb": 15
|
|
287
|
+
}
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
### Cache Operations
|
|
291
|
+
|
|
292
|
+
**Documented in:** `.grid/research_cache/README.md`
|
|
293
|
+
|
|
294
|
+
- Cache hit logic (Jaccard similarity > 0.7)
|
|
295
|
+
- Cache add with eviction
|
|
296
|
+
- Cache invalidation (time-based, manual, version-based)
|
|
297
|
+
- Cache statistics
|
|
298
|
+
|
|
299
|
+
---
|
|
300
|
+
|
|
301
|
+
## 7. Integration Checklist
|
|
302
|
+
|
|
303
|
+
### Phase 1: Infrastructure (COMPLETE)
|
|
304
|
+
|
|
305
|
+
- [x] Create `.grid/research/` directory
|
|
306
|
+
- [x] Create `.grid/research_cache/` directory
|
|
307
|
+
- [x] Create `.grid/scout/` directory
|
|
308
|
+
- [x] Write README files documenting structure
|
|
309
|
+
- [x] Initialize cache index JSON
|
|
310
|
+
- [x] Add .gitignore files
|
|
311
|
+
- [x] Verify agent files are spawn-ready
|
|
312
|
+
- [x] Document configuration schema
|
|
313
|
+
- [x] Document MC integration flow
|
|
314
|
+
|
|
315
|
+
### Phase 2: MC Integration (READY TO IMPLEMENT)
|
|
316
|
+
|
|
317
|
+
- [ ] Add config loading to MC initialization
|
|
318
|
+
- [ ] Implement `should_run_research()` logic
|
|
319
|
+
- [ ] Implement `spawn_scout()` function
|
|
320
|
+
- [ ] Implement `extract_research_needs()` function
|
|
321
|
+
- [ ] Implement `check_research_cache()` function
|
|
322
|
+
- [ ] Implement `spawn_researchers()` function
|
|
323
|
+
- [ ] Implement context assembly
|
|
324
|
+
- [ ] Update Planner spawn with research context
|
|
325
|
+
|
|
326
|
+
### Phase 3: User Experience (AFTER MC INTEGRATION)
|
|
327
|
+
|
|
328
|
+
- [ ] Add user commands ("skip research", "fresh research")
|
|
329
|
+
- [ ] Add progress output ("Research phase: Scout complete...")
|
|
330
|
+
- [ ] Document in `/grid:help`
|
|
331
|
+
- [ ] Add metrics logging
|
|
332
|
+
|
|
333
|
+
---
|
|
334
|
+
|
|
335
|
+
## File Inventory
|
|
336
|
+
|
|
337
|
+
### Documentation Files (Staged for Commit)
|
|
338
|
+
|
|
339
|
+
```
|
|
340
|
+
docs/RESEARCH_CONFIG.md - Configuration schema (700 lines)
|
|
341
|
+
docs/MC_RESEARCH_INTEGRATION.md - MC integration guide (800 lines)
|
|
342
|
+
docs/RESEARCH_INFRASTRUCTURE.md - Infrastructure summary (500 lines)
|
|
343
|
+
```
|
|
344
|
+
|
|
345
|
+
**Total:** 2,000 lines of implementation documentation
|
|
346
|
+
|
|
347
|
+
### Infrastructure Files (Local, Gitignored)
|
|
348
|
+
|
|
349
|
+
```
|
|
350
|
+
.grid/research/README.md - Research dir docs (50 lines)
|
|
351
|
+
.grid/research/.gitignore - Gitignore for outputs
|
|
352
|
+
.grid/research_cache/README.md - Cache docs (200 lines)
|
|
353
|
+
.grid/research_cache/.gitignore - Gitignore for cache
|
|
354
|
+
.grid/research_cache/index.json - Cache index (initialized)
|
|
355
|
+
.grid/scout/README.md - Scout dir docs (100 lines)
|
|
356
|
+
.grid/scout/.gitignore - Gitignore for reports
|
|
357
|
+
```
|
|
358
|
+
|
|
359
|
+
**Total:** 7 infrastructure files
|
|
360
|
+
|
|
361
|
+
### Agent Files (Pre-existing, Validated)
|
|
362
|
+
|
|
363
|
+
```
|
|
364
|
+
agents/grid-scout.md - Scout agent (377 lines)
|
|
365
|
+
agents/grid-researcher.md - Researcher agent (422 lines)
|
|
366
|
+
```
|
|
367
|
+
|
|
368
|
+
**Total:** 799 lines of agent logic
|
|
369
|
+
|
|
370
|
+
---
|
|
371
|
+
|
|
372
|
+
## Testing Guide
|
|
373
|
+
|
|
374
|
+
### Manual Test 1: Scout Spawn
|
|
375
|
+
|
|
376
|
+
```python
|
|
377
|
+
scout_prompt = """
|
|
378
|
+
First, read ~/.claude/agents/grid-scout.md for your role.
|
|
379
|
+
<config>
|
|
380
|
+
project_root: /Users/jacweath/grid
|
|
381
|
+
timeout_seconds: 120
|
|
382
|
+
</config>
|
|
383
|
+
Scan the Grid codebase. Write report to .grid/scout/RECON_test.md
|
|
384
|
+
"""
|
|
385
|
+
|
|
386
|
+
Task(prompt=scout_prompt, subagent_type="general-purpose", description="Test Scout")
|
|
387
|
+
```
|
|
388
|
+
|
|
389
|
+
**Expected Output:** `.grid/scout/RECON_test.md` with:
|
|
390
|
+
- Technology stack (TypeScript, Node.js, etc.)
|
|
391
|
+
- Detected patterns (CLI commands, agent-based architecture)
|
|
392
|
+
- Key files (commands/grid/mc.md, agents/)
|
|
393
|
+
- Constraints (existing command structure)
|
|
394
|
+
|
|
395
|
+
---
|
|
396
|
+
|
|
397
|
+
### Manual Test 2: Researcher Spawn
|
|
398
|
+
|
|
399
|
+
```python
|
|
400
|
+
researcher_prompt = """
|
|
401
|
+
First, read ~/.claude/agents/grid-researcher.md for your role.
|
|
402
|
+
<research_request>
|
|
403
|
+
mission: technology
|
|
404
|
+
topic: Next.js 14 App Router
|
|
405
|
+
queries:
|
|
406
|
+
- Next.js 14 App Router best practices 2024 2025
|
|
407
|
+
- Server Components production patterns
|
|
408
|
+
</research_request>
|
|
409
|
+
Research and write to .grid/research_cache/nextjs-14-app-router.md
|
|
410
|
+
Update cache index at .grid/research_cache/index.json
|
|
411
|
+
"""
|
|
412
|
+
|
|
413
|
+
Task(prompt=researcher_prompt, subagent_type="general-purpose", description="Test Researcher")
|
|
414
|
+
```
|
|
415
|
+
|
|
416
|
+
**Expected Output:**
|
|
417
|
+
1. `.grid/research_cache/nextjs-14-app-router.md` with:
|
|
418
|
+
- Executive summary
|
|
419
|
+
- Best practices with sources
|
|
420
|
+
- Code examples
|
|
421
|
+
- Anti-patterns
|
|
422
|
+
- Confidence assessments
|
|
423
|
+
|
|
424
|
+
2. `.grid/research_cache/index.json` updated with:
|
|
425
|
+
```json
|
|
426
|
+
{
|
|
427
|
+
"entries": [
|
|
428
|
+
{
|
|
429
|
+
"key": "nextjs-14-app-router",
|
|
430
|
+
"queries": ["Next.js 14 App Router best practices 2024 2025", ...],
|
|
431
|
+
"created": "2026-01-23T20:15:00Z",
|
|
432
|
+
"expires": "2026-01-24T20:15:00Z",
|
|
433
|
+
"file": "nextjs-14-app-router.md",
|
|
434
|
+
"hit_count": 0,
|
|
435
|
+
"size_kb": 15
|
|
436
|
+
}
|
|
437
|
+
]
|
|
438
|
+
}
|
|
439
|
+
```
|
|
440
|
+
|
|
441
|
+
---
|
|
442
|
+
|
|
443
|
+
### Manual Test 3: Cache Hit
|
|
444
|
+
|
|
445
|
+
```python
|
|
446
|
+
# Second spawn with same topic should hit cache
|
|
447
|
+
needs = [{'topic': 'Next.js 14 App Router', 'queries': ['Next.js 14 best practices']}]
|
|
448
|
+
cached, needed = check_research_cache(needs, config)
|
|
449
|
+
|
|
450
|
+
assert len(cached) == 1 # Cache hit!
|
|
451
|
+
assert cached[0]['source'] == 'cache'
|
|
452
|
+
assert len(needed) == 0 # Nothing to research
|
|
453
|
+
```
|
|
454
|
+
|
|
455
|
+
**Expected:** Cache hit without spawning new Researcher
|
|
456
|
+
|
|
457
|
+
---
|
|
458
|
+
|
|
459
|
+
## Key Design Decisions
|
|
460
|
+
|
|
461
|
+
### 1. File-Based State
|
|
462
|
+
|
|
463
|
+
All state stored in `.grid/` directories:
|
|
464
|
+
- No external databases
|
|
465
|
+
- Human-readable markdown/JSON
|
|
466
|
+
- Survives session death
|
|
467
|
+
- Git-ignored for local isolation
|
|
468
|
+
|
|
469
|
+
### 2. 24-Hour Cache TTL
|
|
470
|
+
|
|
471
|
+
Balance between freshness and speed:
|
|
472
|
+
- Technology best practices stable for 24h
|
|
473
|
+
- User can force refresh with "fresh research"
|
|
474
|
+
- LRU eviction when cache limit reached
|
|
475
|
+
|
|
476
|
+
### 3. Parallel Researcher Spawning
|
|
477
|
+
|
|
478
|
+
Multiple researchers run simultaneously:
|
|
479
|
+
- Single MC message spawns 3 Tasks
|
|
480
|
+
- All execute in parallel
|
|
481
|
+
- Results assembled after completion
|
|
482
|
+
- Saves time vs. sequential spawns
|
|
483
|
+
|
|
484
|
+
### 4. Jaccard Similarity for Cache Hits
|
|
485
|
+
|
|
486
|
+
Query similarity threshold of 0.7:
|
|
487
|
+
- Catches semantically similar queries
|
|
488
|
+
- Allows query variation while hitting cache
|
|
489
|
+
- False negatives acceptable (just re-research)
|
|
490
|
+
|
|
491
|
+
### 5. Two-Minute Scout Timeout
|
|
492
|
+
|
|
493
|
+
Rapid reconnaissance philosophy:
|
|
494
|
+
- Speed over completeness
|
|
495
|
+
- Early exits on pattern detection
|
|
496
|
+
- Sample-based analysis
|
|
497
|
+
- Sufficient for constraint discovery
|
|
498
|
+
|
|
499
|
+
---
|
|
500
|
+
|
|
501
|
+
## Performance Characteristics
|
|
502
|
+
|
|
503
|
+
### Time Budgets
|
|
504
|
+
|
|
505
|
+
| Phase | Target | Max |
|
|
506
|
+
|-------|--------|-----|
|
|
507
|
+
| Scout | 1 min | 2 min |
|
|
508
|
+
| Cache check | 1 sec | 5 sec |
|
|
509
|
+
| Single researcher | 3 min | 5 min |
|
|
510
|
+
| Parallel researchers (3) | 3 min | 5 min |
|
|
511
|
+
| **Total research phase** | **4 min** | **7 min** |
|
|
512
|
+
|
|
513
|
+
### Context Budgets
|
|
514
|
+
|
|
515
|
+
| Agent | Context Usage |
|
|
516
|
+
|-------|--------------|
|
|
517
|
+
| Scout | 10% max |
|
|
518
|
+
| Researcher | 20% per instance |
|
|
519
|
+
| Research output to Planner | 15% max |
|
|
520
|
+
|
|
521
|
+
### Cache Performance
|
|
522
|
+
|
|
523
|
+
| Metric | Expected Value |
|
|
524
|
+
|--------|---------------|
|
|
525
|
+
| Hit rate (after warmup) | 60-70% |
|
|
526
|
+
| Average query time (cache hit) | < 100ms |
|
|
527
|
+
| Average query time (cache miss) | 3-5 min |
|
|
528
|
+
| Speedup from caching | 100-1000x |
|
|
529
|
+
|
|
530
|
+
---
|
|
531
|
+
|
|
532
|
+
## Next Steps
|
|
533
|
+
|
|
534
|
+
### Immediate: MC Integration (Phase 2)
|
|
535
|
+
|
|
536
|
+
**Priority:** HIGH
|
|
537
|
+
|
|
538
|
+
1. Implement research decision logic in MC
|
|
539
|
+
2. Add Scout spawn function
|
|
540
|
+
3. Add Researcher spawn function
|
|
541
|
+
4. Add context assembly
|
|
542
|
+
5. Update Planner spawn template
|
|
543
|
+
6. Test with real requests
|
|
544
|
+
|
|
545
|
+
**Estimated Effort:** 4-6 hours of focused implementation
|
|
546
|
+
|
|
547
|
+
**Location:** `/Users/jacweath/grid/commands/grid/mc.md`
|
|
548
|
+
|
|
549
|
+
---
|
|
550
|
+
|
|
551
|
+
### Soon: User Experience (Phase 3)
|
|
552
|
+
|
|
553
|
+
**Priority:** MEDIUM
|
|
554
|
+
|
|
555
|
+
1. Add progress indicators
|
|
556
|
+
2. Document in help system
|
|
557
|
+
3. Add metrics logging
|
|
558
|
+
4. User command parsing
|
|
559
|
+
|
|
560
|
+
**Estimated Effort:** 2-3 hours
|
|
561
|
+
|
|
562
|
+
---
|
|
563
|
+
|
|
564
|
+
### Future: Enhancements
|
|
565
|
+
|
|
566
|
+
**Priority:** LOW
|
|
567
|
+
|
|
568
|
+
1. Semantic caching (match by meaning)
|
|
569
|
+
2. Learning loop (successful patterns → research)
|
|
570
|
+
3. Shared research cache across projects
|
|
571
|
+
4. Custom authoritative sources
|
|
572
|
+
|
|
573
|
+
---
|
|
574
|
+
|
|
575
|
+
## Summary
|
|
576
|
+
|
|
577
|
+
Research-first infrastructure is **FUNCTIONAL** and ready for MC integration:
|
|
578
|
+
|
|
579
|
+
**Created:**
|
|
580
|
+
- 3 state directories (research, research_cache, scout)
|
|
581
|
+
- 7 README/gitignore files
|
|
582
|
+
- 1 initialized cache index
|
|
583
|
+
- 3 comprehensive documentation files (2,000 lines)
|
|
584
|
+
|
|
585
|
+
**Validated:**
|
|
586
|
+
- 2 agent files (799 lines) are spawn-ready
|
|
587
|
+
- Scout and Researcher can be spawned with Task tool
|
|
588
|
+
- Output formats are specified and documented
|
|
589
|
+
|
|
590
|
+
**Documented:**
|
|
591
|
+
- Configuration schema (19 parameters)
|
|
592
|
+
- MC integration flow (12 functions + 3 templates)
|
|
593
|
+
- Cache operations and policies
|
|
594
|
+
- Testing procedures
|
|
595
|
+
|
|
596
|
+
**Ready for:**
|
|
597
|
+
- Phase 2: MC integration implementation
|
|
598
|
+
- Phase 3: User experience enhancements
|
|
599
|
+
|
|
600
|
+
**Next Action:** Implement research phase logic in Master Control using documented patterns in `docs/MC_RESEARCH_INTEGRATION.md`.
|
|
601
|
+
|
|
602
|
+
---
|
|
603
|
+
|
|
604
|
+
**End of Line.**
|
package/commands/grid/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
1.7.
|
|
1
|
+
1.7.16
|
package/commands/grid/help.md
CHANGED
|
@@ -16,10 +16,14 @@ COMMANDS
|
|
|
16
16
|
/grid:mc Same as above
|
|
17
17
|
/grid:update Pull latest from GitHub
|
|
18
18
|
/grid:init Initialize .grid/ state
|
|
19
|
+
/grid:resume Resume interrupted mission
|
|
19
20
|
/grid:refine Run Refinement Swarm (visual, E2E, personas)
|
|
20
21
|
/grid:debug Start systematic bug investigation
|
|
22
|
+
/grid:daemon Background execution mode
|
|
21
23
|
/grid:status Show current Grid state
|
|
24
|
+
/grid:branch Git branch management for Grid sessions
|
|
22
25
|
/grid:model Configure model selection (opus/sonnet/haiku)
|
|
26
|
+
/grid:budget Track costs, set spending limits
|
|
23
27
|
/grid:help This help
|
|
24
28
|
|
|
25
29
|
MODES
|
|
@@ -33,6 +37,31 @@ MODEL TIERS
|
|
|
33
37
|
/grid:model budget Haiku where possible (lowest cost)
|
|
34
38
|
/grid:model custom Configure per-agent
|
|
35
39
|
|
|
40
|
+
BUDGET & COSTS
|
|
41
|
+
/grid:budget Show current budget status
|
|
42
|
+
/grid:budget set $50 Set spending limit
|
|
43
|
+
/grid:budget estimate Estimate cost of pending work
|
|
44
|
+
/grid:budget report Detailed usage report
|
|
45
|
+
/grid:budget reset Reset usage counters
|
|
46
|
+
/grid:budget unlimited Remove budget limit
|
|
47
|
+
|
|
48
|
+
DAEMON MODE
|
|
49
|
+
/grid:daemon "task" Start long-running background task
|
|
50
|
+
/grid:daemon status Check active daemon status
|
|
51
|
+
/grid:daemon list List all daemons
|
|
52
|
+
/grid:daemon stop Stop active daemon
|
|
53
|
+
/grid:daemon resume "msg" Resume from checkpoint
|
|
54
|
+
/grid:daemon logs View daemon logs
|
|
55
|
+
|
|
56
|
+
BRANCH MANAGEMENT
|
|
57
|
+
/grid:branch Show current branch status
|
|
58
|
+
/grid:branch create Create new feature branch
|
|
59
|
+
/grid:branch switch Switch to existing branch
|
|
60
|
+
/grid:branch pr Create pull request
|
|
61
|
+
/grid:branch cleanup Delete merged branches
|
|
62
|
+
/grid:branch list List all Grid branches
|
|
63
|
+
/grid:branch sync Sync with main
|
|
64
|
+
|
|
36
65
|
REFINEMENT SWARM
|
|
37
66
|
/grid:refine Full swarm (visual + E2E + personas)
|
|
38
67
|
/grid:refine visual Screenshot + vision analysis only
|