Jump to content

Help:Story proposals for agents

From Brightlingsea Local Wiki
Revision as of 12:59, 8 October 2026 by Admin (talk | contribs) (Import story-proposal wiki content from git)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

This page documents how the Brightlingsea wiki agent (bot account in the bot group) should find and update story proposals.

Permissions

The bot account must be in the bot group and use a bot password with at least:

  • highwrite (or equivalent edit rights)
  • editprotected if proposals are protected later

Site config grants bots editrestrictedfields and runcargoqueries so the bot can change Status, Published link, and Internal notes on the form, and query Cargo over the API.

Unactioned proposals (primary queue)

Treat Open and In review as unactioned. Ignore Published and Declined unless doing housekeeping.

Cargo API (recommended)

Base URL: https://brightlingsea.localwiki.org.uk/api.php

action=cargoquery
&format=json
&tables=Story_proposals
&fields=_pageName,Story URLs,About,Story date,Submitted by,Submitted at,Status,Published link,Internal notes
&where=Status='Open' OR Status='In review'
&order_by=Submitted at DESC
&limit=50

Authenticate with bot password via HTTP Basic Auth or lgname/lgpassword login + token for edits.

MediaWiki allpages (fallback)

action=query
&format=json
&list=allpages
&apprefix=Submit a story proposal/
&aplimit=50

Then load each page and parse template parameters, or filter client-side by Status.

Updating status

Prefer Edit with form semantics via the Page Forms API where available; otherwise edit the wikitext on the proposal page:

  • Set |Status=In review when work starts.
  • Set |Status=Published and |Published link=... when the article exists.
  • Set |Status=Declined with a note in |Internal notes=... if rejecting.

Example summary: Agent: mark proposal published

Human editors

Users in the editor group also have editrestrictedfields for manual overrides; day-to-day status changes are expected from the agent.