KEMBAR78
v1.1.1 by warengonzaga · Pull Request #102 · wgtechlabs/unthread-discord-bot · GitHub
Skip to content

Conversation

@warengonzaga
Copy link
Member

@warengonzaga warengonzaga commented Oct 15, 2025

Summary by CodeRabbit

  • Chores
    • Migrated tooling from Yarn to pnpm across CI, Docker, and build workflows; added pnpm setup and caching.
    • Added pnpm config, switched lockfile triggers to pnpm-lock.yaml and .npmrc, and ignored pnpm debug logs.
    • Updated package manager and scripts; bumped version to 1.1.1.
    • Increased default webhook poll interval from 1s to 5s.
  • Documentation
    • Updated README, CONTRIBUTING, and inline docs to reflect pnpm commands and prerequisites.
  • Tests
    • Updated tests to use dynamic version strings and the new default poll interval.

Copilot AI and others added 11 commits October 14, 2025 13:04
Co-authored-by: warengonzaga <15052701+warengonzaga@users.noreply.github.com>
Updated test expectations to match current application state:
- Changed version expectations from v1.0.0 to v1.1.0 (12 tests in botUtils.test.ts)
- Changed WEBHOOK_POLL_INTERVAL from 1000 to 5000 (3 tests in defaults.test.ts)

All 205 tests now pass (184 passed, 21 skipped, 0 failed)

Co-authored-by: warengonzaga <15052701+warengonzaga@users.noreply.github.com>
Co-authored-by: warengonzaga <15052701+warengonzaga@users.noreply.github.com>
Changed .github/workflows/test.yml to use 'yarn test' (which runs 'vitest run')
instead of the non-existent 'yarn test:run' script.

Co-authored-by: warengonzaga <15052701+warengonzaga@users.noreply.github.com>
Fix failing test suite - Update version and configuration expectations
Co-authored-by: warengonzaga <15052701+warengonzaga@users.noreply.github.com>
…yarn-to-pnpm

Migrate from Yarn to pnpm package manager with latest best practices
@github-advanced-security
Copy link

This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation.

@warengonzaga warengonzaga self-assigned this Oct 15, 2025
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 15, 2025

📝 Walkthrough

Walkthrough

A repository-wide migration from Yarn to pnpm: CI workflows, Dockerfile, docs, scripts, and tests updated to use pnpm; added .npmrc and gitignore entry; default WEBHOOK_POLL_INTERVAL changed to 5000; package version bumped to 1.1.1.

Changes

Cohort / File(s) Summary
CI triggers: path filters updated
.github/workflows/patch-build.yml, .../pr-build.yml, .../security.yml, .../wip-build.yml
Replace yarn.lock in watched paths with pnpm-lock.yaml and add .npmrc; no other workflow step logic changed.
CI steps: migrate Yarn → pnpm
.github/workflows/test.yml, .github/workflows/validate.yml
Add pnpm/action-setup@v4 (pnpm v9.15.9), switch Node cache to pnpm, replace Yarn install/lint/build/test commands with pnpm equivalents; update triggers to pnpm files.
Repository config and metadata
.npmrc, .gitignore, package.json
Add .npmrc with pnpm configuration; add .pnpm-debug.log* to .gitignore; bump version to 1.1.1, set packageManager to pnpm@9.15.9, and update scripts to use pnpm.
Docker: migrate Yarn → pnpm
Dockerfile
Enable Corepack and bootstrap pnpm@9.15.9; copy pnpm-lock.yaml/.npmrc; use pnpm install --frozen-lockfile across stages and replace yarn commands with pnpm equivalents.
Docs & contributor guidance
README.md, CONTRIBUTING.md, src/deploy_commands.ts
Replace Yarn examples and instructions with pnpm equivalents; update prerequisites to Node 20+ and pnpm 9.x; update comments/docs referencing yarn.
Tests: config and metadata expectations
src/__tests__/config/defaults.test.ts, src/__tests__/utils/botUtils.test.ts
Change default WEBHOOK_POLL_INTERVAL expectation from 10005000; tests now import version from package.json and use v${version} in footer assertions instead of hard-coded values.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~30 minutes

