Spaces:
Running on Zero
Running on Zero
| title: ReplayForge | |
| emoji: ⏪ | |
| colorFrom: blue | |
| colorTo: purple | |
| sdk: gradio | |
| sdk_version: 6.20.0 | |
| app_file: app.py | |
| python_version: "3.12" | |
| pinned: false | |
| license: apache-2.0 | |
| short_description: Turn a screen recording into an evidence-linked bug report | |
| models: | |
| - microsoft/Mage-VL | |
| - microsoft/VibeVoice-ASR-BitNet | |
| tags: | |
| - video-understanding | |
| - software-testing | |
| - bug-reporting | |
| - multimodal | |
| startup_duration_timeout: 1h | |
| # ReplayForge — The Multimodal Bug Time Machine | |
| **Upload the crash. Reconstruct the truth.** | |
| ReplayForge turns a screen recording into an editable, evidence-grounded incident report. It extracts a bounded | |
| set of timestamped frames, reads visible UI text locally, optionally transcribes narration locally, asks Mage-VL | |
| to reconstruct only the events supported by the recording, and links each claim back to an evidence frame. | |
| ## What it exports | |
| - Markdown bug report | |
| - Structured timeline JSON | |
| - Automatically redacted evidence frames | |
| - Annotated evidence replay | |
| - ZIP evidence bundle (never the original recording) | |
| ## Privacy and safety | |
| - Uploaded content is processed inside this Space and is never sent to a third-party media service. | |
| - The original recording is not placed in the downloadable bundle. | |
| - Temporary uploads and generated files expire automatically. | |
| - Application logs contain numeric timing/count metadata, not prompts, transcripts, OCR text, filenames, or media. | |
| - Visible or spoken instructions in a recording are treated as untrusted evidence, never as commands. | |
| - Credential-like OCR is removed before model analysis, and generated text is sanitized again before export. | |
| - Masked password fields are never interpreted as revealing a password value. | |
| - Automatic PII detection is best-effort. Do not upload credentials, private customer data, or confidential | |
| production footage to a public demo. | |
| ## Limits | |
| - 60 seconds and 100 MB per recording | |
| - H.264 MP4 is the most reliable input | |
| - Hidden cursors, tiny text, rapid transitions, and cropped dialogs can make actions ambiguous | |
| - Low-confidence claims must be reviewed before filing the report | |
| - Narration that looks silent, repetitive, or degenerate is discarded instead of being treated as evidence | |
| - The generated report is an AI-assisted draft, not a verified fact record | |
| ## Models and attribution | |
| - [`microsoft/Mage-VL`](https://huggingface.co/microsoft/Mage-VL), pinned at | |
| `5c78cab61938e73859b63724d9bf5cb88c477eaa` (Apache-2.0) | |
| - [`microsoft/VibeVoice-ASR-BitNet`](https://huggingface.co/microsoft/VibeVoice-ASR-BitNet), pinned at | |
| `66e78021ab8f5f06133d1ab421ba4d348bda97c9` (MIT) | |
| - VibeASR.cpp pinned at `70b3ebb8ad75b5f37aee948df34f15cc84951d05` | |
| Mage-VL loading and codec preprocessing are derived from Microsoft's Apache-2.0 reference Space. ReplayForge's | |
| pure-PyTorch `mamba_ssm` compatibility shim is also retained because Transformers validates Mage-VL's optional | |
| StreamMind import even though ReplayForge does not load that gate. ReplayForge's workflow, evidence model, privacy | |
| controls, report generator, and interface are original project work. | |