Repository navigation
Bump sleeyax/discord-rich-presence to guided-review-v0.1.0 - #178
github-actions[bot] wants to merge 1 commit into
Conversation
There was a problem hiding this comment.
Needs from you: nothing, changes requested
@sleeyax, Discord Rich Presence 0.2.0 can't be listed yet: plugins/discord-rich-presence has no OVERVIEW.md at this commit, and the registry needs one for every new version. The 0.1.0 to 0.2.0 code change is fine.
Change needed: add OVERVIEW.md next to paseo-plugin.json in plugins/discord-rich-presence of https://github.com/sleeyax/paseo-plugins and tag a new discord-rich-presence-v* release. Your file replaces the registry copy, plugins/sleeyax/discord-rich-presence.md. You can start from that copy without its last "imported from paseo.cafe" line, but it says the plugin needs Paseo 0.9.0 or newer, and 0.2.0 needs 0.11.0. The shape is in REVIEW.md: what the plugin is and does, setup, then what it reads or sends and where, its settings, and known limits, with no installation steps, badges, changelog, or license sections.
The record's tag field here says guided-review-v0.1.0, a tag for another plugin in your repository, because the bump workflow picked the newest tag across the whole repository. The pinned commit is the one discord-rich-presence-v0.2.0 points at, so nothing changes for you; that workflow question is with the maintainer on #163.
Review data
- Artifact: git
https://github.com/sleeyax/paseo-plugins.git,pluginPathplugins/discord-rich-presence, from41ff25de85931953ace4daa1a7923e20823514c5(tagdiscord-rich-presence-v0.1.0, package version 0.1.0) toc511fa81bebcf5fa1590f2b0dea75344c324148a(tagguided-review-v0.1.0in the record;discord-rich-presence-v0.2.0points at the same commit; package version 0.2.0). - Pin: both commits exist on the remote and both recorded tags point at them.
41ff25dis an ancestor ofc511fa8, which is onmain. The remote'sdiscord-rich-presence-v*tags arev0.1.0at41ff25dandv0.2.0atc511fa8; nothing newer exists. The bump also changesreviewedAtto2026-10-07. - Validation:
npm testpasses (143/143).node scripts/validate.ts --online --changedfails with one error:sleeyax/discord-rich-presence: sleeyax/discord-rich-presence/OVERVIEW.md is required. - Extracted and inspected: cloned without checkout, exported
plugins/discord-rich-presenceat both commits, and compared them withdiff -ruN. Six files change:index.client.tsxreplacesaddSurfaceandaddSidebarItemwithaddScreenandaddSidebarHeaderItemrendering aSidebarRowthat callsopenScreen(index.client.tsx:1-22);client/settings.tsxrenamesDiscordPresenceSurfacetoDiscordPresenceScreenwithPluginScreenProps(client/settings.tsx:1,207);paseo-plugin.jsonrequires>=0.11.0;package.jsonraises the version to 0.2.0 and@getpaseo/clientand@getpaseo/pluginto 0.11.0;README.mdandCHANGELOG.mdare documentation.server/,shared/,scripts/, and the command center items are unchanged. - Install-time commands: none.
paseo-plugin.jsonhas noinstallorbuild;package.jsonhas onlytypecheckandtestscripts.scripts/render-assets.shis an unchanged developer script for rendering the art assets and is not invoked by the manifest. - Dependencies: no runtime
dependencies; only dev dependencies, two of which move from 0.9.1 to 0.11.0. The plugin directory has no lockfile; the repository'spnpm-lock.yamlsits outsidepluginPath. - Hosts: unchanged. A WebSocket to the local Paseo daemon at the address from
PASEO_HOST,PASEO_LISTEN, the pid file, or the daemon config (shared/daemon-url.ts:16-41,server/daemon.ts:75), and the local Discord IPC sockets (server/discord.ts:76,server/ipc.ts:52-62). No other hosts. - Credentials and environment: unchanged.
PASEO_PASSWORDfor the daemon connection (shared/daemon-url.ts:45);PASEO_HOMEandHOME(server/paths.ts:6-8);XDG_RUNTIME_DIR,TMPDIR,TMP,TEMPto find the Discord socket (server/ipc.ts:45). Each is what a daemon-reading Discord presence needs. - Filesystem: unchanged. Reads
paseo.pidandconfig.jsonunder the Paseo home (server/daemon.ts:61-62); settings are stored through Paseo plugin settings. No writes outside that. - Execution: none. No
child_process,eval,new Function, or dynamicimport(). - Runtime installs: none.
- Source match: git artifact; all
.tsand.tsxfiles are readable source, with no bundles or minified files. - Listing media: three PNGs pinned to
41ff25d, each HTTP 200image/png, anddocs/screenshotsis byte-identical atc511fa8. - Overview: missing at
c511fa8. The registry copyplugins/sleeyax/discord-rich-presence.mdnames Paseo 0.9.0, which 0.2.0 no longer supports. - Decision: changes requested, because
OVERVIEW.mdis missing. The record'stagnames another plugin's tag on the right commit; the bump workflow's tag selection is a maintainer question on #163. - Reviewed commit:
d435842a6673b537117e29aec7f1df4b141ddb8a
sleeyax/discord-rich-presence: {"kind":"git","remote":"https://github.com/sleeyax/paseo-plugins.git","commit":"41ff25de85931953ace4daa1a7923e20823514c5","tag":"discord-rich-presence-v0.1.0","pluginPath":"plugins/discord-rich-presence"} -> {"kind":"git","remote":"https://github.com/sleeyax/paseo-plugins.git","commit":"c511fa81bebcf5fa1590f2b0dea75344c324148a","tag":"guided-review-v0.1.0","pluginPath":"plugins/discord-rich-presence"}Git tag
guided-review-v0.1.0pins commitc511fa81bebcf5fa1590f2b0dea75344c324148a.Submitted by @sleeyax.
Merging approves this version. The published index keeps pointing at the previous one until then.
Artifact diff
-Paseo tracks the default branch from there, so
paseo plugin update discord-rich-presencepicks up new releases without a clone.paseo plugin statussays what is installed against what is available.+That installs the release published to the Paseo plugin registry, which needs Paseo 0.11 or later. To install straight from this repository's default branch instead:
-The plugin uses a shared Paseo Discord application by default. Open Discord Rich Presence in the Paseo sidebar to see the connection status and change its settings.
+
sh +paseo plugin add github:sleeyax/paseo-plugins:plugins/discord-rich-presence ++
+Either way,
paseo plugin update discord-rich-presencepicks up new releases without a clone, andpaseo plugin update discord-rich-presence --checksays what is installed against what is available.+
+The plugin uses a shared Paseo Discord application by default. Open Discord in the Paseo sidebar to see the connection status and change its settings.
Native, Snap, and Flatpak Discord installations are supported. The plugin reconnects automatically when Discord starts.
-Requires Paseo 0.9 or newer. Earlier versions stored settings in
${XDG_CACHE_HOME:-~/.cache}/paseo-plugins/discord-rich-presence/, which is no longer read. After updating, set your detail levels and application ID again (until then, every project shows as Detailed), then delete that directory.+Requires Paseo 0.11 or newer. Versions of the plugin made for Paseo older than 0.9 stored settings in
${XDG_CACHE_HOME:-~/.cache}/paseo-plugins/discord-rich-presence/, which is no longer read. After updating from one of those, set your detail levels and application ID again (until then, every project shows as Detailed), then delete that directory.Settings
diff --git a/plugins/discord-rich-presence/client/settings.tsx b/plugins/discord-rich-presence/client/settings.tsx
index 70dc026..2f5f0d9 100644
--- a/plugins/discord-rich-presence/client/settings.tsx
+++ b/plugins/discord-rich-presence/client/settings.tsx
@@ -1,4 +1,4 @@
-import type { PluginSurfaceProps } from "@getpaseo/plugin/client";
+import type { PluginScreenProps } from "@getpaseo/plugin/client";
import { useRpc, useSettings } from "@getpaseo/plugin/client";
import { useQuery, useQueryClient } from "@tanstack/react-query";
import React, { useMemo, useState } from "react";
@@ -204,7 +204,7 @@ function ApplicationIdField({
);
}
-export function DiscordPresenceSurface({ theme, layout }: PluginSurfaceProps) {
+export function DiscordPresenceScreen({ theme, layout }: PluginScreenProps) {
const palette = usePalette(theme);
const queryClient = useQueryClient();
const getStatus = useRpc(contracts.getStatus);
diff --git a/plugins/discord-rich-presence/index.client.tsx b/plugins/discord-rich-presence/index.client.tsx
index e30e294..6652588 100644
--- a/plugins/discord-rich-presence/index.client.tsx
+++ b/plugins/discord-rich-presence/index.client.tsx
@@ -1,18 +1,25 @@
-import type { PluginClientContext } from "@getpaseo/plugin/client";
-import { DiscordPresenceSurface } from "./client/settings.tsx";
+import type { PluginClientContext, PluginSidebarItemProps } from "@getpaseo/plugin/client";
+import { SidebarRow } from "@getpaseo/plugin/client/ui";
+import { DiscordPresenceScreen } from "./client/settings.tsx";
import { setProjectLevel, updateSettings } from "./client/settings-writes.ts";
-export const SURFACE_ID = "settings";
+// The ID the sidebar item had before it opened a screen, so saved links to it still resolve.
+export const SCREEN_ID = "discord-rich-presence";
+const TITLE = "Discord";
-export default function contribute(client: PluginClientContext) {
+function DiscordSidebarItem({ currentScreen, openScreen }: PluginSidebarItemProps) {
+}
+export default function contribute(client: PluginClientContext) {
client.addScreen({ id: SCREEN_ID, title: TITLE, Component: DiscordPresenceScreen });
client.addSidebarHeaderItem({ id: SCREEN_ID, title: TITLE, Component: DiscordSidebarItem });
client.addCommandCenterItem({
id: "discord-rich-presence-off",
diff --git a/plugins/discord-rich-presence/package.json b/plugins/discord-rich-presence/package.json
index 33205a0..d5327d7 100644
--- a/plugins/discord-rich-presence/package.json
+++ b/plugins/discord-rich-presence/package.json
@@ -2,14 +2,14 @@
"name": "@paseo-plugins/discord-rich-presence",
"description": "Show your current Paseo activity on Discord.",
"private": true,
"scripts": {
"typecheck": "tsc --noEmit",
"test": "node --test "{client,server,shared}/**/*.test.ts""
},
"devDependencies": {
"@tanstack/react-query": "^5.90.11",
"@types/node": "^26.2.0",
"@types/react": "~19.2.0",
diff --git a/plugins/discord-rich-presence/paseo-plugin.json b/plugins/discord-rich-presence/paseo-plugin.json
index b76af23..5c24ead 100644
--- a/plugins/discord-rich-presence/paseo-plugin.json
+++ b/plugins/discord-rich-presence/paseo-plugin.json
@@ -1,5 +1,5 @@
{
"id": "discord-rich-presence",
"description": "Show your current Paseo activity on Discord.",
}