Possibly related PRs

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Title Check ⚠️ Warning Sir, the title “v1.1.1” is merely a version identifier and does not convey the significant migration from Yarn to pnpm along with associated workflow, script, and documentation updates, rendering it too vague to summarize the primary changes in this pull request. Kindly revise the title to briefly describe the key update, for example, “chore: migrate CI/CD and scripts from Yarn to pnpm and bump version to v1.1.1,” so that teammates can immediately grasp the core changes.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch dev

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between a337e2c and beceaf7.

📒 Files selected for processing (1)
  • Dockerfile (3 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • Dockerfile
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Pre-Release Security Gate

Comment @coderabbitai help to get the list of available commands and usage tips.

@codecov
Copy link

codecov bot commented Oct 15, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@github-actions
Copy link

🩹 Patch Image Built Successfully

Test this patch with Docker:

# Docker Hub
docker pull wgtechlabs/unthread-discord-bot:patch-9f28099

# GitHub Container Registry
docker pull ghcr.io/wgtechlabs/unthread-discord-bot:patch-9f28099

Deploy to Railway/Cloud for testing:

  • Image: wgtechlabs/unthread-discord-bot:patch-9f28099
  • SHA: 9f280992b09422ed22096f72c766051be8e3c923
  • Built: 2025-10-15T09:36:53Z

⚡ Hotfix ready for validation in production-like environment!

@github-actions
Copy link

github-actions bot commented Oct 15, 2025

Overview

Image reference wgtechlabs/unthread-discord-bot:latest wgtechlabs/unthread-discord-bot:pr-102-4ed24cb
- digest 7ee25ffcf9e2 04f0f4c3d9e1
- tag latest pr-102-4ed24cb
- provenance 04a433b 4ed24cb
- vulnerabilities critical: 0 high: 1 medium: 2 low: 3 critical: 0 high: 0 medium: 1 low: 3
- platform linux/amd64 linux/amd64
- size 61 MB 79 MB (+18 MB)
- packages 354 392 (+38)
Base Image node:22.16-alpine3.21
also known as:
22-alpine
22-alpine3.21
jod-alpine
jod-alpine3.21
lts-alpine
lts-alpine3.21
node:24-alpine3.21
also known as:
24.10-alpine3.21
24.10.0-alpine3.21
alpine3.21
current-alpine3.21
- vulnerabilities critical: 0 high: 1 medium: 2 low: 3 critical: 0 high: 0 medium: 0 low: 2
Environment Variables (1 changes)
  • ± 1 changed
  • 4 unchanged
 NODE_ENV=production
 NODE_OPTIONS=--enable-source-maps --max-old-space-size=512
-NODE_VERSION=22.16.0
+NODE_VERSION=24.10.0
 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
 YARN_VERSION=1.22.22
Labels (5 changes)
  • - 3 removed
  • ± 2 changed
  • 3 unchanged
-org.opencontainers.image.created=2025-10-01T19:16:01Z
+org.opencontainers.image.created=2025-10-15T17:40:35Z
 org.opencontainers.image.description=Turn Discord servers into comprehensive support ticket hubs with real-time bidirectional communication — powered by Unthread.io.
-org.opencontainers.image.licenses=AGPL-3.0
-org.opencontainers.image.revision=04a433bdf45537f5d3b5fde3e49ec7f314b246d0
+org.opencontainers.image.revision=4ed24cb2d5e8cebfcd93c218c056d1ab25957492
 org.opencontainers.image.source=https://github.com/wgtechlabs/unthread-discord-bot
 org.opencontainers.image.title=Unthread Discord Bot
-org.opencontainers.image.url=https://github.com/wgtechlabs/unthread-discord-bot
-org.opencontainers.image.version=1.1.0
Packages and Vulnerabilities (126 package changes and 1 vulnerability changes)
  • ➕ 15 packages added
  • ➖ 5 packages removed
  • ♾️ 106 packages changed
  • 212 packages unchanged
  • ✔️ 1 vulnerabilities removed
Changes for packages of type apk (12 changes)
Package Version
wgtechlabs/unthread-discord-bot:latest
Version
wgtechlabs/unthread-discord-bot:pr-102-4ed24cb
alpine-base 3.21.5-r0
♾️ alpine-release 3.21.3-r0 3.21.5-r0
♾️ busybox 1.37.0-r12 1.37.0-r13
♾️ busybox-binsh 1.37.0-r12 1.37.0-r13
ca-certificates 20250911-r0
♾️ ca-certificates-bundle 20241121-r1 20250911-r0
gcc 14.2.0-r4
♾️ libcrypto3 3.3.3-r0 3.3.5-r0
♾️ libssl3 3.3.3-r0 3.3.5-r0
critical: 0 high: 1 medium: 0 low: 0
Removed vulnerabilities (1):
  • high : CVE--2025--9230
openssl 3.3.5-r0
pax-utils 1.3.8-r1
♾️ ssl_client 1.37.0-r12 1.37.0-r13
Changes for packages of type generic (1 changes)
Package Version
wgtechlabs/unthread-discord-bot:latest
Version
wgtechlabs/unthread-discord-bot:pr-102-4ed24cb
node 22.16.0
Changes for packages of type github (1 changes)
Package Version
wgtechlabs/unthread-discord-bot:latest
Version
wgtechlabs/unthread-discord-bot:pr-102-4ed24cb
node 24.10.0
Changes for packages of type npm (112 changes)
Package Version
wgtechlabs/unthread-discord-bot:latest
Version
wgtechlabs/unthread-discord-bot:pr-102-4ed24cb
♾️ @discordjs/builders 1.11.3 1.12.2
@isaacs/balanced-match 4.0.1
@isaacs/brace-expansion 5.0.0
♾️ @npmcli/agent 3.0.0 4.0.0
♾️ @npmcli/arborist 8.0.0 9.1.5
♾️ @npmcli/config 9.0.0 10.4.1
♾️ @npmcli/git 6.0.1 7.0.0
♾️ @npmcli/map-workspaces 4.0.2 5.0.0
♾️ @npmcli/metavuln-calculator 8.0.1 9.0.2
♾️ @npmcli/package-json 6.1.0 7.0.1
♾️ @npmcli/promise-spawn 8.0.2 8.0.3
♾️ @npmcli/query 4.0.0 4.0.1
♾️ @npmcli/redact 3.0.0 3.2.2
♾️ @npmcli/run-script 9.0.2 10.0.0
♾️ @redis/bloom 5.8.2 5.8.3
♾️ @redis/client 5.8.2 5.8.3
♾️ @redis/json 5.8.2 5.8.3
♾️ @redis/search 5.8.2 5.8.3
♾️ @redis/time-series 5.8.2 5.8.3
♾️ @sapphire/snowflake 3.5.5 3.5.3
♾️ @sigstore/bundle 3.0.0 4.0.0
♾️ @sigstore/core 2.0.0 3.0.0
♾️ @sigstore/protobuf-specs 0.3.2 0.5.0
♾️ @sigstore/sign 3.0.0 4.0.0
♾️ @sigstore/tuf 3.0.0 4.0.0
♾️ @sigstore/verify 2.0.0 3.0.0
♾️ @tufjs/models 3.0.1 4.0.0
♾️ @types/node 24.5.2 24.7.2
♾️ @vladfrangu/async_event_emitter 2.4.6 2.4.7
♾️ abbrev 3.0.0 3.0.1
♾️ agent-base 7.1.1 7.1.4
♾️ ansi-regex 6.1.0 6.2.2
♾️ ansi-styles 6.2.1 6.2.3
♾️ aproba 2.0.0 2.1.0
♾️ binary-extensions 2.3.0 3.1.0
♾️ brace-expansion 2.0.1 2.0.2
♾️ cacache 19.0.1 20.0.1
♾️ chalk 5.3.0 5.6.2
♾️ ci-info 4.1.0 4.3.0
♾️ cidr-regex 4.1.1 5.0.0
♾️ corepack 0.32.0 0.34.0
♾️ diff 5.2.0 8.0.2
♾️ discord-api-types 0.38.26 0.38.30
♾️ discord.js 14.22.1 14.23.2
♾️ exponential-backoff 3.1.1 3.1.2
fdir 6.5.0
♾️ foreground-child 3.3.0 3.3.1
♾️ glob 10.4.5 11.0.3
has-flag 3.0.0
♾️ hosted-git-info 8.0.2 9.0.0
♾️ http-cache-semantics 4.1.1 4.2.0
♾️ https-proxy-agent 7.0.5 7.0.6
♾️ ignore-walk 7.0.0 8.0.0
♾️ init-package-json 7.0.2 8.2.2
♾️ ioredis 5.7.0 5.8.1
♾️ is-cidr 5.1.0 6.0.0
is-lambda 1.0.1
♾️ jackspeak 3.4.3 4.1.1
♾️ keyv 5.5.2 5.5.3
♾️ libnpmaccess 9.0.0 10.0.2
♾️ libnpmdiff 7.0.0 8.0.8
♾️ libnpmexec 9.0.0 10.1.7
♾️ libnpmfund 6.0.0 7.0.8
libnpmhook 11.0.0
♾️ libnpmorg 7.0.0 8.0.1
♾️ libnpmpack 8.0.0 9.0.8
♾️ libnpmpublish 10.0.1 11.1.1
♾️ libnpmsearch 8.0.0 9.0.1
♾️ libnpmteam 7.0.0 8.0.2
♾️ libnpmversion 7.0.0 8.0.2
♾️ lru-cache 10.4.3 11.2.1
♾️ make-fetch-happen 14.0.3 15.0.2
♾️ minipass-fetch 4.0.0 4.0.1
♾️ minizlib 3.0.1 3.1.0
♾️ mkdirp 3.0.1 1.0.4
♾️ node-gyp 11.0.0 11.4.2
♾️ nopt 8.0.0 8.1.0
♾️ normalize-package-data 7.0.0 8.0.0
♾️ npm 10.9.2 11.6.1
♾️ npm-install-checks 7.1.1 7.1.2
♾️ npm-package-arg 12.0.0 13.0.0
♾️ npm-packlist 9.0.0 10.0.1
♾️ npm-pick-manifest 10.0.0 11.0.1
♾️ npm-profile 11.0.1 12.0.0
♾️ npm-registry-fetch 18.0.2 19.0.0
♾️ p-map 7.0.2 7.0.3
♾️ pacote 20.0.0 21.0.3
♾️ path-scurry 1.11.1 2.0.0
picomatch 4.0.3
pnpm 9.15.9
♾️ postcss-selector-parser 6.1.2 7.1.0
promise-inflight 1.0.1
♾️ read 4.0.0 4.1.0
read-package-json-fast 4.0.0
♾️ redis 5.8.2 5.8.3
rimraf 5.0.10
♾️ semver 7.6.3 7.7.2
♾️ sigstore 3.0.0 4.0.0
♾️ socks 2.8.3 2.8.7
♾️ socks-proxy-agent 8.0.4 8.0.5
♾️ spdx-license-ids 3.0.20 3.0.22
♾️ strip-ansi 7.1.0 7.1.2
♾️ supports-color 9.4.0 5.5.0
♾️ tar 7.4.3 7.5.1
♾️ tiny-relative-date 1.3.0 2.0.2
tinyglobby 0.2.15
♾️ tuf-js 3.0.1 4.0.0
♾️ undici-types 7.12.0 7.14.0
♾️ unthread-discord-bot 1.1.0 1.1.1
v8-compile-cache 2.4.0
♾️ validate-npm-package-name 6.0.0 6.0.2
♾️ walk-up-path 3.0.1 4.0.0

@github-actions
Copy link

🩹 Patch Image Built Successfully

Test this patch with Docker:

# Docker Hub
docker pull wgtechlabs/unthread-discord-bot:patch-b9cebfe

# GitHub Container Registry
docker pull ghcr.io/wgtechlabs/unthread-discord-bot:patch-b9cebfe

Deploy to Railway/Cloud for testing:

  • Image: wgtechlabs/unthread-discord-bot:patch-b9cebfe
  • SHA: b9cebfe213121023f7f0007216c6c3c64ab50fcd
  • Built: 2025-10-15T09:38:10Z

⚡ Hotfix ready for validation in production-like environment!

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 3

🧹 Nitpick comments (5)
.github/workflows/validate.yml (1)

24-27: CI pnpm setup looks solid; two optional tweaks for speed and clarity

  • Add cache-dependency-path: pnpm-lock.yaml to setup-node for explicit cache keying.
  • You can let pnpm/action-setup perform install (run_install: true) and drop the separate install step.

Example:

       uses: actions/setup-node@v4
       with:
         node-version: ${{ env.NODE_VERSION }}
-        cache: 'pnpm'
+        cache: 'pnpm'
+        cache-dependency-path: 'pnpm-lock.yaml'
-      - name: Setup pnpm
-        uses: pnpm/action-setup@v4
-        with:
-          version: 9.15.9
+      - name: Setup pnpm
+        uses: pnpm/action-setup@v4
+        with:
+          version: 9.15.9
+          run_install: true

Also applies to: 33-43

CONTRIBUTING.md (1)

27-31: Add Corepack enable step for pnpm version pinning parity

For consistency with README and CI, include Corepack before install:

corepack enable
pnpm install
package.json (1)

9-13: DRY the build step with lifecycle scripts

Use prestart/pre scripts to avoid repeating “pnpm build && …” across commands:

   "scripts": {
-    "start": "pnpm build && node dist/deploy_commands.js && node dist/index.js",
+    "prestart": "pnpm build && node dist/deploy_commands.js",
+    "start": "node dist/index.js",
-    "deploycommand": "pnpm build && node dist/deploy_commands.js",
+    "predeploycommand": "pnpm build",
+    "deploycommand": "node dist/deploy_commands.js",
-    "cmd:deploy": "pnpm build && node dist/command_deploy.js",
+    "precmd:deploy": "pnpm build",
+    "cmd:deploy": "node dist/command_deploy.js",
-    "cmd:reset": "pnpm build && node dist/command_reset.js",
+    "precmd:reset": "pnpm build",
+    "cmd:reset": "node dist/command_reset.js",
Dockerfile (1)

27-33: Looks good; consider cache-friendly pnpm flow

  • Use pnpm fetch + install --offline to maximize layer caching.
  • Prefer --only=prod for clarity.

Examples:

- RUN pnpm install --prod --frozen-lockfile && \
+ RUN pnpm fetch --prod && \
+     pnpm install --offline --only=prod --frozen-lockfile && \
      pnpm store prune
- RUN pnpm install --frozen-lockfile
+ RUN pnpm fetch && pnpm install --offline --frozen-lockfile

Also applies to: 44-49, 57-65

.github/workflows/test.yml (1)

38-42: CI migration LGTM; minor optional caching improvements

  • Add cache-dependency-path: pnpm-lock.yaml to setup-node.
  • Let pnpm/action-setup perform install (run_install: true) to drop the separate install step.

Snippets mirror the suggestion in validate.yml.

Also applies to: 44-51, 56-63

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 04a433b and 49e782d.

⛔ Files ignored due to path filters (2)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
  • yarn.lock is excluded by !**/yarn.lock, !**/*.lock
📒 Files selected for processing (15)
  • .github/workflows/patch-build.yml (1 hunks)
  • .github/workflows/pr-build.yml (1 hunks)
  • .github/workflows/security.yml (1 hunks)
  • .github/workflows/test.yml (3 hunks)
  • .github/workflows/validate.yml (1 hunks)
  • .github/workflows/wip-build.yml (1 hunks)
  • .gitignore (1 hunks)
  • .npmrc (1 hunks)
  • CONTRIBUTING.md (2 hunks)
  • Dockerfile (3 hunks)
  • README.md (8 hunks)
  • package.json (2 hunks)
  • src/__tests__/config/defaults.test.ts (3 hunks)
  • src/__tests__/utils/botUtils.test.ts (12 hunks)
  • src/deploy_commands.ts (1 hunks)
🧰 Additional context used
🧠 Learnings (3)
📓 Common learnings
Learnt from: warengonzaga
PR: wgtechlabs/unthread-discord-bot#0
File: :0-0
Timestamp: 2025-08-28T11:18:55.767Z
Learning: In the wgtechlabs/unthread-discord-bot repository, all package.json scripts have been standardized to use yarn consistently, eliminating the previous mixing of npm and yarn commands. This was part of the v1.0.0-rc1 release migration to a Yarn PnP architecture.
📚 Learning: 2025-08-28T11:18:55.767Z
Learnt from: warengonzaga
PR: wgtechlabs/unthread-discord-bot#0
File: :0-0
Timestamp: 2025-08-28T11:18:55.767Z
Learning: In the wgtechlabs/unthread-discord-bot repository's package.json, the build and deployment scripts (start, deploycommand, build) consistently use yarn, while development scripts (dev, lint, lint:fix) invoke tools directly. This represents a clean separation between orchestration scripts and development tool invocation.

Applied to files:

  • README.md
  • src/deploy_commands.ts
  • CONTRIBUTING.md
  • package.json
📚 Learning: 2025-08-28T11:18:55.767Z
Learnt from: warengonzaga
PR: wgtechlabs/unthread-discord-bot#0
File: :0-0
Timestamp: 2025-08-28T11:18:55.767Z
Learning: In the wgtechlabs/unthread-discord-bot repository, all package.json scripts have been standardized to use yarn consistently, eliminating the previous mixing of npm and yarn commands. This was part of the v1.0.0-rc1 release migration to a Yarn PnP architecture.

Applied to files:

  • README.md
  • CONTRIBUTING.md
  • package.json
🧬 Code graph analysis (2)
src/__tests__/utils/botUtils.test.ts (1)
src/utils/botUtils.ts (2)
  • getBotName (28-41)
  • getBotFooter (59-62)
src/__tests__/config/defaults.test.ts (1)
src/config/defaults.ts (1)
  • DEFAULT_CONFIG (40-53)
🪛 GitHub Actions: Test
src/__tests__/utils/botUtils.test.ts

[error] 1-1: Bot utilities tests fail due to version mismatch: expected v1.1.0 in getBotFooter outputs but actual version is v1.1.1 across multiple tests (e.g., should return formatted footer with display name and version, username when display name unavailable, etc.).

🪛 LanguageTool
README.md

[grammar] ~176-~176: Use a hyphen to join words.
Context: ...environment - pnpm: Fast, disk space efficient package manager - ESLint: ...

(QB_NEW_EN_HYPHEN)


[grammar] ~176-~176: There might be a mistake here.
Context: ...st, disk space efficient package manager - ESLint: Code quality and consistent fo...

(QB_NEW_EN)


[grammar] ~279-~279: There might be a mistake here.
Context: ...ts frequently** during development with pnpm test:watch 3. Check coverage before submitting PRs w...

(QB_NEW_EN)


[grammar] ~280-~280: There might be a mistake here.
Context: ...k coverage** before submitting PRs with pnpm test:coverage 4. Review test reports in the generated `...

(QB_NEW_EN)


[grammar] ~384-~384: There might be a mistake here.
Context: ... - Node.js: Version 20.0.0 or higher - pnpm: Version 9.x (latest, automatical...

(QB_NEW_EN)


[grammar] ~385-~385: There might be a mistake here.
Context: ... automatically managed via package.json) - TypeScript: Automatically managed via ...

(QB_NEW_EN)


[grammar] ~386-~386: There might be a mistake here.
Context: ...Script**: Automatically managed via pnpm - Discord Application: Bot token and pro...

(QB_NEW_EN)

🔇 Additional comments (8)
.gitignore (1)

78-80: Splendid addition to our ignore patterns, sir.

The pnpm debug log exclusion is properly placed and formatted, maintaining consistency with the existing package manager log patterns above. This aligns perfectly with your migration strategy.

src/deploy_commands.ts (1)

16-24: Documentation elegantly updated, sir.

The command examples have been properly migrated to pnpm syntax, maintaining clarity for contributors. The workflow instructions remain comprehensive and well-structured.

.github/workflows/wip-build.yml (1)

10-11: Path filters recalibrated with precision, sir.

The workflow will now monitor pnpm-specific artifacts rather than Yarn's lockfile. This ensures proper CI triggering during the package manager transition.

.github/workflows/patch-build.yml (1)

11-12: Path monitoring upgraded successfully, sir.

The patch build workflow now tracks pnpm dependencies, ensuring consistent behavior across all build pipelines.

src/__tests__/config/defaults.test.ts (2)

39-39: Test expectations recalibrated to the new polling cadence, sir.

The WEBHOOK_POLL_INTERVAL default has been adjusted from 1000ms to 5000ms. This increased interval should reduce unnecessary polling overhead while maintaining responsive webhook monitoring.


247-247: getAllConfig test assertions updated with precision.

These expectations now correctly validate the new 5000ms default across both default configuration and override scenarios.

Also applies to: 279-279

.github/workflows/security.yml (1)

11-12: Security workflow path filters synchronized, sir.

The security scanning pipeline is now properly configured to monitor pnpm-related changes, maintaining your defensive posture throughout the migration.

.github/workflows/pr-build.yml (1)

11-12: PR build workflow successfully reconfigured, sir.

The final piece of your workflow migration is in place, ensuring comprehensive monitoring of pnpm artifacts across all build pipelines.

@warengonzaga warengonzaga added the hacktoberfest-accepted Hacktoberfest accepted (PRs) label Oct 15, 2025
@github-actions
Copy link

🩹 Patch Image Built Successfully

Test this patch with Docker:

# Docker Hub
docker pull wgtechlabs/unthread-discord-bot:patch-830e47c

# GitHub Container Registry
docker pull ghcr.io/wgtechlabs/unthread-discord-bot:patch-830e47c

Deploy to Railway/Cloud for testing:

  • Image: wgtechlabs/unthread-discord-bot:patch-830e47c
  • SHA: 830e47ceb2a9950f4ad05623bcbf9b2832136f38
  • Built: 2025-10-15T10:21:03Z

⚡ Hotfix ready for validation in production-like environment!

@warengonzaga warengonzaga added deployment Deployment and infrastructure-related (Issues/PRs) documentation Documentation improvements and additions (Issues/PRs) maintainer Maintainer expertise required (Issues/PRs) testing Testing and test infrastructure (Issues/PRs) labels Oct 15, 2025
@github-actions
Copy link

🩹 Patch Image Built Successfully

Test this patch with Docker:

# Docker Hub
docker pull wgtechlabs/unthread-discord-bot:patch-4ed24cb

# GitHub Container Registry
docker pull ghcr.io/wgtechlabs/unthread-discord-bot:patch-4ed24cb

Deploy to Railway/Cloud for testing:

  • Image: wgtechlabs/unthread-discord-bot:patch-4ed24cb
  • SHA: 4ed24cb2d5e8cebfcd93c218c056d1ab25957492
  • Built: 2025-10-15T17:40:22Z

⚡ Hotfix ready for validation in production-like environment!

@warengonzaga warengonzaga merged commit 2703ebd into main Oct 16, 2025
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

deployment Deployment and infrastructure-related (Issues/PRs) documentation Documentation improvements and additions (Issues/PRs) hacktoberfest-accepted Hacktoberfest accepted (PRs) maintainer Maintainer expertise required (Issues/PRs) testing Testing and test infrastructure (Issues/PRs)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants