One question at a time. Answered on the task.

When a person has to decide something, the operator opens a decision packet on the task and the bell notifies you. The packet sets out what was observed and the answers you can give, and Viberr acts on the one you choose.

VIB-142's answers, in the demo
  • 1 · Accept completion
  • 2 · Request one edit
  • 3 · Block on policy

Get startedRead about packets

Notifications stay in the app. A browser you opt in also shows one for a new decision while a signed-in Viberr tab is open in it but not in front of you.

How a decision reaches you

A packet opens on the task it is about, and it is the only one open there until it closes.

Who asks

The operator opens a packet when a choice is a person's, with up to four answers. An agent granted the right to ask can put a question of its own to you, as an Agent question. Viberr opens one itself in set cases, among them a reviewer's third objection in a row, a conflict pushing the branch and a failed operator run.

More about the operator and the agents

Where you see it

The bell in the topbar notifies you, and the notification opens the packet on its task. On the board, a decision you owe shows on the task's card as "waiting on you". Decisions on tasks you own are also listed in the project's Review queue, where you can answer them in a dialog.

Who answers

The task's owner, or a maintainer or admin of the project, answers most packets. Some answers take a role whoever owns the task: a stage move or an archive takes a maintainer or admin, a force-accept takes an admin, and both answers to the repository question take a project admin. An owner who cannot give an answer can send the decision to a maintainer, or to a project admin for the repository question.

How the operator opens packets

What a packet puts in front of you

A packet is a card headed by its kind and who it is from. Under the question come its body, what was observed and the answers, each led by the digit key that picks it. A box under the answers takes your words. A question asked while the task waits on an agent says on its first line that it does not block: the agent keeps working while you decide.

Before you accept

The operator cannot offer to accept the work until it has written the completion packet for the work under review. The task page draws it inside the packet, between what was observed and the answers: the operator's summary, each reviewer's verdict and the screenshots it picked, with the change read in full up to 200 lines, or the files that are the result on a task delivered as files. Your own acceptance never waits for it.

The packet card

What happens once you answer

Pick an answer and confirm it. The answer you pick is a decision, and Viberr adds it to the task's goal under your name, so every later run reads it. Answers that end the task, a goal edit, and recovery and process choices are not added. Words you type, on their own or as a note, go to the operator and onto the timeline, and never into the goal.

Viberr then does what the answer's kind does. An acceptance runs the whole acceptance, with the merge on a board that delivers code. A send-back hands the task back to the agents and starts the operator again. An answer to an agent's question goes back to the agent that asked, unless it names the operator or another agent, or the asker cannot run on the task now or is gone: then the operator takes it.

What was asked stays on the record

A packet is decided once, and a second confirm is refused, after a reload too. It then leaves the task, except a goal edit's, which waits for the edited goal. When the operator or an agent opened it, its timeline entry carries the whole card, so what was asked stays on the timeline. Viberr's own recovery packets keep one-line entries.

How an answer is applied

While a packet is open

Nothing asks over it

A task holds one open packet at a time. Every way of opening one refuses a second, and an agent cannot put a question while one is open.

A comment's turn is refused

While a packet is open, an @operator comment or a scheduled operator run starts no operator turn. Viberr refuses it, and notes a comment's refused turn on the task.

Offers to accept step aside

When the operator or an agent opens a packet, any standing offer to accept the task is withdrawn, with a note that says so. The operator offers it again on its next turn if it still holds.

Try it on your own instance

Have Docker installed, with Compose 2.24 or later. Two commands start Viberr:

git clone https://github.com/akin-ozer/viberr.git && cd viberrdocker compose up

Then sign in at http://localhost:3000 and finish the setup Home lists. On a board, press New task and describe the work. The operator starts as soon as the task exists, and when a choice is yours the bell notifies you.

Get startedGetting started guide