AI runs: viewing, control, decisions, deletion and permissions
Endpoints of the run list and the detail panel, the control actions (resume, rerun, follow-up, branch runs), decisions, cancelling and deleting, the debug export, per-user scope and the permission keys.
The run list, the detail panel and the control actions run on the workflow controller. A user who is not super administrator sees and handles only their own runs (gpt_run.user_id); for another user's run the system returns error_not_found and does not reveal that it exists (mayTouch()).
Viewing (list)
| Endpoint | Behaviour |
|---|---|
list, row | paged, filtered run list; providers used and state counts per row; for non-super users the filter is forced to their own ID |
detail | steps with state, dependencies, planned and actual model, model health (without a new API call), reuse, sources, initial prompt (at most 4000 characters per field), final result as HTML and plain text, attachments, output documents (by company scope), cost per model in USD and HUF, budget state, follow-up instructions, decisions, normalised goal |
status | live state by polling; starts nothing |
steptext, runtext | full content of one long text field from a closed field list |
attachsearch | attachable documents and business objects filtered to the company scope |
reuse | data of an earlier run's result for attaching |
Control (execute)
resume: continue, optionally on another provider.rerun: a new run with the old settings and a selectable profile.retry: retry a failed step.summary: Hungarian summary of a step's output (AI call).setmodel(POST): model of a step not yet run, from the configured pairs with a key; empty = automatic.continuerun: continue on the same run with an extended budget, without resetting counters.followup: new instruction, optional new attachment and profile change; refused while a decision is pending.manualresult: paste the result of a step run elsewhere.europass: Europass XML with one AI call.markreusable: reusability of a step if nothing blocks it.branchlist,branchstart: list of branch runs from the work packages in the result's last JSON block, and separate runs for the selected ones with the research profile.
Decision, cancel, delete, debug
decide(decide): resolves an open decision (approve, reject, modify, more detailed reasoning); the waiting run can then continue.cancel(cancel): open steps (planned, queued, running, waiting for provider, failed) set to cancelled, the lock removed.delete(delete): per row or in bulk; content scope per run; an active run cannot be deleted (CONFLICT); all data of the other runs is physically deleted; partial result with reasons.debugexport(debug): the run's full internal state as JSON; untruncated withfull=1; key-like patterns masked. The list SQL also only withdebug.
Permissions
| Key | Class |
|---|---|
list | unclassified list row, also in the permission input |
execute, cancel, delete, template, decide, debug | permission input only |
statusdelete | BASE in the feature catalogue, but without endpoint or check; it does not work |
Every endpoint checks its key before calling the model; mayTouch() on run and step level.