Skip to content

fix(presets): tolerate non-UTF-8 legacy commands - #3896

Open
marcelsafin wants to merge 1 commit into
github:mainfrom
marcelsafin:fix/preset-legacy-strategy-utf8
Open

fix(presets): tolerate non-UTF-8 legacy commands#3896
marcelsafin wants to merge 1 commit into
github:mainfrom
marcelsafin:fix/preset-legacy-strategy-utf8

Conversation

@marcelsafin

Copy link
Copy Markdown
Contributor

Summary

  • treat legacy command frontmatter decoding as best-effort
  • keep the default replace strategy when command content is not UTF-8
  • add regression coverage for an invalidly encoded legacy command

Testing

  • uvx ruff@0.15.0 check src tests
  • .venv/bin/pytest tests/test_presets.py -q (509 passed)
  • .venv/bin/pytest -q (6106 passed, 176 skipped)

AI disclosure

GitHub Copilot helped identify the incomplete best-effort boundary and review the implementation. I reproduced the failure and validated the final change with targeted and full test suites.

Assisted-by: GitHub Copilot (model: GPT-5.6 Sol, autonomous)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings July 31, 2026 08:27
@marcelsafin
marcelsafin requested a review from mnriem as a code owner July 31, 2026 08:27

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Makes legacy command frontmatter parsing tolerant of non-UTF-8 content while preserving the default replacement strategy.

Changes:

  • Handles decoding failures during best-effort frontmatter parsing.
  • Adds regression coverage for invalid UTF-8 command files.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
src/specify_cli/presets/__init__.py Catches frontmatter decoding failures.
tests/test_presets.py Tests fallback to replace.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

  • Files reviewed: 2/2 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

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.

3 participants