<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_single_upstream_artifact_full_path(context, task_id, path):
 """Return the full path where an upstream artifact should be located. Artifact may not exist. If you want to be sure if does, use ``get_and_check_single_upstream_artifact_full_path()`` instead. This function is mainly used to move artifacts to the expected location. Args: context (scriptworker.context.Context):
 the scriptworker context. task_id (str):
 the task id of the task that published the artifact path (str):
 the relative path of the artifact Returns: str: absolute path to the artifact should be. """

    return os.path.abspath(os.path.join(context.config['work_dir'], 'cot', task_id, path))