Browse documentation
Docs/Functionality

Coordinate independent reporting and an editor

Use INDEPENDENTLY EACH to give each assignment its own conversation, then combine the results. This newsroom has a reusable reporting process and an editor who receives the collected…

Coordinate independent reporting and an editor

Use INDEPENDENTLY EACH to give each assignment its own conversation, then combine the results. This newsroom has a reusable reporting process and an editor who receives the collected reports.

# Runnable newsroom desk: supplied evidence, isolated reporting, editorial join.
TEAM newsroom
  reader USING "beat-reporter"
  editor USING "news-editor"
END

PROCESS investigate(assignment) WITH reporter
  ASK(reporter, "Report this beat. Distinguish the supplied facts from uncertainty.", assignment)
END

PROCESS cover_story(assignments) WITH reader, editor
  reports = INDEPENDENTLY EACH assignment IN assignments
    RUN investigate(assignment) USING reporter = reader
  END
  story = ASK(editor, "Combine these independent reports into a careful story. Preserve uncertainty.", reports)
  {reports: reports, story: story}
END

report = cover_story([
  {beat: "safety", evidence: "The Port Vale footbridge closed after inspectors found corrosion. The notice does not establish a collapse risk."},
  {beat: "civic", evidence: "The council allocated 200000 for repairs. A reopening date has not been announced."}
]) USING newsroom

Each RUN investigate(...) creates fresh participant identities. The reporters share the beat-reporter model configuration but do not share conversations. The editor receives the ordered reports only after every assignment finishes. The result contains both the reports, keyed by one-based input position, and the edited story. An empty assignment list produces no reporting calls; the editor still receives the empty collection.

A child may hold its own local discussion, including SHARE and UNSHARE among its fresh participants. It receives only its explicit arguments, not the parent's private history or disclosures. Keeping a parent model configuration in USING does not copy that model's earlier conversations.

Run it in Desktop

  1. Save the source in Author.
  2. Open Agent → Tasks → Processes and choose report.
  3. Select configured models for beat-reporter and news-editor.
  4. Press Start process. Inspect the reporter conversations, editor reply, and structured reports/story result in the same panel.

Saving and recalculation do not start inference. Start uses your configured provider account. A waiting human participant uses the existing reply controls; closing the panel does not cancel the process.

What independence means

Independence controls information flow. The current owner schedules these children serially, preserving the same isolated views and ordered join. It does not promise simultaneous provider calls. To continue one conversation across items, use ordinary EACH instead.

This initial independent data traversal admits pure work and fresh RUN children. It rejects direct use of outer participants, outer disclosures, borrowed rooms and external operations, including operations hidden in child processes. A child cannot turn this restriction off. Independent work cannot use a WITH carry. Return proposals first and perform external operations in the sequential process after the join.

The current collection ceiling is 32 items. Parameter and computed collections reserve that ceiling even for shorter inputs. A directly authored literal list or an immutable local list/alias reserves its structural item count instead, with the admitted maximum checked before any child runs. Empty literals conservatively reserve one body. This example's single reporting call per child and final editor call fit the defaults. A failed or uncertain child stops the group; partial-success collection is not provided by this form.

The example uses supplied fictional evidence. Population-generated roles, authorized archive retrieval, citations, shared-document revision and correction memory are remaining pieces of the full newsroom scenario.