- Eliminar archivos pr_description*.txt no versionados
- Agregar patrón pr_description*.txt a .gitignore
- Documentar en GEMINI.md que estos archivos son temporales
- Indicar que deben eliminarse después de usar el helper
- Añadir sección completa para el comando merge-pr
- Incluir validación de rama dev obligatoria
- Agregar ejemplos de uso con diferentes métodos de merge
- Documentar verificaciones automáticas del script
- Fixed missing action_collect method for pending_collection state
- Updated all model field labels to Spanish
- Updated view labels and strings to Spanish
- Fixed readonly conditions for pending_collection state
- Added barcode and new fields to stock.lot views
- Updated sale.order embedded view with correct button
- Added 5-minute timeout note to CLAUDE.md
- Removed problematic demo sale.order XML records
- Updated test script location guidance in CLAUDE.md
- Marked all acceptance criteria as completed in plan
- Created 4 demo lab orders showcasing different scenarios:
- Order 1: Multiple analyses requiring same sample type (EDTA)
- Order 2: Multiple analyses with different sample types
- Order 3: Mixed analyses for thyroid panel
- Order 4: Pediatric order with different sample types
- Added file to manifest demo section
- Successful test with ephemeral instance restart (main initialization OK)
- Comprehensive verification script for automatic sample generation
- Tests existing orders with generated samples
- Creates and tests new order with sample generation
- Verifies barcode uniqueness across all samples
- Checks for analyses without sample types
- Provides detailed summary and issue reporting
- Successful test with ephemeral instance restart
- Added 'Muestras Generadas' tab in sale.order form view
- Shows generated samples with barcode, type, volume, and analyses
- Added action buttons for sample workflow in the embedded list
- Added indicators in sale.order list view for lab requests and samples
- Successful test with ephemeral instance restart
- Added barcode field to stock.lot with automatic generation
- Implemented unique barcode generation in format YYMMDDNNNNNNC
- Added Luhn check digit for barcode validation
- Handles high volume scenarios with sample type prefixes
- Collision detection and retry mechanism for uniqueness
- Successful test with ephemeral instance restart
- Added generated_sample_ids field to sale.order model
- Override action_confirm() to intercept lab order confirmation
- Implemented _generate_lab_samples() main logic method
- Implemented _group_analyses_by_sample_type() for grouping
- Implemented _create_sample_for_group() for sample creation
- Added necessary fields to stock.lot model (doctor_id, origin, volume_ml, analysis_names)
- Updated state field to include 'pending_collection' state
- Added proper error handling and user notifications via message_post
- Successful test with ephemeral instance restart
- Created verify_sample_relationships.py script to validate implementation
- Updated ISSUE44_PLAN.md marking completed tasks
- Created ISSUE44_IMPLEMENTATION.md with complete summary
- Script verifies:
- Analyses have sample type assignments
- Sample types are properly configured
- Stock.lot samples use new fields correctly
- Field synchronization works properly
All tasks for Issue #44 completed successfully.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Added sample_type_product_id to list view
- Added sample_type_product_id to form view with proper readonly states
- Made container_type optional in list view and invisible when product is selected
- Both fields synchronized through model's @api.onchange method
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Added critical rule requiring ephemeral instance testing after every task
- Specified exact commands to run for testing
- Emphasized checking logs for errors before proceeding
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Added required_sample_type_id and sample_volume_ml fields to analysis configuration page
- Created list view for analysis products showing sample type relationship
- Created list view for sample type products
- Added is_sample_type field to product form view
- Made sample_volume_ml visible only when sample type is selected
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Added sample_type_product_id Many2one field to reference sample type products
- Kept container_type field for backward compatibility (marked as legacy)
- Added @api.onchange method to synchronize fields
- Added get_container_name() method to retrieve container name from either field
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Added required_sample_type_id Many2one field to link analyses with sample types
- Added sample_volume_ml field to specify required sample volume
- Added validation constraints to ensure fields are only used for analysis products
- Import api and ValidationError for field validations
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Created detailed implementation plan for adding relationship between analyses and sample types
- Includes tasks for model updates, view modifications, data migration, and demo data
- Addresses compatibility concerns and preparation for automatic sample generation (Issue #32)
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Modified gitea_cli_helper.py to read issue/PR body from files instead of inline text
- Added CLAUDE.md with comprehensive development guidelines for Claude Code
- CLAUDE.md includes Odoo 18 specific conventions, Docker commands, and project structure
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Anadido el campo 'collector_id' al modelo stock.lot.
- Actualizadas las vistas de lista y formulario para incluir el nuevo campo.
- Actualizados los datos de demostracion para asignar un recolector.
- Actualizado el plan de desarrollo.
- Anadido catalogo de Tipos de Muestra.
- Mejorada la vista de Muestras para seleccionar el tipo.
- Creados datos de demostracion para tipos de muestra y muestras.
Se añaden las vistas de lista y formulario para las muestras de laboratorio, junto con un producto de servicio por defecto. Se deshabilita temporalmente la carga de datos de demostración en init_odoo.py para estabilizar el entorno de validación.