Skip to content

Conversation

@ampelectrecuted
Copy link
Contributor

Resolves

What Github issue does this resolve (if any, if not then please include link)?

  • Resolves #

Proposed Changes

Describe what this Pull Request does

Reason for Changes

Explain why these changes should be made. Why is this helpful or necessary? Why should this be added?

Test Coverage

Please show how you have added tests to cover your changes

Browser Coverage

Check the OS/browser combinations tested (At least 2)

Mac

  • Chrome
  • Firefox
  • Safari

Windows

  • Chrome
  • Firefox
  • Edge

Chromebook

  • Chrome

iPad

  • Safari

Android Tablet

  • Chrome

@ampelectrecuted
Copy link
Contributor Author

/pr test

@ampelectrecuted ampelectrecuted marked this pull request as draft October 14, 2025 19:30
@github-actions
Copy link
Contributor

github-actions bot commented Oct 14, 2025

MEGA PR Test Failed @ampelectrecuted

Something went wrong during the build or analysis process.
Total time: N/A

Check the logs for details: View Logs

@ampelectrecuted ampelectrecuted changed the title some animations/css changes stuff svc's addons page revamp Oct 14, 2025
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 14, 2025

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch addons-page-revamp

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@ampelectrecuted
Copy link
Contributor Author

@coderabbitai review

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 14, 2025

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 14, 2025

Note

Unit test generation is an Early Access feature. Expect some limitations and changes as we gather feedback and continue to improve it.


Generating unit tests... This may take up to 20 minutes.

@supervoidcoder
Copy link
Member

@ampelectrecuted what does this do?

@supervoidcoder
Copy link
Member

i guess we can wait for coderabbit nvm

@supervoidcoder
Copy link
Member

OH WAIT ADDONS PAGE WE DEFINITELY NEED A REVAMP I ALWAYS THOUGHT IT WAS SO UGLY IT NEEDS MORE CHARM

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: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between b0c3fef and ec348d3.

📒 Files selected for processing (1)
  • src/addons/settings/settings.css (2 hunks)
⏰ 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: mega-test

Comment on lines +20 to +22
*{
transition: all 0.2s ease-in-out;
}
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

Remove the universal transition: all rule

Applying transition: all 0.2s to * forces every property change (layout, focus outlines, form controls, etc.) on the page to animate. This introduces jank, delays focus indicators (hurting accessibility), and overrides carefully tuned transitions defined later in the file. Please drop the universal rule and scope the animation to the specific elements you want to animate.

-*{
-    transition: all 0.2s ease-in-out;
-}
+.addon-group-expand-container {
+    transition: transform 0.2s ease-in-out, background 0.2s ease-in-out;
+}
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
*{
transition: all 0.2s ease-in-out;
}
.addon-group-expand-container {
transition: transform 0.2s ease-in-out, background 0.2s ease-in-out;
}
🤖 Prompt for AI Agents
In src/addons/settings/settings.css around lines 20 to 22, remove the universal
rule "transition: all 0.2s ease-in-out" and instead apply scoped transitions
only to the elements and properties that should animate (for example buttons,
links, input controls, icons, and containers) using explicit properties like
transition: background-color 0.2s, color 0.2s, opacity 0.2s, transform 0.2s;
avoid animating layout or focus outlines and ensure focus states are
instantaneous or have separate, accessible timing to prevent delayed focus
indicators.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 14, 2025

Creating a local commit for the generated unit tests...

The unit tests have been committed to the current branch. Commit ID: ae66f3973d070e7597c739217a7f1a722caeea33

@github-actions
Copy link
Contributor

github-actions bot commented Oct 14, 2025

MEGA PR Test Failed @ampelectrecuted

Something went wrong during the build or analysis process.
Total time: N/A

Check the logs for details: View Logs

Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

Thank you for submitting this pull request.

This PR proposes a revamp of the "addons" page, focusing on UI improvements (e.g., smooth transitions and hover effects) and introduces comprehensive unit tests for validating package-lock.json integrity. It also includes other miscellaneous test updates.

