@michelabboud/visual-forge-mcp 0.5.5 → 0.6.0

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 +1 @@
1
- {"version":3,"file":"workflow-tools.js","sourceRoot":"","sources":["../../src/workflow/workflow-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-tools.js","sourceRoot":"","sources":["../../src/workflow/workflow-tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ # User Guides
2
+
3
+ This directory contains user-facing documentation and guides for Visual Forge MCP.
4
+
5
+ ## Available Guides
6
+
7
+ - **[testing.md](testing.md)** - Manual testing guide for MCP tools
8
+ - **[development-testing.md](development-testing.md)** - Developer testing guide with test strategies
9
+ - **[vf-workflow.md](vf-workflow.md)** - Quick reference for VF Parse workflow
10
+ - **[usage-examples.md](usage-examples.md)** - Example markdown files and usage patterns
11
+ - **[html-support.md](html-support.md)** - HTML file format support documentation
12
+ - **[backup-system.md](backup-system.md)** - Backup and restore system guide
13
+ - **[workflow-with-backups.md](workflow-with-backups.md)** - Complete workflow with backup integration
14
+
15
+ ## Quick Start
16
+
17
+ For first-time users, start with:
18
+ 1. [usage-examples.md](usage-examples.md) - See how to define images
19
+ 2. [vf-workflow.md](vf-workflow.md) - Understand the workflow
20
+ 3. [testing.md](testing.md) - Test your setup
21
+
22
+ ## For Developers
23
+
24
+ See [development-testing.md](development-testing.md) for comprehensive testing strategies and development workflows.
@@ -0,0 +1,511 @@
1
+ # Visual Forge MCP Backup System - Complete Flow
2
+
3
+ This document provides a detailed step-by-step explanation of how the backup system works in Visual Forge MCP, including when backups are created, how they interact with image optimization, and the restore/approval flows.
4
+
5
+ ---
6
+
7
+ ## 🎯 Overview
8
+
9
+ **Purpose:** Protect markdown files from unwanted changes during the Visual Forge workflow.
10
+
11
+ **What Gets Backed Up:** Only markdown/HTML files (NOT generated images)
12
+
13
+ **When Backups Are Created:** ONCE when placeholders are first added to files
14
+
15
+ **Backup Format:** `filename.md.vf-bak` (copy of original file)
16
+
17
+ ---
18
+
19
+ ## 📋 Complete Workflow with Backup System
20
+
21
+ ### Phase 1: Session Start
22
+
23
+ ```
24
+ User: "VF Parse README.md"
25
+
26
+ 1. Create VF session
27
+ 2. Ask for git branch (optional)
28
+ 3. Ask for global context/theme
29
+ 4. Session created in: ~/.visual-forge-mcp/sessions/[session-id]/
30
+ ```
31
+
32
+ **Backup Status:** ❌ No backup yet
33
+
34
+ ---
35
+
36
+ ### Phase 2: File Processing & Placeholder Addition
37
+
38
+ ```
39
+ 5. Read markdown file: README.md
40
+ 6. Parse structure (headers, sections)
41
+ 7. Identify sections needing images
42
+ 8. Generate placeholder specifications
43
+
44
+ 9. ⚠️ CRITICAL: Check if backup enabled
45
+ if (VF_BACKUP_ENABLED !== 'false'): // Default: true
46
+
47
+ 10. 🔒 CREATE BACKUP
48
+ Location: PlaceholderManager.addPlaceholders()
49
+ File: src/placeholders/placeholder-manager.ts:96
50
+
51
+ Backup Process:
52
+ a. Check if file exists
53
+ b. Read file content
54
+ c. Calculate MD5 hash of content
55
+ d. Copy file to README.md.vf-bak
56
+ e. Store backup metadata:
57
+ - originalPath: "README.md"
58
+ - backupPath: "README.md.vf-bak"
59
+ - timestamp: ISO date
60
+ - size: file size in bytes
61
+ - type: "markdown"
62
+ - hash: MD5 hash
63
+ f. Add to BackupSet
64
+
65
+ 11. Add placeholders to README.md:
66
+ **Visual Forge Place Holder**
67
+ ```image
68
+ type: diagram
69
+ prompt: "Architecture diagram showing..."
70
+ ```
71
+
72
+ 12. Save modified README.md (now has placeholders)
73
+ 13. Store BackupSet in StateManager
74
+ ```
75
+
76
+ **Backup Status:** ✅ **README.md.vf-bak created** (contains original file WITHOUT placeholders)
77
+
78
+ **Key Point:** Backup is created BEFORE modifying the file, so it contains the pristine original.
79
+
80
+ ---
81
+
82
+ ### Phase 3: Image Generation
83
+
84
+ ```
85
+ 14. Parse all files with placeholders
86
+ 15. Extract image specifications
87
+ 16. Start workflow: bulk/batch/interactive mode
88
+
89
+ For each image:
90
+ 17. Provider generates image → returns PNG
91
+ File: generated-images/gemini/image-001.png (4.2 MB)
92
+
93
+ 18. 🎨 OPTIMIZE IMAGE (WorkflowOrchestrator)
94
+ Location: src/workflow/workflow-orchestrator.ts:383-411
95
+
96
+ Optimization Process:
97
+ a. Copy original to: generated-images/gemini/original/image-001.png
98
+ b. Optimize with Sharp
99
+ c. Save optimized: generated-images/gemini/image-001.webp (1.2 MB)
100
+ d. Update result with optimized path
101
+ e. Add optimization metadata
102
+
103
+ 19. Save result with optimized filepath
104
+ 20. Continue to next image
105
+ ```
106
+
107
+ **Backup Status:** ✅ Still protected (README.md.vf-bak exists)
108
+
109
+ **Image Status:**
110
+ - Original: `generated-images/gemini/original/image-001.png` (preserved)
111
+ - Optimized: `generated-images/gemini/image-001.webp` (used in docs)
112
+
113
+ ---
114
+
115
+ ### Phase 4: Document Update (Placeholder Replacement)
116
+
117
+ ```
118
+ 21. All images generated successfully
119
+ 22. Verify all image files exist
120
+
121
+ 23. 📝 AUTO-REPLACE PLACEHOLDERS
122
+ Location: WorkflowTools.handleGenerateSession()
123
+ File: src/workflow/workflow-tools.ts:559-564
124
+
125
+ Note: "No backup needed here - backup was already created
126
+ when placeholders were added" (line 544)
127
+
128
+ For each generated image:
129
+ a. Find placeholder in README.md
130
+ b. Replace with: ![alt text](generated-images/gemini/image-001.webp)
131
+ c. Save modified README.md
132
+ d. Update session status: "inserted_into_document"
133
+
134
+ 24. All placeholders replaced
135
+ 25. README.md now contains actual image links (optimized versions)
136
+ ```
137
+
138
+ **Backup Status:** ✅ **Still protected** (README.md.vf-bak still has original)
139
+
140
+ **File States:**
141
+ - **Backup:** `README.md.vf-bak` → Original without placeholders
142
+ - **Current:** `README.md` → Has image links to optimized WebP files
143
+ - **Images (Original):** `generated-images/gemini/original/*.png` → Full quality
144
+ - **Images (Optimized):** `generated-images/gemini/*.webp` → Web optimized
145
+
146
+ ---
147
+
148
+ ### Phase 5: Review & Decision
149
+
150
+ ```
151
+ 26. User reviews generated images in documentation
152
+ 27. User must decide:
153
+ Option A: Approve changes (delete backups)
154
+ Option B: Restore from backups (undo everything)
155
+ ```
156
+
157
+ ---
158
+
159
+ ## 🔄 User Decision Flows
160
+
161
+ ### Option A: Approve Changes (Happy Path)
162
+
163
+ ```
164
+ User: "approve changes" or calls approve_changes MCP tool
165
+
166
+ 28. BackupManager.approveChanges(backupSet)
167
+ Location: src/backup/backup-manager.ts:257-305
168
+
169
+ For each backup file:
170
+ a. Check if backup exists
171
+ b. Delete backup file: rm README.md.vf-bak
172
+ c. Log deletion
173
+
174
+ 29. Update BackupSet.approved = true
175
+ 30. Save state
176
+ 31. Return success message
177
+ ```
178
+
179
+ **Result:**
180
+ - ✅ Backups deleted
181
+ - ✅ Changes are permanent
182
+ - ✅ README.md contains optimized images
183
+ - ✅ Original images preserved in `original/` subdirectory
184
+
185
+ ---
186
+
187
+ ### Option B: Restore from Backup (Undo)
188
+
189
+ ```
190
+ User: "restore backups" or calls restore_from_backups MCP tool
191
+
192
+ 28. BackupManager.restoreFromBackup(backupSet)
193
+ Location: src/backup/backup-manager.ts:163-211
194
+
195
+ For each backup file:
196
+ a. Check if backup exists
197
+ b. Read backup content
198
+ c. Calculate MD5 hash
199
+ d. ⚠️ Verify hash matches (integrity check)
200
+ e. Copy backup over current file:
201
+ cp README.md.vf-bak README.md
202
+ f. Delete backup file: rm README.md.vf-bak
203
+ g. Log restoration
204
+
205
+ 29. Update state
206
+ 30. Return restoration results
207
+ ```
208
+
209
+ **Result:**
210
+ - ✅ Original markdown restored (NO placeholders, NO image links)
211
+ - ✅ Backups deleted after restoration
212
+ - ⚠️ Generated images still exist (but not referenced)
213
+ - ℹ️ User can delete generated images manually if desired
214
+
215
+ ---
216
+
217
+ ## 🔍 Backup System Details
218
+
219
+ ### What Gets Backed Up
220
+
221
+ | File Type | Backed Up? | When? | Why? |
222
+ |-----------|-----------|-------|------|
223
+ | Markdown files | ✅ Yes | Before adding placeholders | User content could be lost |
224
+ | HTML files | ✅ Yes | Before adding placeholders | User content could be lost |
225
+ | Generated images (original) | ❌ No | N/A | Newly created, not modifications |
226
+ | Generated images (optimized) | ❌ No | N/A | Newly created, not modifications |
227
+ | Session files | ❌ No | N/A | Internal state, not user content |
228
+
229
+ ### Backup File Format
230
+
231
+ ```
232
+ Original: README.md
233
+ Backup: README.md.vf-bak
234
+ Format: Exact copy of original
235
+ Extension: .vf-bak (configurable via VF_BACKUP_EXTENSION)
236
+ ```
237
+
238
+ ### Backup Metadata (BackupFile)
239
+
240
+ ```typescript
241
+ {
242
+ originalPath: "README.md", // Original file path
243
+ backupPath: "README.md.vf-bak", // Backup file path
244
+ timestamp: "2026-01-14T12:34:56Z", // When backup was created
245
+ size: 4567, // File size in bytes
246
+ type: "markdown", // File type
247
+ hash: "a1b2c3d4e5f6...", // MD5 hash for integrity
248
+ }
249
+ ```
250
+
251
+ ### Backup Set (Collection of Backups)
252
+
253
+ ```typescript
254
+ {
255
+ id: "uuid-v4", // Unique backup set ID
256
+ createdAt: "2026-01-14T12:34:56Z", // Creation timestamp
257
+ markdownFiles: [BackupFile, ...], // Backed up markdown files
258
+ imageFiles: [], // Currently unused
259
+ totalFiles: 3, // Total files in backup
260
+ totalSize: 13701, // Total size in bytes
261
+ approved: false, // User approval status
262
+ lastRemindedAt: "...", // Last reminder timestamp
263
+ }
264
+ ```
265
+
266
+ ---
267
+
268
+ ## 🔐 Backup Integrity & Safety
269
+
270
+ ### MD5 Hash Verification
271
+
272
+ When restoring:
273
+ 1. Read backup file content
274
+ 2. Calculate MD5 hash
275
+ 3. Compare with stored hash
276
+ 4. If mismatch: ⚠️ Warning (but still restores)
277
+ 5. If match: ✅ Proceed with confidence
278
+
279
+ **Why Warning Only?**
280
+ - Backup file may have been manually edited (intentionally)
281
+ - Better to restore modified backup than lose all changes
282
+ - User is warned of potential issue
283
+
284
+ ### Backup File Protection
285
+
286
+ **Overwrite Behavior:**
287
+ - If `README.md.vf-bak` already exists: ⚠️ Warning + overwrite
288
+ - Prevents accumulation of old backups
289
+ - Always uses latest pre-modification version
290
+
291
+ **Deletion Timing:**
292
+ - Backups deleted ONLY when:
293
+ - User approves changes, OR
294
+ - User restores and restoration succeeds
295
+ - Never deleted on workflow failure
296
+
297
+ ---
298
+
299
+ ## ⏰ Backup Reminders
300
+
301
+ ### Reminder System
302
+
303
+ ```
304
+ User starts new session:
305
+
306
+ 1. Check for existing backups (StateManager.getCurrentBackup())
307
+ 2. If backups exist:
308
+ a. Check if reminder needed (24 hours since last reminder)
309
+ b. If yes:
310
+ - Show reminder message
311
+ - Display backup summary:
312
+ 📸 Backup: uuid
313
+ Created: 2 days ago
314
+ Files: 3 markdown, 0 images
315
+ Size: 13.38 KB
316
+ - Offer actions:
317
+ ✅ Approve changes (delete backups)
318
+ ⏮️ Restore backups
319
+ ⏭️ Remind me later
320
+ c. Update lastRemindedAt timestamp
321
+ ```
322
+
323
+ **Reminder Interval:** 24 hours (configurable via `reminderIntervalHours`)
324
+
325
+ ---
326
+
327
+ ## 🎛️ Configuration
328
+
329
+ ### Environment Variables
330
+
331
+ ```bash
332
+ # Enable/disable backup system (default: true)
333
+ VF_BACKUP_ENABLED=true
334
+
335
+ # Backup file extension (default: .vf-bak)
336
+ VF_BACKUP_EXTENSION=.vf-bak
337
+
338
+ # Reminder interval in hours (default: 24)
339
+ VF_BACKUP_REMINDER_HOURS=24
340
+ ```
341
+
342
+ ### Disabling Backups
343
+
344
+ ```bash
345
+ # In .env file
346
+ VF_BACKUP_ENABLED=false
347
+ ```
348
+
349
+ **When disabled:**
350
+ - No backups created
351
+ - No reminders shown
352
+ - Workflow continues normally
353
+ - ⚠️ Changes are permanent immediately
354
+
355
+ ---
356
+
357
+ ## 🚨 Error Handling
358
+
359
+ ### Backup Creation Fails
360
+
361
+ ```
362
+ 1. Log warning
363
+ 2. Continue with workflow
364
+ 3. ⚠️ User warned: "Backup failed, proceed anyway?"
365
+ 4. Changes are NOT protected
366
+ ```
367
+
368
+ **Why Continue?**
369
+ - Don't block workflow for backup failure
370
+ - User may have disabled backups intentionally
371
+ - User can always use git to recover
372
+
373
+ ### Restore Fails
374
+
375
+ ```
376
+ 1. Log error
377
+ 2. Restore as many files as possible
378
+ 3. Return partial success with error details
379
+ 4. Backups retained for failed files
380
+ ```
381
+
382
+ **Partial Restore:**
383
+ - Some files may restore successfully
384
+ - Failed files keep their backups
385
+ - User can retry or manually fix
386
+
387
+ ### Backup File Missing
388
+
389
+ ```
390
+ 1. Log error: "Backup file not found"
391
+ 2. Skip restoration for that file
392
+ 3. Continue with other files
393
+ 4. Report error to user
394
+ ```
395
+
396
+ ---
397
+
398
+ ## 📊 State Tracking
399
+
400
+ ### StateManager Integration
401
+
402
+ ```typescript
403
+ // State structure
404
+ {
405
+ currentBackup: BackupSet | null, // Current active backup
406
+ backupHistory: BackupSet[], // Previous backups (for history)
407
+ }
408
+ ```
409
+
410
+ **State Persistence:**
411
+ - Saved to: `~/.visual-forge-mcp/state.json`
412
+ - Survives server restarts
413
+ - Enables resume after crashes
414
+
415
+ ---
416
+
417
+ ## 🔄 Integration with Image Optimization
418
+
419
+ ### Key Point: No Conflict!
420
+
421
+ **Why Backups Don't Interfere with Optimization:**
422
+
423
+ 1. **Backup happens BEFORE placeholder addition**
424
+ - Backup: Original markdown (no placeholders)
425
+ - Current: Markdown with placeholders
426
+
427
+ 2. **Images are generated AFTER backup**
428
+ - Original PNG saved
429
+ - Optimized WebP created
430
+ - Both are NEW files (not backed up)
431
+
432
+ 3. **Placeholder replacement uses optimized images**
433
+ - Backup: Still has original markdown
434
+ - Current: Has links to optimized WebP
435
+ - Original PNG preserved in `original/` subdirectory
436
+
437
+ 4. **On restore: Original markdown returns**
438
+ - No placeholders
439
+ - No image links
440
+ - Generated images remain (but unreferenced)
441
+
442
+ **File Timeline:**
443
+
444
+ ```
445
+ Time 0: Original State
446
+ README.md: "# My Project\n\nSome content..."
447
+
448
+ Time 1: Backup Created
449
+ README.md.vf-bak: "# My Project\n\nSome content..." [BACKUP]
450
+
451
+ Time 2: Placeholders Added
452
+ README.md: "# My Project\n\n**Visual Forge Place Holder**..."
453
+ README.md.vf-bak: "# My Project\n\nSome content..." [BACKUP]
454
+
455
+ Time 3: Images Generated
456
+ generated-images/gemini/original/img-001.png (4.2 MB)
457
+ generated-images/gemini/img-001.webp (1.2 MB)
458
+ README.md: "# My Project\n\n**Visual Forge Place Holder**..."
459
+ README.md.vf-bak: "# My Project\n\nSome content..." [BACKUP]
460
+
461
+ Time 4: Placeholders Replaced
462
+ README.md: "# My Project\n\n![diagram](generated-images/gemini/img-001.webp)"
463
+ README.md.vf-bak: "# My Project\n\nSome content..." [BACKUP]
464
+ generated-images/gemini/original/img-001.png (preserved)
465
+ generated-images/gemini/img-001.webp (used in docs)
466
+
467
+ Time 5: User Approves
468
+ README.md: "# My Project\n\n![diagram](generated-images/gemini/img-001.webp)"
469
+ README.md.vf-bak: [DELETED]
470
+ generated-images/gemini/original/img-001.png (still preserved)
471
+ generated-images/gemini/img-001.webp (still used in docs)
472
+ ```
473
+
474
+ ---
475
+
476
+ ## 🎯 Summary
477
+
478
+ ### Backup Lifecycle
479
+
480
+ 1. **Created:** Before adding placeholders to markdown
481
+ 2. **Protected:** During image generation and placeholder replacement
482
+ 3. **Resolved:** When user approves OR restores
483
+ 4. **Deleted:** After approval or successful restoration
484
+
485
+ ### Protection Scope
486
+
487
+ - ✅ **Protects:** Original markdown content
488
+ - ✅ **Preserves:** Original images in `original/` subdirectory
489
+ - ❌ **Doesn't Back Up:** Generated images (they're new, not modifications)
490
+
491
+ ### Key Principles
492
+
493
+ 1. **Backup Once:** When first modifying file
494
+ 2. **Provider Agnostic:** Works with all image providers
495
+ 3. **Optimization Safe:** No interference with image optimization
496
+ 4. **User Control:** User decides to approve or restore
497
+ 5. **Non-Blocking:** Backup failures don't stop workflow
498
+
499
+ ---
500
+
501
+ ## 📚 Related Documentation
502
+
503
+ - [Image Optimization Guide](./image-optimization.md)
504
+ - [Backup System API](../../src/backup/backup-manager.ts)
505
+ - [VF Workflow Guide](./vf-workflow.md)
506
+ - [Workflow with Backups](./workflow-with-backups.md)
507
+
508
+ ---
509
+
510
+ **Last Updated:** 2026-01-14
511
+ **Version:** 1.0