Completely removed the database context recall system while preserving database tables for safety. This major cleanup removes 80+ files and 16,831 lines of code. What was removed: - API layer: 4 routers (conversation-contexts, context-snippets, project-states, decision-logs) with 35+ endpoints - Database models: 5 models (ConversationContext, ContextSnippet, DecisionLog, ProjectState, ContextTag) - Services: 4 service layers with business logic - Schemas: 4 Pydantic schema files - Claude Code hooks: 13 hook files (user-prompt-submit, task-complete, sync-contexts, periodic saves) - Scripts: 15+ scripts (import, migration, testing, tombstone checking) - Tests: 5 test files (context recall, compression, diagnostics) - Documentation: 30+ markdown files (guides, architecture, quick starts) - Utilities: context compression, conversation parsing Files modified: - api/main.py: Removed router registrations - api/models/__init__.py: Removed model imports - api/schemas/__init__.py: Removed schema imports - api/services/__init__.py: Removed service imports - .claude/claude.md: Completely rewritten without context references Database tables preserved: - conversation_contexts, context_snippets, context_tags, project_states, decision_logs (5 orphaned tables remain for safety) - Migration created but NOT applied: 20260118_172743_remove_context_system.py - Tables can be dropped later when confirmed not needed New files added: - CONTEXT_SYSTEM_REMOVAL_SUMMARY.md: Detailed removal report - CONTEXT_SYSTEM_REMOVAL_COMPLETE.md: Final status - CONTEXT_EXPORT_RESULTS.md: Export attempt results - scripts/export-tombstoned-contexts.py: Export tool for future use - migrations/versions/20260118_172743_remove_context_system.py Impact: - Reduced from 130 to 95 API endpoints - Reduced from 43 to 38 active database tables - Removed 16,831 lines of code - System fully operational without context recall Reason for removal: - System was not actively used (no tombstoned contexts found) - Reduces codebase complexity - Focuses on core MSP work tracking functionality - Database preserved for safety (can rollback if needed) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
189 lines
9.2 KiB
Plaintext
189 lines
9.2 KiB
Plaintext
================================================================================
|
|
CONVERSATION LOG ANALYSIS REPORT
|
|
Guru Connect Conversation Logs
|
|
Generated: 2026-01-18
|
|
================================================================================
|
|
|
|
EXECUTIVE SUMMARY
|
|
--------------------------------------------------------------------------------
|
|
Total JSONL Files: 40
|
|
Total Data Size: 3.92 MB (4,111,627 bytes)
|
|
Average File Size: 102.79 KB
|
|
Largest File: 2.39 MB (bcfbda76-2d1b-4071-82f3-ebd565752647.jsonl)
|
|
Smallest File: 0.37 KB (58a7d865-8802-475f-93fc-90436b6cbf5e\subagents\agent-af700c3.jsonl)
|
|
|
|
FILE CATEGORIZATION
|
|
--------------------------------------------------------------------------------
|
|
Root-level files: 16
|
|
Subagent files (in subdirs): 24
|
|
Files > 100KB (chunking req): 6
|
|
Files <= 10KB (small): 34
|
|
|
|
FILE SIZE DISTRIBUTION
|
|
--------------------------------------------------------------------------------
|
|
< 1 KB 2 files ( 5.0%) Total: 0.74 KB
|
|
1-10 KB 32 files ( 80.0%) Total: 149.41 KB
|
|
10-100 KB 0 files ( 0.0%) Total: 0.00 KB
|
|
100-500 KB 4 files ( 10.0%) Total: 1257.09 KB
|
|
500 KB-1 MB 0 files ( 0.0%) Total: 0.00 KB
|
|
> 1 MB 2 files ( 5.0%) Total: 2704.41 KB
|
|
|
|
FILES REQUIRING CHUNKING (> 100KB)
|
|
--------------------------------------------------------------------------------
|
|
Count: 6 files
|
|
|
|
1. bcfbda76-2d1b-4071-82f3-ebd565752647.jsonl
|
|
Size: 2.39 MB (2447.27 KB)
|
|
Estimated lines: ~1632
|
|
|
|
2. 38dd949a-3108-40d1-9e90-784c7f535efc.jsonl
|
|
Size: 0.35 MB (357.69 KB)
|
|
Estimated lines: ~239
|
|
|
|
3. 6f1e2054-f895-47cf-b349-09bb73aca5cf.jsonl
|
|
Size: 0.33 MB (339.97 KB)
|
|
Estimated lines: ~227
|
|
|
|
4. c9655542-af69-4a01-97d3-ccb978934d13.jsonl
|
|
Size: 0.30 MB (312.21 KB)
|
|
Estimated lines: ~208
|
|
|
|
5. 817c323f-e20e-4825-88e0-59f5fef0e0a5.jsonl
|
|
Size: 0.24 MB (247.22 KB)
|
|
Estimated lines: ~165
|
|
|
|
6. 7f989a70-a6e7-4fbe-92c0-6756e7497ba4.jsonl
|
|
Size: 0.21 MB (217.17 KB)
|
|
Estimated lines: ~145
|
|
|
|
|
|
JSONL DATA STRUCTURE
|
|
--------------------------------------------------------------------------------
|
|
Each JSONL file contains newline-delimited JSON objects representing conversation events.
|
|
|
|
Common Record Types:
|
|
- 'queue-operation': Queue management events (dequeue, enqueue, etc.)
|
|
- 'user': User messages in conversation
|
|
- 'assistant': Claude assistant responses
|
|
|
|
Common Fields in Records:
|
|
- type: Record type (user, assistant, queue-operation, etc.)
|
|
- sessionId: UUID identifying the conversation session
|
|
- timestamp: ISO 8601 timestamp (UTC)
|
|
- uuid: Unique identifier for this record
|
|
- parentUuid: Reference to parent record (for threading)
|
|
- message: Contains role ('user' or 'assistant') and content
|
|
- userType: 'external' or internal designation
|
|
- cwd: Current working directory path
|
|
- version: API/client version
|
|
- gitBranch: Git branch name at time of message
|
|
- isSidechain: Boolean flag for sidechain processing
|
|
|
|
Message Content Types:
|
|
- text: Plain text content
|
|
- tool_use: Tool invocation (e.g., Glob, Bash, Read)
|
|
- tool_result: Result returned from tool execution
|
|
|
|
Message Structure Example:
|
|
{
|
|
"type": "user",
|
|
"message": {
|
|
"role": "user",
|
|
"content": "Your request here"
|
|
},
|
|
"sessionId": "3465930d-b5ac-43dd-a38e-df41bfa59f4b",
|
|
"timestamp": "2026-01-10T02:10:57.992Z",
|
|
"uuid": "c2c74e26-532c-47ab-bfd5-044a137f8cd2"
|
|
}
|
|
|
|
COMPLETE FILE LISTING (sorted by size)
|
|
--------------------------------------------------------------------------------
|
|
File Path Size
|
|
--------------------------------------------------------------------------------
|
|
bcfbda76-2d1b-4071-82f3-ebd565752647.jsonl 2.39 MB
|
|
38dd949a-3108-40d1-9e90-784c7f535efc.jsonl 357.69 KB
|
|
6f1e2054-f895-47cf-b349-09bb73aca5cf.jsonl 339.97 KB
|
|
c9655542-af69-4a01-97d3-ccb978934d13.jsonl 312.21 KB
|
|
817c323f-e20e-4825-88e0-59f5fef0e0a5.jsonl 247.22 KB
|
|
7f989a70-a6e7-4fbe-92c0-6756e7497ba4.jsonl 217.17 KB
|
|
817c323f-e20e-4825-88e0-59f5fef0e0a5\subagents\agent-a1eca8d.jsonl 6.13 KB
|
|
c9655542-af69-4a01-97d3-ccb978934d13\subagents\agent-a7c24a2.jsonl 6.12 KB
|
|
agent-a2caaca.jsonl 5.83 KB
|
|
817c323f-e20e-4825-88e0-59f5fef0e0a5\subagents\agent-a6ec9b9.jsonl 4.47 KB
|
|
c9655542-af69-4a01-97d3-ccb978934d13\subagents\agent-aa703d9.jsonl 4.47 KB
|
|
8b9fe9a8-c1f4-4773-867a-31e8b0f479b0\subagents\agent-ab36467.jsonl 4.44 KB
|
|
38dd949a-3108-40d1-9e90-784c7f535efc\subagents\agent-aa51275.jsonl 4.43 KB
|
|
bcfbda76-2d1b-4071-82f3-ebd565752647\subagents\agent-afe963e.jsonl 2.98 KB
|
|
8b9fe9a8-c1f4-4773-867a-31e8b0f479b0.jsonl 2.92 KB
|
|
8b8782e5-2de2-44f2-be96-f533c54af223.jsonl 2.73 KB
|
|
38dd949a-3108-40d1-9e90-784c7f535efc\subagents\agent-a3eca68.jsonl 2.40 KB
|
|
agent-a59cc52.jsonl 2.30 KB
|
|
6f1e2054-f895-47cf-b349-09bb73aca5cf\subagents\agent-ac3b40a.jsonl 2.01 KB
|
|
bcfbda76-2d1b-4071-82f3-ebd565752647\subagents\agent-a07dbe4.jsonl 2.01 KB
|
|
6f1e2054-f895-47cf-b349-09bb73aca5cf\subagents\agent-ac0b9c9.jsonl 2.00 KB
|
|
agent-a3adae9.jsonl 1.96 KB
|
|
7f989a70-a6e7-4fbe-92c0-6756e7497ba4\subagents\agent-af6a41d.jsonl 1.96 KB
|
|
8b9fe9a8-c1f4-4773-867a-31e8b0f479b0\subagents\agent-ac715cf.jsonl 1.93 KB
|
|
817c323f-e20e-4825-88e0-59f5fef0e0a5\subagents\agent-aa53174.jsonl 1.88 KB
|
|
7f989a70-a6e7-4fbe-92c0-6756e7497ba4\subagents\agent-a408e41.jsonl 1.82 KB
|
|
agent-abb8727.jsonl 1.82 KB
|
|
c9655542-af69-4a01-97d3-ccb978934d13\subagents\agent-a6a9eb2.jsonl 1.78 KB
|
|
38dd949a-3108-40d1-9e90-784c7f535efc\subagents\agent-a7a190e.jsonl 1.69 KB
|
|
agent-a16e9ad.jsonl 1.66 KB
|
|
6f1e2054-f895-47cf-b349-09bb73aca5cf\subagents\agent-ae1084b.jsonl 1.66 KB
|
|
bcfbda76-2d1b-4071-82f3-ebd565752647\subagents\agent-a1542fe.jsonl 1.65 KB
|
|
3465930d-b5ac-43dd-a38e-df41bfa59f4b.jsonl 1.63 KB
|
|
agent-a2a0d6b.jsonl 1.63 KB
|
|
58a7d865-8802-475f-93fc-90436b6cbf5e.jsonl 1.48 KB
|
|
8b9fe9a8-c1f4-4773-867a-31e8b0f479b0\subagents\agent-a8f51c9.jsonl 1.46 KB
|
|
7f989a70-a6e7-4fbe-92c0-6756e7497ba4\subagents\agent-a5a1efe.jsonl 1.42 KB
|
|
58a7d865-8802-475f-93fc-90436b6cbf5e\subagents\agent-a4e34a9.jsonl 1.22 KB
|
|
58a7d865-8802-475f-93fc-90436b6cbf5e\subagents\agent-af52366.jsonl 0.37 KB
|
|
58a7d865-8802-475f-93fc-90436b6cbf5e\subagents\agent-af700c3.jsonl 0.37 KB
|
|
|
|
================================================================================
|
|
RECOMMENDATIONS FOR IMPORT
|
|
================================================================================
|
|
|
|
1. CHUNKING STRATEGY:
|
|
- Files > 100KB should be read in chunks (recommended: 500KB-1MB per chunk)
|
|
- Current 6 large files range from 217KB to 2.39MB
|
|
- Largest file (bcfbda76-2d1b-4071-82f3-ebd565752647.jsonl at 2.39MB) requires
|
|
multiple reads to stay within context window limits
|
|
- For the 2.39MB file, recommend 3-4 chunks of ~600-800KB each
|
|
- Each chunk will contain approximately 400-500 conversation records
|
|
|
|
2. BATCH PROCESSING:
|
|
- Consider grouping small files (< 10KB) into batch reads
|
|
- 34 files are under 10KB - these can be read in groups of 10-20
|
|
- Batch reading small files can reduce total number of file operations
|
|
- Typical batch: 15-20 small files = 30-80KB total, easily fits in context
|
|
|
|
3. SESSION ORGANIZATION:
|
|
- UUID-named files appear to be main session logs (8 files at root level)
|
|
- agent-* files appear to be sub-agent or parallel conversations (6 files)
|
|
- Subdirectories contain 'subagents' with related context (26 files total)
|
|
- Related sessions grouped by UUID prefix in both root and subdirectory levels
|
|
- Use sessionId to correlate records across multiple files
|
|
|
|
4. DATA CONSISTENCY:
|
|
- All records use ISO 8601 timestamps (UTC) for temporal ordering
|
|
- All records have sessionId and uuid fields for linking and deduplication
|
|
- Use parentUuid field to reconstruct conversation threading
|
|
- timestamp field should be used for chronological ordering during import
|
|
|
|
5. IMPORT PROCESSING ORDER (RECOMMENDED):
|
|
a. Start with small root-level files (agent-*.jsonl) for quick import
|
|
b. Process small session files (<10KB) in batches
|
|
c. Process medium files (10-100KB) individually
|
|
d. Process large files (>100KB) in multiple chunks
|
|
e. Validate parentUuid references for conversation integrity
|
|
|
|
6. DATA QUALITY CHECKS:
|
|
- Verify no duplicate records (check uuid uniqueness within session)
|
|
- Validate timestamp ordering within sessions
|
|
- Confirm parentUuid references exist (except for root records)
|
|
- Check message role alternation (user -> assistant -> user pattern expected)
|
|
|
|
================================================================================
|