The shared workflow obsidian-plugin-ci.yml@v1 no longer defines the
skip-sonar input or the SONAR_TOKEN secret, which made the caller
workflow invalid ("Invalid input/secret ... is not defined in the
referenced workflow"). Remove both so the workflow validates again.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DwioG4CNKUBuKiZdowLFWe
* ci: use shared obsidian plugin workflow and update obsidian version
* Add quality gate status badge to README
Added a quality gate status badge to the README.
* refactor: address SonarCloud issues and reduce code duplication
---------
Co-authored-by: ClaudiaFang <tianyao.firstsun@gmail.coim>
This commit consolidates several improvements to satisfy SonarCloud Quality Gate and enhance the overall plugin stability:
- Code Quality & Refactoring:
- Reduced duplication to 0% by refactoring SyncManager and SyncStatusView.
- Implemented centralized 'processBatch' logic for multi-file sync operations.
- Fixed security hotspots by replacing legacy atob/btoa with Buffer.
- Added memory safety limits to the diff algorithm to prevent DoS.
- Test Coverage & Reliability:
- Improved SyncManager coverage to 81.8% and GitignoreManager to 92.8%.
- Added comprehensive unit tests for batch operations and complex .gitignore patterns.
- Resolved all ESLint 'unsafe-member-access' and 'unbound-method' warnings in tests.
- Infrastructure & Metadata:
- Consolidated GitHub Actions into a single optimized 'ci.yml' using latest versions (v6-v8).
- Synchronized manifest.json and versions.json to v1.1.0.
- Fixed workflow permission issues identified by CodeQL.
Remove individual files (main.js, manifest.json, styles.css) from
release assets and build artifacts. Only keep the zip package.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Create zip file with format: git-files-push-{version}-{branch}.zip
for feature branch builds.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Update Node.js version from 20 to 22 to meet semantic-release
dependency requirements (requires Node.js 22.14.0+ or 24.10.0+).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Update Node.js version from 18 to 20 in all GitHub Actions workflows
to meet dependency requirements. This fixes CI failures caused by
packages requiring Node.js 20+.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>