mirror of
https://github.com/run-llama/workflows-py.git
synced 2026-07-22 04:35:33 -04:00
f96faa2d03
* feat: add dedicated StopEvent subclasses for workflow termination scenarios Add WorkflowTerminationEvent base class and specific subclasses to provide detailed information when workflows end abnormally: - WorkflowTimedOutEvent: Published when workflow exceeds timeout, includes timeout duration and list of active steps - WorkflowCancelledEvent: Published when workflow is cancelled by user - WorkflowFailedEvent: Published when a step fails permanently, includes step name, exception type, and exception message These events replace the empty StopEvent() instances that were previously published, allowing consumers to understand why a workflow ended and take appropriate action. Closes: issue about providing exception information in StopEvent * refactor: simplify termination events to inherit directly from StopEvent * chore: add changeset * feat: add traceback and fully qualified exception type to WorkflowFailedEvent * feat: add retry info (attempts, elapsed_seconds) to WorkflowFailedEvent Also fixes a bug where step_function.py used time.monotonic() instead of time.time(), causing incompatible timestamps with first_attempt_at. * fix lints/locks * docs: add workflow termination events to streaming docs --------- Co-authored-by: Claude <noreply@anthropic.com>
LlamaDeploy Documentation
This repository contains the documentation for LlamaIndex Workflows, built using MkDocs with Material theme.
Setup
Prerequisites
- Python 3.10 or higher
- uv (for dependency management)
Installation
- Clone the repository
- Install dependencies using uv:
uv sync
Development
To start the documentation server locally:
uv run mkdocs serve
This will start a development server at http://127.0.0.1:8000.
Building
LlamaDeploy is part of LlamaIndex documentation portal so the build is performed from the main repository.
Warning
When a documentation change is merged here, the change won't be visible until a new build is triggered from the LlamaIndex repository.
Contributing
Contributions are very welcome!
- Create a new branch for your changes
- Make your changes to the documentation
- Test locally using
uv run mkdocs serve - Submit a pull request