Dataverse is the shared source for customer and contact data throughout the demonstration. The standard Account and Contact tables are used without new tables.
An administrator or developer should be able to create and maintain a small dataset of customers and contacts. The data must be readable by the Code App, Generative Page, and Power Pages, and changes should be able to trigger Power Automate.
- Confirm that Account and Contact are available in the environment.
- Use the standard Account-Contact relationship.
- Create realistic test data.
- Confirm that required standard columns are available.
- Verify that a Contact change can trigger a flow.
Dataverse tables are created and managed in the Power Platform environment, not as source code in this repository. Related artifacts belong in code-app/, generative-page/, power-pages/, server-logic/, and power-automate/ as described by the architecture documentation.
Do not put secrets, environment-specific connections, or local export packages in the repository.
AI can suggest test data, describe tables, generate queries, and explain the relationship between customers and contacts.
Use the setup prompts step by step. Replace bracketed values before use. The agent must always show the target environment and request confirmation before write operations.
Work only with Dataverse setup, not Code App code. Confirm the target URL with pac org who, verify authentication, the Dataverse SDK, and PAC CLI, and stop after reporting the active environment, user, available tools, and missing prerequisites. Do not create or modify data yet.
Find existing non-Microsoft publishers before creating one. Reuse a suitable publisher when possible. If a new publisher is needed, request approval for its display name, unique name, 2-8 lowercase-letter prefix, and description. Never use the default prefix new or guess a prefix. Use the official Dataverse Python SDK where supported.
Confirm the target environment before writing. Select or create the publisher first. Propose a solution display name, unique name, version 1.0.0.0, and unmanaged type. Request explicit approval, create it with the Dataverse Python SDK, verify it, and report its identifiers. Do not create tables, columns, or test data in this step.
Verify Account and Contact, logical column names, and Choice values before import. Use files under dataverse/testdata/, never code-app/. Use synthetic data with active and inactive Accounts, multiple cities and industries, several Contacts, and at least one Account without a Contact. Link Contacts through parentcustomerid using verified metadata and @odata.bind syntax. Request approval before creating data and prefer idempotent imports using stable account numbers and upsert where supported.
Use the official Dataverse Python SDK. For larger datasets, CSV and chunked bulk creation may be used. Verify active and inactive Accounts, city and industry distribution, Contact relationships, and an Account without a Contact after import.
Perform Dataverse setup step by step for the customer follow-up scenario. Confirm the target environment and user with pac org who, verify authentication, discover a publisher, request approval for publisher and solution creation, create and verify an unmanaged solution at version 1.0.0.0, verify Account and Contact metadata, propose synthetic test data, request approval before import, import through the official Python SDK using parentcustomerid, verify the result, and update dataverse/plan.md.
Stop at each decision point. Do not guess the environment, publisher prefix, solution name, Choice values, or lookup navigation properties. Do not place secrets or environment-specific tokens in the repository.