feat(rust): the rewards — tally, kit reward, chat and the news leg (phase 13b, protocol 10)
Four event verbs and the announce leg, per PLAN.md §29: - rust.participation.open / .collect: the plugin counts who takes part (seconds, kills or both, in a zone this run opened or the whole server) and collect files them as the run's participants, keyed by Steam id. - rust.kit.entitle: the five recipient modes (D101), rows in the new rust_perm_run_grants (D84) unioned into the permission push, one extra use of the kit per reward as site-held credits on perm.sync (D103), and the rust.kit.entitled notice deferred from phase 10 (D64). - rust.announce: one server or every server (D105). - rust.chat announce leg, speaking only on servers whose new news switch is on (D104) - a card on Admin -> Rust visibility (D106). Budgets rust.grants and rust.announcements; the kit source and four fixed-choice sources (core has no enum param type). rust_perm_run_grants carries core's idempotency key so a revert of a lost answer can find its rows. Protocol 10. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
This commit is contained in:
@@ -560,6 +560,24 @@ module.exports = {
|
||||
},
|
||||
},
|
||||
},
|
||||
news: {
|
||||
type: 'object',
|
||||
description: 'Whether a published news post is also said in each server’s in-game chat. Off by default (D104).',
|
||||
properties: {
|
||||
servers: {
|
||||
type: 'array',
|
||||
items: {
|
||||
type: 'object',
|
||||
properties: {
|
||||
id: { type: 'string', example: 'main' },
|
||||
name: { type: 'string', example: 'Main · Vanilla' },
|
||||
enabled: { type: 'boolean', example: true },
|
||||
on: { type: 'boolean', example: false },
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
RustClanAudience: {
|
||||
@@ -652,6 +670,12 @@ module.exports = {
|
||||
example: { main: 'public', pvp: null },
|
||||
},
|
||||
clanRoster: { $ref: '#/components/schemas/RustClanAudience' },
|
||||
news: {
|
||||
type: 'object',
|
||||
description: 'A server id to whether a published news post is said in its in-game chat.',
|
||||
additionalProperties: { type: 'boolean' },
|
||||
example: { main: true },
|
||||
},
|
||||
},
|
||||
},
|
||||
RustSidecarProbe: {
|
||||
|
||||
Reference in New Issue
Block a user