-
Notifications
You must be signed in to change notification settings - Fork 96
Schema coverage #3519
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Schema coverage #3519
Conversation
👋 Don't forget to add an individual reviewer (in addition to those auto-added), as this will create a task for them in Asana.
👉 Please mark this as DRAFT unless there's an intention to merge this immediately. |
Generated file outputs:Time updated: Thu, 31 Jul 2025 10:29:33 GMT legacy29 files identical
latest14 files identical
|
🔴 BETA JSON approval analysis:Time updated: Thu, 31 Jul 2025 10:29:33 GMT latest🎯 OVERALL APPROVAL STATUS✅ AUTO-APPROVED |
} | ||
|
||
// Run the analysis | ||
if (import.meta.url === `file://${process.argv[1]}`) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bug: Script Execution Check Fails with Relative Paths
The condition import.meta.url ===
file://${process.argv[1]}``, intended to check for direct script execution, fails because import.meta.url
is an absolute file URL while `process.argv[1]` can be a relative path. This prevents the script's main `analyzeSchemaCoverage()` function from running when executed with a relative path (e.g., `node scripts/schema-coverage-report.mjs`) or via an npm script.
Locations (1)
if (override.features) { | ||
for (const featureName of Object.keys(override.features)) { | ||
// Convert camelCase to kebab-case for matching | ||
const kebabName = camelToKebab(featureName); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bug: PascalCase Strings Incorrectly Prefixed
The camelToKebab
function incorrectly adds a leading dash to PascalCase strings (e.g., "SomeFeature" becomes "-some-feature"). This causes getPlatformSpecificFeatures
to store platform-specific feature names with an incorrect leading dash in its internal map. As feature names extracted from JSON and schema files do not have this leading dash, it results in mismatches and inaccurate detection of platform-specific features.
Asana Task/Github Issue:
Description
Adds a basic report
npm run schema-coverage
that we can use to prioritise schema writing need/risk.Not enforced and intended to be short lived poorly written script.
Feature change process:
Site breakage mitigation process:
Brief explanation