Open
Conversation
DbB in english, delete unnecessary details
- Implement comprehensive Pydantic models with discriminated unions - Add type-safe validation for all dictionary parts - Include cross-reference validation and foreign key constraints - Add test suite for model validation - Update AGENTS.md with development commands and code style guidelines - Add pydantic dependency for type safety
- Replace sparse CSV structure with hierarchical JSON - Eliminate empty table presence columns - Maintain all existing data and relationships - Add conversion script for migration - Improve data structure readability and maintainability
- Modify generate_docs.py to work with JSON dictionary - Update parts_table.md documentation for new format - Refresh tables.md with current schema - Improve documentation generation reliability
- Implement ERD generator for interactive and simple diagrams - Generate Mermaid.js diagrams for documentation - Add ERD assets and reference documentation - Include comprehensive test suite for ERD generation - Support both interactive and static ERD formats
- Refresh mkdocs.yml for new documentation structure - Update SQL generation script for latest schema - Add utility scripts for asset management and cleanup
- Remove fk_target_part_id from TablePresence model - Update validation logic to infer FK targets from field names - Remove all 27 fk_target_part_id instances from dictionary.json - Update ERD generator to infer relationships from naming conventions - Update documentation generation to work without explicit FK targets - Add script for removing fk_target_part_id fields - Improve relationship descriptor clarity in ERD (Foreign Table/Primary Table) This eliminates redundancy as field names ending in _ID already indicate their target primary keys, making the data model cleaner and more maintainable.
Break down monolithic documentation generation into focused, testable modules: - scripts/generate_dictionary_reference.py: Generate table/valueset docs - scripts/generate_erd.py: Generate ERD diagrams and HTML - scripts/generate_sql.py: Generate SQL schemas for target databases - scripts/orchestrate_docs.py: Coordinate all generation tasks Benefits: - Each script can be run independently for testing - Clearer separation of concerns - Easier to maintain and extend - Better testability Remove obsolete scripts: - Old monolithic hooks (docs/hooks/erd_generator.py, generate_docs.py) - One-time migration scripts (csv_to_json.py, remove_fk_target.py, etc.) Update helpers.py to support new modular architecture. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Restructure tests for better organization and maintainability: New structure: - tests/unit/: Isolated unit tests for each module - test_dictionary_reference.py: Dictionary markdown generation - test_erd_generator.py: ERD generation logic - test_sql_generator.py: SQL schema generation - test_models.py: Pydantic model validation - test_helpers.py: Helper function tests - tests/integration/: End-to-end integration tests - test_orchestration.py: Full documentation pipeline - test_erd_integrity.py: ERD structural validation - tests/fixtures/: Shared test data and utilities - sample_dictionary.py: Reusable test fixtures - conftest.py: Pytest configuration Benefits: - Clearer separation between unit and integration tests - Faster test execution (unit tests can run independently) - Easier to locate and maintain specific tests - Shared fixtures reduce duplication 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Replace inline documentation generation with orchestrator-based approach: Changes to docs/hooks/call_orchestrator.py: - Lightweight hook that delegates to scripts/orchestrate_docs.py - Passes configuration from mkdocs.yml to orchestrator - Cleaner separation between MkDocs and generation logic Changes to mkdocs.yml: - Update hooks configuration to use new call_orchestrator - Adjust paths and references for new script structure - Maintain compatibility with existing documentation structure Benefits: - MkDocs hook becomes a thin wrapper - Generation logic can be tested independently of MkDocs - Same scripts work both in MkDocs builds and standalone execution - Easier to debug and maintain 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Regenerate all auto-generated documentation using new modular scripts: Documentation updates: - docs/reference/tables.md: Fresh table documentation with anchors - docs/reference/valuesets.md: Updated value set references - docs/reference/erd.md: New ERD page with interactive diagram - docs/reference/schema.md: Streamlined schema overview - docs/contributing/dictionary.md: New contributor guide for dictionary Removed outdated documentation: - docs/contributing/parts_table.md: Superseded by dictionary.md Improvements: - Consistent anchor linking between tables and valuesets - Better cross-references using Part_ID anchors - Interactive ERD with zoom, pan, and export capabilities - Cleaner, more maintainable markdown structure All documentation now auto-generated from src/dictionary.json using the new modular script architecture. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Regenerate MSSQL schema using new scripts/generate_sql.py: Changes: - Fresh SQL DDL generated from current dictionary.json state - Consistent with data model after fk_target_part_id removal - Proper foreign key constraint generation - Up-to-date with latest table and field definitions The SQL schema is now generated using the modular generation system, ensuring consistency with documentation and ERD diagrams. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Add pytest to dev dependency group for test suite: Changes to pyproject.toml: - Add pytest>=8.4.2 to [dependency-groups].dev - Supports new unit and integration test structure - Enables local test execution with 'uv run pytest' The reorganized test suite requires pytest for execution. This formalizes the testing infrastructure for the project. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Restructure project to improve organization and clarity:
Structure changes:
- Create src/open_dateaubase/data_model/ submodule
- Move models.py → data_model/models.py
- Move helpers.py → data_model/helpers.py
- Move dictionary.json to project root (from src/)
Benefits:
- Clearer separation: data model code is now in dedicated submodule
- More accessible: dictionary.json at root is easier to find/use
- Better imports: explicit data_model namespace clarifies purpose
- Improved maintainability: related code grouped together
Updated references throughout:
- All import statements: open_dateaubase.data_model.{models,helpers}
- All file paths: dictionary.json (instead of src/dictionary.json)
- Documentation examples in dictionary.md
- Script usage examples and help text
- Test imports
- MkDocs hook paths
All tests and imports verified working.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.