Skip to content

Revival v1: maintenance baseline - #1

Merged
Namnarak merged 4 commits into
mainfrom
revival/maintenance-v1
Sep 7, 2026
Merged

Namnarak merged 4 commits into
mainfrom
revival/maintenance-v1

Conversation

@Namnarak

@Namnarak Namnarak commented Sep 7, 2026

Copy link
Copy Markdown
Member

Reopens CytechMusic as a maintenance-focused public release.

Changes in this baseline:

  • add Python 3.10-3.12 CI compile/install checks
  • add dependency vulnerability audit
  • clean the public .env.example and remove project-specific defaults from the template
  • update README status from archived legacy project to Revived / Maintenance Mode
  • clarify that Cyori remains the active next-generation project
  • document the maintenance-only scope to avoid feature creep

No new product features are introduced in this PR.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 7, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-07T15:49:29.553031Z b434247 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@Namnarak
Namnarak merged commit 287f4c2 into main Sep 7, 2026
8 checks passed

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: b434247f50

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread README.md
cp .env.example .env
```

Fill in at minimum your Discord bot token, MongoDB connection, and Lavalink connection details, then start the bot:

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Document all required numeric placeholders

When a new operator follows this instruction literally and replaces only the token, MongoDB, and Lavalink values, OWNER_IDS remains your_discord_user_id,another_owner_id; utils/config.py:131-132 converts each entry with int(...), so python main.py fails during import before the bot starts. The setup must also require replacing or clearing OWNER_IDS (and replacing NEW_BOT_ID, which is likewise converted to an integer by event handlers), or the template must provide safe values.

Useful? React with 👍 / 👎.

Comment thread .env.example
BANNER_URL=https://i.postimg.cc/5y5pk1bL/Cyori-Banner.png
SUPPORT_URL=https://discord.gg/your_support_server
BANNER_URL=
SUPPORT_URL=

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Omit empty URLs from link buttons

When .env.example is copied without optional branding customization, this assignment makes SUPPORT_URL an empty string, preventing the fallback in utils/config.py:160 from applying. HelpControl passes that value to a link-style button in cogs/info.py:101-106, so /help cannot produce a valid Discord component; the empty DONATE_URL and VOTE_URL entries similarly break premium and vote prompts. Either omit blank URL variables so defaults apply or conditionally omit their buttons.

Useful? React with 👍 / 👎.

Comment thread .env.example
Comment on lines +58 to +59
SOURCE_GUILD_ID=0
SYNC_ROLE_ID=0

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Short-circuit role sync when IDs are disabled

With the new default SOURCE_GUILD_ID=0, role synchronization is not actually disabled: every active-bot member join still reaches bot.py:1353-1372, calls fetch_guild(0), catches the resulting failure, and performs a premium database lookup, while the six-hour audit also requests guild 0. Default self-hosted deployments therefore generate needless Discord API failures and database work; the sync handlers and task should return immediately when either configured ID is zero.

Useful? React with 👍 / 👎.

Comment thread .env.example
Comment on lines +35 to +36
STRIPE_SUCCESS_URL=http://localhost:3000/success
STRIPE_CANCEL_URL=http://localhost:3000/premium

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Point Stripe redirects at served routes

When Stripe is enabled with the copied template, successful and cancelled checkouts redirect to /success and /premium, but DashboardSystem.setup_routes only defines extensionless routes for /dashboard and /invite; the corresponding payment files are exposed by the static router as /success.html and /premium.html. Both configured checkout destinations therefore return 404 unless an external proxy happens to rewrite them, so these defaults should use the actual .html paths or the server should register matching routes.

Useful? React with 👍 / 👎.

Comment thread README.md
| `/stop` | Stop playback and clear the queue. |
| `/skip` | Skip the current song. |
| `/pause` | Pause or resume playback. |
| `/volume [1-200]` | Adjust playback volume. |

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Preserve the premium limit in the volume documentation

The revised command table advertises the full 1-200 range without qualification, but cogs/music.py:976-985 caps non-premium users at 100 and rejects larger values with a premium-required response. This misleads standard users about an advertised command capability; document the free 1-100 range and that 101-200 requires premium.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant