fix: repair CLI crashes, unify schema v2, add normalization pipeline and expanded tests (v1.1.0) - #1
Open
uthumany wants to merge 2 commits into
Open
fix: repair CLI crashes, unify schema v2, add normalization pipeline and expanded tests (v1.1.0)#1uthumany wants to merge 2 commits into
uthumany wants to merge 2 commits into
Conversation
… add normalization pipeline and 31 tests
- fix(stats): read breakdown.byType/bySource/topCategories shape the CLI expects
- fix(export): import correct exporter functions (toJson/toCsv/toMarkdown)
- fix(getSvgPath): use verified local_path from schema v2; null for remote icons
- fix(search): cap relevance at 100; add tag/offset filters
- fix(cli): reject negative counts, handle --version/-v boolean flags, TTY-gated ANSI
- fix(loader): load normalized schema-v2 database, add clearCache/getSvgDir
- fix(stats): unique ids, correct pack counting, sources field
- feat(normalize): 10-stage idempotent pipeline (scripts/normalize-data.js, docs/PIPELINE.md)
* 874 duplicate SVGs removed (5237 -> 4363), 284 name mismatches flagged,
12 names self-corrected, 4 correction collisions removed, 9800+ tags generated
- feat(api): filterByTag, listSources, input validation, Fisher-Yates shuffle
- test: expand suite 14 -> 45 (schema contracts, exporter, CLI subprocess)
- docs: fix README overclaims, uthuman -> uthumany, THIRD_PARTY_NOTICES.md,
CHANGELOG v1.1.0; bump version to 1.1.0
|
Important Review available on request
Reviews should be triggered manually for repositories with fewer than 10 stars. Select Trigger review above or comment ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 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. Comment |
| function cliSafe(...args) { | ||
| const { execSync: nodeExecSync } = require('node:child_process'); | ||
| try { | ||
| const stdout = nodeExecSync(`${nodeBin} ${CLI} ${args.join(' ')}`, { |
…ance - Add 3-job pipeline: Security Gates (dependency review, npm audit --audit-level=high, dependency-tree lint), Build & Verify (lint, tests, rebuild normalized data, release-tag vs package.json version guard, tarball content inspection), Publish (npm publish --provenance) - Pin all actions to full commit SHAs (checkout v4.4.0, setup-node v4.4.0, dependency-review-action v4.9.0) - Add workflow_dispatch for manual retry; concurrency group per release - Least-privilege permissions: contents read + id-token write only - Add .github/dependabot.yml: weekly npm + github-actions updates
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Implements the prioritized fixes from the repository review:
Bug fixes
statsandexportCLI commands no longer crashgetSvgPath()now resolves to verified bundled files (null for remote-only icons)--version/-v handled correctly; ANSI colors only on TTYsData quality
npm run normalize): 874 duplicate SVGs removed, 284 name-file mismatches flagged, 12 wrong names self-corrected, 9,800+ tags generatedTesting & docs
Local verification:
npm test45/45 pass,npm run lint0 errors, pipeline run clean (9,810 icons).