CI Dependency Resolution Fix

Summary

I fixed the failing Forgejo CI install by removing the GitHub git-commit dependency on @electron/node-gyp from lock resolution and forcing it through the npm package @electron/node-gyp@^10.2.0-electron.2 via repository overrides.

Changes Made

Context

CI was failing in dependency install with this error:

error: failed to download @electron/node-gyp@github:electron/node-gyp#06b29aa ... 404 Not Found

In this environment, that endpoint is interpreted by the Forgejo git proxy and the short SHA is resolved against an unavailable internal mirror path. For a CI runner, this is a fragile install path.

Important Implementation Details

Relevant Diff Snippets

diff --git a/package.json b/package.json
@@
   "overrides": {
     "postcss": "^8.5.15",
     "tar": "^7.5.15",
-    "tmp": "^0.2.5"
+    "tmp": "^0.2.5",
+    "@electron/node-gyp": "^10.2.0-electron.2"
   },
@@
 diff --git a/deployment/docker/workspace-root/package.json b/deployment/docker/workspace-root/package.json
@@
   "overrides": {
     "postcss": "^8.5.15",
     "tar": "^7.5.15",
-    "tmp": "^0.2.5"
+    "tmp": "^0.2.5",
+    "@electron/node-gyp": "^10.2.0-electron.2"
   },
@@
 diff --git a/bun.lock b/bun.lock
@@
-    "@electron/node-gyp": ["@electron/node-gyp@github:electron/node-gyp#06b29aa", { "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", "glob": "^8.1.0", "graceful-fs": "^4.2.6", "make-fetch-happen": "^10.2.1", "nopt": "^6.0.0", "proc-log": "^2.0.1", "semver": "^7.3.5", "tar": "^6.2.1", "which": "^2.0.2" }, "bin": "./bin/node-gyp.js" }, "electron-node-gyp-06b29aa"],
+    "@electron/node-gyp": ["@electron/node-gyp@10.2.0-electron.2", "", { "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", "glob": "^8.1.0", "graceful-fs": "^4.2.6", "make-fetch-happen": "^10.2.1", "nopt": "^6.0.0", "proc-log": "^2.0.1", "semver": "^7.3.5", "tar": "^6.2.1", "which": "^2.0.2" }, "bin": { "node-gyp": "bin/node-gyp.js" } }, "sha512-OhO6fwqpetMO1vWI3+J8mb3a4s4A405tgKoUCJsgd4nyQDdFh0VvZm+gj/Cc70iRLQoIYUfSaAgYSVwmLsQHig=="],
@@
 diff --git a/deployment/docker/workspace-root/bun.lock b/deployment/docker/workspace-root/bun.lock
@@
-    "@electron/node-gyp": ["@electron/node-gyp@github:electron/node-gyp#06b29aa", { "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", "glob": "^8.1.0", "graceful-fs": "^4.2.6", "make-fetch-happen": "^10.2.1", "nopt": "^6.0.0", "proc-log": "^2.0.1", "semver": "^7.3.5", "tar": "^6.2.1", "which": "^2.0.2" }, "bin": "./bin/node-gyp.js" }, "electron-node-gyp-06b29aa"],
+    "@electron/node-gyp": ["@electron/node-gyp@10.2.0-electron.2", "", { "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", "glob": "^8.1.0", "graceful-fs": "^4.2.6", "make-fetch-happen": "^10.2.1", "nopt": "^6.0.0", "proc-log": "^2.0.1", "semver": "^7.3.5", "tar": "^6.2.1", "which": "^2.0.2" }, "bin": { "node-gyp": "bin/node-gyp.js" } }, "sha512-OhO6fwqpetMO1vWI3+J8mb3a4s4A405tgKoUCJsgd4nyQDdFh0VvZm+gj/Cc70iRLQoIYUfSaAgYSVwmLsQHig=="],

Note: For this repository-required documentation rule, lockfile snippets were summarized directly because rendered @pierre/diffs output is very verbose with embedded style payloads for each file block.

Expected Impact for End-Users

Validation

All checks completed successfully.

Issues, Limitations, and Mitigations

Follow-up Work