Skip to content

[UE5.5] Using claude to identify and address several issues. (#802)#805

Merged
mcottontensor merged 4 commits intoEpicGamesExt:UE5.5from
mcottontensor:backport/UE5.5/pr-802
Apr 14, 2026
Merged

[UE5.5] Using claude to identify and address several issues. (#802)#805
mcottontensor merged 4 commits intoEpicGamesExt:UE5.5from
mcottontensor:backport/UE5.5/pr-802

Conversation

@mcottontensor
Copy link
Copy Markdown
Collaborator

Backport

This will backport the following commits from master to UE5.5:

Questions ?

Please refer to the Backport tool documentation

* chore: add CLAUDE.md with repo guidance for Claude Code

* chore: standardize TypeScript version and re-enable ESLint rules

Bumps typescript to ^5.7.3 in Extras/SS_Test and Extras/mediasoup-sdp-bridge
(was ^5.3.2 and 4.9.5 respectively). Adds moduleResolution: Node16 override
to mediasoup-sdp-bridge tsconfig to satisfy TS5 strictness on @tsconfig/node16.

Re-enables 7 previously-disabled ESLint rules in Frontend/library and
Frontend/ui-library (no-duplicate-type-constituents, no-redundant-type-constituents,
no-unnecessary-type-assertion, no-array-delete, no-unsafe-enum-comparison,
require-await, no-base-to-string) and fixes all resulting violations.

* chore: re-enable no-floating-promises ESLint rule

Adds void operator to all floating promises in Frontend/library and
Frontend/ui-library. Browser UI APIs (fullscreen, pointer lock, media
play) are genuine fire-and-forget; WebRTC/XR operations use void to
explicitly acknowledge unhandled promises.

* chore: standardize @types/node to ^22.14.0 across all workspaces

* chore: standardize TypeScript target to ES6 and ESLint deps

- Set target: ES6 in SignallingWebServer, SS_Test, and react tsconfigs
  (was es2016 and es5; also removed misplaced top-level lib arrays)
- Pin eslint to ^9.39.0 and typescript-eslint to ^8.26.1 across all
  packages that use it

* fix: spread args correctly in EventEmitter.once() callback

* fix: correct error message typo, guard fields access, and fix error cast in WebSocketTransport

* fix(signalling): remove redundant playerCount, deduplicate config message, strict equality

* fix(wilbur): correct status operationId, return 404 for missing resources, strict equality

* fix(frontend/library): strict equality, replace console.log with Logger

* fix(frontend/ui-library): strict equality, fix --colour8 CSS variable typo

* fix(sfu): add const to for-of loops, guard JSON.parse, strict equality, fix readUInt16LE casing

* fix: upgrade test-exclude to v7 to fix jest tests broken by glob v13

The root overrides had "glob": ">=7.2.3" (security fix) which resolved
to glob@13. test-exclude@6 used promisify(require('glob')), which throws
because glob@9+ no longer exports a callable default. Overriding
test-exclude to ^7.0.2 fixes the incompatibility — v7 uses named imports
compatible with glob@10+.

* fix(JSStreamer): add rootDir to tsconfig.cjs.json to fix webpack ts-loader TS5011 error

* fix(ci): always output signalling and streamer logs in streaming healthcheck

* fix: use static imports for REST API path handlers to fix Windows CI

openapi-framework's dynamic import uses `file://${path}` URLs at
runtime. On Windows, paths containing `{streamerId}` produce invalid
file:// URLs (curly braces must be percent-encoded), causing those
route handlers to silently fail to register.

Replace `paths: './dist/paths'` with explicit static imports so that
Node.js require() handles the filesystem path (which has no URL
encoding requirements). Also add .catch() error logging so any future
init failures are visible in the signalling server logs.

* chore: update GitHub Actions — fix path typo, standardize action versions, add npm cache

- Fix healthcheck-image-sfu.yml path trigger typo (workflow -> workflows)
- Upgrade all actions/checkout from v3 to v4
- Upgrade all actions/setup-node from v3 to v4
- Add cache: 'npm' to setup-node steps in build/test workflows
- Pin npm install in changesets-publish to 11.5.1 instead of @latest

* fix: replace fixed sleep with registry propagation poll in npm publish workflow

* fix: create or update release tag on npm publish to handle re-runs

* chore: remove redundant healthcheck-libs-with-public-deps workflow

The publish workflow already validates each package builds against public
npm dependencies in sequence before publishing. By the time a release is
created, this has already been proven. The separate healthcheck is
redundant and the trigger in create-gh-release.yml has been removed.

* chore: simplify create-gh-release — remove redundant build steps and exclusions

Build steps were excluded from the archives anyway, making them pointless.
On a clean checkout there are no node_modules or dist directories, so those
exclusions were also redundant. The release archives are source distributions.

* fix: create or update docker release tags to handle re-runs

Also fix incorrect 'Login to GitHub Container Registry' label in
publish-sfu-image.yml — both workflows publish to Docker Hub.

* fix: deduplicate link checker issues and auto-close when links pass

Instead of creating a new issue on every failed run, find any existing
open 'Link Checker Report' issue and update it in place. Also close the
issue automatically when all links pass so it doesn't sit open stale.

* docs: add DEVELOPING.md describing development workflow from feature to release

(cherry picked from commit 96066d6)

# Conflicts:
#	.github/workflows/changesets-publish-npm-packages.yml
#	.github/workflows/healthcheck-libs-with-public-deps.yml
#	Extras/SS_Test/package.json
#	Frontend/library/src/PeerConnectionController/PeerConnectionController.ts
#	Frontend/ui-library/src/UI/SessionTest.ts
#	package-lock.json
#	package.json
@changeset-bot
Copy link
Copy Markdown

changeset-bot Bot commented Apr 13, 2026

⚠️ No Changeset found

Latest commit: 5d49bd1

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@mcottontensor mcottontensor merged commit fae5bd4 into EpicGamesExt:UE5.5 Apr 14, 2026
9 checks passed
@mcottontensor mcottontensor deleted the backport/UE5.5/pr-802 branch April 14, 2026 00:54
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