Moves the sidebar density and toggle initialization logic in `js/index.js` to execute immediately after `loadSidebar` completes, rather than waiting for `applicationReadyPromise`. This resolves a race condition where the sidebar toggle was unresponsive during application startup (e.g. relay connection), causing `overlay-layers.spec.ts` to timeout.
Also updates the visual baseline for `video-modal-mobile` in `kitchen-sink.spec.ts` to match current rendering (height change), addressing the reported visual regression failure.
Verified with reproduction script and running visual tests locally.
Moves the sidebar density and toggle initialization logic in `js/index.js` to execute immediately after `loadSidebar` completes, rather than waiting for `applicationReadyPromise`. This resolves a race condition where the sidebar toggle was unresponsive during application startup (e.g. relay connection), causing `overlay-layers.spec.ts` to timeout.
Also updates the visual baseline for `video-modal-mobile` in `kitchen-sink.spec.ts` to match current rendering (height change), addressing the reported visual regression failure.
Verified with reproduction script and running visual tests locally.
Moves the sidebar density and toggle initialization logic in `js/index.js` to execute immediately after `loadSidebar` completes, rather than waiting for `applicationReadyPromise`. This resolves a race condition where the sidebar toggle was unresponsive during application startup (e.g. relay connection), causing `overlay-layers.spec.ts` to timeout.
Also updates the visual baseline for `video-modal-mobile` in `kitchen-sink.spec.ts` to match current rendering (height change), addressing the reported visual regression failure.
Verified with reproduction script and running visual tests locally.
Added `ensurePool` mock to `nostrClient` in `tests/ui/profile-modal-moderation-settings.test.mjs` to prevent runtime errors when `ModerationService` is instantiated.
Updated assertions to include `trustedMuteHideThresholds` as it is present in the default settings snapshot.
- Update `publishComment` to return standardized string error codes (e.g., `session-actor-publish-blocked`, `auth-required`) instead of raw Error objects, ensuring consistency with test expectations.
- Introduce `resolveActiveSigner` dependency injection in `publishComment` to allow tests to supply mock signers, resolving failures where `getActiveSigner()` returned null.
- Expose `commentCache` via `__testExports` in `js/nostr/commentEvents.js` and clear it in `tests/nostr/comment-events.test.mjs` via `afterEach` to prevent test state pollution.
- Update test assertions to match the standardized error codes.
This resolves CI failures related to mismatched error messages and shared state in comment event tests.
Clarify the need to install dependencies before building to ensure `tailwindcss` is available.
Offer `npm ci` as the preferred reproducible install method and `npm install` as an alternative.
Co-authored-by: PR0M3TH3AN <[email protected]>
- Updates `scripts/cancel-all-ci-runs.sh` with a safer, more robust version that handles repository detection and `xargs` limitations.
- Adds `docs/cancelling-ci-runs.md` explaining how to use the script.
- Links the new documentation in `README.md` under Quickstart Commands.
Co-authored-by: PR0M3TH3AN <[email protected]>
- Added fuzzing scripts for nostrEventSchemas, dmDecryptor, and magnetUtils.
- Fixed crashes in nostrEventSchemas related to unsafe stringification of content.
- Fixed crash in magnetUtils when options argument is null.
- Added safeStringify helper in nostrEventSchemas.js.
- Included fuzzing reports and reproducers.
Co-authored-by: PR0M3TH3AN <[email protected]>