Commit graph

4 commits

Author SHA1 Message Date
jedarden
52ab686fee docs(bf-48nk): close genesis bead - all gaps already implemented
Verified all implementation gaps from the genesis bead checklist are complete:
- memoryProfiler.ts: Fully implemented with snapshot tracking and V8 heap dumps
- FileHeatmap treemap + timelapse: Both views fully implemented with playback controls
- SpanDag zoom/pan: Fully implemented with wheel zoom and drag-to-pan

All 2399 tests pass (4 skipped).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-02 16:21:34 -04:00
jedarden
4513d306d8 test(replay): add comprehensive unit tests for session replay export
Added 49 tests covering all export/import functionality:
- JSON export/import with validation
- Base64 export/import with special character handling
- URL generation and extraction
- Markdown export with all sections
- Filename generation
- Metadata calculation
- Round-trip integration tests

Verifies the export functionality is complete and working correctly
for all three formats (JSON, Markdown, URL) in both TUI and web UI.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Bead-Id: bd-ywq
2026-04-30 16:22:16 -04:00
jedarden
a05281c796 feat(replay): add session replay export functionality
Add comprehensive export/import functionality for session replay in both TUI and web UI:

- TUI: Add keyboard shortcuts [e] export file, [E] export base64, [m] export markdown, [i] import
- Web UI: Add export dropdown with JSON, Markdown, and shareable link options
- Web UI: Add "Import from URL" option for loading replay data
- Auto-import from URL parameters on page load for shared links

Export formats:
- JSON (.fabric-replay): Full event data with metadata
- Markdown (.md): Human-readable session summary with tables
- Base64 URL: Shareable link for collaboration

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-30 16:22:16 -04:00
jeda
7ddbd7820b feat(bd-1dq): Export Session Replay
Add export/import functionality for session replay:

**Export Features:**
- Export as shareable link (base64 encoded events in URL parameter)
- Export as .fabric-replay file (JSON format)
- Share button in replay controls with dropdown menu

**Import Features:**
- Import from .fabric-replay file via file picker
- Import from URL parameter (?replay=base64EncodedEvents)
- Automatic detection and loading of replay data from URL

**Implementation:**
- src/utils/replayExport.ts: Core export/import utilities for Node.js
- src/web/frontend/src/utils/replayExport.ts: Browser-specific utilities
- Updated web SessionReplay.tsx with export dropdown and status messages
- Updated TUI SessionReplay.ts with exportToFile/importFromFile methods
- Added session replay panel to App.tsx with URL parameter support
- Added CSS styles for export dropdown, status messages, and replay panel

**Export Format:**
```json
{
  "version": "1.0",
  "exportedAt": 1709337600,
  "eventCount": 150,
  "events": [...],
  "metadata": {
    "sessionStart": 1709337000,
    "sessionEnd": 1709337600,
    "workerCount": 3
  }
}
```

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-07 05:11:13 +00:00