viktorbrech/HsWfHelper

create logging interface

Closed this issue · 1 comments

a log be some dictionary with a documented schema

a log collects:

  • action frequency when reading/copying a workflow
  • placeholder count (by action type?)
  • flags/tasks (e.g. "need to check for middle branches") / note that they should also exist as annotation-placeholders
  • each entry with URL to the workflow in origin/target portal

implementation might be (optional?) parameter passed into the node processor function, which then writes into it as needed

log might serve dual purpose:

  • when copying a workflow (or previewing a copy), it flags possible issues and provides summary stats
  • when reading a workflow that has been copied, it would check for placeholders and outstanding tasks

so usage might be

  • preview_workflows(portal) --> csv with summary stats
  • copy_workflows(portal) --> csv with stats, csv with placeholders/tasks
  • review_workflows(portal) --> csv with outstanding tasks

note that filter placeholders (i.e. failed enrollment criteria or branching criteria substitutions) need to be included in the log (and in output of copy_workflows and review_workflows, though in preview_workflows it should be missing or optional