Problem
The Grants Explorer publicly displays the Salesforce Opportunity Name field as the project name. Depending on how ESP names Opportunities, this could contain personal names, legal entity names, or other identifying information not intended for public display.
The Name field is the standard Opportunity name — often auto-generated or set by internal staff — and may follow naming conventions that embed personal information (e.g., "John Doe - Protocol Research").
If Opportunity names contain PII, this is a GDPR/CCPA exposure.
Action Needed
Confirm with the Salesforce admin that the Opportunity Name field is always a project name (not a person's name) for the record types in PUBLIC_RECORD_TYPES (Sponsorships, Proactive community grants, Financial support, Matching funds).
If not safe: Consider using a dedicated Public_Project_Name__c custom field, or adding a boolean Approved_For_Public_Display__c gate.
Context
Problem
The Grants Explorer publicly displays the Salesforce Opportunity
Namefield as the project name. Depending on how ESP names Opportunities, this could contain personal names, legal entity names, or other identifying information not intended for public display.The
Namefield is the standard Opportunity name — often auto-generated or set by internal staff — and may follow naming conventions that embed personal information (e.g., "John Doe - Protocol Research").If Opportunity names contain PII, this is a GDPR/CCPA exposure.
Action Needed
Confirm with the Salesforce admin that the Opportunity
Namefield is always a project name (not a person's name) for the record types inPUBLIC_RECORD_TYPES(Sponsorships,Proactive community grants,Financial support,Matching funds).If not safe: Consider using a dedicated
Public_Project_Name__ccustom field, or adding a booleanApproved_For_Public_Display__cgate.Context
src/lib/sf/grants.tsline 181 —projectName: record.Name__NEXT_DATA__(page source), making the full dataset scrapable