docs: P-024 security audit profile — external tools + SARIF, reject own scanner engine - #169
Conversation
…wn scanner engine Records the design-discussion verdict on the Own.SecurityChecks idea: do not build a custom security scanner engine (own YAML detection DSL, HTTP/SSH/DB modules, NASL/OpenVAS/Nessus export) — it duplicates Nuclei/ testssl.sh/ZAP/Trivy and violates the audit charter in Plan.md (orchestrator-not-analyzer, no regex heuristics, take ready tools). Instead: a security profile for the existing audit fleet — tool-run manifests + thin raw→SARIF adapters (v0.1), a typed .NET config analyzer as the only own-code niche (v0.2, no-regex-first policy), cross-tool correlation reusing the oracle scorer (v0.3). Non-goals section pins the rejected engine so it is not re-proposed. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0113xowoaqfUnPEXxxi15Gpm
📝 WalkthroughWalkthroughThis PR adds a new documentation proposal (P-023) describing a security audit profile approach based on external tools and SARIF adapters, including versioned scope (v0.1–v0.3), non-goals, a manifest sketch, and open questions. The proposals index is updated with a corresponding draft entry. ChangesSecurity Audit Profile Proposal
Estimated code review effort: 1 (Trivial) | ~5 minutes Related PRs: None identified. Suggested labels: documentation, proposal Suggested reviewers: None identified. Poem: 🚥 Pre-merge checks | ✅ 4✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/proposals/P-023-security-audit-profile.md`:
- Around line 167-174: The fenced manifest example in the proposal document is
missing a language label, which triggers markdownlint MD040 and reduces
readability. Update the opening fence for the directory listing snippet to
include an explicit label such as yaml or text, keeping the example content
unchanged so the snippet is properly recognized by markdown tooling.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: b7328ce2-cf28-4ec8-bb2c-1f3d0f4f869e
📒 Files selected for processing (2)
docs/proposals/P-023-security-audit-profile.mddocs/proposals/README.md
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 885c63f67e
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…et scan CodeRabbit: the audit/security layout snippet used a bare code fence. Codex: 'dotnet list package --vulnerable' skips transitively-pulled vulnerable packages by default; the v0.1 fleet entry now pins --include-transitive so the profile can't report clean while shipping a vulnerable transitive dependency. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0113xowoaqfUnPEXxxi15Gpm
PR #171 (architecture guard, Own.Arch) merged to main first and took P-023; the security audit profile proposal moves to the next free number. Index row re-linked accordingly. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0113xowoaqfUnPEXxxi15Gpm
Что и зачем
Фиксирует вердикт дизайн-обсуждения по идее Own.SecurityChecks: собственный scanner engine (свой YAML detection DSL, модули HTTP/SSH/DB, экспорт в NASL/OpenVAS/Nessus) не строим — это дубль Nuclei/testssl.sh/ZAP/Trivy и нарушение устава аудита из
Plan.md(оркестратор-не-анализатор, запрет regex-эвристик, «берём готовое»). Вместо этого — proposal P-024 (изначально P-023; номер занял смёрженный раньше PR #171 с architecture guard): security-профиль для существующего аудит-флота (tool-run manifests + тонкие raw→SARIF адаптеры в v0.1, typed .NET config analyzer как единственная ниша собственного кода в v0.2, cross-tool correlation через oracle-скорер в v0.3). Секция Non-goals прибивает отклонённый движок, чтобы его не переизобрели.Тип изменения
Как проверено
Docs-only изменение (новый proposal + строка в индексе), рантайм-поверхности нет.
ruff+mypy, codegen fuzz, golden C#, validate contribution format)python tests/run_tests.pyruff check .иmypypython scripts/<...>.py --selftest)Связанные issue
Нет. Контекст:
Plan.md(аудит-оркестратор),audit/README.md(OwnAudit-split).Чеклист
validate_contrib.pydocs/proposals/README.mdдополнен строкой P-024)docs:)🤖 Generated with Claude Code
https://claude.ai/code/session_0113xowoaqfUnPEXxxi15Gpm