Skip to content

chore: regenerate custom-elements.json from source#169

Merged
himerus merged 2 commits intodevfrom
fix/regenerate-cem
Mar 21, 2026
Merged

chore: regenerate custom-elements.json from source#169
himerus merged 2 commits intodevfrom
fix/regenerate-cem

Conversation

@himerus
Copy link
Contributor

@himerus himerus commented Mar 21, 2026

Summary

  • CEM was stale — regenerate to fix the cem-validate CI check that's been failing on every PR
  • Updates manifest to reflect all recent handler and tool additions

Test plan

  • pnpm run cem:generate succeeds
  • cem-validate CI should pass after this merges

🤖 Generated with Claude Code

Summary by CodeRabbit

  • New Features
    • Added comprehensive validation suite for web components covering accessibility usage, code quality, color contrast, composition patterns, and layout checks
    • Enhanced styling diagnostics including theme detection, design token analysis, and dark mode compatibility verification
    • Expanded component usage validation for imports, methods, attributes, and Shadow DOM patterns

CEM was stale — regenerate to fix cem-validate CI check.
This updates the manifest to reflect all recent handler
and tool additions.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@coderabbitai
Copy link

coderabbitai bot commented Mar 21, 2026

Warning

Rate limit exceeded

@himerus has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 16 minutes and 34 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: d306ac6e-28d2-42cd-96d1-75351367d5a3

📥 Commits

Reviewing files that changed from the base of the PR and between 31da64e and 2b3c382.

📒 Files selected for processing (1)
  • .changeset/regenerate-cem.md

Walkthrough

This PR adds a substantial number of new handler modules to the core package for validation and diagnostics, including checkers for accessibility, attributes, CSS properties, composition, events, methods, shadow DOM, slots, and theming. It also introduces a new styling tools module with dispatcher utilities and expands public API exports via updated manifest mappings.

Changes

Cohort / File(s) Summary
Accessibility & HTML Validation
packages/core/src/handlers/a11y-usage-checker.ts, packages/core/src/handlers/html-usage-checker.ts
Added handlers for checking accessibility usage patterns and HTML element validation in components.
Attribute & Composition Checkers
packages/core/src/handlers/attribute-conflict-checker.ts, packages/core/src/handlers/composition-checker.ts, packages/core/src/handlers/import-checker.ts
Added handlers for detecting attribute conflicts, composition patterns, and component import validation.
CSS & Style Validation
packages/core/src/handlers/css-api-resolver.ts, packages/core/src/handlers/css-var-checker.ts, packages/core/src/handlers/color-contrast-checker.ts, packages/core/src/handlers/layout-checker.ts, packages/core/src/handlers/specificity-checker.ts, packages/core/src/handlers/shorthand-checker.ts, packages/core/src/handlers/transition-checker.ts, packages/core/src/handlers/scope-checker.ts
Added multiple CSS validation handlers for variables, contrast, layout patterns, specificity, shorthand properties, animations, and scoping.
Shadow DOM & Event Validation
packages/core/src/handlers/shadow-dom-checker.ts, packages/core/src/handlers/shadow-dom-js-checker.ts, packages/core/src/handlers/event-usage-checker.ts, packages/core/src/handlers/method-checker.ts
Added handlers for shadow DOM usage detection, JavaScript interactions, event pattern checking, and method call validation.
Theme & Token Analysis
packages/core/src/handlers/theme-checker.ts, packages/core/src/handlers/theme-detection.ts, packages/core/src/handlers/token-fallback-checker.ts
Added handlers for theme compatibility checks, theme support detection, and token fallback validation.
Styling Diagnostics & Utilities
packages/core/src/handlers/styling-diagnostics.ts, packages/core/src/handlers/styling-preflight.ts, packages/core/src/handlers/suggest-fix.ts, packages/core/src/handlers/validation-summary.ts, packages/core/src/handlers/story.ts, packages/core/src/handlers/quick-ref.ts, packages/core/src/handlers/recommend-checks.ts, packages/core/src/handlers/code-validator.ts, packages/core/src/handlers/dependencies.ts, packages/core/src/handlers/suggest.ts
Added diagnostic and utility handlers for styling analysis, fix suggestions, validation summaries, story generation, component references, check recommendations, code validation, and dependency resolution.
Styling Tools & Helpers
packages/core/src/tools/styling.ts, packages/core/src/shared/mcp-helpers.ts
Added new styling tools module with tool definitions and dispatcher helpers; extended shared helpers with shadow DOM warning utilities.
Export Mappings
packages/core/src/handlers/index.ts, packages/core/src/index.ts
Updated manifest export mappings to declare all new handler modules and styling tools as part of the public API surface.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~50 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The description does not follow the provided template structure. Required sections like 'Type of change', 'Related issue', 'Tests added', and 'Checklist' are missing or incomplete. Update the description to use the template structure: add type of change, link related issue, confirm test status, and complete the provided checklist items.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main change: regenerating the custom-elements.json manifest file from source code.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/regenerate-cem

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.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy link

@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

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@custom-elements.json`:
- Around line 2791-2795: The parameter includeTransitive in the function located
in packages/core/src/handlers/dependencies.ts is declared without an explicit
type (currently "includeTransitive = true"); add an explicit boolean annotation
(change to includeTransitive: boolean = true) so the generated manifest includes
the type field, then regenerate the custom-elements.json manifest; reference the
includeTransitive parameter in that handler to locate the change.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 1d2c2f72-0219-42a6-914e-4fff9654d06b

📥 Commits

Reviewing files that changed from the base of the PR and between 73f9cac and 31da64e.

📒 Files selected for processing (1)
  • custom-elements.json

Comment on lines +2791 to +2795
{
"name": "includeTransitive",
"default": "true",
"description": "When true (default), resolves the full dep tree"
}
Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

echo '== source signature =='
rg -n -C2 --type ts 'getComponentDependencies\s*\(' packages/core/src/handlers/dependencies.ts

echo
echo '== generated manifest entry =='
rg -n -C2 '"includeTransitive"' custom-elements.json

Repository: bookedsolidtech/helixir

Length of output: 479


🏁 Script executed:

sed -n '90,110p' packages/core/src/handlers/dependencies.ts

Repository: bookedsolidtech/helixir

Length of output: 538


Type includeTransitive explicitly in source.

The includeTransitive parameter in packages/core/src/handlers/dependencies.ts (line 91) is declared as includeTransitive = true without an explicit type annotation. This causes the generated manifest to omit the type field, losing the boolean signature for downstream CEM consumers. Add an explicit : boolean annotation and regenerate the manifest.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@custom-elements.json` around lines 2791 - 2795, The parameter
includeTransitive in the function located in
packages/core/src/handlers/dependencies.ts is declared without an explicit type
(currently "includeTransitive = true"); add an explicit boolean annotation
(change to includeTransitive: boolean = true) so the generated manifest includes
the type field, then regenerate the custom-elements.json manifest; reference the
includeTransitive parameter in that handler to locate the change.

@himerus himerus merged commit 65084c8 into dev Mar 21, 2026
9 of 10 checks passed
himerus added a commit that referenced this pull request Mar 21, 2026
chore: promote dev → main (sprint PRs #169-171)
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