- Updated all prompt_calls.py files (saas, bcbs_promise, clover) to use new parser pattern
- Updated prompt_templates.py with JSON format instructions
- Updated crosswalk_utils.py to handle JSON lists
- Updated json_utils.py with improved parsing
- Updated aarete_derived.py for JSON compatibility
- Updated tin_npi_funcs.py and qa_qc_utils.py for JSON parsing
- All changes align with Phase 4 completion of JSON standardization
- Removed all debug print statements from prompt_calls.py and one_to_n_funcs.py
- Updated PRD to reflect Phase 4 completion and recent bug fixes
- Documented REIMB_TERM normalization fixes and cleanup work
- Updated Phase 6 status to 25% complete (debug removal done)
- Fixed prompt_lesser_of_distribution to extract string from list when parser returns list
- Added debug print statements to trace REIMB_TERM format through processing pipeline
- Removed defensive normalization checks that are no longer needed upstream
- Added debug output in reimbursement_level and methodology_breakout_single_row to track data flow
Trigger error when batch_id is not specified or when max_workers is negative
* Trigger error when batch_id is not specified or when max_workers is negative
Approved-by: Katon Minhas
Feature/adding contract admenment num pc
* Updated contract amendment
* Format code with Black
* updated to have letters
* format fixes
* Adjusted unit testing
* Merge remote-tracking branch 'origin/DEV' into feature/adding_contract_admenment_num_pc
* apply formatting
- Updated progress table: Phase 4 is now 100% complete
- Marked model_evaluation_utils.py as complete (commit 13f3cbea)
- Verified testbed/QC files process internal data (out of scope)
- Updated remaining work section
- Updated overall status to Phase 4 of 6 Complete
- Fixed DYNAMIC_PRIMARY_TEXT: now unpacks (prompt, parser) tuple and uses parser
- Fixed REIMBURSEMENT_PRIMARY: corrected function signature (only takes context)
- Replaced extract_text_from_delimiters with JSON parser
- Replaced universal_json_load with parser from tuple
- Added proper instruction caching for both prompts
Other testbed/QC files verified: they process internal data formats (out of scope per PRD)
- Updated progress table: Phase 3 is now 100% complete
- Marked code_funcs.py as complete (commit a7a32b90)
- Updated remaining work section
- Added latest commit to commit history
- Line 498: Changed from universal_json_load to use _parser from FILL_BILL_TYPE tuple
- Line 856: Updated GROUPER_BREAKOUT call to unpack tuple and use grouper_parser
- Removed unused GROUPER_QUESTIONS variable (fields now in INSTRUCTION function for caching)
- All universal_json_load calls in code_funcs.py have been replaced
- Phase 3 is now 100% complete
- Updated EFFECTIVE_DT field: Replaced all pipe format examples (|date|) with JSON dictionary format
- Changed examples from 'return |3-1 , , 03|' to 'return "3-1 , , 03"'
- Updated final answer format from 'ENCLOSED in |pipes|' to JSON dict: {"EFFECTIVE_DT": "date"}
- Updated PROVIDER_NAME field: Replaced pipe-separated format with JSON list format
- Changed from 'separated by |' to JSON list: ["Provider A", "Provider B"]
- Updated to return JSON dict: {"PROVIDER_NAME": [...]} or {"PROVIDER_NAME": "single"}
- All pipe references removed from investment_prompts.json
- Updated PRD to document this change in Phase 2 checklist
- JSON file validated and syntax confirmed correct
- Create json_utils.py with parse_json_dict() and parse_json_list() functions
- Add comprehensive unit tests (49 tests, all passing)
- Add deprecation warnings to string_utils.py for pipe-delimited parsing
- Follows PRD Phase 1: Parser Infrastructure
This is the first step in replacing pipe-delimited LLM output format with
structured JSON format as per PRD_STANDARDIZE_LIST_FORMATS.md