gmal-scope-builder/backend/app/services
DJP 06bb1b9bfd Fix deep extraction crash: unescaped curly braces in f-string
Root cause: "name 'name' is not defined" error on line 300
The f-string example {name:"KV 360", tier:"Tier B"} was interpreted
as Python set literal, not as JSON text. Changed to parentheses.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-13 13:23:25 -04:00
..
__init__.py Initial commit - GMAL Scope Builder 2026-03-27 17:35:14 -04:00
ai_descriptions.py AI-enhanced GMAL descriptions + matching fixes 2026-03-28 10:12:04 -04:00
ai_matching.py Custom tier editor, brief analysis feeds matching, exportable questions 2026-04-09 16:02:11 -04:00
doc_parser.py Fix deep extraction crash: unescaped curly braces in f-string 2026-04-13 13:23:25 -04:00
excel_parser.py Improve matching, upload UX, collapse fix, full catalog approach 2026-03-27 19:22:08 -04:00
export_excel.py Custom tier editor, brief analysis feeds matching, exportable questions 2026-04-09 16:02:11 -04:00
export_pdf.py Initial commit - GMAL Scope Builder 2026-03-27 17:35:14 -04:00
match_refiner.py P2: Iterative prompting + RFP brief analysis engine 2026-04-09 14:15:31 -04:00
ratecard_builder.py Initial commit - GMAL Scope Builder 2026-03-27 17:35:14 -04:00
rfp_analysis.py P2: Iterative prompting + RFP brief analysis engine 2026-04-09 14:15:31 -04:00
team_shape.py P1: Role-specific efficiency profiles + BTG tool efficiencies 2026-04-09 13:48:30 -04:00
tier_expander.py Client tier mapping + GMAL complexity variant expansion 2026-04-09 15:02:45 -04:00