Release 5.6.0 Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

Activity History (dev)

Overview

Canopy maintains project activities within the project space. Project activity history is archived when the admin archives the project and disposed of when the admin deletes the project.

Project Administrators can view the Activity History page by clicking on the Activity tab under Project Settings.

img.png

Legacy Activity History

How to search on activities from the older interface format (legacy activities)

Legacy activities do not follow the same format and will be converted over time. Canopy supports legacy formatted activities by mapping the fields as follows:

New UI FieldLegacy UI Field
Begin Date/TimeDate and Time
End Date/TimeDate and Time or leave blank if it does not exist.
Activity ClassLeave Blank
TypeActivity Type
Job IDLeave Blank
UserUser Name (Email Address)
DescriptionCurrent description excluding the user name.
DetailsDetails

Activity History

Some activities are associated with a job. Job ID allows users to group events related by activity. Job activity can be used to understand who, what, how, and when related work to a single action was applied.

How to Filter On All the Activities of a Run Consolidation Job

  1. Sign in as a Project Administrator.
  2. Select the project you are working on.
  3. In the upper-right corner of any page on Canopy, click Settings, click Project, and then click on Activities.

img_3.png

  1. Select the Class filter from the header of the data grid.

img_1.png

  1. Add Consolidation to is any of selected filter.
  2. Once filtered, scroll to your right and copy the job ID of the run consolidation job you would like to filter.
  3. Select the Job ID filter and paste the job ID you just copied into the filter.

img_2.png

  1. Paste the job ID you just copied into the is any of these filter.
  2. Done

Generic Job States

Background jobs or services typically have states to reflect their lifecycle or current status. Here’s a list of job states:

Initial/Pre-Execution States (Appears in the Job Manager’s Working Tab)

  • Created: Job has been initialized but not yet scheduled or processed.
  • Queued: Waiting in line to be executed.
  • Dequed: Job has been dequeued as part of a cancellation request.

Active States (Appears in the Job Manager’s Working Tab)

  • Working: Actively being processed or executed.
  • Waiting: Temporarily on hold, waiting for external resources or conditions to proceed.
  • Canceling: The user pressed cancel, and the job is in the process of canceling.

Completion States (Appears in the Job Manager’s Completed Tab)

  • Completed: Successfully finished processing without errors.
  • Canceled: Terminated by external intervention before completion.
  • Partially Completed: Completed some work completed successfully but encountered issues with others.

Completed with Error (Appears in the Job Manager’s Failed Tab)

  • Failed: Execution terminated due to errors.
  • Timed Out: Failed to complete within an allotted time frame.

Generic Job State Diagram

---
title: Job Template
---
stateDiagram-v2
%% UX Text

    decision_process : Background task?
    cancel_process : User pressed cancel?
    error_process: Error encountered?
    queued_process: Job queued?
    backup_process : Backup supported?
    restore_process : Backup exists?
    retry_process : User selects retry job?

%% composites
    state working {
       [*]
    }
    state create {
        [*]
    }
    state timeout {
        [*]
    }
    state fail {
        [*]
    }
    state dequed {
        [*]
    }
    state canceling {
        [*]
    }
    state canceled {
        [*]
    }
    state enqueue {
        [*]
    }
    state partial {
        [*]
    }
    state completed {
        [*]
    }
    state waiting {
        [*]
    }
    state backup {
        [*]
    }
    state restore {
        [*]
    }
    state retry {
        [*]
    }

%% choices
	state background_choice <<choice>>
    state cancel_choice <<choice>>
    state error_choice <<choice>>
    state queued_choice <<choice>>
    state backup_choice <<choice>>
    state restore_choice <<choice>>
    state retry_choice <<choice>>
%% forks
state fork_state <<fork>>
      create --> fork_state
      fork_state --> cancel_process
      fork_state --> decision_process
      fork_state --> error_process

%% state diagram
    %% Request job
    [*] --> create

    %% Run task
    decision_process --> background_choice
	background_choice --> working : No, start process in foreground
	background_choice --> enqueue : Yes, enqueue in background
    enqueue --> backup_process
    backup_process --> backup_choice
    backup_choice --> backup : Yes, backup
    backup_choice --> working : No, start work
    backup --> working : Start work


    working --> waiting : Resource constraint
    waiting --> working : Retry job
    working --> completed : Completed - Success
    working --> partial : Completed - Partial Success
    completed --> [*]
    partial --> [*]

    cancel_process --> cancel_choice : Yes
    cancel_choice --> queued_process
    cancel_choice --> cancel_process : No, listen for cancel

    queued_process --> queued_choice
    queued_choice --> dequed : Yes, dequeue job
    queued_choice --> canceling : No, cancel work

    canceling --> restore_process
    restore_process --> restore_choice
    restore_choice --> restore : Backup exists, restore
    restore_choice --> canceled :  Completed - Canceled Work
    restore --> canceled  : Completed - Canceled Work and Restored Previous State

    dequed --> canceled : Completed - Dequeued Job
    canceled --> [*]

    error_process --> error_choice : Yes
    error_choice --> fail : Completed - Failure Error
    error_choice --> timeout : Incomplete - Failure Time Out
    error_choice --> error_process : No, listen for error

    fail --> [*]
    timeout --> retry_process
    retry_process --> retry_choice
    retry_choice --> retry : Yes, queue to try again
    retry_choice --> retry_process : No, listen for retry
    retry --> enqueue

List of New/Updated Activities by Class

Classes are created to logically group activity types that belong to the same module or workflow in the application.

The following is a list of activities captured by class:

Activity History

TypeDescription
ExportCreated the export named {{export_name}} for download with export ID: {{export_id}}.

Bulk Map

