bcgov / bcgov/lcfs

LCFS (TFRS Shutdown) - Validate Notional Transfer (Schedule A) Migration from TFRS to LCFS

Open
#2,988 0 comments 0 reactions 1 assignee Claimed by @AlexZorkin View on GitHub
Medium Task
Dominant language
Python
Stars
7
Forks
7
Avg merge
2d 7h
Merged PRs (30d)
87

Description

**Describe the task**
Validate the complete migration of notional transfer records (Schedule A) from TFRS to LCFS, ensuring accurate legal name mappings, address handling, and proper delta management for supplemental reports.

**Purpose**
Notional transfers track fuel quantities transferred between parties with different reporting obligations. This validation ensures all Schedule A records are migrated correctly, with special attention to legal name variations and the TFRS-to-LCFS delta architecture change.

**Acceptance Criteria**
- [ ] All notional transfer records from TFRS exist in LCFS
- [ ] Legal names are correctly normalized and mapped
- [ ] Addresses are properly migrated and formatted
- [ ] Group UUID ordering is preserved across all reports
- [ ] Supplemental reports contain only deltas
- [ ] Fuel categories and quantities match exactly
- [ ] Partner organization relationships are maintained
- [ ] Received vs transferred quantities balance correctly
- [ ] Validation script shows zero discrepancies
- [ ] Special characters in legal names handled properly

**Validation Steps**
1. Run `validate_notional_transfers.py` against production data
2. Verify record counts match between systems
3. Validate legal name normalization and matching logic
4. Confirm delta-only storage in supplemental reports
5. Check group_uuid consistency across report versions
6. Sample 10% of records for detailed field validation
7. Verify quantity balancing between partners

**Additional context**
- Legal names may have variations that need fuzzy matching
- Address formats differ between TFRS and LCFS
- TFRS stores complete record sets in supplemental reports
- LCFS stores only changes in supplemental reports
- Critical for inter-organization fuel tracking
- Reference: `migrate_notional_transfers.py`, `validate_notional_transfers.py`
- May impact compliance summary calculations

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.