General Observations:

  • Syntax/Runtime Errors: There are no apparent syntax or runtime issues in the provided code. Everything seems well-structured and functional.
  • Security Concerns: While the tests for package-lock.json address indirect security issues by validating integrity hashes and secure protocols, you might want to include explicit vulnerability scanning, especially for critical dependencies.
  • Performance/Maintainability: Adding a global transition via * selector in settings.css impacts all elements and might negatively affect performance for large DOM trees or Sparkle-heavy UIs. Consider scoping transition to relevant elements for optimization.

Suggestions to Improve:

  1. **CSS (`src/addons


test('git dependencies use SSH protocol', () => {
Object.entries(packageLock.packages || {}).forEach(([key, pkg]) => {
if (pkg.resolved && pkg.resolved.includes('github.com')) {

Check failure

Code scanning / CodeQL

Incomplete URL substring sanitization High test

'
github.com
' can be anywhere in the URL, and arbitrary hosts may come before or after it.

Copilot Autofix

AI 4 months ago

To address the issue, the check for 'github.com' in the URL should not be performed with .includes(), but rather by robustly parsing the URL and checking its host component. Specifically, the correct way is to use the built-in Node.js URL class to parse pkg.resolved and check if the .host or .hostname is exactly 'github.com' or, if subdomains are allowed, ends with '.github.com' (after a dot or at the start). In this context, the goal is probably to ensure the dependency is from GitHub proper, not from any arbitrary domain containing that string.

So, in the test on line 71, instead of testing pkg.resolved.includes('github.com'), parse pkg.resolved with new URL(), extract the hostname, and check if it equals 'github.com' (and/or add other allowed forms as needed).

This requires:

  • Importing the URL class if necessary (in Node.js, it's global and does not need an import).
  • Replacing the substring check with robust property access on the parsed URL object.
Suggested changeset 1
test/unit/dependencies/package-lock.test.js

Autofix patch

Autofix patch
Run the following command in your local git repository to apply this patch
cat << 'EOF' | git apply
diff --git a/test/unit/dependencies/package-lock.test.js b/test/unit/dependencies/package-lock.test.js
--- a/test/unit/dependencies/package-lock.test.js
+++ b/test/unit/dependencies/package-lock.test.js
@@ -68,9 +68,16 @@
 
         test('git dependencies use SSH protocol', () => {
             Object.entries(packageLock.packages || {}).forEach(([key, pkg]) => {
-                if (pkg.resolved && pkg.resolved.includes('github.com')) {
-                    if (pkg.resolved.startsWith('git+')) {
-                        expect(pkg.resolved).toContain('git+ssh://');
+                if (pkg.resolved) {
+                    try {
+                        const resolvedUrl = new URL(pkg.resolved.replace(/^git\+/, ''));
+                        if (resolvedUrl.hostname === 'github.com') {
+                            if (pkg.resolved.startsWith('git+')) {
+                                expect(pkg.resolved).toContain('git+ssh://');
+                            }
+                        }
+                    } catch (e) {
+                        // ignore invalid URLs in resolved (they'll fail other tests)
                     }
                 }
             });
EOF
@@ -68,9 +68,16 @@

test('git dependencies use SSH protocol', () => {
Object.entries(packageLock.packages || {}).forEach(([key, pkg]) => {
if (pkg.resolved && pkg.resolved.includes('github.com')) {
if (pkg.resolved.startsWith('git+')) {
expect(pkg.resolved).toContain('git+ssh://');
if (pkg.resolved) {
try {
const resolvedUrl = new URL(pkg.resolved.replace(/^git\+/, ''));
if (resolvedUrl.hostname === 'github.com') {
if (pkg.resolved.startsWith('git+')) {
expect(pkg.resolved).toContain('git+ssh://');
}
}
} catch (e) {
// ignore invalid URLs in resolved (they'll fail other tests)
}
}
});
Copilot is powered by AI and may make mistakes. Always verify output.
@github-actions
Copy link
Contributor

github-actions bot commented Oct 14, 2025

🎉 MEGA PR Test & Analysis Complete!

Hi @ampelectrecuted! Your PR has been fully tested and analyzed! 🚀✨


🌍 Test Deployment

Live Preview: https://OmniBlocks.github.io/scratch-gui/supervoidcoder/210/


🔦 Performance Audit (Lighthouse)

Core Scores:

  • 🔴 Performance: 32/100
  • 🟠 Accessibility: 73/100
  • 🟢 Best Practices: 93/100
  • 🟠 SEO: 88/100

📊 Detailed Performance Metrics:

  • First Contentful Paint (FCP): 44.6 s
  • Largest Contentful Paint (LCP): 47.9 s
  • Total Blocking Time (TBT): 1,110 ms
  • Cumulative Layout Shift (CLS): 0
  • Speed Index: 44.6 s
  • Time to Interactive (TTI): 49.6 s
  • Max Potential FID: 2,770 ms
  • Server Response Time: Root document took 0 ms
  • DOM Size: 328 elements
  • Main Thread Work: 10.0 s

📥 Download full Lighthouse report


📦 Bundle Size Analysis

Total Build Size: 136M

📦 Top 5 Largest JavaScript Files:

  • 20M - samples3.js
  • 20M - player/samples3.js
  • 13M - player/drumsamples.js
  • 13M - drumsamples.js
  • 9.5M - samples2.js

🎨 Top 5 Largest CSS Files:

  • No CSS files found (might be inlined in JS)

♿ Accessibility Testing

⚠️ 5 issue(s) found

  • ✅ Passed checks: 26
  • ⚠️ Violations: 5
  • Full report available in artifacts

📊 Build Details


💡 Pro Tip: Only one build was needed for all these checks - saving CI/CD minutes! 🎯

Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

Thank you for submitting this pull request.

This PR aims to revamp the service's addons page by making styling changes (settings.css) and adding unit tests for package-lock.json integrity, CSS validation, and workflow summaries. The changes improve the site's visual responsiveness and enhance testing coverage.

General Comments

  • Syntax/runtime errors: No obvious syntax errors or runtime issues were observed in the provided files.
  • Security concerns: The security tests for package-lock.json ensure dependencies use valid hashes and protocols, but please confirm these align with organizational policies. Consider adding tools such as npm audit for tracking vulnerabilities over time.
  • Performance/maintainability issues: Using CSS transitions (* { transition: all 0.2s ease-in-out; }) globally may cause unnecessary overhead in UI responsiveness for certain elements. It's advisable to scope transitions to specific elements/classes instead of applying them universally.
  • Testing improvements: Unit tests for `package-lock.json

@github-actions
Copy link
Contributor

github-actions bot commented Oct 14, 2025

🎉 MEGA PR Test & Analysis Complete!

Hi @ampelectrecuted! Your PR has been fully tested and analyzed! 🚀✨


🌍 Test Deployment

Live Preview: https://OmniBlocks.github.io/scratch-gui/supervoidcoder/210/


🔦 Performance Audit (Lighthouse)

Core Scores:

  • 🔴 Performance: 36/100
  • 🟠 Accessibility: 70/100
  • 🟢 Best Practices: 93/100
  • 🟠 SEO: 88/100

📊 Detailed Performance Metrics:

  • First Contentful Paint (FCP): 46.7 s
  • Largest Contentful Paint (LCP): 50.4 s
  • Total Blocking Time (TBT): 800 ms
  • Cumulative Layout Shift (CLS): 0
  • Speed Index: 46.7 s
  • Time to Interactive (TTI): 51.6 s
  • Max Potential FID: 3,780 ms
  • Server Response Time: Root document took 0 ms
  • DOM Size: 350 elements
  • Main Thread Work: 17.2 s

📥 Download full Lighthouse report


📦 Bundle Size Analysis

Total Build Size: 136M

📦 Top 5 Largest JavaScript Files:

  • 20M - samples3.js
  • 20M - player/samples3.js
  • 13M - player/drumsamples.js
  • 13M - drumsamples.js
  • 9.5M - samples2.js

🎨 Top 5 Largest CSS Files:

  • No CSS files found (might be inlined in JS)

♿ Accessibility Testing

⚠️ 5 issue(s) found

  • ✅ Passed checks: 26
  • ⚠️ Violations: 5
  • Full report available in artifacts

📊 Build Details


💡 Pro Tip: Only one build was needed for all these checks - saving CI/CD minutes! 🎯

Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

Thank you for submitting this pull request.

High-Level Summary

This PR introduces a revamp to the "addons page" in the application, including updated styles (settings.css) and unit tests for improved dependency verification (e.g., package-lock.json). It aims to enhance UI/UX responsiveness and ensure secure, consistent dependency handling.

Review Feedback

1. Syntax/Runtime Errors

  • Code appears well-formed with no syntax errors.
  • Transitions and transforms in the CSS file should work as expected. However, thorough UI testing is recommended to ensure visual integrity across browsers.

2. Security and Safety Concerns

  • Good focus on dependency validation, particularly with package-lock.test.js. Validating integrity and versioning provides strong safeguards for package security.
  • Suggestion: Consider adding a test that explicitly checks for known insecure dependency versions using a tool like npm audit.

3. **Performance and

@supervoidcoder
Copy link
Member

/test pr

@github-actions
Copy link
Contributor

github-actions bot commented Oct 15, 2025

🎉 MEGA PR Test & Analysis Complete!

Hi @supervoidcoder! Your PR has been fully tested and analyzed! 🚀✨


🌍 Test Deployment

Live Preview: https://OmniBlocks.github.io/scratch-gui/supervoidcoder/210/


🧪 Test Results

ESLint: ❌ Found issues

  • Errors: 0
  • Warnings:

Unit Tests:

  • Total: 37 tests
  • ✅ Passed: 1
  • ❌ Failed:

Integration Tests:

  • Total: 37 tests
  • ✅ Passed:
  • ❌ Failed: 15

📄 Full test outputs available in artifacts


🔦 Performance Audit (Lighthouse)

✅ Audit completed successfully!

  • View detailed reports in workflow artifacts
  • Download the Lighthouse JSON files to see scores

What was checked:

  • 🚀 Performance metrics
  • ♿ Accessibility compliance
  • ✨ Best Practices
  • 🔍 SEO optimization

💡 Note: Lighthouse may find improvement opportunities - check artifacts for details!


📦 Bundle Size Analysis

Total Build Size: 136M

📦 Top 5 Largest JavaScript Files:

  • 20M - samples3.js
  • 20M - player/samples3.js
  • 13M - player/drumsamples.js
  • 13M - drumsamples.js
  • 9.5M - samples2.js

🎨 Top 5 Largest CSS Files:

  • No CSS files found (might be inlined in JS)

♿ Accessibility Testing

✅ Accessibility scan completed!


📊 Build Details


💡 Pro Tip: Only one build was needed for all these checks - saving CI/CD minutes! 🎯

@supervoidcoder supervoidcoder mentioned this pull request Oct 15, 2025
@supervoidcoder
Copy link
Member

/test pr

@github-actions
Copy link
Contributor

github-actions bot commented Oct 15, 2025

🎉 MEGA PR Test & Analysis Complete!

Hi @supervoidcoder! Your PR has been fully tested and analyzed! 🚀✨


🌍 Test Deployment

Live Preview: https://OmniBlocks.github.io/scratch-gui/supervoidcoder/210/


🧪 Test Results

ESLint: ❌ Found issues

  • Errors: 0
  • Warnings: 0

Unit Tests:

  • Total: 37 tests
  • ✅ Passed: 1
  • ❌ Failed: 0

Integration Tests:

  • Total: 37 tests
  • ✅ Passed: 0
  • ❌ Failed: 15
  • ⏭️ Skipped: 1

📄 Full test outputs available in artifacts


🔦 Performance Audit (Lighthouse)

✅ Audit completed successfully!

  • View detailed reports in workflow artifacts
  • Download the Lighthouse JSON files to see scores

What was checked:

  • 🚀 Performance metrics
  • ♿ Accessibility compliance
  • ✨ Best Practices
  • 🔍 SEO optimization

💡 Note: Lighthouse may find improvement opportunities - check artifacts for details!


📦 Bundle Size Analysis

Total Build Size: 136M

📦 Top 5 Largest JavaScript Files:

  • 20M - samples3.js
  • 20M - player/samples3.js
  • 13M - player/drumsamples.js
  • 13M - drumsamples.js
  • 9.5M - samples2.js

🎨 Top 5 Largest CSS Files:

  • No CSS files found (might be inlined in JS)

♿ Accessibility Testing

✅ Accessibility scan completed!


📊 Build Details


💡 Pro Tip: Only one build was needed for all these checks - saving CI/CD minutes! 🎯

@supervoidcoder
Copy link
Member

/test pr

@ampelectrecuted ampelectrecuted removed Medium-Priority High-Priority Needs immediate attention, security Regarding security issue build-failure possible-duplicate The issue is a potential duplicate of another. sweep Amazon Q developer agent Vibe code tool. Amazon Q transform agent size/XS review-effort-1 Quick review (< 15 min) size/S review-effort-5 Complex review (> 2 hours) help wanted Extra hands appreciated upstream Stuff about upstream addon Related to addons tests Related to tests, especially CI tests ci Related to our GitHub Actions CI/CD workflows. Multi-IDE Project Part of the project's goal of multiple IDEs automated-test console-error recorded-actions chaos-testing labels Jan 2, 2026
@coderabbitai coderabbitai bot mentioned this pull request Jan 2, 2026
@ampelectrecuted ampelectrecuted added the bug Something isn't working label Jan 2, 2026
@github-actions
Copy link
Contributor

🕐 Stale PR Reminder

Hey @8to16! 🌟 Just popping in to remind you about PR #210 – the revamp of svc's addons page! It’s looking super exciting, but I noticed it’s been a week since the last update. If you’re facing any roadblocks or just need a helping hand, don’t hesitate to shout out! 🚀 We’re all here to help you bring that creative vision to life! Keep up the awesome work! 🎨✨


This is an automated friendly reminder. No pressure! 💙

@github-actions
Copy link
Contributor

🕐 Stale PR Reminder

Hey @8to16! 🌟 Just wanted to swing by and give a little nudge about your awesome PR #210, which aims to revamp the svc's addons page! It’s been 7 days since we last heard from you, and I'm super excited about what you're creating! 🚀

If you need any help or if something is blocking your progress, feel free to shout out! We're all here to support each other and can't wait to see the magic you’ll bring to the addons page! 🎨✨


This is an automated friendly reminder. No pressure! 💙

@github-actions
Copy link
Contributor

🕐 Stale PR Reminder

Hey @ampelectrecuted! 👋 This PR has been quiet for a while. Need any help getting it across the finish line? Feel free to ask! 🚀


This is an automated friendly reminder. No pressure! 💙

2 similar comments
@github-actions
Copy link
Contributor

github-actions bot commented Feb 2, 2026

🕐 Stale PR Reminder

Hey @ampelectrecuted! 👋 This PR has been quiet for a while. Need any help getting it across the finish line? Feel free to ask! 🚀


This is an automated friendly reminder. No pressure! 💙

@github-actions
Copy link
Contributor

github-actions bot commented Feb 9, 2026

🕐 Stale PR Reminder

Hey @ampelectrecuted! 👋 This PR has been quiet for a while. Need any help getting it across the finish line? Feel free to ask! 🚀


This is an automated friendly reminder. No pressure! 💙

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

Labels

bug Something isn't working review-effort-3 Standard review (30-60 min) size/XL

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants