[Phase A] Ruff baseline (warning-only) — Python linting (#548)
* ci: add Ruff baseline (warning-only) — Phase A Introduce Ruff as the Python linter in non-blocking (Phase A) mode per the DevSecOps Guardrails epic. - Add pyproject.toml with [tool.ruff]: line-length 100, py312, rule subset E/F/I, and excludes for vendored/generated/archived paths. - Add non-blocking Lint workflow (.github/workflows/lint.yml) that emits GitHub annotations and a step summary; continue-on-error so it never fails the build. - Document the baseline (1235 violations, counts by rule) and local usage in docs/devsecops/ruff-baseline.md. No violations are fixed (Phase B) or enforced (Phase C) in this change. Closes #540 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * ci: make Ruff job check green in Phase A (step-level continue-on-error) Move continue-on-error to the ruff check step so the job concludes success and the check appears green (warning-only), while still emitting annotations and the statistics step summary. Keeps the job non-blocking as intended for Phase A. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>