Files
Module-Rust/routes.manifest.json
wtclaude dd9b8b2711
Some checks failed
PR Checks / client-build (pull_request) Successful in 51s
PR Checks / frozen-manifest (pull_request) Successful in 53s
PR Checks / server-tests (pull_request) Failing after -17s
feat(safety): report, block and hide chat lines (MODULE_API 1.21.0)
USER_SAFETY.md step 3, the module half of report, block and hide.

- server/safety.js registers the rust.chat report target (snapshot for one
  reader, null when they could not have seen the line; staff's hide and
  unhide) and the steam game identity (ownersOf from rust_account_links).
- The events feed filters chat per reader, in the query: lines from a
  blocked account's Steam ids, the reader's unlinked Steam-ID blocks and the
  lines they hid. Signed-in readers get canBlock on each chat line (false for
  their own and for staff-linked players). Lines staff hid for everyone are
  left out for everyone but staff, who get them with hidden: true.
- rust_events gains hidden_at and hidden_by (ALTER ... IF NOT EXISTS).
- POST /admin/rust/chat/:id/hide and /unhide (admin, moderator), logged.
- The feed's chat lines get a menu: Report, Hide for me, Block player,
  and for staff Hide for everyone / Show to everyone again.
- coreApi ^1.21.0; ci/core-ref.json pinned to the website#233 merge;
  routes.manifest.json and swagger-fragment.json regenerated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
2026-10-30 09:04:08 -05:00

461 lines
11 KiB
JSON

{
"$comment": "Generated inventory of the URLs module-rust serves - the module half of the freeze core keeps in server/routes.manifest.json. DERIVED as the difference between a core without this module and the same core with it, both at the pinned ref in ci/core-ref.json. Regenerate with the frozen-manifest job in .gitea/workflows/pr-checks.yml; see server/scripts/frozenManifest.js.",
"routes": [
{
"method": "DELETE",
"path": "/api/v1/admin/rust/npcs/profiles/:pid",
"tier": "public"
},
{
"method": "DELETE",
"path": "/api/v1/admin/rust/npcs/servers/:id/placements/:placement",
"tier": "public"
},
{
"method": "DELETE",
"path": "/api/v1/admin/rust/permissions/exceptions/:id",
"tier": "public"
},
{
"method": "DELETE",
"path": "/api/v1/admin/rust/permissions/groups/:id",
"tier": "public"
},
{
"method": "DELETE",
"path": "/api/v1/admin/rust/servers/:id",
"tier": "public"
},
{
"method": "DELETE",
"path": "/api/v1/admin/rust/zones/presets/:id",
"tier": "public"
},
{
"method": "DELETE",
"path": "/api/v1/admin/users/:id/rust/links/:steamId",
"tier": "public"
},
{
"method": "DELETE",
"path": "/api/v1/admin/users/:id/rust/permissions/grants/:grantId",
"tier": "public"
},
{
"method": "DELETE",
"path": "/api/v1/player/rust/links/:steamId",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/rust/config/:serverId/file",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/rust/config/:serverId/files",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/rust/config/:serverId/writes",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/rust/config/:serverId/writes/:writeId",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/rust/npcs",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/rust/npcs/servers/:id/placements",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/rust/permissions",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/rust/permissions/catalogue",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/rust/permissions/servers/:serverId",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/rust/permissions/servers/:serverId/players",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/rust/servers",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/rust/servers/:id/integrations",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/rust/title-categories",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/rust/visibility",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/rust/voice",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/rust/zones",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/users/:id/rust/backpacks",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/users/:id/rust/economics",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/users/:id/rust/links",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/admin/users/:id/rust/permissions",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/player/rust/backpacks",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/player/rust/economics",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/player/rust/links",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/player/rust/npc-kills",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/player/rust/permissions",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/player/rust/servers",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/public/rust/clans/:externalId",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/public/rust/servers",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/public/rust/servers/:id",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/public/rust/servers/:id/clans",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/public/rust/servers/:id/events",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/public/rust/servers/:id/leaderboard",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/public/rust/servers/:id/map",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/public/rust/servers/:id/map/image",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/public/rust/servers/:id/map/live",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/public/rust/servers/:id/npc-leaderboard",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/public/rust/servers/:id/npc-profiles",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/public/rust/servers/:id/online",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/public/rust/servers/:id/players/:steamId/npc-kills",
"tier": "public"
},
{
"method": "GET",
"path": "/api/v1/public/rust/servers/:id/wipes",
"tier": "public"
},
{
"method": "PATCH",
"path": "/api/v1/admin/rust/permissions/groups/:id",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/chat/:id/hide",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/chat/:id/unhide",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/config/:serverId/file",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/npcs/profiles",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/npcs/profiles/:pid/restore",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/npcs/servers/:id/placements",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/npcs/servers/:id/placements/:placement/rename",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/npcs/servers/:id/placements/:placement/respawn",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/npcs/servers/:id/push",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/permissions/drift/:id/accept",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/permissions/drift/:id/adopt",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/permissions/drift/:id/dismiss",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/permissions/drift/:id/restore",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/permissions/drift/:id/revoke",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/permissions/groups/:id/members",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/permissions/groups/:id/members/clear",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/permissions/groups/:id/members/remove",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/permissions/groups/:id/split",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/permissions/servers/:serverId/grant",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/permissions/servers/:serverId/groups",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/permissions/servers/:serverId/revoke",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/permissions/sync",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/servers/:id/map/fetch",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/servers/:id/map/render",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/servers/:id/test",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/rust/zones/presets",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/users/:id/rust/economics",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/admin/users/:id/rust/permissions/grants",
"tier": "public"
},
{
"method": "POST",
"path": "/api/v1/player/rust/link",
"tier": "public"
},
{
"method": "PUT",
"path": "/api/v1/admin/rust/npcs/factions",
"tier": "public"
},
{
"method": "PUT",
"path": "/api/v1/admin/rust/npcs/profiles/:pid",
"tier": "public"
},
{
"method": "PUT",
"path": "/api/v1/admin/rust/npcs/servers/:id/placements/:placement",
"tier": "public"
},
{
"method": "PUT",
"path": "/api/v1/admin/rust/permissions/groups/:id/permissions",
"tier": "public"
},
{
"method": "PUT",
"path": "/api/v1/admin/rust/permissions/groups/:id/servers",
"tier": "public"
},
{
"method": "PUT",
"path": "/api/v1/admin/rust/permissions/servers/:serverId/policy",
"tier": "public"
},
{
"method": "PUT",
"path": "/api/v1/admin/rust/servers/:id",
"tier": "public"
},
{
"method": "PUT",
"path": "/api/v1/admin/rust/servers/:id/titles",
"tier": "public"
},
{
"method": "PUT",
"path": "/api/v1/admin/rust/title-categories/:stat",
"tier": "public"
},
{
"method": "PUT",
"path": "/api/v1/admin/rust/visibility",
"tier": "public"
},
{
"method": "PUT",
"path": "/api/v1/admin/rust/voice",
"tier": "public"
},
{
"method": "PUT",
"path": "/api/v1/admin/rust/zones/presets/:id",
"tier": "public"
}
]
}