1.4 KiB
1.4 KiB
Quickstart: Foundations in Inventory (047)
Goal
Verify that foundations are synced as InventoryItem records when include_foundations=true, and are not synced when include_foundations=false.
Preconditions
- Local dev via Sail is running.
- You have at least one tenant configured with valid Graph credentials.
Steps
-
Run an inventory sync with foundations enabled
- Use the Inventory UI sync button (Spec 046) with
include_foundations=true, or run the relevant flow in your preferred admin path.
- Use the Inventory UI sync button (Spec 046) with
-
Confirm foundation nodes exist
- In Inventory Items, filter
Category = Foundations. - Confirm you can find:
- Scope tags (
roleScopeTag) - Assignment filters (
assignmentFilter) - Notification templates (
notificationMessageTemplate)
- Scope tags (
- In Inventory Items, filter
-
Confirm coverage shows both matrices
- Open Inventory → Coverage.
- Confirm both headings are present: “Policies” and “Foundations”.
-
Confirm name resolution (Spec 042.2)
- Open a policy that references scope tags or assignment filters.
- In the Dependencies section, confirm targets render with resolved display names sourced from local inventory.
Troubleshooting
- If foundation types do not appear, confirm they exist in
config('tenantpilot.foundation_types')and have Graph contracts inconfig/graph_contracts.php. - If UI doesn’t reflect changes, rebuild assets if needed (
npm run dev/composer run dev) and confirm cache is cleared.