Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature Tracking: Stakwork Common Workflow Plumbing #1922

Open
3 of 7 tasks
humansinstitute opened this issue Nov 8, 2024 · 1 comment
Open
3 of 7 tasks

Feature Tracking: Stakwork Common Workflow Plumbing #1922

humansinstitute opened this issue Nov 8, 2024 · 1 comment
Assignees

Comments

@humansinstitute
Copy link
Contributor

humansinstitute commented Nov 8, 2024

Context

Hive Process will integrate Stakwork Workflows and automation into the Hive Development Process. This will reduce workload on Product Managers by streamlining creative tasks and automating the drafting of product artefacts and audit tasks.

We will do this by integrate Stakwork agent workflows into the Hive Product Management process and having work completed by the bounty platform.

Feature: Common End Point for Stakwork Calls

Feature Brief:

Through the Hive Process we will be integrating Stakwork Workflows with the Bounties Program. The first instances of this were the User Story generation, but the implementation was specific to this feature and replicating this approach would have a lot of rework and maintenance in the future.

To speed up deployment of new features we will build a generic endpoint on Sphinx Tribe Server to process and submit all of these requests and track their progress and then take the next actin on receipt of a successful workflow response from the Stakwork workflow.

User Stories:

  • As a product manager, I want to simply integrate a new stakwork workflow into the Hive Process quickly and easily.
  • As a senior engineer, I want to ensure I have clean, simple to maintain code, with reusable functions where possible.

Requirements:

  • All queries from the Front End app that require a Stakwork Workflow will utilise a common endpoint
  • All queries from the Front End app that require a Stakwork Workflow will utilise a common request object to the end point to avoid changes.
  • All requests will be logged in a tracking table in the DB
  • All responses from Stakwork to the Tribes server will be received by a common end point
  • Responses should be queued and then processed to make the required updates - future

System Schematic:

image

Logical Flow

Logical Flow for this feature:

  1. Front end generates request data object
  2. posts to endpoint /workflow/request
  3. write request to DB for monitoring
  4. processed and sent to Stakwork
  5. response received back at /workflow/response
  6. write to queue for processing
  7. read requestID to build the "action object" (union of request and response object)
  8. post reponse data to workflow/action for next step
    (e.g. update user stories, update ticket plan etc)

Ticket Plan

Phase: Now

Minimal plumbing required that would support workflow integration by specifying, action string and workflowID/

Backend - Changes:

Front End - Changes:

  • Not required for Phase 1.

Workflow - Changes:

  • Not required for Phase 1.

Phase: Future

  • update User Stories Form to post to new common endpoint
  • update the
  • Reddis / Queuing implementation for scaling to parallel message requests.
@humansinstitute humansinstitute self-assigned this Nov 8, 2024
@humansinstitute
Copy link
Contributor Author

Feature Tracking: issues won't be assigned as work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant