-
Notifications
You must be signed in to change notification settings - Fork 1
Refactor: Update workflows to use new streamlined build system #3
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
Conversation
- Replace build.sh with build-new.sh in all workflows - New build system is faster, cleaner, and more maintainable - Uses unified build script from cortexide/scripts/build.sh - Reduces complexity from 2900+ lines to ~200 lines
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.
This PR is being reviewed by Cursor Bugbot
Details
You are on the Bugbot Free tier. On this plan, Bugbot will review limited PRs each billing cycle.
To receive Bugbot reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial.
|
|
||
| # Check if dpkg-deb is available | ||
| if ! command -v dpkg-deb &> /dev/null; then | ||
| log_warning "dpkg-deb not found, skipping DEB creation" |
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: Missing log_warning function in packaging scripts
The packaging scripts call log_warning() but only define log_info, log_success, and log_error functions. When conditions like missing dpkg-deb, hdiutil, or zip commands are encountered, the scripts will fail with "command not found: log_warning" instead of gracefully handling the optional dependencies.
Additional Locations (2)
| log_info "Step 4: Releasing to GitHub..." | ||
|
|
||
| # Check for GitHub token | ||
| if [[ -z "${GITHUB_TOKEN}" ]] && [[ -z "${RELEASE_GITHUB_TOKEN}" ]]; then |
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: Unbound variable causes crash before token check
The script uses set -u (strict mode for unset variables) but checks ${GITHUB_TOKEN} and ${RELEASE_GITHUB_TOKEN} without default values. When these environment variables are unset, bash will crash with an "unbound variable" error before the friendly error message on line 243 can be displayed. The variables need to use the :- syntax like ${GITHUB_TOKEN:-} to handle unset variables gracefully.
|
|
||
| ```bash | ||
| # Navigate to cortexide directory | ||
| cd /Users/tajudeentajudeen/CodeBase/cortexide/cortexide |
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: Developer's local file paths accidentally committed
The documentation contains hardcoded personal file paths (/Users/tajudeentajudeen/CodeBase/cortexide/...) throughout the file. These developer-specific paths appear in multiple code examples and are not useful for other contributors. The paths appear on lines 34, 49, 74, 94, 113, 134, 182, 268-269, 277, 320, 330, 334, and 391.
| const existing = document.querySelector('link[href*="' + cssFileName + '"]'); | ||
| if (!existing) { | ||
| document.head.appendChild(link); | ||
| } |
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: CSS duplicate detection uses flawed filename-only matching
The CSS duplicate detection uses document.querySelector('link[href*="' + cssFileName + '"]') with substring matching on just the filename extracted via split('/').pop(). This incorrectly prevents loading CSS files that share the same filename but are in different directories. For example, if both ./components/button.css and ./utils/button.css are imported, only the first will be loaded because the selector [href*="button.css"] matches any link containing that substring.
Note
Updates CI to use
./build-new.sh, introduces a unified build/release pipeline with platform packaging scripts, and adds a CSS import transformer in the optimizer.stable-{linux|macos|windows}.ymlto run./build-new.shinstead of./build.sh.build-new.sh(builder orchestrator) andrelease-new.sh(end-to-end release).build/osx/package.sh,build/linux/package.sh,build/windows/package.sh.BUILD_SYSTEM.md,CHANGELOG_BUILD_SYSTEM.md,HOW_TO_BUILD_AND_RELEASE.md,README_NEW_BUILD.mddescribing the new system.vscode/build/lib/optimize.jsto transform CSSimportstatements into runtime<link>injection to avoid MIME-type issues.Written by Cursor Bugbot for commit ffbe772. This will update automatically on new commits. Configure here.