Skip to content
SHAMPOO

Tool catalogue

debate_reconcile_project

Write · Conductor only · Debate

debate_reconcile_project

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

Purpose

Sets a legacy topic's project exactly once, one way. The sole escape hatch for sentinel topics that deny everyone, and it never exposes topic contents.

Arguments

Required: topic_id, project.

  • topic_id. Note: Must name a topic whose project is still unset or sentinel.
  • project. Note: Explicit project value; sentinel and wildcard values are rejected.

Result

Object with topic_id, project, and matched (always 1 on success). Identifiers only, never transcript content.

Boundaries

Conductor callers only. All other principals, including star, are denied on sentinel topics across every other path until this call completes. Second calls on an already-set topic fail.

Lifecycle / side effects

One-way and final: the write persists atomically with an audit/history event and cannot be repeated or reversed through this surface.

Errors

Unknown topics, already-set topics, and invalid project values are rejected uniformly without exposing contents.

Example

{
  "project": "shared-ops",
  "topic_id": "<uuid>"
}

Result shape:

{
  "matched": 1,
  "project": "shared-ops",
  "topic_id": "<uuid>"
}

See also

debate_set_topic_priority, debate_init, debate_work_queue, debate_read, debate_protocol_state.

On this page