Skip to content

fix: make main CI green (lint, tests, vscode, react, pip-audit)#31

Merged
fraware merged 10 commits into
mainfrom
fix/ci-main-green
Jul 21, 2026
Merged

fix: make main CI green (lint, tests, vscode, react, pip-audit)#31
fraware merged 10 commits into
mainfrom
fix/ci-main-green

Conversation

@fraware

@fraware fraware commented Jul 21, 2026

Copy link
Copy Markdown
Member

Summary

  • Fix C# AST worker CS8803 (local function after type declaration) that broke csharp-ast tests when a .NET SDK is present
  • Replace str | None with Optional[str] in Typer command signatures so Python 3.9 can register the CLI
  • Ruff-format files that failed ruff format --check
  • Fix React dashboard unused user lint error
  • Commit js_ast/vscode package lockfiles (were blocked by *.json gitignore) for multilang-smoke and vscode cache
  • Run pip-audit on uv export --no-emit-project so --strict does not fail on the local editable package

Test plan

  • CI/CD Pipeline green on this PR (lint, test matrix, vscode, react-example, multilang-smoke)
  • Security / pip-audit green
  • Merge to main and confirm main branch checks are green

fraware added 6 commits July 20, 2026 23:54
IsKeywordCallee must precede BodyVisitor in a top-level program (CS8803), which was failing csharp-ast tests whenever a .NET SDK was present.
Typer evaluates annotations at registration; str | None raises TypeError on 3.9 and broke scan/tour_run.
CI multilang-smoke and vscode cache need these committed; add gitignore exceptions.
@cursor

cursor Bot commented Jul 21, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@github-actions

Copy link
Copy Markdown

Understand-First PR map delta

Metric Value
Functions added 0
Functions removed 0
Functions modified 0
Complexity net change +0
Complexity total (base → head) 6206 → 6206
Side-effect tag adds (heuristic) 0
Policy breaches 0

Complexity increases

None
Generated by u scan + u diff --old/--new (Python AST + JS/TS best-effort when present).
Complexity: McCabe for Python; keyword-heuristic for JS/TS — mixed totals are not uniform McCabe.
Side effects are Python AST heuristics when present; JS maps typically omit them.
PR comment step is fail-soft; scan/diff above are fail-closed.

…scope.

Move IsKeywordCallee into AstHelpers so BodyVisitor can call it; pass one --seed per changed file in tour gate; noqa UP045 for Typer Optional on 3.9; audit dev+analyzers extras only.
@github-actions

Copy link
Copy Markdown

Understand-First PR map delta

Metric Value
Functions added 1
Functions removed 0
Functions modified 2
Complexity net change +1
Complexity total (base → head) 6206 → 6207
Side-effect tag adds (heuristic) 0
Policy breaches 1

Complexity increases

  • cli/ucli/analyzers/csharp_ast_bridge:run_csharp_ast_worker: 33 → 34
  • cli/ucli/analyzers/csharp_ast/Program:AstHelpers.IsKeywordCallee: 0 → 1

Policy breaches

  • cli/ucli/analyzers/csharp_ast_bridge:run_csharp_ast_worker: 33 → 34 (threshold 5)
    Generated by u scan + u diff --old/--new (Python AST + JS/TS best-effort when present).
    Complexity: McCabe for Python; keyword-heuristic for JS/TS — mixed totals are not uniform McCabe.
    Side effects are Python AST heuristics when present; JS maps typically omit them.
    PR comment step is fail-soft; scan/diff above are fail-closed.

Install javalang for pyright; always seed tour_run with hot_path.py; audit frozen production deps without the local package.
@github-actions

Copy link
Copy Markdown

Understand-First PR map delta

Metric Value
Functions added 1
Functions removed 0
Functions modified 2
Complexity net change +1
Complexity total (base → head) 6206 → 6207
Side-effect tag adds (heuristic) 0
Policy breaches 1

Complexity increases

  • cli/ucli/analyzers/csharp_ast_bridge:run_csharp_ast_worker: 33 → 34
  • cli/ucli/analyzers/csharp_ast/Program:AstHelpers.IsKeywordCallee: 0 → 1

Policy breaches

  • cli/ucli/analyzers/csharp_ast_bridge:run_csharp_ast_worker: 33 → 34 (threshold 5)
    Generated by u scan + u diff --old/--new (Python AST + JS/TS best-effort when present).
    Complexity: McCabe for Python; keyword-heuristic for JS/TS — mixed totals are not uniform McCabe.
    Side effects are Python AST heuristics when present; JS maps typically omit them.
    PR comment step is fail-soft; scan/diff above are fail-closed.

…-audit.

Lens seeds must omit .py (qnames use path without suffix). Pin click 8.3.3 and pydantic-settings 2.14.2 to clear production CVEs.
@github-actions

Copy link
Copy Markdown

Understand-First PR map delta

Metric Value
Functions added 1
Functions removed 0
Functions modified 2
Complexity net change +1
Complexity total (base → head) 6206 → 6207
Side-effect tag adds (heuristic) 0
Policy breaches 1

Complexity increases

  • cli/ucli/analyzers/csharp_ast_bridge:run_csharp_ast_worker: 33 → 34
  • cli/ucli/analyzers/csharp_ast/Program:AstHelpers.IsKeywordCallee: 0 → 1

Policy breaches

  • cli/ucli/analyzers/csharp_ast_bridge:run_csharp_ast_worker: 33 → 34 (threshold 5)
    Generated by u scan + u diff --old/--new (Python AST + JS/TS best-effort when present).
    Complexity: McCabe for Python; keyword-heuristic for JS/TS — mixed totals are not uniform McCabe.
    Side effects are Python AST heuristics when present; JS maps typically omit them.
    PR comment step is fail-soft; scan/diff above are fail-closed.

@github-actions

Copy link
Copy Markdown

Understand-First PR map delta

Metric Value
Functions added 1
Functions removed 0
Functions modified 2
Complexity net change +1
Complexity total (base → head) 6206 → 6207
Side-effect tag adds (heuristic) 0
Policy breaches 1

Complexity increases

  • cli/ucli/analyzers/csharp_ast_bridge:run_csharp_ast_worker: 33 → 34
  • cli/ucli/analyzers/csharp_ast/Program:AstHelpers.IsKeywordCallee: 0 → 1

Policy breaches

  • cli/ucli/analyzers/csharp_ast_bridge:run_csharp_ast_worker: 33 → 34 (threshold 5)
    Generated by u scan + u diff --old/--new (Python AST + JS/TS best-effort when present).
    Complexity: McCabe for Python; keyword-heuristic for JS/TS — mixed totals are not uniform McCabe.
    Side effects are Python AST heuristics when present; JS maps typically omit them.
    PR comment step is fail-soft; scan/diff above are fail-closed.

@fraware
fraware merged commit 62fb5b0 into main Jul 21, 2026
20 checks passed
@fraware
fraware deleted the fix/ci-main-green branch July 21, 2026 07:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant