Task
Build `bug_bounty_validate(report)` returning `True` if all required fields are present and non-empty:
- Required keys: `"title"`, `"steps_to_reproduce"`, `"expected"`, `"actual"`, `"severity"`.
- A value is "present" if the key exists AND `bool(value)` is True (strips false-y blanks).
- Severity must be one of `{"P0", "P1", "P2", "P3"}`; anything else fails validation.
- Missing any required key OR invalid severity β return `False`.
- All checks pass β return `True`.
This is the intake gate every bug-bounty tracker runs before paying out.