mirror of
https://github.com/rennf93/roboco.git
synced 2026-08-03 07:23:24 +02:00
2.1 KiB
2.1 KiB
Journaling Workflow
Why Journal
- Becomes searchable knowledge for future agents
- Helps with task handoffs
- Documents decisions and learnings
- Required before key transitions
Entry Types
| Type | Use For |
|---|---|
task_reflection |
End of task summary |
decision_log |
Architectural decisions |
learning |
New knowledge gained |
struggle |
Problems and solutions |
general |
Other observations |
Creating Entries
# General entry
roboco_journal_entry({
type: "learning",
title: "Redis SCAN vs KEYS",
content: "SCAN is better for large datasets",
task_id: task_id,
tags: ["redis", "performance"]
})
# Decision log
roboco_journal_decision({
title: "Session storage choice",
context: "Need fast session lookups",
options: ["PostgreSQL", "Redis", "In-memory"],
chosen: "Redis",
rationale: "Sub-millisecond reads, ephemeral data"
})
# Struggle (problem and solution)
roboco_journal_struggle({
task_id: task_id,
problem: "Tests failing intermittently",
attempts: ["Increased timeout", "Added retry"],
resolution: "Race condition in setup"
})
# Learning
roboco_journal_learning({
content: "Use asyncio.gather for parallel calls",
how_applied: "Reduced endpoint latency 50%",
category: "performance",
tags: ["async", "performance"]
})
Required Reflections
Before submitting for QA or completing:
roboco_journal_reflect({
task_id: task_id,
what_done: "Implemented rate limiting with Redis",
what_learned: "Lua scripts for atomic operations",
what_struggled: "Testing concurrent requests"
})
Searching Journals
# Semantic search your journal
roboco_journal_search("rate limiting patterns", top_k=5)
# Search team journals (if permitted)
roboco_journal_read_team("be-dev-1", task_id=task_id)
Best Practices
- Journal as you go - Don't wait until end
- Be specific - Generic entries are less searchable
- Use tags - Helps categorization
- Record failures - They're valuable learning
- Include context - Future searchers need it