BSK-0014 analyze

Explicit Any annotation

Emitted as a Warning when a function parameter or return annotation is written as Any (from typing). Any silences all type checking for the annotated value and should be used only when intentional.

This is an opinionated strictness nudge, not a type-system requirement: the typing spec treats Any as a fully valid type. It is therefore a distinct (user-suppressible) code from the genuine return-type-mismatch error (returns_compatibility); the two used to share a code, so a user could not silence the style nudge while keeping the real type check. BSK-0014 itself is never disabled for PEP conformance — like every rule it runs fully enabled during scoring; there is no "spec-conformance mode" that turns it off. See CHKARCH-CONFORMANCE-MODE.

from typing import Any

def greet(name: Any) -> str: ...  # BSK-0014 — parameter `name` is annotated Any
def parse(text: str) -> Any: ...  # BSK-0014 — return annotation is Any

def greet(name: str) -> str: ...  # NO warning — concrete types

Real basilisk check output

What you see when BSK-0014 fires on a minimal example:

basilisk check output reporting BSK-0014 — Explicit `Any` annotation

How to handle it

This Basilisk-specific rule is off by default. Enable its style tag when the policy fits your project, then configure its severity globally or per path in pyproject.toml.

Canonical URL: https://www.basilisk-python.dev/errors/BSK-0014