Commit Graph

1644 Commits

Author SHA1 Message Date
jasquat 4059f63fb6 catch and handle exceptions when attempting to complete human tasks (#380)
* catch and handle exceptions when attempting to complete human tasks w/ burnettk

* fix lint

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-07-12 19:46:05 +05:30
jasquat c2706c5bde Feature/unlock stale locks (#360)
* set locked_at_in_seconds so we can find stale locks w/ burnettk

* added background job to cleanup old locks w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-12 19:45:27 +05:30
jasquat c936c02db0 use mysqlclient instead of mysql-connect w/ burnettk (#358)
* use mysqlclient instead of mysql-connect w/ burnettk

* updated some comments w/ burnettk

* runs tests in parallel in run_pyl

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-07-12 19:44:49 +05:30
jasquat 841f3ccc8c Feature/task assignment (#352)
* added an api to assign a list of users to a task w/ burnettk

* use the modal submit and close buttons when saving task data on the instance show page w/ burnettk

* switch save and cancel buttons on secrets new page w/ burnettk

* add some icons, tho still missing event stuff

* finished adding imporoved icons and fixing up task modal w/ burnettk

* added some user search options to assig tasks to w/ burnettk

* cleaned up task details modal and added call to backend to add potential users w/ burnettk

* fixed broken tests w/ burnettk

* removed some merge comments w/ burnettk

* process instance id is an int not a str w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-07-12 19:44:01 +05:30
burnettk b7aa82bd08 fix security issue 2023-07-11 15:57:11 -04:00
Dan Funk 2b6d1c334f make sure we have a current processor so we don't return null (#379)
* make sure we have a current processor so we don't return null

* remove sleep

* The background processor now only picks up processes that were last updated more than a minute ago to avoid conflicting with the interstitial page.  With the understanding that we can rmeove this limitation when we can refactor to allow the backend processes to provide updates on what they are doing.

* pyl w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-07 15:49:52 -04:00
jasquat 5ffb3e5ae5 restrict to specific user if querying for instances with tasks waiting for me w/ burnettk (#372)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-07 20:24:10 +05:30
jasquat 7c3c3af057 also check human task table for completed by user when determining if… (#370)
* also check human task table for completed by user when determining if an instance is associated with a user

* update pygments

* added some comments for clarity w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-07-07 20:22:57 +05:30
jasquat 95068495ba Bug/process locking (#375)
* re-enable the move canvas and zoom modules, and try like hell to get the !@#$! display to zoom to fit consistently. As the from_xml does not trigger the "import.done" where the resize is happening.

* Clicking on timestamp should reload the page so we are observing the diagram at the correct point in time.

* Use a grid rather than a stack for the filter buttons, make them a consistent width, and force the close "x" button to the far right.

* Better handling the lots and lots of metadata fields in both the process instance list table, and in the metadata information on the process instance view page.

* Using DL rather than Carbon's grid, because my mind was starting to break.
* Process instance List Tables are set to optimize their max width for readability.

* assure the diagram editor is top aligned - otherwise when the proprties pannel get's super duper long (as with recent additions to multi-instance) we don't end up with weird spaces showing up above a center aligned canvas.

* wip

* updated interstitial to exit at the correct time if already locked

---------

Co-authored-by: danfunk <daniel.h.funk@gmail.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-06 16:21:02 -04:00
jasquat 25eb8b30f1 give user access to pi for-me with all perm to process group w/ burnettk (#371)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-05 14:47:15 -04:00
jasquat c8bdf3a109 print the status of the backgroun processor as well as the instance id (#368)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-03 22:32:57 +05:30
jasquat e4bf22f5cf Feature/interstitial summary part 3 (#367)
* throw an error if backend gives a 500 from interstitial page w/ burnettk

* turn unexpected errors for the interstitial page into event stream responses to avoid error misdirection

* pyl

* raise the api_error from the original and make the render_data method private

* Feature/interstitial summary (#337)

* * Process instance logs and messages are now components rather than pages, and are included within tabs on the process instance page, along with the diagram.
* Removed the Zoom and Move modules when showing the readonly
  Diagram.  Assured this readonly view is resized to fit the space when possible.
* Checkbox Widget no longer displays a duplicate label.
* CSS Tweaks
  * All pages are limited to a max display width of 1440, with auto margins to center the main content on the page.
  * "Show" pages, like ProcessInstanceShow, TaskShow have the primary content limited to 1000, also with auto-margins.
  * Paragraphs, headings, blockquotes, list items are limited to a width of 640.
  * Reduced margin bottom on all breadcrumbs.
  * Slightly reduced the width and margin of tiles
  * ordered lists and unordered lists show numbers and bullets now.
* End user Instructions component can, optionally, auto-collapse, so that only a portion is displayed, along with a toggle.  This is how it is set up for the ProcessInstanceShow page.
* Greatly reduced the lag in the interstitial page when doing a re-direct.

* run_pyl

* kill console

* wait for permissionsLoaded too since we are using ability.can

* Previous change removed the top level Messages page - this re-adds it.

* I am always, ALWAYS shocked at how I can not wrap my head around when and where to use "useEffect".

This should cause the show/hide Instructions toggle to only show when useful.

* Minor cleanup on the process instance properties display.

* linting

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>

* Fix a linting error.

* minor permissions related fixes for the new ui.

* Revert "Revert "Feature/better subworkflow management (#331)""

This reverts commit 48dcde8faf.

* do not execute tasks from the process instance show page w/ burnettk

* pyl w/ burnettk

* Very minor UI tweak to resolve a number of issues mentioned in SPIFF-316 Notion Ticket:

* Markdown links now open in a new window
* Tables on the home pages are now contained within Grids to better align them with the other content that is in a grid.
* Right aligned the "process instance list link" button to it is flush right with the table underneath
* Gave a little more breathing room the content on the info/metadata in the process instance view .

* updated docker image build action to contain the appropriate version info w/ burnettk

* properly resize to the available columns depending on s/m/l

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: Dan Funk <daniel.h.funk@gmail.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-07-03 10:54:54 +05:30
jasquat 766a7e491e delete the draft task data when the task has been submitted (#364)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-30 13:03:56 +05:30
jasquat e30488c95b added cascade delete to process instance so task draft data is deleted (#361)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-30 12:57:53 +05:30
jasquat d810d9b01f fixed up the unit test permission yml to better match the way we do permissions (#363)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-29 14:21:15 -04:00
jasquat f80c52ba38 update basic permission set for callers to allow for processes to be passed in (#362)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-29 19:05:18 +05:30
jasquat 3a8cfd2642 disable form submit buttons when appropriate, lock process instance when sending events, and ensure return events match ones associated with desired guids w/ burnettk (#359)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-29 09:36:47 +05:30
jasquat 15b2947107 Feature/draft data in join table (#355)
* added a new model to store task draft data in a join table

* cleaned up using the join table for draft table w/ burnettk

* created new single migration for changes w/ burnettk

* added hidden form which autosaves without validations w/ burnettk

* change close button name since it does indeed save on close now

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-28 22:23:39 +05:30
jasquat d50fb61bb9 added a script task script to get a task data value based on key name… (#353)
* added a script task script to get a task data value based on key name w/ burnettk

* pyl

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-27 10:04:04 -04:00
Kevin Burnett b13b716424 parallel tests with xdist (#335)
* parallel tests with xdist

* add pytest-xdist as dev dep

* put back spiff

* update messaging

* get more in line with main

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-26 22:37:41 +05:30
jasquat 51cfcfa2a5 Feature/autosave and null form data (#346)
* autosave form data on change w/ burnettk

* tests are now passing and pyl

* do not do anything on autosave success w/ burnettk

* merged autosave and null form data branches together w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-26 18:26:56 +05:30
jasquat a9cc15177f updated usages of task_spec.spec for new spiff (#345)
* updated usages of task_spec.spec for new spiff

* removed unused attributes referring to call activities

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-26 11:57:32 +05:30
burnettk 5d3f531ae2 commit some scripts that should not affect site functionality to main 2023-06-23 15:31:55 -04:00
jbirddog 2c99e17381 Show callers for non primary files (#334)
* WIP - working with multiple process ids, need to return a file's process ids

* Send bpmn process ids back with bpmn files

* Getting ./bin/pyl to pass

* Fix up unit test

* Wire up the front end

* Pre pr cleanup
2023-06-23 11:45:23 +05:30
jasquat 1f848f6992 updated spiffworkflow to fix terminate instance error (#344)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-22 09:16:55 -04:00
jasquat c818e01aed pyl and do not error if ruff fix fails w/ burnettk 2023-06-20 14:23:58 -04:00
jasquat de01e0a3c9 handle not having a bpmn process better on task list w/ burnettk 2023-06-20 14:21:55 -04:00
Kevin Burnett 7de0d97303 Feature/better subworkflow management part 2 (#341)
* Revert "Revert "Feature/better subworkflow management (#331)""

This reverts commit 48dcde8faf.

* updated SpiffWorkflow to fix infinite loop in task trace w/ burnettk

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-20 10:37:49 -04:00
burnettk 48dcde8faf Revert "Feature/better subworkflow management (#331)"
This reverts commit 23af5cbbe4.
2023-06-15 15:10:48 -04:00
jasquat 23af5cbbe4 Feature/better subworkflow management (#331)
* WIP: some updates to support new spiff w/ burnettk

* unit tests are passing

* all tests except message tests are passing

* fixed usage of catch message event w/ burnettk

* messages are working again w/ burnettk

* uncommented remaining message tests w/ burnettk

* fixed cypress tests w/ burnettk

* use main for spiffworkflow

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-15 10:31:42 -04:00
jasquat d15289ffc2 Feature/exclude user from group assignment (#332)
* check if user in group also has the task assigned to them when returning process instances w/ burnettk

* only check if user is assigned task if querying for active tasks w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-14 12:11:20 -04:00
burnettk 0848c64299 if lane owner name is an actual group, assume that we want tasks assigned to group 2023-06-13 21:59:17 -04:00
jbirddog d1581d94d4 Allow terminating not_started instances (#329)
* Support terminating instances that have not started

* Getting ./bin/pyl to pass
2023-06-12 13:41:08 -07:00
Kevin Burnett 41ccb7d863 remove backend docs dir (#325)
* remove backend docs dir

* remove reference to gone dir

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-06-12 09:28:58 -07:00
jasquat a14072c0b6 added remaining path segment all perms to elevated options (#326)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-12 08:05:33 -07:00
burnettk ac29b7d1b7 bump connector timeout from 30 to 45 2023-06-09 17:13:20 -04:00
jbirddog 5eff6d4ead Typeahead datastore (#321)
* Wiring up the datastore

* Writes into the data store

* Bulk save needs the timestamps

* Prep to do the local query

* Local typeahead working

* Pre pr cleanup

* ignore migrations dir in pre-commit for ruff w/ burnettk

* Getting ./bin/pyl to pass

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-09 12:28:59 -07:00
jasquat 121b3c7cc9 some fixes and updates to help with running an acceptance test model (#323)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-09 11:19:02 -07:00
danfunk b39c4e5c93 Merge branch 'main' of github.com:sartography/spiff-arena into main 2023-06-09 11:06:41 -04:00
danfunk ff03450f58 A quick fix for git_ser ice 2023-06-09 11:06:20 -04:00
jasquat 90a2a0ca0b look up human tasks with the guid instead of the task spec identifier w/ burnettk (#317)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-08 14:26:48 -07:00
Kevin Burnett 35543cc362 add mccabe linter and auto fixes (#302)
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-06-08 14:26:33 -07:00
jasquat 4fc6b1a193 use carbon components when adding secrets (#312)
* use carbon components when adding secrets

* docker compose pull before running up w/ burnettk

* use all carbon on script task unit test modal w/ burnettk

* removed remaining references to bootstrap from frontend w/ burnettk

* updated usage of hidden to use the class instead of the bootstrap attribute w/ burnettk

* print out docker version for debugging

* docker pull with docker instead of compose

* added comment for docker pull in check docker start script

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-08 14:26:14 -07:00
dependabot[bot] 060ca5fc29 Bump furo from 2022.9.29 to 2023.5.20 in /spiffworkflow-backend/docs (#313)
Bumps [furo](https://github.com/pradyunsg/furo) from 2022.9.29 to 2023.5.20.
- [Release notes](https://github.com/pradyunsg/furo/releases)
- [Changelog](https://github.com/pradyunsg/furo/blob/main/docs/changelog.md)
- [Commits](https://github.com/pradyunsg/furo/compare/2022.09.29...2023.05.20)

---
updated-dependencies:
- dependency-name: furo
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-08 10:07:45 -07:00
jasquat 4b2970170c updated permission macros to give admins access to task-data and proc… (#314)
* updated permission macros to give admins access to task-data and process-data w/ burnettk

* do not check for write to process-models if diagram is readonly anyway w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-08 11:39:14 -04:00
burnettk ffe153be8e lint 2023-06-07 17:34:45 -04:00
dependabot[bot] 37d4e34704 Bump sphinx-click from 4.3.0 to 4.4.0 in /spiffworkflow-backend/docs (#309)
Bumps [sphinx-click](https://github.com/click-contrib/sphinx-click) from 4.3.0 to 4.4.0.
- [Release notes](https://github.com/click-contrib/sphinx-click/releases)
- [Commits](https://github.com/click-contrib/sphinx-click/compare/4.3.0...4.4.0)

---
updated-dependencies:
- dependency-name: sphinx-click
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-07 14:28:40 -07:00
jasquat 49950b1639 support validationErrorMessage in rjsf enum w/ burnettk (#311)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-07 09:55:32 -07:00
Dan Funk bba28f1b9e File tree update (#306)
* File tree update

* Update learn_basics.md

---------

Co-authored-by: Phillana26 <134319064+Phillana26@users.noreply.github.com>
2023-06-07 12:39:43 +05:00
jbirddog 27447e533c Fix issue when timer start event is greater than a day (#303)
* Fix issue when start time is greater than a day

* Add some cycle timer tests

* Add some more tests

* Getting ./bin/pyl to pass
2023-06-06 18:25:26 -07:00