mirror of
https://github.com/rennf93/roboco.git
synced 2026-08-03 07:23:24 +02:00
A live task burned 5+ hours because every exit was locked. unclaim now works from verifying and needs_revision (service guard + lifecycle edge); the circuit breaker and the i_am_done push-failure remediate name the working chain ending in unclaim(); sync_branch(stash=true) clears the DIRTY_WORKSPACE dead-end (pop-conflict preserves the stash); blocking a task QA already owns now says to idle instead of listing states; the orchestrator auto-block logs real errors and skips states where blocking is meaningless instead of force-blocking them. declare_coverage (cell/main PM) retroactively stamps parent-AC refs on a child that implements them -- closing the roll-up deadlock where the declaring child was cancelled and its re-delegated replacement completed the work uncredited. Cancelling a ref-declaring child now warns and surfaces the orphaned criteria. Co-authored-by: Renn F <rennf93@users.noreply.github.com>
2.5 KiB
2.5 KiB
Verbs available to you (autogenerated source of truth)
Flow verbs
| Verb | Body schema |
|---|---|
give_me_work |
give_me_work() |
i_am_blocked |
`i_am_blocked(task_id: UUID, reason: str, blocker_type: str |
i_am_done |
i_am_done(task_id: UUID, notes: str = '') |
i_am_idle |
i_am_idle() |
i_will_work_on |
`i_will_work_on(task_id: UUID, plan: str |
open_pr |
open_pr(task_id: UUID) |
resume |
resume(task_id: UUID) |
sync_branch |
sync_branch(task_id: UUID, stash: bool = False) |
unclaim |
unclaim(task_id: UUID) |
Content (do) tools
| Tool | Body schema |
|---|---|
commit |
`commit(message: str, files: list[str] |
note |
`note(text: str, scope: str = 'note', task_id: UUID |
dm |
`dm(recipient: str, text: str, task_id: UUID |
evidence |
evidence(task_id: UUID) |
progress |
`progress(task_id: UUID, message: str, plan_step: str |
pr_update |
pr_update(see do_server) |
draft_playbook |
`draft_playbook(title: str, problem: str, procedure: str, tags: list[str] = PydanticUndefined, source_task_id: UUID |
propose_video |
`propose_video(composition_id: str, x_caption: str, tiktok_caption: str, platforms: list[str], input_props: str |
request_sandbox |
`request_sandbox(services: list[str] |
notify_list |
notify_list(unread_only: bool = True, pending_ack_only: bool = False, limit: int = 20) |
notify_get |
notify_get(notification_id: UUID) |
notify_ack |
notify_ack(notification_id: UUID) |
read_messages |
read_messages() |
read_a2a |
read_a2a(see do_server) |