posthog 7.73.1
- Source
- https://github.com/posthog/posthog-python
- Tag scanned
posthog-v7.73.1- Compared with
posthog-v7.73.0(0 signals introduced since)- Files
- 430 scanned, 278 skipped (binary, oversized, or unrecognised)
- Signals
- 0 critical · 0 warn · 10 info
- Scan time
- 9.6 s
- LLM review
- Reviewed by claude-haiku-5-5 (Anthropic): 9 of 9 warn and critical signals; 9 demoted to info.
- Disclude version
- 4.0.0
- Scanned (UTC)
- 2026-10-21 10:41
Signals
Ordered by severity, then signals introduced in this release. Hidden characters are shown as ⟨U+…⟩.
-
return return flikely benign A calculator tool in an agent example evaluates a math expression with eval after replacing ^ with **.Reasoning
eval runs on an expression that is first filtered for invalid characters, which narrows the input, but eval on agent-supplied text is still a code-injection risk if the filter is incomplete. It is an example calculator, not a dropper or hidden payload.
-
info
warn→ info by reviewdynamic-executionexamples/example-ai-openai-agents/single_agent.py:29:23return return flikely benign A single-agent calculator example evaluates a math expression with eval after a character check.Reasoning
Same calculator pattern as multi_agent.py, with the same character filter before eval. It is a demo of tool use and has no hidden or encoded logic, but the eval is still a risky pattern to copy.
-
= += 1dismissed Walks the call stack with sys._getframe to collect frames for exception reports.Reasoning
sys._getframe is used in a loop that walks stack frames for exception reporting, a standard technique in error-tracking libraries. It has no network, execution, or hidden behavior.
-
) = # Encode side: our output is byte-identical to the shared wire format.likely benign A base64 test fixture encoding a session token for a wire-format round-trip test.Reasoning
The string decodes to a small JSON object with session and version fields, used as a fixed test vector for a wire format. It is a test fixture, not an obfuscated payload.
-
# zlib header =dismissed Test code decompresses the zlib body of a captured request to assert the API key is not leaked.Reasoning
The test decompresses a zlib payload it just captured from its own client call to check that the api_key is absent. This is ordinary test verification of the library's own output.
-
= returndismissed Test helper gunzips a mocked request body to parse its JSON for assertions.Reasoning
The test helper gunzips the request body that the client sent to a mock, then parses the JSON for assertions. This is normal test plumbing.
-
=dismissed Test gunzips captured request data to verify its batch and API key contents.Reasoning
The test gunzips the request data it captured and checks the batch and api_key fields. This is ordinary verification of the client's own compressed output.
-
info
warn→ info by reviewdecoder-decompress-payloadposthog/test/tracing/test_client_traces.py:60:23, = return , ,dismissed Test helper gunzips a mocked POST body to inspect the sent trace payload.Reasoning
The helper gunzips the body from a mocked session.post call so the trace test can inspect it. The decompression operates on data the test itself generated.
-
assert == assert ==dismissed Transport test gunzips a mocked request body and compares it to the expected payload.Reasoning
The transport test gunzips the mocked request body and compares it to the expected payload. This is standard test verification with no runtime payload execution.
-
class posthog.client.Client(project_api_key: str, host=None, debug=False, max_queue_size=10000, send=True, on_error=None, flush_at=100, flush_interval=5.0, gzip=False, max_retries=3, sync_mode=False, timeout=15, thread=1, poll_interval=30, personal_api_key=None, disabled=False, disable_geoip=True, is_server=True, histo
Reproduce This Scan
Run disclude locally to verify. Add --format sarif for SARIF output. Add --llm (with an API key in the environment) to include the LLM review.
&&