wogiflow 1.0.21 → 1.0.22
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/.claude/commands/wogi-bug.md +43 -0
- package/.claude/commands/wogi-bulk.md +144 -0
- package/.claude/commands/wogi-changelog.md +36 -0
- package/.claude/commands/wogi-compact.md +99 -0
- package/.claude/commands/wogi-config.md +50 -0
- package/.claude/commands/wogi-context.md +68 -0
- package/.claude/commands/wogi-correction.md +73 -0
- package/.claude/commands/wogi-debt.md +128 -0
- package/.claude/commands/wogi-deps.md +32 -0
- package/.claude/commands/wogi-epics.md +145 -0
- package/.claude/commands/wogi-export.md +100 -0
- package/.claude/commands/wogi-feature.md +149 -0
- package/.claude/commands/wogi-guided-edit.md +83 -0
- package/.claude/commands/wogi-health.md +43 -0
- package/.claude/commands/wogi-help.md +96 -0
- package/.claude/commands/wogi-hybrid-edit.md +36 -0
- package/.claude/commands/wogi-hybrid-off.md +24 -0
- package/.claude/commands/wogi-hybrid-setup.md +79 -0
- package/.claude/commands/wogi-hybrid-status.md +45 -0
- package/.claude/commands/wogi-hybrid.md +54 -0
- package/.claude/commands/wogi-import.md +44 -0
- package/.claude/commands/wogi-init.md +618 -0
- package/.claude/commands/wogi-log.md +38 -0
- package/.claude/commands/wogi-map-add.md +29 -0
- package/.claude/commands/wogi-map-check.md +35 -0
- package/.claude/commands/wogi-map-index.md +98 -0
- package/.claude/commands/wogi-map-scan.md +38 -0
- package/.claude/commands/wogi-map-sync.md +91 -0
- package/.claude/commands/wogi-map.md +33 -0
- package/.claude/commands/wogi-morning.md +65 -0
- package/.claude/commands/wogi-onboard.md +99 -0
- package/.claude/commands/wogi-plan.md +173 -0
- package/.claude/commands/wogi-ready.md +84 -0
- package/.claude/commands/wogi-resume.md +95 -0
- package/.claude/commands/wogi-review.md +636 -0
- package/.claude/commands/wogi-roadmap.md +241 -0
- package/.claude/commands/wogi-rules.md +104 -0
- package/.claude/commands/wogi-search.md +33 -0
- package/.claude/commands/wogi-session-end.md +49 -0
- package/.claude/commands/wogi-setup-stack.md +151 -0
- package/.claude/commands/wogi-skill-learn.md +66 -0
- package/.claude/commands/wogi-skills.md +87 -0
- package/.claude/commands/wogi-standup.md +28 -0
- package/.claude/commands/wogi-start.md +465 -0
- package/.claude/commands/wogi-status.md +41 -0
- package/.claude/commands/wogi-statusline-setup/skill.md +109 -0
- package/.claude/commands/wogi-story.md +98 -0
- package/.claude/commands/wogi-suspend.md +87 -0
- package/.claude/commands/wogi-test-browser.md +43 -0
- package/.claude/commands/wogi-trace.md +198 -0
- package/.claude/docs/architecture.md +37 -0
- package/.claude/docs/commands.md +343 -0
- package/.claude/docs/knowledge-base/01-setup-onboarding/README.md +177 -0
- package/.claude/docs/knowledge-base/01-setup-onboarding/component-indexing.md +341 -0
- package/.claude/docs/knowledge-base/01-setup-onboarding/framework-detection.md +269 -0
- package/.claude/docs/knowledge-base/01-setup-onboarding/installation.md +146 -0
- package/.claude/docs/knowledge-base/01-setup-onboarding/onboarding-existing.md +317 -0
- package/.claude/docs/knowledge-base/01-setup-onboarding/team-setup.md +346 -0
- package/.claude/docs/knowledge-base/02-task-execution/01-task-planning.md +259 -0
- package/.claude/docs/knowledge-base/02-task-execution/02-execution-loop.md +443 -0
- package/.claude/docs/knowledge-base/02-task-execution/03-verification.md +417 -0
- package/.claude/docs/knowledge-base/02-task-execution/04-completion.md +374 -0
- package/.claude/docs/knowledge-base/02-task-execution/05-session-review.md +170 -0
- package/.claude/docs/knowledge-base/02-task-execution/README.md +173 -0
- package/.claude/docs/knowledge-base/02-task-execution/external-integrations.md +133 -0
- package/.claude/docs/knowledge-base/02-task-execution/model-management.md +202 -0
- package/.claude/docs/knowledge-base/02-task-execution/specification-mode.md +292 -0
- package/.claude/docs/knowledge-base/02-task-execution/sync-daemon.md +96 -0
- package/.claude/docs/knowledge-base/02-task-execution/trade-offs.md +345 -0
- package/.claude/docs/knowledge-base/02-task-execution/workflow-steps.md +357 -0
- package/.claude/docs/knowledge-base/03-self-improvement/README.md +199 -0
- package/.claude/docs/knowledge-base/03-self-improvement/long-input-processing.md +160 -0
- package/.claude/docs/knowledge-base/03-self-improvement/model-learning.md +334 -0
- package/.claude/docs/knowledge-base/03-self-improvement/project-learning.md +301 -0
- package/.claude/docs/knowledge-base/03-self-improvement/skill-learning.md +372 -0
- package/.claude/docs/knowledge-base/03-self-improvement/skill-matching.md +304 -0
- package/.claude/docs/knowledge-base/03-self-improvement/team-learning.md +342 -0
- package/.claude/docs/knowledge-base/04-memory-context/README.md +189 -0
- package/.claude/docs/knowledge-base/04-memory-context/context-management.md +308 -0
- package/.claude/docs/knowledge-base/04-memory-context/memory-commands.md +176 -0
- package/.claude/docs/knowledge-base/04-memory-context/memory-systems.md +359 -0
- package/.claude/docs/knowledge-base/04-memory-context/prd-management.md +115 -0
- package/.claude/docs/knowledge-base/04-memory-context/session-persistence.md +359 -0
- package/.claude/docs/knowledge-base/04-memory-context/team-history.md +317 -0
- package/.claude/docs/knowledge-base/05-development-tools/README.md +84 -0
- package/.claude/docs/knowledge-base/05-development-tools/code-traces.md +278 -0
- package/.claude/docs/knowledge-base/05-development-tools/figma-analyzer.md +253 -0
- package/.claude/docs/knowledge-base/05-development-tools/guided-edit.md +173 -0
- package/.claude/docs/knowledge-base/05-development-tools/mcp-integrations.md +286 -0
- package/.claude/docs/knowledge-base/06-safety-guardrails/README.md +153 -0
- package/.claude/docs/knowledge-base/06-safety-guardrails/checkpoint-rollback.md +302 -0
- package/.claude/docs/knowledge-base/06-safety-guardrails/commit-gates.md +309 -0
- package/.claude/docs/knowledge-base/06-safety-guardrails/damage-control.md +292 -0
- package/.claude/docs/knowledge-base/06-safety-guardrails/security-scanning.md +291 -0
- package/.claude/docs/knowledge-base/README.md +92 -0
- package/.claude/docs/knowledge-base/configuration/README.md +228 -0
- package/.claude/docs/knowledge-base/configuration/all-options.md +1632 -0
- package/.claude/docs/knowledge-base/future-features.md +277 -0
- package/.claude/docs/stack.md +25 -0
- package/.claude/docs/testing.md +71 -0
- package/.claude/rules/README.md +60 -0
- package/.claude/rules/architecture/component-reuse.md +38 -0
- package/.claude/rules/architecture/document-structure.md +76 -0
- package/.claude/rules/architecture/feature-refactoring-cleanup.md +87 -0
- package/.claude/rules/architecture/model-management.md +35 -0
- package/.claude/rules/code-style/naming-conventions.md +55 -0
- package/.claude/rules/security/security-patterns.md +116 -0
- package/.claude/skills/.gitkeep +0 -0
- package/.claude/skills/README.md +131 -0
- package/.claude/skills/_template/commands/.gitkeep +0 -0
- package/.claude/skills/_template/knowledge/anti-patterns.md +49 -0
- package/.claude/skills/_template/knowledge/learnings.md +60 -0
- package/.claude/skills/_template/knowledge/patterns.md +45 -0
- package/.claude/skills/_template/rules/.gitkeep +0 -0
- package/.claude/skills/_template/skill.md +99 -0
- package/.claude/skills/_template/templates/.gitkeep +0 -0
- package/.claude/skills/figma-analyzer/knowledge/anti-patterns.md +216 -0
- package/.claude/skills/figma-analyzer/knowledge/patterns.md +144 -0
- package/.claude/skills/figma-analyzer/skill.md +236 -0
- package/lib/installer.js +59 -19
- package/package.json +5 -1
|
@@ -0,0 +1,359 @@
|
|
|
1
|
+
# Session Persistence
|
|
2
|
+
|
|
3
|
+
Preserve work and context across sessions.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## The Problem
|
|
8
|
+
|
|
9
|
+
When a session ends:
|
|
10
|
+
- AI loses conversation context
|
|
11
|
+
- Progress might be forgotten
|
|
12
|
+
- Work must be re-explained
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## The Solution
|
|
17
|
+
|
|
18
|
+
Session persistence through:
|
|
19
|
+
- Session state tracking
|
|
20
|
+
- Durable sessions for tasks
|
|
21
|
+
- Morning briefing for restoration
|
|
22
|
+
- Progress.md for handoff notes
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## Configuration
|
|
27
|
+
|
|
28
|
+
```json
|
|
29
|
+
{
|
|
30
|
+
"sessionState": {
|
|
31
|
+
"enabled": true,
|
|
32
|
+
"autoRestore": true,
|
|
33
|
+
"maxGapHours": 24, // Max hours before "cold start"
|
|
34
|
+
"trackFiles": true,
|
|
35
|
+
"trackDecisions": true,
|
|
36
|
+
"maxRecentFiles": 20,
|
|
37
|
+
"maxRecentDecisions": 10
|
|
38
|
+
},
|
|
39
|
+
"durableSteps": {
|
|
40
|
+
"enabled": true,
|
|
41
|
+
"autoResume": true
|
|
42
|
+
},
|
|
43
|
+
"morningBriefing": {
|
|
44
|
+
"enabled": true,
|
|
45
|
+
"showLastSession": true,
|
|
46
|
+
"showChanges": true,
|
|
47
|
+
"showRecommendedTasks": 3
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## Session State
|
|
55
|
+
|
|
56
|
+
Tracked in `.workflow/state/session-state.json`:
|
|
57
|
+
|
|
58
|
+
```json
|
|
59
|
+
{
|
|
60
|
+
"lastActivity": "2024-01-15T14:30:00Z",
|
|
61
|
+
"currentTask": "TASK-015",
|
|
62
|
+
"recentFiles": [
|
|
63
|
+
"src/services/AuthService.ts",
|
|
64
|
+
"src/components/LoginForm.tsx"
|
|
65
|
+
],
|
|
66
|
+
"recentDecisions": [
|
|
67
|
+
"Use JWT for auth tokens",
|
|
68
|
+
"Store tokens in localStorage"
|
|
69
|
+
],
|
|
70
|
+
"tasksCompleted": ["TASK-014", "TASK-013"],
|
|
71
|
+
"tasksInProgress": ["TASK-015"]
|
|
72
|
+
}
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## Auto-Restore
|
|
78
|
+
|
|
79
|
+
When `autoRestore` is enabled:
|
|
80
|
+
|
|
81
|
+
```
|
|
82
|
+
New session starts
|
|
83
|
+
↓
|
|
84
|
+
Check last activity time
|
|
85
|
+
↓
|
|
86
|
+
┌─────────────────────────────────────────┐
|
|
87
|
+
│ Gap < maxGapHours? │
|
|
88
|
+
├─────────────────────────────────────────┤
|
|
89
|
+
│ YES → Warm restore │
|
|
90
|
+
│ - Load session state │
|
|
91
|
+
│ - Show recent context │
|
|
92
|
+
│ - Suggest continuing task │
|
|
93
|
+
├─────────────────────────────────────────┤
|
|
94
|
+
│ NO → Cold start │
|
|
95
|
+
│ - Show morning briefing │
|
|
96
|
+
│ - Summarize changes │
|
|
97
|
+
│ - Recommend tasks │
|
|
98
|
+
└─────────────────────────────────────────┘
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
## Warm Restore
|
|
104
|
+
|
|
105
|
+
For sessions within `maxGapHours`:
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
🔄 Resuming Session
|
|
109
|
+
|
|
110
|
+
Last active: 2 hours ago
|
|
111
|
+
Current task: TASK-015 (Add authentication)
|
|
112
|
+
|
|
113
|
+
Recent files:
|
|
114
|
+
- src/services/AuthService.ts
|
|
115
|
+
- src/components/LoginForm.tsx
|
|
116
|
+
|
|
117
|
+
Recent decisions:
|
|
118
|
+
- Use JWT for auth tokens
|
|
119
|
+
- Store tokens in localStorage
|
|
120
|
+
|
|
121
|
+
Continue with TASK-015?
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
## Durable Sessions
|
|
127
|
+
|
|
128
|
+
For crash recovery and long-running tasks:
|
|
129
|
+
|
|
130
|
+
```json
|
|
131
|
+
{
|
|
132
|
+
"durableSteps": {
|
|
133
|
+
"enabled": true,
|
|
134
|
+
"autoResume": true,
|
|
135
|
+
"checkSuspensionsOnStart": true
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
### How It Works
|
|
141
|
+
|
|
142
|
+
1. Task start creates `durable-session.json`
|
|
143
|
+
2. Each step is tracked with status
|
|
144
|
+
3. On crash/restart, session is detected
|
|
145
|
+
4. Resume from last completed step
|
|
146
|
+
|
|
147
|
+
### Resume Context
|
|
148
|
+
|
|
149
|
+
```
|
|
150
|
+
🔄 Resuming from durable session
|
|
151
|
+
|
|
152
|
+
Task: TASK-015
|
|
153
|
+
Progress: 3/7 steps completed
|
|
154
|
+
Resuming from: "Add form validation"
|
|
155
|
+
|
|
156
|
+
Last completed:
|
|
157
|
+
✓ Create AuthService
|
|
158
|
+
✓ Create LoginForm
|
|
159
|
+
✓ Add basic state
|
|
160
|
+
|
|
161
|
+
Continue?
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
---
|
|
165
|
+
|
|
166
|
+
## Morning Briefing
|
|
167
|
+
|
|
168
|
+
Start each day with context:
|
|
169
|
+
|
|
170
|
+
```bash
|
|
171
|
+
/wogi-standup
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
### Output
|
|
175
|
+
|
|
176
|
+
```
|
|
177
|
+
☀️ Morning Briefing - 2024-01-16
|
|
178
|
+
|
|
179
|
+
═══════════════════════════════════════
|
|
180
|
+
|
|
181
|
+
📅 Last Session (2024-01-15)
|
|
182
|
+
• Completed: TASK-014 (Fix login bug)
|
|
183
|
+
• In Progress: TASK-015 (Add authentication)
|
|
184
|
+
• Hours worked: 3.5
|
|
185
|
+
|
|
186
|
+
📝 Changes Since Last Session
|
|
187
|
+
• 2 commits pushed
|
|
188
|
+
• 3 files modified by others
|
|
189
|
+
|
|
190
|
+
📋 Recommended Tasks
|
|
191
|
+
1. TASK-015 (In Progress) - Add authentication
|
|
192
|
+
2. TASK-016 (Ready) - Add password reset
|
|
193
|
+
3. TASK-017 (Ready) - Dashboard metrics
|
|
194
|
+
|
|
195
|
+
⚠️ Blockers
|
|
196
|
+
None detected
|
|
197
|
+
|
|
198
|
+
═══════════════════════════════════════
|
|
199
|
+
|
|
200
|
+
Ready to continue with TASK-015?
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
---
|
|
204
|
+
|
|
205
|
+
## Progress.md
|
|
206
|
+
|
|
207
|
+
Handoff notes for session transitions:
|
|
208
|
+
|
|
209
|
+
```markdown
|
|
210
|
+
# Progress Notes
|
|
211
|
+
|
|
212
|
+
## Current Focus
|
|
213
|
+
Working on TASK-015: Add user authentication
|
|
214
|
+
|
|
215
|
+
## Where I Left Off
|
|
216
|
+
- Created AuthService with login/logout
|
|
217
|
+
- LoginForm component renders but not connected
|
|
218
|
+
- Need to: Add form validation, connect to API
|
|
219
|
+
|
|
220
|
+
## Important Context
|
|
221
|
+
- Using JWT tokens with 1hr expiry
|
|
222
|
+
- Refresh tokens stored in httpOnly cookie
|
|
223
|
+
- Auth state managed with Zustand
|
|
224
|
+
|
|
225
|
+
## Blockers
|
|
226
|
+
None
|
|
227
|
+
|
|
228
|
+
## Next Steps
|
|
229
|
+
1. Add form validation
|
|
230
|
+
2. Connect to API
|
|
231
|
+
3. Handle loading states
|
|
232
|
+
4. Test error scenarios
|
|
233
|
+
|
|
234
|
+
---
|
|
235
|
+
|
|
236
|
+
*Last updated: 2024-01-15 14:30*
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
### Keep Progress Updated
|
|
240
|
+
|
|
241
|
+
Update before:
|
|
242
|
+
- Ending a session
|
|
243
|
+
- Running /compact
|
|
244
|
+
- Handing off to teammate
|
|
245
|
+
|
|
246
|
+
---
|
|
247
|
+
|
|
248
|
+
## Commands
|
|
249
|
+
|
|
250
|
+
```bash
|
|
251
|
+
# Check session status
|
|
252
|
+
flow session status
|
|
253
|
+
|
|
254
|
+
# Restore previous session
|
|
255
|
+
flow session restore
|
|
256
|
+
|
|
257
|
+
# Clear session (fresh start)
|
|
258
|
+
flow session clear
|
|
259
|
+
|
|
260
|
+
# Morning briefing
|
|
261
|
+
/wogi-standup
|
|
262
|
+
```
|
|
263
|
+
|
|
264
|
+
---
|
|
265
|
+
|
|
266
|
+
## Suspended Tasks
|
|
267
|
+
|
|
268
|
+
When tasks are suspended:
|
|
269
|
+
|
|
270
|
+
```bash
|
|
271
|
+
flow resume --status
|
|
272
|
+
|
|
273
|
+
# Output:
|
|
274
|
+
# 📊 Task Session Status
|
|
275
|
+
# ─────────────────────────────────
|
|
276
|
+
# Task: TASK-015
|
|
277
|
+
# Status: SUSPENDED
|
|
278
|
+
# Type: manual
|
|
279
|
+
# Reason: Waiting for design approval
|
|
280
|
+
#
|
|
281
|
+
# Run: flow resume --approve to continue
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
---
|
|
285
|
+
|
|
286
|
+
## Session History
|
|
287
|
+
|
|
288
|
+
Archived sessions for reference:
|
|
289
|
+
|
|
290
|
+
```
|
|
291
|
+
.workflow/state/session-history/
|
|
292
|
+
├── session-2024-01-15-001.json
|
|
293
|
+
├── session-2024-01-15-002.json
|
|
294
|
+
└── session-2024-01-14-001.json
|
|
295
|
+
```
|
|
296
|
+
|
|
297
|
+
### View History
|
|
298
|
+
|
|
299
|
+
```bash
|
|
300
|
+
flow session stats
|
|
301
|
+
|
|
302
|
+
# Output:
|
|
303
|
+
# Session Statistics
|
|
304
|
+
# ─────────────────────────────────
|
|
305
|
+
# Total sessions: 47
|
|
306
|
+
# Completed: 45
|
|
307
|
+
# Failed: 2
|
|
308
|
+
# Cancelled: 0
|
|
309
|
+
# Avg steps: 4.2
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
---
|
|
313
|
+
|
|
314
|
+
## Best Practices
|
|
315
|
+
|
|
316
|
+
1. **Update Progress Before Leaving**: Always update progress.md
|
|
317
|
+
2. **Commit Before Session End**: Don't leave uncommitted work
|
|
318
|
+
3. **Use Morning Briefing**: Start fresh with context
|
|
319
|
+
4. **Don't Fight Durable Sessions**: They're there to help
|
|
320
|
+
5. **Clear When Needed**: Use `flow session clear` for fresh starts
|
|
321
|
+
|
|
322
|
+
---
|
|
323
|
+
|
|
324
|
+
## Troubleshooting
|
|
325
|
+
|
|
326
|
+
### Session Not Restoring
|
|
327
|
+
|
|
328
|
+
Check if session state exists:
|
|
329
|
+
```bash
|
|
330
|
+
cat .workflow/state/session-state.json
|
|
331
|
+
```
|
|
332
|
+
|
|
333
|
+
Check `maxGapHours` setting.
|
|
334
|
+
|
|
335
|
+
### Durable Session Blocking
|
|
336
|
+
|
|
337
|
+
If a stale session is blocking:
|
|
338
|
+
```bash
|
|
339
|
+
flow session clear
|
|
340
|
+
```
|
|
341
|
+
|
|
342
|
+
### Morning Briefing Not Showing
|
|
343
|
+
|
|
344
|
+
Enable in config:
|
|
345
|
+
```json
|
|
346
|
+
{
|
|
347
|
+
"morningBriefing": {
|
|
348
|
+
"enabled": true
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
```
|
|
352
|
+
|
|
353
|
+
---
|
|
354
|
+
|
|
355
|
+
## Related
|
|
356
|
+
|
|
357
|
+
- [Context Management](./context-management.md) - Context monitoring
|
|
358
|
+
- [Durable Sessions](../02-task-execution/02-execution-loop.md#durable-sessions)
|
|
359
|
+
- [Configuration](../configuration/all-options.md) - All settings
|
|
@@ -0,0 +1,317 @@
|
|
|
1
|
+
# Team History
|
|
2
|
+
|
|
3
|
+
Shared logs, audit trails, and team memory.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Overview
|
|
8
|
+
|
|
9
|
+
Team history enables:
|
|
10
|
+
- Shared change logs across team members
|
|
11
|
+
- Audit trails for compliance
|
|
12
|
+
- Cross-project knowledge access
|
|
13
|
+
- Institutional memory
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Configuration
|
|
18
|
+
|
|
19
|
+
```json
|
|
20
|
+
{
|
|
21
|
+
"team": {
|
|
22
|
+
"enabled": false,
|
|
23
|
+
"sync": {
|
|
24
|
+
"requestLog": "recent", // "recent" | "all" | false
|
|
25
|
+
"memory": true
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
"requestLog": {
|
|
29
|
+
"enabled": true,
|
|
30
|
+
"autoArchive": true,
|
|
31
|
+
"maxRecentEntries": 50,
|
|
32
|
+
"keepRecent": 30,
|
|
33
|
+
"createSummary": true
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## Request Log
|
|
41
|
+
|
|
42
|
+
The primary audit trail:
|
|
43
|
+
|
|
44
|
+
```markdown
|
|
45
|
+
# Request Log
|
|
46
|
+
|
|
47
|
+
### R-047 | 2024-01-15 14:30
|
|
48
|
+
**Type**: new
|
|
49
|
+
**Tags**: #screen:login #component:AuthService #feature:authentication
|
|
50
|
+
**Request**: "Add user authentication with login form"
|
|
51
|
+
**Result**: Created AuthService and LoginForm components
|
|
52
|
+
**Files**: src/services/AuthService.ts, src/components/LoginForm.tsx
|
|
53
|
+
|
|
54
|
+
### R-046 | 2024-01-15 10:15
|
|
55
|
+
**Type**: fix
|
|
56
|
+
**Tags**: #screen:dashboard #bugfix
|
|
57
|
+
**Request**: "Fix chart rendering on mobile"
|
|
58
|
+
**Result**: Added responsive breakpoints to Chart component
|
|
59
|
+
**Files**: src/components/Chart.tsx
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## Searching History
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
/wogi-search #component:Button
|
|
68
|
+
|
|
69
|
+
# Output:
|
|
70
|
+
# Found 5 entries:
|
|
71
|
+
#
|
|
72
|
+
# R-042 | 2024-01-14 | new | Created Button component
|
|
73
|
+
# R-039 | 2024-01-13 | change | Added loading state to Button
|
|
74
|
+
# R-035 | 2024-01-12 | fix | Fixed Button disabled style
|
|
75
|
+
# ...
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### Search by Tag
|
|
79
|
+
|
|
80
|
+
| Tag Type | Example | Purpose |
|
|
81
|
+
|----------|---------|---------|
|
|
82
|
+
| `#screen:` | `#screen:login` | Changes to screens |
|
|
83
|
+
| `#component:` | `#component:Button` | Component changes |
|
|
84
|
+
| `#feature:` | `#feature:auth` | Feature-related |
|
|
85
|
+
| `#bugfix` | `#bugfix` | Bug fixes |
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## Auto-Archive
|
|
90
|
+
|
|
91
|
+
Old entries are archived automatically:
|
|
92
|
+
|
|
93
|
+
```json
|
|
94
|
+
{
|
|
95
|
+
"requestLog": {
|
|
96
|
+
"autoArchive": true,
|
|
97
|
+
"maxRecentEntries": 50,
|
|
98
|
+
"keepRecent": 30
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### Archive Location
|
|
104
|
+
|
|
105
|
+
```
|
|
106
|
+
.workflow/state/
|
|
107
|
+
├── request-log.md # Recent entries
|
|
108
|
+
└── archive/
|
|
109
|
+
├── request-log-2024-01.md
|
|
110
|
+
├── request-log-2024-02.md
|
|
111
|
+
└── summary.md
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### Summary Creation
|
|
115
|
+
|
|
116
|
+
When `createSummary` is enabled:
|
|
117
|
+
|
|
118
|
+
```markdown
|
|
119
|
+
# Request Log Archive Summary
|
|
120
|
+
|
|
121
|
+
## 2024-01 (45 entries)
|
|
122
|
+
|
|
123
|
+
### By Type
|
|
124
|
+
- new: 20 entries
|
|
125
|
+
- fix: 15 entries
|
|
126
|
+
- change: 8 entries
|
|
127
|
+
- refactor: 2 entries
|
|
128
|
+
|
|
129
|
+
### Top Tags
|
|
130
|
+
- #screen:dashboard (12)
|
|
131
|
+
- #component:Button (8)
|
|
132
|
+
- #feature:auth (7)
|
|
133
|
+
|
|
134
|
+
### Key Changes
|
|
135
|
+
- Added user authentication (R-047)
|
|
136
|
+
- Implemented dashboard charts (R-038)
|
|
137
|
+
- Fixed mobile responsiveness (R-032)
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
## Team Sync
|
|
143
|
+
|
|
144
|
+
When team features are enabled:
|
|
145
|
+
|
|
146
|
+
### Sync Options
|
|
147
|
+
|
|
148
|
+
```json
|
|
149
|
+
{
|
|
150
|
+
"team": {
|
|
151
|
+
"sync": {
|
|
152
|
+
"requestLog": "recent" // Options:
|
|
153
|
+
// "recent" - last 50 entries
|
|
154
|
+
// "all" - full history
|
|
155
|
+
// false - don't sync
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
### What Syncs
|
|
162
|
+
|
|
163
|
+
| Setting | What Syncs |
|
|
164
|
+
|---------|-----------|
|
|
165
|
+
| `"recent"` | Last N entries only |
|
|
166
|
+
| `"all"` | Complete history |
|
|
167
|
+
| `false` | Nothing (local only) |
|
|
168
|
+
|
|
169
|
+
---
|
|
170
|
+
|
|
171
|
+
## Audit Trail
|
|
172
|
+
|
|
173
|
+
Request log serves as audit trail:
|
|
174
|
+
|
|
175
|
+
### Required Fields
|
|
176
|
+
|
|
177
|
+
| Field | Purpose |
|
|
178
|
+
|-------|---------|
|
|
179
|
+
| ID | Unique identifier |
|
|
180
|
+
| Timestamp | When change occurred |
|
|
181
|
+
| Type | Kind of change |
|
|
182
|
+
| Request | What was asked |
|
|
183
|
+
| Result | What was done |
|
|
184
|
+
| Files | What was changed |
|
|
185
|
+
|
|
186
|
+
### Optional Fields
|
|
187
|
+
|
|
188
|
+
| Field | Purpose |
|
|
189
|
+
|-------|---------|
|
|
190
|
+
| Tags | Categorization |
|
|
191
|
+
| Author | Who made request |
|
|
192
|
+
| Duration | Time taken |
|
|
193
|
+
| Tokens | Tokens used |
|
|
194
|
+
|
|
195
|
+
---
|
|
196
|
+
|
|
197
|
+
## Cross-Project Access
|
|
198
|
+
|
|
199
|
+
With team sync, access history from other projects:
|
|
200
|
+
|
|
201
|
+
```bash
|
|
202
|
+
# (Future) Search across projects
|
|
203
|
+
flow team search "authentication"
|
|
204
|
+
|
|
205
|
+
# Output:
|
|
206
|
+
# Found in 3 projects:
|
|
207
|
+
#
|
|
208
|
+
# project-a:
|
|
209
|
+
# R-047 | Add authentication
|
|
210
|
+
#
|
|
211
|
+
# project-b:
|
|
212
|
+
# R-023 | Implement OAuth
|
|
213
|
+
#
|
|
214
|
+
# project-c:
|
|
215
|
+
# R-089 | Add SSO support
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
---
|
|
219
|
+
|
|
220
|
+
## Privacy Considerations
|
|
221
|
+
|
|
222
|
+
### What's Safe to Share
|
|
223
|
+
|
|
224
|
+
- General patterns and approaches
|
|
225
|
+
- Component references
|
|
226
|
+
- File structure changes
|
|
227
|
+
|
|
228
|
+
### What's NOT Safe to Share
|
|
229
|
+
|
|
230
|
+
- Sensitive business logic
|
|
231
|
+
- API keys or secrets
|
|
232
|
+
- Personal data references
|
|
233
|
+
|
|
234
|
+
### Privacy Controls
|
|
235
|
+
|
|
236
|
+
```json
|
|
237
|
+
{
|
|
238
|
+
"team": {
|
|
239
|
+
"sync": {
|
|
240
|
+
"requestLog": "recent",
|
|
241
|
+
"sanitize": true, // Remove sensitive data
|
|
242
|
+
"excludeTags": ["#internal", "#sensitive"]
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
```
|
|
247
|
+
|
|
248
|
+
---
|
|
249
|
+
|
|
250
|
+
## Retention Policies
|
|
251
|
+
|
|
252
|
+
### Local Retention
|
|
253
|
+
|
|
254
|
+
```json
|
|
255
|
+
{
|
|
256
|
+
"requestLog": {
|
|
257
|
+
"keepRecent": 30, // Days in active log
|
|
258
|
+
"archiveRetention": 365 // Days in archive
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
### Team Retention
|
|
264
|
+
|
|
265
|
+
Managed by team backend:
|
|
266
|
+
- Recent: Always available
|
|
267
|
+
- Archive: Configurable retention
|
|
268
|
+
- Deletion: On project removal
|
|
269
|
+
|
|
270
|
+
---
|
|
271
|
+
|
|
272
|
+
## Best Practices
|
|
273
|
+
|
|
274
|
+
1. **Use Consistent Tags**: Standardize tag naming
|
|
275
|
+
2. **Be Descriptive**: Clear request/result summaries
|
|
276
|
+
3. **Tag Everything**: Makes searching easier
|
|
277
|
+
4. **Review Archives**: Periodically check for patterns
|
|
278
|
+
5. **Protect Sensitive Data**: Use privacy controls
|
|
279
|
+
|
|
280
|
+
---
|
|
281
|
+
|
|
282
|
+
## Commands
|
|
283
|
+
|
|
284
|
+
| Command | Purpose |
|
|
285
|
+
|---------|---------|
|
|
286
|
+
| `/wogi-log` | Add log entry |
|
|
287
|
+
| `/wogi-search` | Search history |
|
|
288
|
+
| `/wogi-changelog` | Generate changelog |
|
|
289
|
+
|
|
290
|
+
---
|
|
291
|
+
|
|
292
|
+
## Generating Changelogs
|
|
293
|
+
|
|
294
|
+
```bash
|
|
295
|
+
/wogi-changelog
|
|
296
|
+
|
|
297
|
+
# Output:
|
|
298
|
+
# Generated CHANGELOG from request log
|
|
299
|
+
#
|
|
300
|
+
# ## 2024-01-15
|
|
301
|
+
#
|
|
302
|
+
# ### Added
|
|
303
|
+
# - User authentication (R-047)
|
|
304
|
+
# - Dashboard charts (R-038)
|
|
305
|
+
#
|
|
306
|
+
# ### Fixed
|
|
307
|
+
# - Mobile chart rendering (R-046)
|
|
308
|
+
# - Login button alignment (R-044)
|
|
309
|
+
```
|
|
310
|
+
|
|
311
|
+
---
|
|
312
|
+
|
|
313
|
+
## Related
|
|
314
|
+
|
|
315
|
+
- [Project Learning](../03-self-improvement/project-learning.md) - Learning from history
|
|
316
|
+
- [Team Setup](../01-setup-onboarding/team-setup.md) - Team configuration
|
|
317
|
+
- [Configuration](../configuration/all-options.md) - All settings
|