-
Notifications
You must be signed in to change notification settings - Fork 336
hellovai/beps/exceptions #2759
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: canary
Are you sure you want to change the base?
hellovai/beps/exceptions #2759
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
✅ Latest build complete • View logs |
|
🐑 BEPs Preview Ready Preview URL: https://dj7ggjkp4tlhz.cloudfront.net/hellovai-beps-exceptions/ Commit: |
|
🐑 BEPs Preview Ready Preview URL: https://dj7ggjkp4tlhz.cloudfront.net/hellovai-beps-exceptions/ Commit: |
|
🐑 BEPs Preview Ready Preview URL: https://dj7ggjkp4tlhz.cloudfront.net/hellovai-beps-exceptions/ Commit: |
|
🐑 BEPs Preview Ready Preview URL: https://dj7ggjkp4tlhz.cloudfront.net/hellovai-beps-exceptions/ Commit: |
|
🐑 BEPs Preview Ready Preview URL: https://dj7ggjkp4tlhz.cloudfront.net/hellovai-beps-exceptions/ Commit: |
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.
| is_safe = False | ||
| elif stripped.startswith('- ') or stripped.startswith('* ') or stripped.startswith('+ '): # Unordered list | ||
| is_safe = False | ||
| elif stripped[0].isdigit() and '. ' in stripped[:5]: # Ordered list (heuristic) |
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 empty string guard causes potential IndexError
The code accesses stripped[0] without checking if stripped is non-empty, which can raise an IndexError. This happens when a line contains only Unicode whitespace characters (like non-breaking space \u00A0) that aren't regular space or tab - such lines pass the not line and line.startswith(' ') checks, but strip() results in an empty string. The similar check at line 247 correctly guards with next_stripped and next_stripped[0].isdigit(), but line 210 is missing this guard.
| pass | ||
| else: | ||
| # Context line (starts with space) | ||
| current_new_line += 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: Diff parser mishandles "No newline" markers causing offset
The else branch in _parse_unified_diff assumes any unmatched line is a context line and increments current_new_line. However, unified diffs can contain \ No newline at end of file markers that start with \, not space. These markers are not actual lines in the file, so incrementing the counter for them causes all subsequent line numbers to be off by one. The code comment says "Context line (starts with space)" but doesn't actually check for that prefix.
|
🐑 BEPs Preview Ready Preview URL: https://dj7ggjkp4tlhz.cloudfront.net/hellovai-beps-exceptions/ Commit: |
|
🐑 BEPs Preview Ready Preview URL: https://dj7ggjkp4tlhz.cloudfront.net/hellovai-beps-exceptions/ Commit: |
| summaries = [] | ||
| # Canary Summary | ||
| c_canary = len(parsed_canary["added"]) + len(parsed_canary["removed"]) | ||
| c_canary = len(parsed_canary) |
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 HTML escaping for commit subjects in output
Commit subjects from c['subject'] are inserted directly into HTML option elements without escaping. If a commit message contains characters like <, >, &, or ", this could produce malformed HTML output that breaks the dropdown rendering. The previous code only used static option labels without commit subjects, so this is a new issue introduced by this change.
|
🐑 BEPs Preview Ready Preview URL: https://dj7ggjkp4tlhz.cloudfront.net/hellovai-beps-exceptions/ Commit: |
|
|
||
| # Read the actual file content | ||
| file_path = Path("docs/proposals/BEP-001-exceptions/context/go.md") | ||
| with open(file_path, "r") as f: |
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: Debug script references deleted file path
This debug script references docs/proposals/BEP-001-exceptions/context/go.md, but this file was deleted in the same commit. The script will crash with FileNotFoundError when executed. This appears to be a development debugging tool that was accidentally committed alongside the production code changes.
|
🐑 BEPs Preview Ready Preview URL: https://dj7ggjkp4tlhz.cloudfront.net/hellovai-beps-exceptions/ Commit: |
|
🐑 BEPs Preview Ready Preview URL: https://dj7ggjkp4tlhz.cloudfront.net/hellovai-beps-exceptions/ Commit: |
|
🐑 BEPs Preview Ready Preview URL: https://dj7ggjkp4tlhz.cloudfront.net/hellovai-beps-exceptions/ Commit: |
| - name: Fetch base branch history | ||
| run: | | ||
| git fetch --depth=500 origin canary | ||
| - name: Fetch canary ref |
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: Shallow clone breaks git history lookup in check script
The removal of fetch-depth: 0 from the check-beps job causes a shallow clone (depth 1 by default). The update_bep_readme.py --check script runs git log {canary_ref}..HEAD to determine file modification dates, which requires commit history between canary and HEAD. With a shallow clone, this history is unavailable, causing the script to incorrectly return "TBD" for last_modified dates instead of actual values, leading to potential check failures or inconsistent behavior between CI and local development.
| env: beps-canary | ||
|
|
||
| - name: Install uv | ||
| uses: astral-sh/setup-uv@v5 |
Check warning
Code scanning / CodeQL
Unpinned tag for a non-immutable Action in workflow Medium
Uses Step
| run: git fetch origin canary | ||
|
|
||
| - name: Install uv | ||
| uses: astral-sh/setup-uv@v5 |
Check warning
Code scanning / CodeQL
Unpinned tag for a non-immutable Action in workflow Medium
Uses Step
|
🐑 BEPs Preview Ready Preview URL: https://dj7ggjkp4tlhz.cloudfront.net/hellovai-beps-exceptions/ Commit: |
|
🐑 BEPs Preview Ready Preview URL: https://dj7ggjkp4tlhz.cloudfront.net/hellovai-beps-exceptions/ Commit: |
Note
Adds comprehensive BEP-001/002 docs, introduces MkDocs diff/TOC/nav enhancements, and updates CI to send Slack notifications with canary-aware indexing.
canaryand recent commits, adds nav change indicators, and a compare dropdown with summaries.canaryexplicitly and posts Slack notifications for canary and preview deployments using generated payloads.summarize_changes.py: Summarizes BEP deltas and builds Slack Block Kit payloads.update_bep_readme.py: Canary-aware dates, TBD handling, stricter metadata; regenerates README table.mise.toml(Node 22, tools).Written by Cursor Bugbot for commit cd9a6cd. This will update automatically on new commits. Configure here.