How Cost Layer Rebuilds Cascade to Assembled Products
When Luminous runs a cost-layer rebuild (nightly or on-demand), it recalculates the landed cost of your raw components and purchased SKUs based on your receiving reports and associated freight, duty, and handling charges.
If a component's cost changes during that rebuild, Luminous now automatically propagates the correction to any assembled finished goods that:
- Consumed that component through a completed assembly order, and
- Still have on-hand inventory remaining in the warehouse.
This means your assembled product's inventory value and cost-per-unit will reflect the updated component cost without any manual intervention.
Note: This cascade is being rolled out tenant-by-tenant and is not yet automatic for every account. If you don't see assembled-product costs updating after a rebuild even though a component cost changed, confirm with Luminous support that this behavior has been enabled for your account. Separately, the nightly cost-layer rebuild itself is opt-in — check with support that it's turned on for your account before expecting rebuilds to run without being triggered manually.
What gets updated — and what does not
| Scenario | Behaviour |
|---|---|
| Finished goods still on hand after the rebuild | Cost layer re-valued to reflect the corrected component cost |
| Finished goods fully sold or consumed before the rebuild runs | Not updated (no remaining quantity to restate) |
| Finished goods assembled from other assembled goods (nested assemblies) | Cascade runs in multiple passes — up to 8 levels deep |
| Layers dated inside your closed accounting period | Skipped — the closed period is never modified |
| Layers with a manual cost override applied by a user | Not affected by the cascade; manual overrides are preserved |
Why the cost might still look unchanged after a rebuild
If your assembled product's cost did not update after a rebuild, check these common reasons:
- All finished-good inventory has been sold. If there is no remaining on-hand quantity in the warehouse, there is nothing to restate.
- The component cost did not actually change during the rebuild. The cascade only fires when a component's per-unit cost moves. If the rebuild determined the existing cost was already correct, no cascade is triggered.
- The assembly order's finished-good layer falls inside a closed accounting period. Layers created on or before the period-close date are intentionally skipped.
- A manual cost override is on the finished-good layer. Manual overrides are preserved and are not altered by rebuilds.
How this interacts with the nightly rebuild
The cascade runs automatically at the end of every cost-layer rebuild — both the nightly scheduled run and any on-demand rebuild you trigger from the Cost Layer Repair tools. No additional steps are needed.
Tip: If you want to preview what a rebuild would change before committing, use the dry-run mode available in the Cost Layer Repair API. The dry-run output shows which assembly-order tranches would be restated and by how much.