Skip to content

fix(templates): ignore escaped braces when collecting fixture keys - #151

Merged
n-papaioannou merged 2 commits into
ifixai-ai:mainfrom
rudycelekli:fix/ifix-escaped-placeholders-20261004
Oct 5, 2026
Merged

n-papaioannou merged 2 commits into
ifixai-ai:mainfrom
rudycelekli:fix/ifix-escaped-placeholders-20261004

Conversation

@rudycelekli

Copy link
Copy Markdown
Contributor

What and why

The placeholder regex treated escaped literal braces as required fixture keys and omitted conversion/format-spec placeholders. Use Python Formatter parsing so fixture-key validation follows the rendering contract, including nested format specifications.

Reproduction and verification

  • 3 failing contract cases and 2 passing controls before the fix. Six focused regression cases pass after adding nested-format coverage.
  • Focused local pytest result:
......                                                                   [100%]
6 passed in 0.01s
  • Ruff 0.16.9, Bandit (-r ifixai -ll), layout validation and all 11 bundled example-fixture validations passed locally.
  • Tested on Python 3.13; upstream CI has not yet run for this branch.

Scope

Malformed format strings continue to fail as malformed templates rather than being silently accepted.

Prepared with AI assistance; the regression reproduction and changed source were reviewed before publication.

Signed-off-by: Rudy Celekli <47457359+rudycelekli@users.noreply.github.com>
@n-papaioannou
n-papaioannou merged commit cac69fb into ifixai-ai:main Oct 5, 2026
3 checks passed
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.

2 participants