f84023d742
Bugfix/table preprocessing * restructure get_exhibit_dict * exhibit header * update exhibit header handling * update docstring * bugfix * remove test - update docstring * Merged main into bugfix/table-preprocessing * refactor: update page_key_sort to return float for numeric keys * refactor: enhance get_exhibit_dict to improve chunking logic for exhibits * refactor: update page_key_sort to return float for numeric keys * test: add unit tests for get_exhibit_dict function * test: fix test case 7 * Add final, difficult test * refactor: enhance get_exhibit_dict to handle single decimal page exhibits and improve chunking logic * pulled `one_to_n_test.py` from dynamic primary branch * fix: update common_file_names logic to remove specific entry and log changes * docs: update get_exhibit_dict docstring to clarify input and output formats * test: add test for exhibit handling with decimal pages in get_exhibit_dict * feat: add debug logging for exhibit chunk mapping and exhibit dictionary keys in one_to_n_exhibit_chunking * Merge remote-tracking branch 'origin/main' into bugfix/table-preprocessing * feat: enhance spatial processing rules and consistency checks for reimbursement terms * feat: update global scan methodology to enhance context extraction for reimbursement constraints * Merge remote-tracking branch 'origin/main' into bugfix/table-preprocessing Approved-by: Katon Minhas
Field Extraction
Running the Code
This project uses Python's module system for imports. To run the code properly:
-
DO NOT run files directly like this:
python src/client/main.py # ❌ This won't work -
INSTEAD, use Python's module flag (
-m) from the project root:python -m src.client.main # ✅ This is correct
Why?
The code uses absolute imports (e.g., from src.utils import llm_utils) to maintain a clear and consistent package structure. Running with python -m ensures Python can properly resolve these imports.
Development
- All imports should use the
src.prefix (e.g.,from src.utils import llm_utils) - Always run code from the project root directory using the
-mflag - Tests are configured to handle these imports automatically via pytest settings in pyproject.toml
Configuration
The project uses poetry for dependency management and pytest for testing. Key configurations in pyproject.toml:
[tool.pytest.ini_options]
pythonpath=["."]
testpaths = [
"tests"
]
Dependencies
To install dependencies:
poetry install
To run tests:
poetry run pytest
To run type checking:
poetry run mypy .