Skip to content

fix(releases): validate artifact manifest JSON shape - #129620

Draft
sentry-junior[bot] wants to merge 1 commit into
josh/typing-strict-types-onlyfrom
josh/typing-stack/releasefile-manifest-shape
Draft

sentry-junior[bot] wants to merge 1 commit into
josh/typing-strict-types-onlyfrom
josh/typing-stack/releasefile-manifest-shape

Conversation

@sentry-junior

@sentry-junior sentry-junior Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

Stacked on #129614 (strict mypy, types only). This is #129432 rebased onto it so the fix lands after the typing PR.

The release archive manifest and the artifact index are user-uploaded JSON. Check that the decoded value is an object at the boundary: in _read_manifest, _ArtifactIndexGuard.readable_data, and writable_data, plus the manifest files entry. A malformed manifest now raises ValueError with a clear message instead of failing later with AttributeError or TypeError.

Tests: test_manifest_must_be_a_json_object, test_manifest_files_must_be_a_json_object.

via @joshuarli.

--

View Session [Sentry]

@github-actions github-actions Bot added the Scope: Backend Automatically applied to PRs that change backend components label Nov 3, 2026
@sentry-junior
sentry-junior Bot force-pushed the josh/typing-strict-types-only branch from 9fda5d0 to 73fa505 Compare November 3, 2026 00:31
@sentry-junior
sentry-junior Bot force-pushed the josh/typing-stack/releasefile-manifest-shape branch from 559a481 to 3257c93 Compare November 3, 2026 00:34
@sentry-junior
sentry-junior Bot force-pushed the josh/typing-stack/releasefile-manifest-shape branch from 3257c93 to 74e37f3 Compare November 3, 2026 12:02

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Scope: Backend Automatically applied to PRs that change backend components

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant