Skip to content

Preserve Unicode attachment metadata on S3 uploads (JVNAUTOSCI-2737) - #607

Merged
witbrock merged 1 commit into
mainfrom
task/JVNAUTOSCI-2737-unicode-attachment-metadata
Sep 11, 2026
Merged

witbrock merged 1 commit into
mainfrom
task/JVNAUTOSCI-2737-unicode-attachment-metadata

Conversation

@witbrock

Copy link
Copy Markdown
Member

S3 rejected native Jira attachment uploads when original filenames contained curly quotes or en dashes. The bytes remained in retained Jira originals, but the native task attachments lacked file bindings.

Encode non-ASCII metadata values as RFC 2047 on the S3 transport boundary, following S3's metadata contract. Preserve the exact original values in canonical file metadata and the returned BlobRef. The shared path covers byte and streamed-file uploads; ASCII values and existing key normalisation are unchanged.

Validation: 37 targeted blob-store and file-ingestion tests passed, including real Botocore metadata validation, Unicode round-trip and long-value coverage. No new Ruff findings. Both affected live attachments were recovered from retained originals; canonical read-back preserved native attachment identities and matched the original source SHA-256 values with Jira credentials disabled. Captured source data and audit artefacts are outside Git.

Merge decision: ready, subject to required CI. This repairs the observed upload failure; estate import, source reconciliation, paired restore and project writer cutover remain in progress under JVNAUTOSCI-2737.

@witbrock
witbrock merged commit fed9b98 into main Sep 11, 2026
2 checks passed
@witbrock
witbrock deleted the task/JVNAUTOSCI-2737-unicode-attachment-metadata branch September 11, 2026 02:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant