From 114767d858d1f5de9daaf4d455bc8f162d8e3b69 Mon Sep 17 00:00:00 2001 From: Bento Machado Date: Sat, 29 Aug 2026 17:55:31 -0300 Subject: [PATCH] =?UTF-8?q?refactor(pii):=20remove=20cpf,=20phone=20e=20ge?= =?UTF-8?q?olocaliza=C3=A7=C3=A3o=20do=20builder?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Remove os campos cpf e phone do modelo Participant e a geolocalização de check-in (checkin_latitude/checkin_longitude) do modelo Event — nenhum é usado na geração do certificado. Ajusta create_participant_object e os testes correspondentes. O payload de registro na Solana permanece inalterado (email ainda é enviado) até verificarmos com o serviço de registro se o campo é obrigatório. --- lambda_function.py | 12 ------------ models/event.py | 2 -- models/participant.py | 2 -- tests/test_certified_builder.py | 12 ------------ tests/test_participant.py | 28 ---------------------------- 5 files changed, 56 deletions(-) diff --git a/lambda_function.py b/lambda_function.py index 2d5253a..7c10560 100644 --- a/lambda_function.py +++ b/lambda_function.py @@ -71,16 +71,6 @@ def create_participant_object(participant_data): if participant_data.get("time_checkin") else None ), - checkin_latitude=( - float(participant_data.get("checkin_latitude")) - if participant_data.get("checkin_latitude") - else None - ), - checkin_longitude=( - float(participant_data.get("checkin_longitude")) - if participant_data.get("checkin_longitude") - else None - ), ) # Create Participant object @@ -88,8 +78,6 @@ def create_participant_object(participant_data): first_name=participant_data.get("first_name"), last_name=participant_data.get("last_name"), email=participant_data.get("email"), - phone=participant_data.get("phone"), - cpf=participant_data.get("cpf", ""), certificate=certificate, event=event, ) diff --git a/models/event.py b/models/event.py index 16a0818..320c28e 100644 --- a/models/event.py +++ b/models/event.py @@ -9,5 +9,3 @@ class Event(BaseModel): product_name: str date: datetime time_checkin: Optional[datetime] = None - checkin_latitude: Optional[float] = None - checkin_longitude: Optional[float] = None diff --git a/models/participant.py b/models/participant.py index c98cce9..9252261 100644 --- a/models/participant.py +++ b/models/participant.py @@ -17,8 +17,6 @@ class Participant(BaseModel): first_name: str last_name: str email: EmailStr - phone: str - cpf: str validation_code: Optional[str] = Field( default_factory=lambda: "".join(random.choices(string.hexdigits, k=9)), init=False, diff --git a/tests/test_certified_builder.py b/tests/test_certified_builder.py index e18c3c4..a9765cc 100644 --- a/tests/test_certified_builder.py +++ b/tests/test_certified_builder.py @@ -27,8 +27,6 @@ def mock_event(): product_name="Evento de Teste", date=datetime.strptime("2025-03-26 20:55:25", "%Y-%m-%d %H:%M:%S"), time_checkin=datetime.strptime("2025-03-26 20:55:44", "%Y-%m-%d %H:%M:%S"), - checkin_latitude=-27.5460492, - checkin_longitude=-48.6227075, ) @@ -38,8 +36,6 @@ def mock_participant(mock_certificate, mock_event): first_name="Jardel", last_name="Godinho", email="jardelgodinho@gmail.com", - phone="(48) 98866-7447", - cpf="000.000.000-00", certificate=mock_certificate, event=mock_event, ) @@ -451,8 +447,6 @@ def test_build_certificates_with_multiple_participants_same_resources( first_name="Maria", last_name="Silva", email="maria@example.com", - phone="(48) 99999-9999", - cpf="111.111.111-11", certificate=mock_participant.certificate, event=mock_participant.event, ) @@ -507,8 +501,6 @@ def test_build_certificates_with_different_backgrounds( first_name="João", last_name="Santos", email="joao@example.com", - phone="(48) 88888-8888", - cpf="222.222.222-22", certificate=second_certificate, event=mock_participant.event, ) @@ -627,16 +619,12 @@ def test_generate_certificate_with_long_name( product_name="Evento Teste", date=datetime.now(), time_checkin=datetime.now(), - checkin_latitude=0.0, - checkin_longitude=0.0, ) long_name_participant = Participant( first_name="João Pedro", last_name="da Silva Santos Oliveira", email="joao@example.com", - phone="(48) 99999-9999", - cpf="123.456.789-00", certificate=mock_certificate, event=mock_event, ) diff --git a/tests/test_participant.py b/tests/test_participant.py index 2c9bd34..e2a4ef8 100644 --- a/tests/test_participant.py +++ b/tests/test_participant.py @@ -23,8 +23,6 @@ def mock_event(): product_name="Evento de Teste", date=datetime.strptime("2025-03-26 20:55:25", "%Y-%m-%d %H:%M:%S"), time_checkin=datetime.strptime("2025-03-26 20:55:44", "%Y-%m-%d %H:%M:%S"), - checkin_latitude=-27.5460492, - checkin_longitude=-48.6227075, ) @@ -33,8 +31,6 @@ def test_participant_initialization(mock_certificate, mock_event): first_name="Jardel", last_name="Godinho", email="jardelgodinho@gmail.com", - phone="(48) 98866-7447", - cpf="000.000.000-00", certificate=mock_certificate, event=mock_event, ) @@ -42,8 +38,6 @@ def test_participant_initialization(mock_certificate, mock_event): assert participant.first_name == "Jardel" assert participant.last_name == "Godinho" assert participant.email == "jardelgodinho@gmail.com" - assert participant.phone == "(48) 98866-7447" - assert participant.cpf == "000.000.000-00" assert participant.certificate == mock_certificate assert participant.event == mock_event assert len(participant.validation_code) == 9 @@ -54,8 +48,6 @@ def test_name_completed(mock_certificate, mock_event): first_name="Jardel", last_name="Godinho", email="jardelgodinho@gmail.com", - phone="(48) 98866-7447", - cpf="000.000.000-00", certificate=mock_certificate, event=mock_event, ) @@ -67,8 +59,6 @@ def test_formated_validation_code(mock_certificate, mock_event): first_name="Jardel", last_name="Godinho", email="jardelgodinho@gmail.com", - phone="(48) 98866-7447", - cpf="000.000.000-00", certificate=mock_certificate, event=mock_event, ) @@ -83,8 +73,6 @@ def test_create_name_certificate(mock_certificate, mock_event): first_name="Jardel", last_name="Godinho", email="jardelgodinho@gmail.com", - phone="(48) 98866-7447", - cpf="000.000.000-00", certificate=mock_certificate, event=mock_event, ) @@ -101,8 +89,6 @@ def test_invalid_email(mock_certificate, mock_event): first_name="Jardel", last_name="Godinho", email="invalid-email", - phone="(48) 98866-7447", - cpf="000.000.000-00", certificate=mock_certificate, event=mock_event, ) @@ -114,8 +100,6 @@ def test_missing_required_field(mock_certificate, mock_event): Participant( first_name="Jardel", email="jardelgodinho@gmail.com", - phone="(48) 98866-7447", - cpf="000.000.000-00", certificate=mock_certificate, event=mock_event, ) @@ -126,8 +110,6 @@ def test_name_completed_with_multiple_names(mock_certificate, mock_event): first_name="Jardel Silva", last_name="Godinho Santos", email="jardelgodinho@gmail.com", - phone="(48) 98866-7447", - cpf="000.000.000-00", certificate=mock_certificate, event=mock_event, ) @@ -145,16 +127,12 @@ def test_sanitize_filename_special_characters(mock_certificate): product_name="87º Python Floripa × CODECON @ UNICESUSC", date=datetime.strptime("2025-03-26 20:55:25", "%Y-%m-%d %H:%M:%S"), time_checkin=datetime.strptime("2025-03-26 20:55:44", "%Y-%m-%d %H:%M:%S"), - checkin_latitude=-27.5460492, - checkin_longitude=-48.6227075, ) participant = Participant( first_name="Rodrigo", last_name="Farah", email="rodrigo@example.com", - phone="(48) 98866-7447", - cpf="000.000.000-00", certificate=mock_certificate, event=event_with_special_chars, ) @@ -180,16 +158,12 @@ def test_create_name_certificate_with_special_characters(mock_certificate): product_name="87º Python Floripa × CODECON @ UNICESUSC", date=datetime.strptime("2025-06-19 11:15:31", "%Y-%m-%d %H:%M:%S"), time_checkin=datetime.strptime("2025-06-19 11:15:31", "%Y-%m-%d %H:%M:%S"), - checkin_latitude=-27.5460492, - checkin_longitude=-48.6227075, ) participant = Participant( first_name="Rodrigo", last_name="Farah", email="rodrigo.farah@example.com", - phone="(48) 98866-7447", - cpf="000.000.000-00", certificate=mock_certificate, event=event_with_special_chars, ) @@ -221,8 +195,6 @@ def test_sanitize_filename_edge_cases(mock_certificate, mock_event): first_name="Test", last_name="User", email="test@example.com", - phone="(48) 98866-7447", - cpf="000.000.000-00", certificate=mock_certificate, event=mock_event, )