TypeDescription
CompleteSuccessfully bulk mapped documents.
Document IDs: {{val, list}}
UploadSuccessfully uploaded document for bulk mapping.
Document IDs: {{val, list}}
FailFailed to upload document for bulk mapping.
Document IDs: {{val, list}}

Bulk Search Report

TypeDescription
CompletedCompleted report {{report_name}} {{report_id}} job {{job_id}}.
CopyCopied {{report_name}} {{report_id}} to {{copied_report_name}} {{copied_report_id}}.
CreateCreated report {{report_name}} {{report_id}}.
DownloadDownloaded report {{report_name}} {{report_id}} job {{job_id}} as a {{CSV
EditEdited report {{report_name}} {{report_id}}. See details for config only.
Error{‘scope’: ‘Running report {{report_name}} {{report_id}} resulted in a(n) {{scope
RenameRenamed report from {{report_name}} to {{report_name}} {{report_id}}.
Save AsSaved {{report_name}} {{report_id}} job {{job_id}} to {{save_as_report_name}} {{save_as_report_id}}.
SaveSaved report {{report_name}} {{report_id}}. See details for config only.
SearchStarted run search report {{report_name}} {{report_id}} job {{job_id}}.
StopStopped report {{report_name}} {{report_id}} job {{job_id}}.
TagStarted run search and tagging report {{report_name}} {{report_id}} job {{job_id}}.

Consolidation / Delete Consolidated List

TypeDescription
Backed UpBacked up {{master, number}} master and {{raw, number}} raw entities.
Paused“Back up paused.”,
“Clustering paused.”,
“Conflict checking paused.”,
“Deletion paused.”,
“Restoration of consolidated entities paused.”,
“Restoration of raw entities paused.”,
“Stopping background process paused.”, or
“Synchronization paused.”
Backing UpBacking up master and raw entities.
ClusteredDeduplicated {{deduped, number}} and clustered {{completed, number}} entities by rules.
ClusteringClustering sets by duplicates and rules.
CheckedCheck completed with {{conflicts, number}} conflicts and {{consolidated, number}} consolidated entities.
Checking“Checking conflicts per settings.”
Deleted“Manual decisions deleted.”, “Consolidated list deleted.”, or “Consolidated list and decisions deleted.”
Deleting“Deleting manual decisions only.”, “Deleting consolidated list only.”, or “Deleting consolidated list and manual decisions.”
Completed“Process completed.”
QueuedProcess queued using ruleset: {{ruleset}}."
StartedProcess started.
Restored“Restored consolidated entities.” or “Restored raw entities.”
Restoring“Restoring consolidated entities.” or ““Restoring raw entities.”
StoppedStopped background process.
StoppingStopping background process.
SynchronizedSynchronized {{new, number}} new, {{update, number}} changed, and {{deleted, number}} deleted entities.
SynchronizingSynchronizing new, changed, and deleted entities.

Exports

TypeDescriptionExample
DownloadDownloaded an export.
Complete EmailSubject: Canopy Export Completed! – when document related exports completed
From: {{from_email}}
To: {{to_email}}
Message ID: {{MessageId}}
img_5.png
LinkCreated a temporary download link for an export.

Document List View

TypeDescription
CopyCopied view {{view_name}} {{view_id}}.
CreateCreated view {{view_name}} {{view_id}}.
DeleteDeleted view {{view_name}} {{view_id}}.
MoveMoved view {{view_name}} {{view_id}} from folder {{folder_name}} to folder {{folder_name}}.
Rename{‘rename_folder’: ‘Renamed folder from {{from_folder_name}} to {{to_folder_name}}.’, ‘rename_view’: ‘Renamed view from {{view_name}} to {{view_name}} {{view_id}}.’}
Share{‘with_role’: ‘Shared view {{view_name}} {{view_id}} with {{user_role}.’, ‘with_user’: ‘Shared view {{view_name}} {{view_id}} with {{user_name}.’}
Stop Share{‘stop_share_with_role’: ‘Stopped sharing view {{view_name}} {{view_id}} with {{user_role}}.’, ‘stop_share_with_user’: ‘Stopped sharing view {{view_name}} {{view_id}} with {{user_name}}.’}

Microsoft 365

TypeDescriptionExample
Consent EmailSubject: Canopy M365 Plugin - Admin Consent
From: {{from_email}}
To: {{to_email}}
Message ID: {{MessageId}}
img_6.png

Session

TypeDescription
ActiveActive in project. Session {{session_id}}.
EnteredEntered the project. Session {{session_id}}.
ExitedExited the project. Session {{session_id}}.
Timed OutLogged out after {{val}} minutes of inactivity {{session_id}}. Session {{session_id}}.

Views

TypeDescription
CopyCopied view {{view_name}} {{view_id}}.
CreateCreated view {{view_name}} {{view_id}}.
DeleteDeleted view {{view_name}} {{view_id}}.
Move{‘folder_to_folder’: ‘Moved view {{view_name}} {{view_id}} from folder {{from_folder_name}} to folder {{to_folder_name}}.’, ‘folder_to_root’: ‘Moved view {{view_name}} {{view_id}} from folder {{from_folder_name}} to the root folder.’, ‘root_to_folder’: ‘Moved view {{view_name}} {{view_id}} from the root folder to folder {{to_folder_name}}.’}
Rename{‘folder’: ‘Renamed folder from {{from_folder_name}} to {{to_folder_name}}.’, ‘view’: ‘Renamed view from {{from_view_name}} to {{to_view_name}} {{view_id}}.’}
Share{‘user_name’: ‘Shared view {{view_name}} {{view_id}} with {{user_name}}.’, ‘user_role’: ‘Shared view {{view_name}} {{view_id}} with {{user_role}}.’}
Stop Share{‘user_name’: ‘Stopped sharing view {{view_name}} {{view_id}} with {{user_name}}.’, ‘user_role’: ‘Stopped sharing view {{view_name}} {{view_id}} with {{user_role}}.’}
UpdateUpdated view {{view_name}} {{view_id}}.

Entity Deletion (key: class.entity_deletion)

Job History

TypeType KeyDescriptionDescription Key
Back Upstate.backupBackup completeddescription.job.backup_completed
Back Upstate.backupBackup starteddescription.job.backup_started
Canceledstate.canceledProcess terminated by user successfully.description.job.canceled
Cancelingstate.cancelingThe user pressed cancel, and the job is in the process of canceling.description.job.canceling
Completedstate.completedDeleted $t(raw_entities, {“count”: {{raw_entities}} }) from document <CPY_SEARCH_ID_LINK_BTN>{{search_id}}</CPY_SEARCH_ID_LINK_BTN> and updated $t(master_entities, {“count”: {{master_entities}} }).description.job.document_entity_delete
Completedstate.completedDeleted $t(raw_entities, {“count”: {{raw_entities}} }), deleted $t(master_entities, {“count”: {{master_entities}} }), and updated $t(master_entities, {“count”: {{master_entities}} }) impacting $t(documents, {“count”:{{documents}} }).description.job.entity_list_delete
Completedstate.completedDeleted $t(raw_entities, {“count”: {{raw_entities}} }) from entity detail view document <CPY_SEARCH_ID_LINK_BTN>{{search_id}}</CPY_SEARCH_ID_LINK_BTN> and updated $t(master_entities, {“count”: {{master_entities}} }).description.job.master_entity_detail_entity_delete
Createstate.createSelected all resulting in $t(raw_entities, {“count”: {{raw_entities}} }) from a document in Document View in document <CPY_SEARCH_ID_LINK_BTN>{{search_id}}</CPY_SEARCH_ID_LINK_BTN>.description.job.select_all_entities_from_document
Createstate.createSelected all resulting in $t(raw_entities, {“count”: {{raw_entities}} }) from a sheet in Document View in document <CPY_SEARCH_ID_LINK_BTN>{{search_id}}</CPY_SEARCH_ID_LINK_BTN>.description.job.select_all_entities_from_sheet
Createstate.createSelected $t(master_entities, {“count”: {{master_entities}} }) by checking boxes on the Consolidated Entity List.description.job.select_checkboxes_from_master_list
Createstate.createSelected $t(raw_entities, {“count”: {{raw_entities}} }) by checking boxes on the Raw Entity List.description.job.select_checkboxes_from_raw_list
Createstate.createSelected $t(master_entities, {“count”: {{master_entities}} }) by applying filters to the Consolidated Entity List.description.job.select_filters_from_master_list
Createstate.createSelected $t(raw_entities, {“count”: {{raw_entities}} }) by applying filters to the Raw Entity List.description.job.select_filters_from_raw_list
Createstate.createSelected a single raw entity from the Document View in document <CPY_SEARCH_ID_LINK_BTN>{{search_id}}</CPY_SEARCH_ID_LINK_BTN>.description.job.select_single_entity_from_document
Createstate.createSelected a single related raw entity from a consolidated entity’s Master Entity Detail screen. The raw entity was from document <CPY_SEARCH_ID_LINK_BTN>{{search_id}}</CPY_SEARCH_ID_LINK_BTN>.description.job.select_single_entity_from_master_entity_detail
Dequeuedstate.dequeuedThe user pressed cancel and system dequeued the Job.description.job.dequeued
Enqueuestate.enqueueWaiting to be executed.description.job.enqueue
Failstate.failJob terminated unexpectedly. Open a customer support ticket and request assistance.description.job.failed
Failstate.failJob failed because service was not available. Open a customer support ticket and request assistance.description.job.failed_service_not_available
Partially Completedstate.partialDeleted $t(raw_entities, {“count”: {{raw_entities}} }) from document <CPY_SEARCH_ID_LINK_BTN>{{search_id}}</CPY_SEARCH_ID_LINK_BTN>, updated {{master_entities}}, and skipped {{entities}}.description.job.partial_document_entity_delete
Partially Completedstate.partialDeleted $t(raw_entities, {“count” {{raw_entities}} }), deleted $t(master_entities, {“count” {{master_entities}} }), and updated $t(master_entities, {“count” {{master_entities}} }) impacting $t(documents, {“count” {{documents}} }). Skipped $t(raw_entities, {“count” {{raw_entities}} }).description.job.partial_entity_list_delete
Restorestate.restoreRestore completeddescription.job.restore_completed
Restorestate.restoreRestore starteddescription.job.restore_started
Timed Outstate.timeoutFailed to complete within the allotted time frame. Open a customer support ticket and request for Canopy to retry the job.description.job.timeout
Waitingstate.waitingProcess temporarily on hold, waiting for external resources or conditions to proceed.description.job.waiting
Workingstate.workingDeleting $t(clustered_entities, {“count”: {{clustered_entities}} })description.job.deleting_clustered
Workingstate.workingDeleting $t(master_entities, {“count”: {{master_entities}} }) containing no merged or clustered entitiesdescription.job.deleting_master
Workingstate.workingDeleting $t(merged_entities, {“count”: {{merged_entities}} })description.job.deleting_merged
Workingstate.workingDeleting $t(raw_entities, {“count”: {{raw_entities}} })description.job.deleting_raw
Workingstate.workingDeleting Raw Entities From Mastersdescription.job.deleting_raw_from_master
Workingstate.workingDeleting Raw Entities From Documents or Raw Listdescription.job.deleting_raw_from_raw
Workingstate.workingUpdating $t(master_entities, {“count”: {{master_entities}} })description.job.updating_masters
---
title: Entity Deletion
---
stateDiagram-v2
%% UX Text
backup : Back Up
backup : Back Up
backup.backup_completed : Backup completed
backup : Back Up
backup.backup_started : Backup started
canceled : Canceled
canceled : Canceled
canceled.canceled : Process terminated by user successfully.
canceling : Canceling
canceling : Canceling
canceling.canceling : The user pressed cancel, and the job is in the process of canceling.
completed : Completed
completed : Completed
completed.document_entity_delete : Deleted $t(raw_entities, {"count" {{raw_entities}} }) from document <CPY_SEARCH_ID_LINK_BTN>{{search_id}}</CPY_SEARCH_ID_LINK_BTN> and updated $t(master_entities, {"count" {{master_entities}} }).
completed : Completed
completed.entity_list_delete : Deleted $t(raw_entities, {"count" {{raw_entities}} }), deleted $t(master_entities, {"count" {{master_entities}} }), and updated $t(master_entities, {"count" {{master_entities}} }) impacting $t(documents, {"count"{{documents}} }).
completed : Completed
completed.master_entity_detail_entity_delete : Deleted $t(raw_entities, {"count" {{raw_entities}} }) from entity detail view document <CPY_SEARCH_ID_LINK_BTN>{{search_id}}</CPY_SEARCH_ID_LINK_BTN> and updated $t(master_entities, {"count" {{master_entities}} }).
create : Create
create : Create
create.select_all_entities_from_document : Selected <strong>all</strong> resulting in $t(raw_entities, {"count" {{raw_entities}} }) from a document in Document View in document <CPY_SEARCH_ID_LINK_BTN>{{search_id}}</CPY_SEARCH_ID_LINK_BTN>.
create : Create
create.select_all_entities_from_sheet : Selected <strong>all</strong> resulting in $t(raw_entities, {"count" {{raw_entities}} }) from a sheet in Document View in document <CPY_SEARCH_ID_LINK_BTN>{{search_id}}</CPY_SEARCH_ID_LINK_BTN>.
create : Create
create.select_checkboxes_from_master_list : Selected $t(master_entities, {"count" {{master_entities}} }) by checking boxes on the Consolidated Entity List.
create : Create
create.select_checkboxes_from_raw_list : Selected $t(raw_entities, {"count" {{raw_entities}} }) by checking boxes on the Raw Entity List.
create : Create
create.select_filters_from_master_list : Selected $t(master_entities, {"count" {{master_entities}} }) by applying filters to the Consolidated Entity List.
create : Create
create.select_filters_from_raw_list : Selected $t(raw_entities, {"count" {{raw_entities}} }) by applying filters to the Raw Entity List.
create : Create
create.select_single_entity_from_document : Selected a single raw entity from the Document View in document <CPY_SEARCH_ID_LINK_BTN>{{search_id}}</CPY_SEARCH_ID_LINK_BTN>.
create : Create
create.select_single_entity_from_master_entity_detail : Selected a single related raw entity from a consolidated entity's Master Entity Detail screen. The raw entity was from document <CPY_SEARCH_ID_LINK_BTN>{{search_id}}</CPY_SEARCH_ID_LINK_BTN>.
dequeued : Dequeued
dequeued : Dequeued
dequeued.dequeued : The user pressed cancel and system dequeued the Job.
enqueue : Enqueue
enqueue : Enqueue
enqueue.enqueue : Waiting to be executed.
fail : Fail
fail : Fail
fail.failed : Job terminated unexpectedly. Open a customer support ticket and request assistance.
fail : Fail
fail.failed_service_not_available : Job failed because service was not available. Open a customer support ticket and request assistance.
partial : Partially Completed
partial : Partially Completed
partial.partial_document_entity_delete : Deleted $t(raw_entities, {"count" {{raw_entities}} }) from document <CPY_SEARCH_ID_LINK_BTN>{{search_id}}</CPY_SEARCH_ID_LINK_BTN>, updated {{master_entities}}, and skipped {{entities}}.
partial : Partially Completed
partial.partial_entity_list_delete : Deleted $t(raw_entities, {"count" {{raw_entities}} }), deleted $t(master_entities, {"count" {{master_entities}} }), and updated $t(master_entities, {"count" {{master_entities}} }) impacting $t(documents, {"count" {{documents}} }).  Skipped $t(raw_entities, {"count" {{raw_entities}} }).
restore : Restore
restore : Restore
restore.restore_completed : Restore completed
restore : Restore
restore.restore_started : Restore started
retry : Retry
timeout : Timed Out
timeout : Timed Out
timeout.timeout : Failed to complete within the allotted time frame. Open a customer support ticket and request for Canopy to retry the job.
waiting : Waiting
waiting : Waiting
waiting.waiting : Process temporarily on hold, waiting for external resources or conditions to proceed.
working : Working
working : Working
working.deleting_clustered : Deleting $t(clustered_entities, {"count" {{clustered_entities}} })
working : Working
working.deleting_master : Deleting $t(master_entities, {"count" {{master_entities}} }) containing no merged or clustered entities
working : Working
working.deleting_merged : Deleting $t(merged_entities, {"count" {{merged_entities}} })
working : Working
working.deleting_raw : Deleting $t(raw_entities, {"count" {{raw_entities}} })
working : Working
working.deleting_raw_from_master : Deleting Raw Entities From Masters
working : Working
working.deleting_raw_from_raw : Deleting Raw Entities From Documents or Raw List
working : Working
working.updating_masters : Updating $t(master_entities, {"count" {{master_entities}} })
    decision_process : Background task?
    cancel_process : User pressed cancel?
    error_process : Error encountered?
    queued_process : Job queued?
    backup_process : Backup supported?
    restore_process : Backup exists?
    retry_process : User selects retry job?


%% composites
    state create {
        direction LR
        create.select_all_entities_from_document
        create.select_all_entities_from_sheet
        create.select_checkboxes_from_raw_list
        create.select_filters_from_raw_list
        create.select_checkboxes_from_master_list
        create.select_filters_from_master_list
        create.select_single_entity_from_document
        create.select_single_entity_from_master_entity_detail
    }

    state working {
       [*] --> working.deleting_raw_from_master
       working.deleting_raw_from_master --> [*]
       [*] --> working.deleting_raw_from_raw
       working.deleting_raw_from_raw --> [*]
       %%working_deleting_raw_from_master --> working_delete_entity
       %%working_delete_entity --> working_deleting_raw_from_master
       %%working_deleting_raw_from_raw --> working_delete_entity
       %%working_delete_entity --> working_deleting_raw_from_raw

    }
    state working.deleting_raw_from_raw {
        working.deleting_raw --> working.updating_masters
    }

    state backup {
        backup.backup_started --> backup.backup_completed
    }

    state restore {
        restore.restore_started --> restore.restore_completed
    }

    state working.deleting_raw_from_master {
        working.deleting_master --> working.deleting_clustered
        working.deleting_clustered --> working.deleting_merged
    }
    state timeout {
        timeout.timeout
    }
    state fail {
        direction LR
        fail.failed
        fail.failed_service_not_available
    }

    state dequeued {
        dequeued.dequeued
    }
    state canceling {
        canceling.canceling
    }
    state canceled {
        canceled.canceled
    }
    state enqueue {
        enqueue.enqueue
    }
    state partial {
        direction LR
        partial.partial_document_entity_delete
        partial.partial_entity_list_delete
    }
    state completed {
        direction LR
        completed.document_entity_delete
        completed.entity_list_delete
        completed.master_entity_detail_entity_delete
    }
    state waiting {
        waiting.waiting
    }
    state retry {
        [*]
    }



%% choices
	state background_choice <<choice>>
    state cancel_choice <<choice>>
    state error_choice <<choice>>
    state queued_choice <<choice>>
    state backup_choice <<choice>>
    state restore_choice <<choice>>
    state retry_choice <<choice>>

%% forks
state fork_state <<fork>>
      create --> fork_state
      fork_state --> cancel_process
      fork_state --> decision_process
      fork_state --> error_process

%% state diagram
    %% Request job
    [*] --> create


    %% Run task
    decision_process --> background_choice
	background_choice --> backup_process : No, start process in foreground
	background_choice --> enqueue : Yes, enqueue in background

    enqueue --> backup_process
    backup_process --> backup_choice
    backup_choice --> backup : Yes, backup
    backup_choice --> working : No, go to work
    backup --> working : Start work
    working --> waiting : Resource constraint
    waiting --> working : Retry job
    working --> completed : Completed - Success
    working --> partial : Completed - Partial Success
    completed --> [*]
    partial --> [*]


    cancel_process --> cancel_choice : Yes
    cancel_choice --> queued_process
    cancel_choice --> cancel_process : No, listen for cancel

    queued_process --> queued_choice
    queued_choice --> dequeued : Yes, dequeue job
    queued_choice --> canceling : No, cancel work

    canceling --> restore_process
    restore_process --> restore_choice
    restore_choice --> restore : Backup exists, restore
    restore_choice --> canceled :  Completed - Canceled Work
    restore --> canceled  : Completed - Canceled Work and Restored Previous State
    dequeued --> canceled : Completed - Dequeued Job
    canceled --> [*]

    error_process --> error_choice : Yes
    error_choice --> fail : Yes, Completed - Failure Error
    error_choice --> timeout : Yes, Incomplete - Failure Time Out
    error_choice--> error_process : No, listen for error

    fail --> [*]
    timeout --> retry_process
    retry_process --> retry_choice
    retry_choice --> retry : Yes, queue to try again
    retry_choice --> retry_process : No, listen for retry
    retry --> enqueue

Document History

TypeType KeyDescriptionDescription Key
Completedstate.completedJob <CPY_TAG_LABEL>{{job_id}}</CPY_TAG_LABEL> deleted $t(raw_entities, {“count”: {{raw_entities}} }).description.document.delete_entity_success
Partially Completedstate.partialJob <CPY_TAG_LABEL>{{job_id}}</CPY_TAG_LABEL> deleted $t(documents, {“count”: {{documents}} }) ({{val, list}}) and skipped deleting $t(documents, {“count”: {{documents}} }) ({{val, list}}).description.document.delete_entity_skipped
---
title: Audio Transcription
---
stateDiagram-v2
%% UX Text
completed : Completed
completed : Completed
completed.delete_entity_success : Job <CPY_TAG_LABEL>{{job_id}}</CPY_TAG_LABEL> deleted $t(raw_entities, {"count" {{raw_entities}} }).
partial : Partially Completed
partial : Partially Completed
partial.delete_entity_skipped : Job <CPY_TAG_LABEL>{{job_id}}</CPY_TAG_LABEL> deleted $t(documents, {"count" {{documents}} }) ({{val, list}}) and skipped deleting $t(documents, {"count" {{documents}} }) ({{val, list}}).
    results_process : Was the transcription successful?

%% choices
	state results_choice <<choice>>

%% states
  state completed {
    direction LR
    completed.delete_entity_success
  }
  state partial {
    direction LR
    partial.delete_entity_skipped

  }

%% state diagram
    %% Request job
    results_process --> results_choice
    results_choice --> completed : Yes
    results_choice --> partial : Partially

Preprocessing (key: class.preprocessing)

Job History

TypeType KeyDescriptionDescription Key
Back Upstate.backupBackup completeddescription.job.backup_completed
Back Upstate.backupBackup starteddescription.job.backup_started
Canceledstate.canceledProcess terminated by user successfully.description.job.canceled
Cancelingstate.cancelingThe user pressed cancel, and the job is in the process of canceling.description.job.canceling
Completedstate.completedSuccessfully finished processing without errors.description.job.completed
Createstate.createJob has been initialized but not yet scheduled or processed.description.job.created
Dequeuedstate.dequeuedThe user pressed cancel and system dequeued the Job.description.job.dequeued
Enqueuestate.enqueueWaiting to be executed.description.job.enqueue
Failstate.failJob terminated unexpectedly. Open a customer support ticket and request assistance.description.job.failed
Partially Completedstate.partialSome work completed successfully but encountered issues with others.description.job.partial
Restorestate.restoreRestore completeddescription.job.restore_completed
Restorestate.restoreRestore starteddescription.job.restore_started
Retrystate.retryUser selected retry.description.job.retry
Timed Outstate.timeoutFailed to complete within the allotted time frame. Open a customer support ticket and request for Canopy to retry the job.description.job.timeout
Waitingstate.waitingProcess temporarily on hold, waiting for external resources or conditions to proceed.description.job.waiting
Workingstate.workingActively being processed or executed.description.job.working
---
title: preprocessing
---
stateDiagram-v2
%% UX Text
backup : Back Up
backup : Back Up
backup.backup_completed : Backup completed
backup : Back Up
backup.backup_started : Backup started
canceled : Canceled
canceled : Canceled
canceled.canceled : Process terminated by user successfully.
canceling : Canceling
canceling : Canceling
canceling.canceling : The user pressed cancel, and the job is in the process of canceling.
completed : Completed
completed : Completed
completed.completed : Successfully finished processing without errors.
create : Create
create : Create
create.created : Job has been initialized but not yet scheduled or processed.
dequeued : Dequeued
dequeued : Dequeued
dequeued.dequeued : The user pressed cancel and system dequeued the Job.
enqueue : Enqueue
enqueue : Enqueue
enqueue.enqueue : Waiting to be executed.
fail : Fail
fail : Fail
fail.failed : Job terminated unexpectedly. Open a customer support ticket and request assistance.
partial : Partially Completed
partial : Partially Completed
partial.partial : Some work completed successfully but encountered issues with others.
restore : Restore
restore : Restore
restore.restore_completed : Restore completed
restore : Restore
restore.restore_started : Restore started
retry : Retry
retry : Retry
retry.retry : User selected retry.
timeout : Timed Out
timeout : Timed Out
timeout.timeout : Failed to complete within the allotted time frame. Open a customer support ticket and request for Canopy to retry the job.
waiting : Waiting
waiting : Waiting
waiting.waiting : Process temporarily on hold, waiting for external resources or conditions to proceed.
working : Working
working : Working
working.working : Actively being processed or executed.
    decision_process : Background task?
    cancel_process : User pressed cancel?
    error_process : Error encountered?
    queued_process : Job queued?
    backup_process : Backup supported?
    restore_process : Backup exists?
    retry_process : User selects retry job?

%% composites
    state create {
        direction LR
        create.created
    }
    state working {
       [*] --> working.working
       working.working --> [*]
    }
    state backup {
        backup.backup_started --> backup.backup_completed
    }
    state restore {
        restore.restore_started --> restore.restore_completed
    }
    state timeout {
        timeout.timeout
    }
    state fail {
        fail.failed
    }
    state dequeued {
        dequeued.dequeued
    }
    state canceling {
        canceling.canceling
    }
    state canceled {
        canceled.canceled
    }
    state enqueue {
        enqueue.enqueue
    }
    state partial {
        direction LR
        partial.partial
    }
    state completed {
        direction LR
        completed.completed
    }
    state waiting {
        waiting.waiting
    }
    state retry {
        retry.retry
    }

%% choices
	state background_choice <<choice>>
    state cancel_choice <<choice>>
    state error_choice <<choice>>
    state queued_choice <<choice>>
    state backup_choice <<choice>>
    state restore_choice <<choice>>
    state retry_choice <<choice>>

%% forks
state fork_state <<fork>>
      create --> fork_state
      fork_state --> cancel_process
      fork_state --> decision_process
      fork_state --> error_process

%% state diagram
    %% Request job
    [*] --> create


    %% Run task
    decision_process --> background_choice
	background_choice --> backup_process : No, start process in foreground
	background_choice --> enqueue : Yes, enqueue in background

    enqueue --> backup_process
    backup_process --> backup_choice
    backup_choice --> backup : Yes, backup
    backup_choice --> working : No, go to work
    backup --> working : Start work
    working --> waiting : Resource constraint
    waiting --> working : Retry job
    working --> completed : Completed - Success
    working --> partial : Completed - Partial Success
    completed --> [*]
    partial --> [*]


    cancel_process --> cancel_choice : Yes
    cancel_choice --> queued_process
    cancel_choice --> cancel_process : No, listen for cancel

    queued_process --> queued_choice
    queued_choice --> dequeued : Yes, dequeue job
    queued_choice --> canceling : No, cancel work

    canceling --> restore_process
    restore_process --> restore_choice
    restore_choice --> restore : Backup exists, restore
    restore_choice --> canceled :  Completed - Canceled Work
    restore --> canceled  : Completed - Canceled Work and Restored Previous State
    dequeued --> canceled : Completed - Dequeued Job
    canceled --> [*]

    error_process --> error_choice : Yes
    error_choice --> fail : Yes, Completed - Failure Error
    error_choice --> timeout : Yes, Incomplete - Failure Time Out
    error_choice--> error_process : No, listen for error

    fail --> [*]
    timeout --> retry_process
    retry_process --> retry_choice
    retry_choice --> retry : Yes, queue to try again
    retry_choice --> retry_process : No, listen for retry
    retry --> enqueue

Audio Transcription (key: class.transcription)

Job History

TypeType KeyDescriptionDescription Key
Canceledstate.canceledTranscribed $t(documents, {“count”: {{documents}} }), skipped $t(skipped_documents, {“count”: {{skipped_documents}} }), encountered errors on $t(failed_documents, {“count”: {{failed_documents}} }), and canceled transcription on $t(cancel_documents, {“count”: {{cancel_documents}} }).description.job.cancel_transcription
Cancelingstate.cancelingThe user pressed cancel, and the job is in the process of canceling.description.job.canceling
Completedstate.completedTranscribed $t(documents, {“count”: {{documents}} }).description.job.completed_transcription
Createstate.createSelected $t(checkboxes, {“count”: {{checkboxes}} }) from the document list.description.job.select_checkboxes_from_document_list
Dequeuedstate.dequeuedThe user pressed cancel and system dequeued the Job.description.job.dequeued
Enqueuestate.enqueueWaiting to be executed.description.job.enqueue
Failstate.failTranscription job attempted but failed to transcribe all $t(documents, {“count”: {{documents}} }). Contact Customer Success.description.job.failed_transcription_job
Partially Completedstate.partialTranscribed $t(documents, {“count”: {{documents}} }), skipped $t(skipped_documents, {“count”: {{skipped_documents}} }), and encountered errors on $t(failed_documents, {“count”: {{failed_documents}} }).description.job.partial_transcription
Workingstate.workingTranscribing $t(documents, {“count”: {{documents}} }).description.job.transcribing
---
title: Audio Transcription
---
stateDiagram-v2
%% UX Text
canceled : Canceled
canceled : Canceled
canceled.partial_transcription : Transcribed $t(documents, {"count" {{documents}} }), skipped $t(unsupported_documents, {"count" {{unsupported_documents}} }), and encountered errors on $t(documents, {"count" {{documents}} }).
canceling : Canceling
canceling : Canceling
canceling.canceling : The user pressed cancel, and the job is in the process of canceling.
completed : Completed
completed : Completed
completed.completed_transcription : Transcribed $t(documents, {"count" {{documents}} }).
create : Create
create : Create
create.select_checkboxes_from_document_list : Selected $t(checkboxes, {"count" {{checkboxes}} }) from the document list.
dequeued : Dequeued
dequeued : Dequeued
dequeued.dequeued : The user pressed cancel and system dequeued the Job.
enqueue : Enqueue
enqueue : Enqueue
enqueue.enqueue : Waiting to be executed.
fail : Fail
fail : Fail
fail.failed : Job terminated unexpectedly. Open a customer support ticket and request assistance.
partial : Partially Completed
partial : Partially Completed
partial.partial_transcription : Transcribed $t(documents, {"count" {{documents}} }), skipped $t(unsupported_documents, {"count" {{unsupported_documents}} }), and encountered errors on $t(documents, {"count" {{documents}} }).
working : Working
working : Working
working.transcribing : Transcribing $t(documents, {"count" {{documents}} }).
    decision_process : Background task?
    cancel_process : User pressed cancel?
    error_process : Error encountered?
    queued_process : Job queued?


%% composites
    state create {
        direction LR
        create.select_checkboxes_from_document_list
    }
    state working {
       [*] --> working.transcribing
       working.transcribing --> [*]
    }

    state fail {
        direction LR
        fail.failed

    }
    state dequeued {
        dequeued.dequeued
    }
    state canceling {
        canceling.canceling
    }
    state canceled {
        canceled.partial_transcription
    }
    state enqueue {
        enqueue.enqueue
    }
    state partial {
        direction LR
        partial.partial_transcription
    }
    state completed {
        direction LR
        completed.completed_transcription
    }



%% choices
	state background_choice <<choice>>
    state cancel_choice <<choice>>
    state error_choice <<choice>>
    state queued_choice <<choice>>



%% forks
state fork_state <<fork>>
      create --> fork_state
      fork_state --> cancel_process
      fork_state --> decision_process
      fork_state --> error_process

%% state diagram
    %% Request job
    [*] --> create

    %% Run task
    decision_process --> background_choice
	background_choice --> working : No, start process in foreground
	background_choice --> enqueue : Yes, enqueue in background

    enqueue --> working : Start work
    working --> completed : Completed - Success
    working --> partial : Completed - Partial Success
    completed --> [*]
    partial --> [*]

    cancel_process --> cancel_choice : Yes
    cancel_choice --> queued_process
    cancel_choice --> cancel_process : No, listen for cancel

    queued_process --> queued_choice
    queued_choice --> dequeued : Yes, dequeue job
    queued_choice --> canceling : No, cancel work

    canceling --> canceled :  Completed - Canceled Work
    dequeued --> canceled : Completed - Dequeued Job
    canceled --> [*]

    error_process --> error_choice : Yes
    error_choice --> fail : Yes, Completed - Failure Error
    error_choice--> error_process : No, listen for error

    fail --> [*]

Document History

TypeType KeyDescriptionDescription Key
Completedstate.completedJob <CPY_TAG_LABEL>{{job_id}}</CPY_TAG_LABEL> added transcription to document.description.document.transcription_success
Skippedstate.skippedJob <CPY_TAG_LABEL>{{job_id}}</CPY_TAG_LABEL> skipped transcription because document already transcribed.description.document.transcription_file_already_transcribed_skipped
Skippedstate.skippedJob <CPY_TAG_LABEL>{{job_id}}</CPY_TAG_LABEL> skipped transcription because document type is not a supported.description.document.transcription_file_not_supported_skipped
Failedstate.failedJob <CPY_TAG_LABEL>{{job_id}}</CPY_TAG_LABEL> encountered error downloading document for transcription.description.document.transcription_download_failed
Failedstate.failedJob <CPY_TAG_LABEL>{{job_id}}</CPY_TAG_LABEL> encountered unknown error transcribing document.description.document.transcription_transcription_failed
Failedstate.failedJob <CPY_TAG_LABEL>{{job_id}}</CPY_TAG_LABEL> encountered error transforming document for transcription.description.document.transcription_transform_failed
Failedstate.failedJob <CPY_TAG_LABEL>{{job_id}}</CPY_TAG_LABEL> encountered error uploading transcription.description.document.transcription_upload_failed
---
title: Audio Transcription
---
stateDiagram-v2
%% UX Text
completed : Completed
completed : Completed
completed.transcription_success : Job <CPY_TAG_LABEL>{{job_id}}</CPY_TAG_LABEL> added transcription to document.
skipped : Skipped
skipped : Skipped
skipped.transcription_file_already_transcribed_skipped : Job <CPY_TAG_LABEL>{{job_id}}</CPY_TAG_LABEL> skipped transcription because document already transcribed.
skipped : Skipped
skipped.transcription_file_not_supported_skipped : Job <CPY_TAG_LABEL>{{job_id}}</CPY_TAG_LABEL>  skipped transcription because document type is not a supported.
failed : Failed
failed : Failed
failed.transcription_download_failed : Job <CPY_TAG_LABEL>{{job_id}}</CPY_TAG_LABEL> encountered error downloading document for transcription.
failed : Failed
failed.transcription_transcription_failed : Job <CPY_TAG_LABEL>{{job_id}}</CPY_TAG_LABEL> encountered unknown error transcribing document.
failed : Failed
failed.transcription_transform_failed : Job <CPY_TAG_LABEL>{{job_id}}</CPY_TAG_LABEL> encountered error transforming document for transcription.
failed : Failed
failed.transcription_upload_failed : Job <CPY_TAG_LABEL>{{job_id}}</CPY_TAG_LABEL> encountered error uploading transcription.
   results_process : Was the transcription successful?

%% choices
	state results_choice <<choice>>

%% states
  state completed {
    completed.transcription_success
  }
  state skipped {
    direction LR
    skipped.transcription_file_already_transcribed_skipped
    skipped.transcription_file_not_supported_skipped
  }
  state failed {
    direction LR
    failed.transcription_download_failed
    failed.transcription_transform_failed
    failed.transcription_transcription_failed
    failed.transcription_upload_failed
  }

%% state diagram
    %% Request job
    results_process --> results_choice
    results_choice --> completed : Yes
    results_choice --> skipped : No
    results_choice --> failed : No

Import Users (key: class.user_import)

Job History

TypeType KeyDescriptionDescription Key
Canceledstate.canceledProcess terminated by user successfully.description.job.canceled
Completedstate.completedImported $t(users, {“count”: {{users}} }).description.job.completed_import_users
Createstate.createMapped list of usersdescription.job.map_users
Createstate.createUploaded $t(users, {“count”: {{users}} })description.job.upload_users
Enqueuestate.enqueueWaiting to be executed.description.job.enqueue
Failstate.failJob terminated unexpectedly. Open a customer support ticket and request assistance.description.job.failed
Partially Completedstate.partialImported $t(users, {“count”: {{users}} }), deduplicated $t(users, {“count”: {{users}} }), and encountered errors importing $t(users, {“count”: {{users}} }).description.job.partial_import_users
Workingstate.workingImporting list of usersdescription.job.users_importing
---
title: Import Users
---
stateDiagram-v2
%% UX Text
canceled : Canceled
canceled : Canceled
canceled.canceled : Process terminated by user successfully.
completed : Completed
completed : Completed
completed.completed_import_users : Imported $t(users, {"count" {{users}} }).
create : Create
create : Create
create.map_users : Mapped list of users
create : Create
create.upload_users : Uploaded $t(users, {"count" {{users}} })
enqueue : Enqueue
enqueue : Enqueue
enqueue.enqueue : Waiting to be executed.
fail : Fail
fail : Fail
fail.failed : Job terminated unexpectedly. Open a customer support ticket and request assistance.
partial : Partially Completed
partial : Partially Completed
partial.partial_import_users : Imported $t(users, {"count" {{users}} }), deduplicated $t(users, {"count" {{users}} }), and encountered errors importing $t(users, {"count" {{users}} }).
working : Working
working : Working
working.users_importing : Importing list of users

    cancel_process : User pressed cancel?
    error_process : Error encountered?


%% composites
    state create {
        create.upload_users --> create.map_users
    }
    state working {
       [*] --> working.users_importing
       working.users_importing --> [*]
    }
    state fail {
        fail.failed
    }

    state canceled {
        canceled.canceled
    }
    state enqueue {
        enqueue.enqueue
    }
    state partial {
        direction LR
        partial.partial_import_users
    }
    state completed {
        direction LR
        completed.completed_import_users
    }


%% choices
    state cancel_choice <<choice>>
    state error_choice <<choice>>


%% forks
state fork_state <<fork>>
      create --> fork_state
      fork_state --> cancel_process
      fork_state --> decision_process
      fork_state --> error_process

%% state diagram
    %% Request job
    [*] --> create


    %% Run task
    decision_process --> enqueue : Yes, enqueue in background

    enqueue --> working : Start workx
    working --> completed : Completed - Success
    working --> partial : Completed - Partial Success
    completed --> [*]
    partial --> [*]

    cancel_process --> cancel_choice : Yes
    cancel_choice --> canceled
    cancel_choice --> cancel_process : No, listen for cancel


    canceled --> [*]

    error_process --> error_choice : Yes
    error_choice --> fail : Yes, Completed - Failure Error
    error_choice--> error_process : No, listen for error

    fail --> [*]