Skip to content
OpenTrain AIOpenTrain AIOpenTrain AIDocs

Ask OpenTrain

Answers from the documentation, with sources.

What would you like to do with OpenTrain?

AI answers can be mistaken. Check the linked sources. Don’t include private account information.

Open app

DEVELOPER DOCUMENTATION

Manage Reviewer Feedback and Task Checklists

Enable reviewer reports, assign active reviewers, author and visually review adaptive checklists, then act on reports and submissions safely.

This guide is the operating loop for the two optional quality tabs on a live job. It assumes a claimed employer token with canonical access to the job and the dedicated Reviewer Feedback and Task Checklist scopes.

Terminal window
opentrain capabilities
opentrain feedback settings --job-id <job-id>
opentrain checklists capabilities --job-id <job-id>

Do not confuse the account rollout with the job setting. The account can report an operation family as available while the feature remains off for this job.

2. Prepare checklists while the tab is off

Section titled “2. Prepare checklists while the tab is off”

Keep Task Checklists disabled while building. Create separate definitions for distinct work—for example, Initial Annotation and Quality Control—rather than putting every role into one large conditional tree.

For each definition:

  1. Scaffold or check out the local bundle.
  2. Edit the typed tree with stable node and option IDs.
  3. Validate the complete bundle on the server.
  4. Resolve representative answers for every branch and repeat count.
  5. Push the draft with its version guard.
  6. Open the exact-revision browser preview at desktop and narrow widths.
  7. Publish only the revision you reviewed.
Terminal window
opentrain checklists validate --dir ./initial-annotation
opentrain checklists push --dir ./initial-annotation --job-id <job-id>
opentrain checklists preview --dir ./initial-annotation --source draft --open
opentrain checklists publish --dir ./initial-annotation --confirm-live

Repeat the workflow for the QC definition, then list and order both. Publish impact is operational evidence: if a new version marks open-run answers stale, plan for the affected AI trainers to reconfirm those fields.

After all worker-visible definitions are published and ordered:

Terminal window
opentrain checklists enable \
--job-id <job-id> \
--key checklist-enable-<job-id>-v1

AI trainers and reviewers can now choose among the published definitions in the job’s Checklist tab. A required definition requires an external task ID and a complete valid answer set before submission.

4. Enable Reviewer Feedback and assign reviewers

Section titled “4. Enable Reviewer Feedback and assign reviewers”

Reviewer Feedback starts with no implied reviewer audience. Enable the job feature, read the active-contract candidate list, and grant only the people who should file reports:

Terminal window
opentrain feedback enable \
--job-id <job-id> \
--confirm \
--key feedback-enable-<job-id>-v1
opentrain feedback access list --job-id <job-id>
opentrain feedback access bulk \
--job-id <job-id> \
--user-ids <qc-user-1>,<qc-user-2> \
--grant \
--key feedback-grant-qc-v1

The access list is intentionally bounded to people with active contracts on this job and includes their current grant state. A bulk grant is all-or-nothing; resolve an ineligible target instead of accepting a partial audience.

Use summary for the management view and list for the evidence rows:

Terminal window
opentrain feedback summary --job-id <job-id>
opentrain feedback list --job-id <job-id> --status OPEN --page 1

Investigate one report by reading its body, canonical subject, external IDs, severity, suggested action, reporter, and append-only history. A suggested action is a recommendation, not an automatic personnel decision. Verify the canonical work evidence and applicable job policy before warning, retraining, or offboarding anyone.

Move the report to IN_REVIEW while investigating. Finish with ACTIONED when a concrete response has been taken, or DISMISSED when the report should not drive action. Record the reason in the required note.

Terminal window
opentrain feedback get --report-id <report-id>
opentrain feedback triage \
--report-id <report-id> \
--to-status ACTIONED \
--expected-updated-at <latest-updatedAtIso> \
--note 'Assigned focused retraining and paused production work pending completion' \
--key feedback-actioned-<report-id>-v1

Use the submission list to find all results, one checklist, one AI trainer, one external task ID, or one published version:

Terminal window
opentrain checklists submissions \
--job-id <job-id> \
--definition-id <definition-id> \
--page 1

Fetch the full record before drawing a conclusion:

Terminal window
opentrain checklists submissions --submission-id <submission-id>

Interpret the result against its pinned version, not the current draft. Conditional and repeated paths that were inactive at submission are represented by audit metadata without exposing discarded raw values.

Check out the latest draft before editing:

Terminal window
opentrain checklists checkout \
--definition-id <definition-id> \
--dir ./initial-annotation \
--force

After editing, run diff, validate, push, and preview again. Reordering a node without changing its meaning preserves active answers. Rewording an answerable node or changing its type, options, constraint, required mode, repeat rule, or visibility logic requires reconfirmation in open runs.

Never treat a local file as the current server revision after a conflict. Check out again, reconcile deliberately, and repeat visual review.

Both features can be hidden from the job without deleting their records:

Terminal window
opentrain checklists disable \
--job-id <job-id> --confirm --key checklist-disable-<job-id>-v1
opentrain feedback disable \
--job-id <job-id> --confirm --key feedback-disable-<job-id>-v1

Checklist definitions, versions, and submissions remain stored. Feedback reports, event history, subject links, and reviewer grants also remain stored for a later re-enable.