CopilotScopeWork in progress

ValueLens documentation

Troubleshooting & FAQ

Common ValueLens symptoms and fixes, consolidated from each deployment path. Each entry maps to the setup guide it comes from.

Graph authentication and permissions

Symptom Fix
401 / 403 from Graph Confirm the three application permissions are admin-consented; regenerate the client secret if it expired. The audit notebook needs AuditLogsQuery.Read.All specifically (it calls /security/auditLog/queries).
0 records returned (SharePoint extract) AuditLogsQuery.Read.All consent is missing — re-grant it in Entra.

Audit log queries

Symptom Fix
Audit query never finishes Purview processes it asynchronously; the notebook polls with backoff. If it times out, narrow LOOKBACK_DAYS in the CONFIG cell.

Lakehouse and default table

Symptom Fix
the key didn't match any rows A notebook ran against the wrong Lakehouse — pin your Lakehouse as default and re-run.

Power BI endpoint and database

Symptom Fix
Login failed / cannot open database (Power BI) The SQL endpoint host or database name is wrong — recheck the Lakehouse settings page.

Licensing and org data

Symptom Fix
All users show “Unlicensed” The licensed-users notebook has not run yet, or its report period is too narrow (REPORT_PERIOD = 'D30').
Masked UPNs (32-char hex) In the Microsoft 365 Admin Center, under Org settings → Reports, untick “Display concealed names”.

SharePoint upload and paths

Symptom Fix
403 Forbidden on upload The app lacks per-site write — re-run ProvisionSiteAccess-SP-AppReg.ps1.
404 Not Found on upload The -FolderPath does not exist in SharePoint — create it, or use / for the library root.
python: command not found Install Python 3.10+ and retry.

Refresh and capacity

Symptom Fix
Refresh slow (over a minute) on Fabric The dataset is in Import mode — put the workspace on a Fabric capacity and convert to Direct Lake.
Refresh hits the 1 GB / 2-hour cap (SharePoint / Pro) Move high-volume tenants to the Fabric path.

Pipeline failures

Symptom Fix
A pipeline activity fails Each activity retries at 60-second intervals for transient Graph throttling; the parallel branches don’t block each other, so partial Delta writes are preserved. Open Fabric Monitor Hub → Pipeline runs, click into the failed activity, and view the notebook job log.
Export-only source writes an empty table Credit consumption and product feedback have no API — land their CSVs (by flow or by hand) before the pipeline runs, or the ingester finds nothing.

Optional sources and empty states

Symptom Fix
An optional page is blank Its Enable_* toggle is Exclude, or the source has not landed. Set the toggle to Include and confirm the source table or file is present. Every optional table degrades to an empty table with the correct columns, so the refresh still succeeds.
Partial product-feedback export breaks refresh The model tolerates partial OCV exports (MissingField.Ignore); the producing notebook emits the full 23-column superset. Re-run this repo’s Copilot_ProductFeedback_Ingester.ipynb.

Credit and cost consumption

Symptom Fix
Billing / consumption pages empty after refresh The Enable_Consumption / Enable_CostConsumption toggle is still Exclude, or the CSVs are not in the folder. Set it to Include and confirm the exports are in Files/credit_consumption/ or Files/cost_consumption/ and the ingester has run.
Empty immediately after running the ingester The SQL endpoint has not synced yet — wait about a minute and refresh again.
Refresh error: a column was not found The CSVs were ingested by a different or older script. Re-run this repo’s Copilot_Credit_Consumption_Ingester.ipynb, which produces the exact column names the model expects.

Agent 365 selection

Symptom Fix
Not sure which Agent 365 notebook to run Use Copilot_Agent365_Registry_Ingester by default (app-only, scheduled). Fall back to Copilot_Agent365_Lander only when the ingester’s app-registration permissions are unavailable. Both write the same dbo.agents_365 table — run one, not both.

Copilot Studio (Fabric Extended)

Symptom Fix
Credit-by-organization shows no breakdown Confirm the transcript users and Entra org data describe the same users in the same tenant. If they do not, the object IDs will not join and the credit-by-organization breakdown may show no breakdown or an invalid 100% result. This is a data-alignment issue, not a model bug. The source recommends a future UPN fallback and an ‘(Unmapped)’ bucket; do not assume either is implemented today.
Transcript notebook cannot get a Dataverse token Fabric’s notebookutils.getToken cannot mint a Dataverse token — use an app-registration service principal added as an Application User with Read on the Conversation Transcript table.