Problem
The CRM seed data in examples/app-crm/src/data/index.ts does not provide relationship (lookup/master_detail) fields in records, causing contacts, opportunities, etc. to be disconnected from parent objects. This breaks ObjectStack conventions and makes demo/test environments not resemble realistic CRM data.
What To Fix (Checklist)
Acceptance Criteria
- Changes should follow ObjectStack spec: cross-object relationship fields use the target object's externalId value (not internal IDs).
- All CRM data should demonstrate realistic parent-child and lookup relationships, and allow the seed loader engine to resolve references automatically.
- No hardcoded internal IDs should be present.
- Demo app should show correct relational graphs in UI and allow navigation between objects.
References
This issue acts as a data quality bug report. Fixing it improves onboarding, demos, IDE experience, and plugin reliability.
Problem
The CRM seed data in
examples/app-crm/src/data/index.tsdoes not provide relationship (lookup/master_detail) fields in records, causing contacts, opportunities, etc. to be disconnected from parent objects. This breaks ObjectStack conventions and makes demo/test environments not resemble realistic CRM data.What To Fix (Checklist)
accountfield (value should match the Account'snamewhich is the externalId).reports_tofield (value = target contact's email).accountfield; link each Opportunity to a parent Account (use Accountname). Also addowner(if user assignment modeled).account(when relevant), and possibleownerfield. If the Task is associated with an Opportunity, addopportunityfield (use Opportunityname).accountfield).Acceptance Criteria
References
This issue acts as a data quality bug report. Fixing it improves onboarding, demos, IDE experience, and plugin reliability.