Skip to content
SHAMPOO

Tool catalogue

quorum_create

Write · Conductor only · Quorum

quorum_create

  • Category: quorum
  • Access: write
  • Audience: administrative (ordinary users do not normally call this directly)

Purpose

Creates one coordination quorum: the agreed-what in Mind Quorum layering (Debate holds why, Quorum holds what was agreed, Lane carries the coordinated stream, Job is one executable unit). Call it when a decision needs named participants and later lanes and jobs under one agreement.

Arguments

Required: project.

Optional: participants, primary_topic_id.

  • project.
  • participants. Note: Optional JSON array of {kind, ref} entries, at most 64. kind is client or role; client refs must name a live principal. Entries start pending.
  • primary_topic_id. Note: Optional debate topic the quorum coordinates around; when given it must exist.

Result

JSON object with quorum_id (new UUID), status (always open on creation), and project.

Boundaries

Requires the conductor role AND an explicit project grant together; star scope never confers origination and literal * plus the unreconciled sentinel are rejected as projects. Stored within the selected profile boundary only.

Lifecycle / side effects

Creates the quorum in open standing with its participant entries in one atomic operation and records an audit/history event. New quorums start open with participants pending.

Errors

Missing conductor role or missing explicit grant is denied. Missing or reserved project is rejected as invalid project. Unknown topic reads as unknown_topic. Malformed participant payload, too many participants, and unknown client refs are rejected. Unknown arguments are rejected. Failures create nothing.

Example

{
  "participants": "[{\"kind\":\"role\",\"ref\":\"EXECUTOR\"}]",
  "primary_topic_id": "<uuid>",
  "project": "shared-ops"
}

Result shape:

{
  "project": "shared-ops",
  "quorum_id": "<uuid>",
  "status": "open"
}

quorum_id is assigned by the server; the placeholder stands for the returned UUID.

See also

quorum_list, quorum_resolve, quorum_cancel, quorum_participant_set, debate_init.

On this page