profullstack / profullstack/meshhook
"Resume from step" functionality
@ralyodio is already working on this.
Since Oct 10, 2025.
- Dominant language
- JavaScript
- Stars
- 6
- Forks
- 6
- Avg merge
- 1m
- Merged PRs (30d)
- 1
Description
📋 Product Requirements Document
PRD: "Resume from step" functionality
Issue: #134
Milestone: Phase 3: Frontend (SvelteKit)
Labels: run-console, hacktoberfest
PRD: "Resume from step" functionality
Issue: #134
Milestone: Phase 3: Frontend (SvelteKit)
Labels: run-console
Phase: Phase 3
Section: Run Console
Overview
The "Resume from step" functionality is a critical feature designed to enhance the user experience and operational resilience of the MeshHook workflow engine. This feature aligns with MeshHook's core goals by improving the engine's ability to handle failures and allowing users to manually intervene and resume workflow execution from a specific step after addressing any issues. This capability is essential for maintaining high reliability and flexibility in workflow management, especially in complex or long-running processes that may encounter intermittent issues.
Purpose
To allow users to resume a workflow execution from a specific failed or paused step, thereby improving error recovery and reducing manual intervention time.
Alignment with Project Goals
- Durability: Enhances the engine's robustness by making workflow runs more recoverable.
- Usability: Improves the user experience by providing more control over workflow execution.
- Security and Multi-Tenancy: Ensures that the feature adheres to the project's security model, including RLS and audit logging.
Requirements
Functional Requirements
- Users must be able to select a failed or paused step in the Run Console and initiate a "resume from step" action.
- The system must validate user permissions before allowing the action to proceed.
- The workflow engine must accurately restore the workflow state to the point of the selected step.
- The feature must support multi-tenant environments, ensuring that users can only resume steps within their authorized projects.
Non-Functional Requirements
- Performance: The "resume from step" action must complete within a reasonable time frame, aiming for sub-second response times where possible.
- Reliability: This feature must have a 99.9% uptime, with comprehensive error handling to manage and log failures gracefully.
- Security: Implement RLS and audit logging for each "resume from step" action to ensure compliance with MeshHook's security model.
Technical Specifications
Architecture Context
MeshHook utilizes a combination of SvelteKit for the frontend and Supabase (Postgres, Realtime) for the backend services. The "resume from step" functionality involves interaction between these components and the workflow execution engine.
Implementation Approach
- Analysis: Examine the current state management and execution flow of workflow runs to identify the best approach for implementing state restoration.
- Design: Outline the UI changes needed in the Run Console for the "resume from step" functionality, including permission checks and state restoration logic.
- Implementation: Develop the functionality, ensuring integration with existing authentication and authorization mechanisms.
- Modify the workflow execution engine to support state restoration.
- Update the UI to allow users to select a step and initiate the resume action.
- Testing: Implement unit and integration tests to cover new functionality and ensure no regressions in the execution engine.
- Documentation: Update user and API documentation to reflect the new feature.
Data Model Changes
No immediate changes required to the existing data models. Any adjustments discovered during implementation should be documented and reviewed.
API Endpoints
No new API endpoints required. Existing endpoints may need adjustments to support state restoration actions.
Acceptance Criteria
- Users can select a failed or paused step and initiate a "resume from step" action.
- The system validates user permissions before resuming a step.
- Workflow state is accurately restored to the point of the selected step.
- The feature is compatible with the multi-tenant RLS security model.
- All unit and integration tests pass.
- Documentation is updated to reflect the new functionality.
Dependencies
Technical Dependencies
- SvelteKit and Supabase services for frontend and backend integration.
- Workflow execution engine for state management and execution flow.
Prerequisite Tasks
- Ensure user authentication and authorization mechanisms are in place and functional.
- Confirm that the workflow execution engine's state management supports partial state restoration.
Implementation Notes
Development Guidelines
- Follow existing coding standards and patterns for the SvelteKit frontend and backend integrations.
- Use TDD principles to guide development, ensuring comprehensive test coverage.
Testing Strategy
- Unit Tests: Focus on the logic for state restoration and permission validation.
- Integration Tests: Cover interactions between the frontend, the backend services, and the workflow execution engine.
Security Considerations
- Implement RLS and audit logging for the "resume from step" actions.
- Ensure that state restoration does not expose sensitive information or bypass security controls.
Monitoring & Observability
- Integrate logging for the "resume from step" actions to monitor usage and identify potential issues.
- Track metrics related to the performance and reliability of the feature.
Related Documentation
This PRD was created in response to GitHub issue #134 and is subject to updates based on implementation findings and team feedback.
This PRD was AI-generated using gpt-4-turbo-preview from GitHub issue #134
Generated: 2025-10-10
📎 Generated Documentation
- 📄 PRD Document: 134-resume-from-step-functionality.md
- 🎨 PlantUML Diagram: 134-resume-from-step-functionality.puml
- 🖼️ Diagram Image: 134-resume-from-step-functionality.png

This issue body was auto-generated from the PRD. Original issue content is preserved in the PRD document.
Last updated: 2025-10-10
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.