feat: share multi turn, multi attempt with artifact viewing#715
Merged
Henry-811 merged 6 commits intodev/v0.1.32from Dec 31, 2025
Merged
feat: share multi turn, multi attempt with artifact viewing#715Henry-811 merged 6 commits intodev/v0.1.32from
Henry-811 merged 6 commits intodev/v0.1.32from
Conversation
…data; adjusted viewer to handle multiple attempts
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Pull Request: Multi-Turn Session Sharing & Restart Support
Summary
This PR enhances the
massgen exportcommand to support sharing multi-turn sessions with multiple attempts. It includes improved logging infrastructure for restart tracking, artifact viewer support for MassGen-Viewer, Office document PDF conversion upon export for previews, and viewer enhancements to navigate between turns and attempts.Features
1. Multi-Turn Session Sharing
Share entire multi-turn conversations with all turns and attempts preserved:
New CLI Options:
--turns/-t--no-workspace--workspace-limit--yes/-y--dry-run--verbose/-v--json2. Attempt/Restart Tracking
Each orchestration restart now gets its own attempt directory with separate logs:
3. Office Document PDF Conversion
DOCX, PPTX, and XLSX files are automatically converted to PDF for preview in the viewer:
ghcr.io/massgen/mcp-runtime:latest4. Session Manifest
Exports now include a
_session_manifest.jsonwith session-level metadata:{ "version": "2.0", "session_id": "log_20251230_201653", "total_cost": 1.2056, "total_tokens": {"input": 1694743, "output": 12865}, "turn_count": 1, "attempt_count": 2, "question": "Create a simple two slide pptx presentation", "winner": "agent_a", "turns": [ {"turn_number": 1, "attempt_number": 1, "status": "restarted"}, {"turn_number": 1, "attempt_number": 2, "status": "complete", "winner": "agent_a"} ] }5. Clean Final Answers (Claude Code)
The final presentation content now excludes tool call/result noise for Claude Code:
Before: Final answer included
🔧 tool_name(...)and🔧 Tool ✅ Result: {...}linesAfter: Final answer contains only the clean text response, making it suitable for:
answer.txtfiles6. Viewer Enhancements (MassGen-Viewer)
The web viewer supports artifact viewing using the same code as the webui. This allows people to see the artifacts within the viewer by clicking
Previewon participating file types instead of needing to download the files themselves then open.Additionally, there is now multi-turn and multi-attempt navigation:
1_1,1_2)○for restarted,✓for completeFiles Changed
massgen/share.pymassgen/session_exporter.pyfind_session_root(),get_session_turns(),parse_turn_range(), enhancedexport_command()massgen/cli.pymassgen/logger_config.pyset_log_attempt()reconfigures file handlers for new attempt directorymassgen/orchestrator.pymassgen/filesystem_manager/_constants.pyOFFICE_DOCUMENT_EXTENSIONSmassgen/frontend/coordination_ui.pymassgen/frontend/displays/*.pydocs/source/user_guide/logging.rstmassgen/tests/test_share_multi_turn.pymassgen/tests/test_orchestration_restart.pyKnown Limitations
Test Plan
Checklist